8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-22 10:03:03 +01:00

OSRI and new posix build

This commit is contained in:
alexpeshkoff 2010-10-12 08:02:57 +00:00
parent fdfcc4ed7e
commit 2dc25a44bb
488 changed files with 17426 additions and 30606 deletions

View File

@ -48,30 +48,8 @@ AC_DEFUN([AM_BINRELOC],
if test "x$br_cv_binreloc" = "xyes"; then
BINRELOC_CFLAGS="-DENABLE_BINRELOC"
AC_DEFINE(ENABLE_BINRELOC,,[Use binary relocation?])
if test "x$enable_binreloc_threads" = "xyes"; then
AC_CHECK_LIB([pthread], [pthread_getspecific])
fi
AC_CACHE_CHECK([whether binary relocation should use threads],
[br_cv_binreloc_threads],
[if test "x$enable_binreloc_threads" = "xyes"; then
if test "x$ac_cv_lib_pthread_pthread_getspecific" = "xyes"; then
br_cv_binreloc_threads=yes
else
br_cv_binreloc_threads=no
fi
else
br_cv_binreloc_threads=no
fi])
if test "x$br_cv_binreloc_threads" = "xyes"; then
BINRELOC_LIBS="-lpthread"
AC_DEFINE(BR_PTHREAD,1,[Include pthread support for binary relocation?])
else
BINRELOC_CFLAGS="$BINRELOC_CFLAGS -DBR_PTHREADS=0"
AC_DEFINE(BR_PTHREAD,0,[Include pthread support for binary relocation?])
fi
fi
AC_SUBST(BINRELOC_CFLAGS)
AC_SUBST(BINRELOC_LIBS)
])

516
builds/posix/Makefile.in Normal file
View File

@ -0,0 +1,516 @@
#
# PROGRAM: Firebird single makefile
# MODULE: Makefile.in
# DESCRIPTION: Posix build main file
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
# Alex Peshkoff - created single makefile based on Mark's files
#
ROOT=..
include make.defaults
include make.platform
include make.rules
include make.shared.variables
@SET_MAKE@
ifeq ($(IsDeveloper), Y)
DefaultTarget := Debug
else
DefaultTarget := Release
endif
.PHONY: master_process firebird Debug Release extern
all: firebird
firebird:
$(MAKE) TARGET=$(DefaultTarget) master_process
Release:
$(MAKE) TARGET=Release master_process
Debug:
$(MAKE) TARGET=Debug master_process
#----------------------------------------------------------------------------
# jrd/build_no.h contains the version and build# fields used throughout the
# program and quoted in the tools. This routine will update the build_no.h
# file with the auto update build# script file, writeBuildNum.sh. The
# writeBuildNum.sh script is autoupdated by CVS checkins.
#
.PHONY: updateBuildNum
updateBuildNum : $(SRC_ROOT)/jrd/build_no.h $(GEN_ROOT)/Make.Version
$(SRC_ROOT)/jrd/build_no.h : $(SRC_ROOT)/misc/writeBuildNum.sh
(cd ..; ./src/misc/writeBuildNum.sh rebuildHeader)
$(GEN_ROOT)/Make.Version : $(SRC_ROOT)/misc/writeBuildNum.sh
$(SRC_ROOT)/misc/writeBuildNum.sh createMakeVersion $@
#___________________________________________________________________________
# build external software
#
extern:
$(MAKE) -C $(ROOT)/extern/btyacc
#___________________________________________________________________________
# create platform-specific export lists (version scripts) in gen
#
%.vers: ../builds/posix/%.vers
sh vers.sh $(firstword $@)
export_lists: $(ALLVERS)
#___________________________________________________________________________
# main build target for both debug abd release builds
#
.PHONY: boot yvalve engine fbintl gpre utilities plugins rest codes
master_process:
$(MAKE) updateBuildNum
$(MAKE) export_lists
$(MAKE) extern
$(MAKE) boot
$(MAKE) yvalve
$(MAKE) engine
$(MAKE) fbintl
$(MAKE) utilities
# Now having ready such useful tool as gbak, we may restore required databases
# and switch to full-featured gpre
$(MAKE) gpre
# Pay attention - after build force gpre_current to point to gpre
# even if gpre itself was not rebuilt
-$(RM) $(GPRE_CURRENT)
(cd $(BIN); $(LN) $(notdir $(GPRE)) $(notdir $(GPRE_CURRENT)))
ifeq ($(IsDeveloper), Y)
# In developer mode we must regenerate verious files in include/gen
$(MAKE) codes
endif
$(MAKE) plugins
$(MAKE) rest
#___________________________________________________________________________
# static library - various common code, used in different FB projects
#
$(COMMON_LIB): $(Common_Objects)
-$(RM) $@
$(STATICLIB_LINK) $@ $^
#___________________________________________________________________________
# gpre_boot
#
boot: $(GPRE_BOOT)
$(GPRE_BOOT): $(GPRE_Boot_Objects) $(COMMON_LIB)
$(STATICEXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS)
-$(RM) $(GPRE_CURRENT)
(cd $(@D); $(LN) $(@F) $(notdir $(GPRE_CURRENT)))
#___________________________________________________________________________
# yValve
#
yvalve: $(LIBFIREBIRD_BASENAME)
ifneq ($(LibraryBaseName),$(LibrarySoName))
$(LIBFIREBIRD_BASENAME): $(LIBFIREBIRD_SONAME)
(cd $(LIB) && $(LN) -f $(LibrarySoName) $(LibraryBaseName) )
endif
ifneq ($(LibrarySoName),$(LibraryFullName))
$(LIBFIREBIRD_SONAME): $(LIBFIREBIRD_FULLNAME)
(cd $(LIB) && $(LN) -f $(LibraryFullName) $(LibrarySoName) )
endif
# remote redirector is statically linked in main FB library
$(LIBFIREBIRD_FULLNAME): $(YValve_Objects) $(Remote_Client_Objects) $(COMMON_LIB)
$(LINK_FIREBIRD) -o $@ $^ $(LINK_FIREBIRD_LIBS)
#___________________________________________________________________________
# core part - jrd's engine
#
engine: $(ENGINE_SONAME)
$(ENGINE_SONAME): $(Engine_Objects) $(SVC_Objects) $(COMMON_LIB)
$(LINK_ENGINE) -o $@ $^ $(LINK_ENGINE_LIBS)
#___________________________________________________________________________
# intl support
#
fbintl: $(LIBFBINTL_SO)
$(LIBFBINTL_SO): $(INTL_Objects) $(COMMON_LIB)
$(LINK_INTL) -o $@ $^ $(LINK_INTL_LIBS)
#___________________________________________________________________________
# full gpre
# when switching to it we also build databases needed later
# and libib_util needed to start engine smart
#
.PHONY: databases udfsupport
gpre: $(GPRE) databases udfsupport
$(GPRE): $(GPRE_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
databases: yachts.lnk help.fdb security.fdb msg.timestamp
yachts.lnk: metadata.fdb
-$(RM) $@
$(LN) $^ $@
metadata.fdb: $(BLD_ROOT)/misc/metadata.gbak
$(GBAK) -MODE read_only -R $< $@
$(TOUCH) $@
$(CHMOD) 0444 $@
help.fdb: $(FIREBIRD)/help/help.fdb
-$(RM) $@
$(LN) $^ $@
$(FIREBIRD)/help/help.fdb: $(BLD_ROOT)/misc/help.gbak
$(GBAK) -MODE read_only -R $< $@
$(TOUCH) $@
$(CHMOD) 0444 $@
security.fdb: $(SECURITY_FDB)
-$(RM) $@
$(LN) $(SECDB) $@
SECDB = security.tmp
$(SECURITY_FDB): $(SRC_ROOT)/dbs/security.sql
-$(RM) $@
-$(RM) $(SECDB)
echo create database \'$(SECDB)\'\; | $(ISQL)
$(ISQL) -i $^ $(SECDB)
$(CHMOD) a=rw $(SECDB)
$(CP) $(SECDB) $@
msg.timestamp: $(MSG_FILES)
-$(RM) msg.fdb
echo create database \'msg.fdb\'\; | $(ISQL)
for sql in $(MSG_FILES); do (echo $$sql; $(ISQL) -i $$sql msg.fdb) || exit; done
$(TOUCH) $@
.PHONY: udfs ibutil ibudf fbudf
udfsupport:
$(MAKE) ibutil
$(MAKE) udfs
udfs: ibudf fbudf
UDF = $(FIREBIRD)/UDF
IBUDF_SO = $(UDF)/ib_udf.$(SHRLIB_EXT)
FBUDF_SO = $(UDF)/fbudf.$(SHRLIB_EXT)
ibudf: $(IBUDF_SO)
$(IBUDF_SO): $(IBUDF_Objects)
$(call LINK_UDF,ib_udf) -o $@ $^ $(LINK_UDF_LIBS)
fbudf: $(FBUDF_SO)
$(FBUDF_SO): $(FBUDF_Objects) $(COMMON_LIB)
$(call LINK_UDF,fbudf) -o $@ $^ $(LINK_UDF_LIBS) $(FIREBIRD_LIBRARY_LINK)
ibutil: $(LIBIBUTIL_SO)
$(LIBIBUTIL_SO): $(UTIL_Objects)
$(LINK_IB_UTIL) -o $@ $^ $(LINK_IB_UTIL_LIBS)
#___________________________________________________________________________
# most of utilities, including network server
# qli is not here cause it needs special database (help.fdb), therefore needs gbak
#
.PHONY: firebird_server fb_lock_print fbguard fbsvcmgr fbtracemgr gbak gfix gsec gsplit gstat isql nbackup
utilities: firebird_server fb_lock_print fbguard fbsvcmgr fbtracemgr gbak gfix gsec gsplit gstat isql nbackup
firebird_server: $(FB_DAEMON)
$(FB_DAEMON): $(Remote_Server_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
fb_lock_print: $(LOCKPRINT)
$(LOCKPRINT): $(LOCKPRINT_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
fbguard: $(FBGUARD)
$(FBGUARD): $(FBGUARD_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
fbsvcmgr: $(FBSVCMGR)
$(FBSVCMGR): $(FBSVCMGR_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
fbtracemgr: $(FBTRACEMGR)
$(FBTRACEMGR): $(FBTRACEMGR_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
gbak: $(GBAK)
$(GBAK): $(GBAK_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
gsplit: $(GSPLIT)
$(GSPLIT): $(GSPLIT_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
gfix: $(GFIX)
$(GFIX): $(GFIX_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
gsec: $(GSEC)
$(GSEC): $(GSEC_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
gstat: $(GSTAT)
$(GSTAT): $(GSTAT_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
isql: $(ISQL)
$(ISQL): $(ISQL_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS) $(LIBEDITLINE)
nbackup: $(NBACKUP)
$(NBACKUP): $(NBACKUP_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
#___________________________________________________________________________
# plugins - some of them are required to build examples, use separate entry for them
#
.PHONY: udr legacy_user_management trace
UDR_PLUGIN = $(PLUGINS)/$(LIB_PREFIX)udr_engine.$(SHRLIB_EXT)
LEGACY_USER_MANAGER = $(PLUGINS)/$(LIB_PREFIX)user_management.$(SHRLIB_EXT)
plugins: udr legacy_user_management trace
udr: $(UDR_PLUGIN) $(PLUGINS)/udr_engine.conf
$(PLUGINS)/udr_engine.conf: $(ROOT)/src/plugins/udr_engine/udr_engine.conf
cp $^ $@
$(UDR_PLUGIN): $(UDRENG_Objects) $(COMMON_LIB)
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)
legacy_user_management: $(LEGACY_USER_MANAGER)
$(LEGACY_USER_MANAGER): $(LEGACY_USERS_MANAGE_Objects) $(COMMON_LIB)
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(notdir $@).0) -o $@ $^ $(LINK_PLUG_LIBS) $(FIREBIRD_LIBRARY_LINK)
trace: $(FBTRACE)
$(FBTRACE): $(FBTRACE_UTIL_Objects) $(COMMON_LIB)
$(LINK_TRACE) -o $@ $^ $(FIREBIRD_LIBRARY_LINK) $(LINK_TRACE_LIBS)
#___________________________________________________________________________
# codes - developers change them sometimes
#
.PHONY: gen_codes
CODES = $(BIN)/codes$(EXEC_EXT)
IDS = $(SRC_ROOT)/include/gen/ids.h
codes: gen_codes $(IDS)
gen_codes: $(CODES) msg.timestamp
$(CODES) $(SRC_ROOT)/include/gen $(LNG_ROOT)
$(CODES): $(CODES_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
$(IDS): $(SRC_ROOT)/misc/ids.m $(SRC_ROOT)/jrd/relations.h
m4 $< > $@
#___________________________________________________________________________
# all the rest we need to build
#
.PHONY: qli examples message_file
rest: qli examples message_file
qli: $(QLI)
$(QLI): $(QLI_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
examples:
$(MAKE) -f Makefile.examples -C $(GEN_ROOT)/examples/
$(MAKE) -f Makefile.plugins_examples -C $(GEN_ROOT)/examples/
message_file: $(FIREBIRD_MSG)
$(FIREBIRD_MSG): $(BUILD_FILE) msg.timestamp
$(BUILD_FILE) -d msg.fdb -f $@
$(CHMOD_6) $@
$(BUILD_FILE): $(BUILD_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
#___________________________________________________________________________
# track dependencies
#
include $(ROOT)/gen/make.shared.targets
Dependencies = $(AllObjects:.o=.d)
-include $(Dependencies)
#___________________________________________________________________________
# various cleaning
#
.PHONY: clean clean_objects clean_dependancies clean_extern_objects clean_build \
clean_gpre_gen clean_icu clean_dbs clean_examples clean_makefiles \
clean_editline clean_all
clean: clean_objects clean_dependancies clean_extern_objects clean_build \
clean_yacc_gen clean_gpre_gen clean_dbs clean_examples
ifeq ($(EDITLINE_FLG),Y)
ifeq ($(STD_EDITLINE),false)
clean: clean_editline
endif
endif
clean_config clean_all: clean clean_makefiles
$(RM) $(ROOT)/configure
$(RM) $(ROOT)/aclocal.m4
$(RM) $(ROOT)/config.log
$(RM) $(ROOT)/config.status
$(RM) $(ROOT)/libtool
$(RM_R) $(ROOT)/autom4te.cache
-$(MAKE) -C $(ROOT)/extern/editline distclean
# -$(MAKE) -C $(ROOT)/extern/icu/source distclean
-$(MAKE) -C $(ROOT)/extern/btyacc distclean
clean_dbs:
$(RM) *.fdb *.FDB msg.timestamp
$(RM) yachts.lnk
# The examples are a bit different, since the makefile is included in the directory
# and not in the gen directory, deleting it means, make clean; make doesnt work correctly
# so the code below deletes all the other stuff but not the Makefile.examples MOD Nov-2007
clean_examples:
$(RM) `find $(GEN_ROOT)/examples/ -type f ! -name 'Make*'`
clean_editline:
-$(MAKE) -C $(ROOT)/extern/editline clean
#clean_icu:
# -$(MAKE) -C $(ROOT)/extern/icu/source clean
clean_objects:
$(RM) `find $(ROOT)/extern/ -type f -name '*.lo' -print`
$(RM) `find $(TMP_ROOT)/ -type f -name '*.o' -print`
clean_extern_objects:
$(RM) `find $(ROOT)/extern/ -type f -name '*.o' -print`
# Clear out dependancies files created by the gcc compiler
# since when .o and other files are deleted the dependant
# targets need to be recalculated
# MOD 10-July-2002
clean_dependancies:
$(RM) -f `find $(TMP_ROOT)/ -type f -name '*.d' -print`
# delete only all of the files of type regular file in $FIREBIRD
# leave the directories to make dependacies work still
# MOD 11-July-2002
clean_build:
$(RM) `find $(GEN_ROOT)/*/firebird \( -type f -o -type l \) -print`
# $(RM) $(GDSLIB_OBJECTS) $(GDSLIB_PHASE3_OBJECTS)
#
clean_makefiles:
$(RM) $(GEN_ROOT)/Make*
$(RM) $(GEN_ROOT)/make*
$(RM) `find $(GEN_ROOT)/install \( -type f -o -type l \) -print`
-$(RM) $(GEN_ROOT)/examples/Make*
$(RM) $(ROOT)/Makefile
$(RM) $(SRC_ROOT)/include/gen/autoconfig.h
$(RM) $(SRC_ROOT)/include/gen/blrtable.h
clean_gpre_gen:
-$(RM) -f `find $(TMP_ROOT)/ -type f -name '*.cpp' -print`
clean_yacc_gen:
$(RM) $(ROOT)/src/dsql/parse.cpp $(ROOT)/src/dsql/dsql.tab.h
#___________________________________________________________________________
# Extra platform specific targets
@POSTFIX_INCLUDE@

View File

@ -1,88 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
JRDBOOT_Files = dsc.cpp gds.cpp isc.cpp $(JRDBOOT_Extra_Files)
JRDBOOT_Sources = $(addprefix jrd/, $(JRDBOOT_Files))
JRDBOOT_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(JRDBOOT_Sources))))
COMMONBOOT_Files = cvt.cpp dllinst.cpp
COMMONBOOT_Sources = $(addprefix common/, $(COMMONBOOT_Files))
COMMONBOOT_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(COMMONBOOT_Sources))))
GPRECOMMON_Files += cmd.cpp cme.cpp cmp.cpp c_cxx.cpp exp.cpp \
gpre.cpp hsh.cpp int_cxx.cpp jrdmet.cpp movg.cpp \
msc.cpp par.cpp pat.cpp sqe.cpp sql.cpp \
@GPRE_LANGUAGE_MODULES@
GPRE_Files = $(GPRECOMMON_Files) pretty.cpp gpre_meta_boot.cpp
GPRE_Sources = $(addprefix gpre/, $(GPRE_Files))
GPRE_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GPRE_Sources))))
GPREBOOT_Objects = $(JRDBOOT_Objects) $(GPRE_Objects) $(OS_SPECIFIC_Objects) \
$(FBCOMMON_Objects) $(FBCONFIG_Objects) $(FBCLASSES_ClientObjects) \
$(FBCLASSES_MsgObjects) $(COMMONBOOT_Objects)
AllObjects = $(GPREBOOT_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: gpre_boot
gpre_boot : $(GPRE_BOOT)
$(GPRE_BOOT): $(GPREBOOT_Objects)
$(STATICEXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS)
-$(RM) $(GPRE_CURRENT)
(cd $(@D); $(LN) $(@F) $(notdir $(GPRE_CURRENT)))
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,87 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Blas Rodriguez Somoza
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=superclient
CXXFLAGS+= -DSUPERCLIENT
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
UDF= $(FIREBIRD)/UDF
FBUDF_Other_Sources = common/classes/timestamp.cpp
FBUDF_Files = fbudf.cpp
FBUDF_Sources = $(addprefix extlib/fbudf/, $(FBUDF_Files)) $(FBUDF_Other_Sources)
FBUDF_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBUDF_Sources))))
UTIL_Files = ib_util.cpp
UTIL_Sources = $(addprefix extlib/, $(UTIL_Files))
UTIL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(UTIL_Sources))))
CLASSES_Files = timestamp.cpp
CLASSES_Sources = $(addprefix common/classes/, $(CLASSES_Files))
CLASSES_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CLASSES_Sources))))
AllObjects = $(FBUDF_Objects) $(FBUTILSVC_Objects) $(CLASSES_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all lib_fbudf
all: lib_fbudf
# The libraries in this directory could do with a bit more work, since they
# the previous code (presumably by John) that does the ar crv stuff, might
# work still, even if the .o files have directory prefixes on them.
# And the udf stuff doesn't want to do .$(SHRLIB_EXT).X.X.X extensions in UDF directory
# or the loader gets confused with loading the links.
# MOD 29-July-2002
#
# User defined functions. (I've put the .$(SHRLIB_EXT) extension back onto the library)
#
lib_fbudf: $(LIBIBUTIL_SO) $(UDF)/fbudf.$(SHRLIB_EXT)
$(UDF)/fbudf.$(SHRLIB_EXT): $(AllObjects)
$(call LINK_UDF,fbudf) -o $@ $^ $(LINK_UDF_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,81 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
GBAK_Other_Sources = remote/xdr.cpp jrd/sdl.cpp \
common/classes/MetaName.cpp jrd/path_utils.cpp jrd/ThreadData.cpp
GBAK_Files = backup.epp restore.epp OdsDetection.epp burpMain.cpp \
burp.cpp canonical.cpp misc.cpp mvol.cpp
GBAK_Sources = $(addprefix burp/, $(GBAK_Files)) $(GBAK_Other_Sources)
GBAK_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GBAK_Sources)))) \
$(FBUTILSVC_Objects) $(CLUMPLETS_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects)
GSPLIT_Other_Sources = jrd/path_utils.cpp
GSPLIT_Files= spit.cpp
GSPLIT_Sources = $(addprefix burp/, $(GSPLIT_Files)) $(GSPLIT_Other_Sources)
GSPLIT_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GSPLIT_Sources)))) \
$(FBUTIL_Objects) $(FBCLASSES_Objects) $(FBCOMMON_Objects)
AllObjects = $(GBAK_Objects) $(GSPLIT_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all gbak gsplit
all: gbak gsplit
gbak : $(LIBFBCLIENT_SO) $(GBAK)
$(GBAK): $(GBAK_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
gsplit : $(LIBFBCLIENT_SO) $(GSPLIT)
$(GSPLIT): $(GSPLIT_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,65 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
GFIX_Other_Sources = jrd/isc.cpp jrd/ThreadData.cpp jrd/path_utils.cpp
GFIX_Files = alice_meta.epp alice.cpp exe.cpp tdr.cpp aliceMain.cpp
GFIX_Sources = $(addprefix alice/, $(GFIX_Files)) $(GFIX_Other_Sources)
GFIX_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GFIX_Sources))))
AllObjects = $(GFIX_Objects) $(CLUMPLETS_Objects) $(FBCOMMON_Objects) \
$(FBCLASSES_ClientObjects) $(FBCLASSES_MsgObjects) $(FBUTILSVC_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: gfix
gfix : $(LIBFBCLIENT_SO) $(GFIX)
$(GFIX): $(AllObjects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,67 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
GPRE_Other_Sources = jrd/dsc.cpp jrd/path_utils.cpp common/cvt.cpp
GPRE_Files = gpre_meta.epp \
cmd.cpp cme.cpp cmp.cpp c_cxx.cpp exp.cpp gpre.cpp \
hsh.cpp int_cxx.cpp jrdmet.cpp movg.cpp msc.cpp par.cpp \
pat.cpp pretty.cpp sqe.cpp sql.cpp \
@GPRE_LANGUAGE_MODULES@
GPRE_Sources = $(addprefix gpre/, $(GPRE_Files)) $(GPRE_Other_Sources)
GPRE_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GPRE_Sources))))
AllObjects = $(GPRE_Objects) $(CLUMPLETS_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: gpre
gpre : $(LIBFBCLIENT_SO) $(GPRE)
$(GPRE): $(GPRE_Objects) $(CLUMPLETS_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,54 +0,0 @@
# The contents of this file are subject to the Initial
# Developer's Public License Version 1.0 (the "License");
# you may not use this file except in compliance with the
# License. You may obtain a copy of the License at
# http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_idpl.
#
# Software distributed under the License is distributed AS IS,
# WITHOUT WARRANTY OF ANY KIND, either express or implied.
# See the License for the specific language governing rights
# and limitations under the License.
#
# The Original Code was created by Alexander Peshkoff
# for the Firebird Open Source RDBMS project.
#
# Copyright (c) 2004 Alexander Peshkoff <peshkoff@mail.ru>
# and all contributors signed below.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
GSEC_Other_Sources = jrd/isc_file.cpp jrd/ThreadData.cpp
GSEC_Files = gsec.cpp call_service.cpp gsecMain.cpp security.cpp
GSEC_Sources = $(addprefix utilities/gsec/, $(GSEC_Files)) $(GSEC_Other_Sources)
GSEC_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GSEC_Sources))))
AllObjects = $(GSEC_Objects) $(FBCONFIG_Objects) $(COMMON_Objects) \
$(CLUMPLETS_Objects) $(OS_SPECIFIC_Objects) $(FBUTILSVC_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all gsec
all: gsec
gsec: $(LIBFBCLIENT_SO) $(GSEC)
$(GSEC): $(AllObjects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,67 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
unexport ISC_USER
unexport ISC_PASSWORD
ISQL_Other_Sources = jrd/path_utils.cpp dsql/keywords.cpp
ISQL_Files = extract.epp isql.epp show.epp Extender.cpp InputDevices.cpp \
ColList.cpp OptionsBase.cpp iutils.cpp
ISQL_Sources = $(addprefix isql/, $(ISQL_Files)) $(ISQL_Other_Sources)
ISQL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(ISQL_Sources))))
AllObjects = $(ISQL_Objects) $(FBCOMMON_Objects) $(FBUTIL_Objects) $(CLUMPLETS_Objects) $(FBCLASSES_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: isql
isql : $(LIBFBCLIENT_SO) $(ISQL)
$(ISQL): $(AllObjects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS) $(LIBEDITLINE)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,76 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
QLI_Other_Sources = jrd/dsc.cpp gpre/pretty.cpp jrd/path_utils.cpp
QLI_Files= all.cpp command.cpp compile.cpp dtr.cpp err.cpp eval.cpp \
expand.cpp exe.cpp format.cpp gener.cpp help.cpp \
hsh.cpp lex.cpp meta.cpp mov.cpp parse.cpp picstr.cpp proc.cpp \
report.cpp show.cpp
QLI_Sources = $(addprefix qli/, $(QLI_Files)) $(QLI_Other_Sources)
QLI_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(QLI_Sources))))
AllObjects = $(QLI_Objects) $(CLUMPLETS_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects) $(FBUTIL_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all qli
all: qli
qli : create_yachts $(LIBFBCLIENT_SO) $(QLI)
$(QLI): $(AllObjects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
# EKU: At this point yachts.lnk is a link to empty.fdb, but gpre will fail
# with it. metadata.fdb is what is needed here.
create_yachts:
-$(RM) yachts.lnk
-$(LN) -f metadata.fdb yachts.lnk
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,234 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
LOCKPRINT_Other_Sources = jrd/isc_sync.cpp jrd/isc.cpp jrd/db_alias.cpp \
common/config/config.cpp common/config/config_file.cpp common/config/ConfigCache.cpp \
$(OS_SPECIFIC_Sources)
LOCKPRINT_Files= print.cpp
LOCKPRINT_Sources = $(addprefix lock/, $(LOCKPRINT_Files)) $(LOCKPRINT_Other_Sources)
LOCKPRINT_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(LOCKPRINT_Sources)))) \
$(FBCONFIG_Objects)
NBACKUP_Other_Sources = jrd/db_alias.cpp jrd/ods.cpp $(OS_SPECIFIC_Sources)
NBACKUP_Files= nbackup.cpp nbackup/nbkMain.cpp
NBACKUP_Sources = $(addprefix utilities/, $(NBACKUP_Files)) $(NBACKUP_Other_Sources)
NBACKUP_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(NBACKUP_Sources)))) \
$(CLUMPLETS_Objects) $(FBCONFIG_Objects) $(FBUTILSVC_Objects)
CREATEDB_Files= create_db.cpp
CREATEDB_Sources = $(addprefix utilities/, $(CREATEDB_Files))
CREATEDB_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CREATEDB_Sources))))
DROP_Other_Sources = common/utils.cpp lock/lock.cpp jrd/isc_sync.cpp jrd/isc.cpp \
common/config/config.cpp common/config/config_file.cpp common/config/ConfigCache.cpp \
$(OS_SPECIFIC_Sources)
DROP_Files= drop.cpp
DROP_Sources = $(addprefix utilities/, $(DROP_Files)) $(DROP_Other_Sources)
DROP_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(DROP_Sources)))) \
$(FBCOMMON_ClientObjects) $(FBCLASSES_ClientObjects)
GSTAT_Other_Sources = jrd/btn.cpp jrd/db_alias.cpp jrd/ods.cpp common/utils.cpp \
$(OS_SPECIFIC_Sources) jrd/isc_file.cpp jrd/isc.cpp jrd/ThreadData.cpp \
common/classes/DbImplementation.cpp
GSTAT_Files = dba.epp ppg.cpp gstatMain.cpp
GSTAT_Sources = $(addprefix utilities/gstat/, $(GSTAT_Files)) $(GSTAT_Other_Sources)
GSTAT_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GSTAT_Sources)))) \
$(CLUMPLETS_Objects) $(FBUTILSVC_Objects)
FBSVCMGR_Files= fbsvcmgr.cpp
FBSVCMGR_Other_Sources = common/classes/fb_string.cpp common/classes/alloc.cpp \
common/fb_exception.cpp common/utils.cpp common/classes/locks.cpp jrd/path_utils.cpp
FBSVCMGR_Sources = $(addprefix utilities/, $(FBSVCMGR_Files)) $(FBSVCMGR_Other_Sources)
FBSVCMGR_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBSVCMGR_Sources)))) \
$(FBCLASSES_MsgObjects) $(CLUMPLETS_Objects) $(FBCOMMON_ClientObjects)
FBTRACEMGR_Files= fbtracemgr/traceMgrMain.cpp
FBTRACEMGR_Other_Sources = common/classes/fb_string.cpp common/classes/alloc.cpp \
common/fb_exception.cpp common/utils.cpp common/classes/locks.cpp \
jrd/trace/TraceCmdLine.cpp jrd/path_utils.cpp
FBTRACEMGR_Sources = $(addprefix utilities/, $(FBTRACEMGR_Files)) $(FBTRACEMGR_Other_Sources)
FBTRACEMGR_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBTRACEMGR_Sources)))) \
$(FBCLASSES_MsgObjects) $(CLUMPLETS_Objects) $(FBCOMMON_ClientObjects) $(FBUTILSVC_Objects)
FBGUARD_Other_Sources = jrd/isc.cpp jrd/divorce.cpp jrd/path_utils.cpp
FBGUARD_Files = guard.cpp util.cpp
FBGUARD_Sources = $(addprefix utilities/guard/, $(FBGUARD_Files)) $(FBGUARD_Other_Sources)
FBGUARD_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBGUARD_Sources)))) $(FBCLASSES_ClientObjects)
IBGUARD_A_Files = cntl_guard.cpp iscguard.cpp
IBGUARD_A_Sources = $(addprefix iscguard/, $(IBGUARD_A_Files))
IBGUARD_A_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(IBGUARD_A_Sources))))
IBGUARD_B_Files = os/win32/chop.cpp
IBGUARD_B_Sources = $(addprefix remote/, $(IBGUARD_B_Files))
IBGUARD_B_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(IBGUARD_B_Sources))))
FBMGR_Other_Sources = jrd/path_utils.cpp
FBMGR_Files = ibmgr.cpp srvrmgr.cpp
FBMGR_Sources = $(addprefix utilities/ibmgr/, $(FBMGR_Files)) $(FBMGR_Other_Sources)
FBMGR_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBMGR_Sources))))
INSTREG_Files = install_reg.cpp registry.cpp
INSTREG_Sources = $(addprefix utilities/install/, $(INSTREG_Files))
INSTREG_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(INSTREG_Sources))))
INSTSVC_Files = install_svc.cpp services.cpp
INSTSVC_Other_Sources = common/classes/alloc.cpp common/classes/fb_string.cpp
INSTSVC_Sources = $(addprefix utilities/install/, $(INSTSVC_Files)) $(INSTSVC_Other_Sources)
INSTSVC_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(INSTSVC_Sources)))) $(FBCOMMON_ClientObjects)
REBUILD_Files = rebuild.cpp rstore.epp rmet.epp
REBUILD_Sources = $(addprefix utilities/rebuild/, $(REBUILD_Files))
REBUILD_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(REBUILD_Sources))))
RELAY_Files = relay.cpp
RELAY_Sources = $(addprefix utilities/, $(RELAY_Files))
RELAY_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(RELAY_Sources))))
AllObjects = $(CREATEDB_Object) $(DROP_Object) $(GSTAT_Object) $(FBGUARD_Objects) \
$(FBMGR_Objects) $(REBUILD_Objects) $(RELAY_Objects) $(FBSVCMGR_Objects) \
$(FBTRACEMGR_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all gstat gsec fbguard fbmgr_bin nbackup gds_drop gds_relay create_db fb_lock_print \
fbsvcmgr fbtracemgr
all: $(CLIENT_UTIL_TARGETS)
create_db: $(CREATE_DB)
$(CREATE_DB): $(CREATEDB_Objects)
$(STATICEXE_LINK) $(LINK_OPTS) $(CREATEDB_Objects) -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
nbackup: $(LIBFBCLIENT_SO) $(NBACKUP)
$(NBACKUP): $(NBACKUP_Objects) $(CLUMPLETS_Objects) $(COMMON_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
fb_lock_print: $(LIBFBCLIENT_SO) $(LOCKPRINT)
$(LOCKPRINT): $(LOCKPRINT_Objects) $(COMMON_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
gstat : $(LIBFBCLIENT_SO) $(GSTAT)
$(GSTAT): $(GSTAT_Objects) $(CLUMPLETS_Objects) $(COMMON_Objects) $(FBCONFIG_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
gds_drop: $(GDS_DROP)
$(GDS_DROP): $(DROP_Objects) $(LIBFBCLIENT_SO)
$(EXE_LINK) $(LINK_OPTS) $(DROP_Objects) -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
fbsvcmgr: $(FBSVCMGR)
$(FBSVCMGR): $(FBSVCMGR_Objects) $(LIBFBCLIENT_SO)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS)
fbtracemgr: $(FBTRACEMGR)
$(FBTRACEMGR): $(FBTRACEMGR_Objects) $(LIBFBCLIENT_SO)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS)
fbguard: $(LIBFBCLIENT_SO) $(FBGUARD)
$(FBGUARD): $(FBGUARD_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LIB_GUI) $(LINK_LIBS)
ibguard: $(LIBFBCLIENT_SO) $(IBGUARD)
$(IBGUARD): $(IBGUARD_A_Objects) $(IBGUARD_B_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(FBCLASSES_Objects) $(FBCOMMON_Objects) -lfbclient \
$(LIB_GUI) $(LINK_LIBS)
fbmgr_bin: $(FBMGR_BIN)
$(FBMGR_BIN): $(FBMGR_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(FBCLASSES_Objects) $(FBCOMMON_Objects) -lfbclient \
$(LINK_LIBS)
instreg: $(INSTREG)
$(INSTREG): $(INSTREG_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS)
instsvc: $(INSTSVC)
$(INSTSVC): $(INSTSVC_Objects)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS)
# This one needs a bit of work.
rebuild: $(GDS_REBUILD)
$(GDS_REBUILD): $(REBUILD_Objects) $(LIBFBCLIENT_SO)
$(EXE_LINK) $(LINK_OPTS) $(REBUILD_Objects) -o $@ -L$(LIB) -lfbclient $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,73 +0,0 @@
# The contents of this file are subject to the Initial
# Developer's Public License Version 1.0 (the "License");
# you may not use this file except in compliance with the
# License. You may obtain a copy of the License at
# http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_idpl.
#
# Software distributed under the License is distributed AS IS,
# WITHOUT WARRANTY OF ANY KIND, either express or implied.
# See the License for the specific language governing rights
# and limitations under the License.
#
# The Original Code was created by Nickolay Samofatov
# for the Firebird Open Source RDBMS project.
#
# Copyright (c) 2004 Nickolay Samofatov <nickolay@broadviewsoftware.com>
# and all contributors signed below.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
#____________________________________________________________________________
#
# Rebuild the codes generates in the src/include/gen directory
# this target updates the values stored in the source path if they are
# different to the newly generated entries.
#
# There are also blrtable.h and ids.h which are generated as well.
.PHONY: generated_headers
#CODES_OutFiles= gds_codes.pas gds_codes.ftn iberror.h codetext.h \
# msgs.h rdb_codes.h sql_code.h msg_facs.h
#CODES_Results=$(addprefix include/gen/, $(CODES_OutFiles))
CODES_Sources = misc/codes.epp
CODES_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CODES_Sources))))
AllObjects = $(CODES_Objects)
Dependencies = $(AllObjects:.o=.d)
generated_headers: build_codes $(SRC_ROOT)/include/gen/ids.h
# Rebuild error codes
build_codes: $(BIN)/codes$(EXEC_EXT) msg.fdb
$(BIN)/codes$(EXEC_EXT) $(SRC_ROOT)/include/gen $(LNG_ROOT)
$(SRC_ROOT)/misc/codes.cpp: $(SRC_ROOT)/misc/codes.epp
$(GPRE_CURRENT) $(GPRE_FLAGS) $< $@
$(BIN)/codes$(EXEC_EXT): $(CODES_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS) $(ICU_LIBS)
# Rebuild ids.h
$(SRC_ROOT)/include/gen/ids.h: $(SRC_ROOT)/misc/ids.m $(SRC_ROOT)/jrd/relations.h
m4 $< > $(SRC_ROOT)/include/gen/ids.h
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,73 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Blas Rodriguez Somoza
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=superclient
CXXFLAGS+= -DSUPERCLIENT
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
UDF= $(FIREBIRD)/UDF
FBUDF_Other_Sources = common/classes/timestamp.cpp
FBUDF_Files = fbudf.cpp
FBUDF_Sources = $(addprefix extlib/fbudf/, $(FBUDF_Files)) $(FBUDF_Other_Sources)
FBUDF_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBUDF_Sources))))
UTIL_Files = ib_util.cpp
UTIL_Sources = $(addprefix extlib/, $(UTIL_Files))
UTIL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(UTIL_Sources))))
AllObjects = $(FBUDF_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all lib_fbudf
all: lib_fbudf
#
# User defined functions. (I've put the .$(SHRLIB_EXT) extension back onto the library)
#
lib_fbudf: $(LIBIBUTIL_SO) $(UDF)/fbudf.$(SHRLIB_EXT)
$(UDF)/fbudf.$(SHRLIB_EXT): $(FBUDF_Objects)
$(call LINK_UDF,fbudf) -o $@ $^ $(LINK_UDF_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,78 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
GBAK_Other_Sources = remote/xdr.cpp jrd/sdl.cpp jrd/path_utils.cpp \
jrd/ThreadData.cpp
GBAK_Files = backup.epp restore.epp OdsDetection.epp \
burp.cpp canonical.cpp misc.cpp mvol.cpp burpMain.cpp
GBAK_Sources = $(addprefix burp/, $(GBAK_Files)) $(GBAK_Other_Sources)
GBAK_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GBAK_Sources)))) \
$(FBUTILSVC_Objects) $(CLUMPLETS_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects)
GSPLIT_Other_Sources = jrd/path_utils.cpp
GSPLIT_Files= spit.cpp
GSPLIT_Sources = $(addprefix burp/, $(GSPLIT_Files)) $(GSPLIT_Other_Sources)
GSPLIT_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GSPLIT_Sources)))) \
$(FBUTIL_Objects) $(FBCLASSES_Objects) $(FBCOMMON_Objects)
AllObjects = $(GBAK_Objects) $(GSPLIT_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all gbak gsplit
all: gbak gsplit
gbak : $(LIBFBEMBED_SO) $(GBAK)
$(GBAK): $(GBAK_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
gsplit : $(LIBFBEMBED_SO) $(GSPLIT)
$(GSPLIT): $(GSPLIT_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,67 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
GFIX_Files = alice_meta.epp \
alice.cpp exe.cpp tdr.cpp aliceMain.cpp
GFIX_Other_Sources += jrd/isc.cpp jrd/ThreadData.cpp jrd/path_utils.cpp
GFIX_Sources = $(addprefix alice/, $(GFIX_Files)) $(GFIX_Other_Sources)
GFIX_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GFIX_Sources))))
AllObjects = $(GFIX_Objects) $(CLUMPLETS_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects) \
$(FBUTILSVC_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: gfix
gfix : $(LIBFBEMBED_SO) $(GFIX)
$(GFIX): $(AllObjects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,66 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
GPRE_Other_Sources = jrd/dsc.cpp jrd/path_utils.cpp common/cvt.cpp
GPRE_Files = gpre_meta.epp \
cmd.cpp cme.cpp cmp.cpp c_cxx.cpp exp.cpp gpre.cpp \
hsh.cpp int_cxx.cpp jrdmet.cpp movg.cpp msc.cpp par.cpp \
pat.cpp pretty.cpp sqe.cpp sql.cpp \
@GPRE_LANGUAGE_MODULES@
GPRE_Sources = $(addprefix gpre/, $(GPRE_Files)) $(GPRE_Other_Sources)
GPRE_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GPRE_Sources))))
AllObjects = $(GPRE_Objects) $(CLUMPLETS_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: gpre
gpre : $(LIBFBEMBED_SO) $(GPRE)
$(GPRE): $(GPRE_Objects) $(CLUMPLETS_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,67 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
unexport ISC_USER
unexport ISC_PASSWORD
ISQL_Other_Sources = jrd/path_utils.cpp
ISQL_Files = extract.epp isql.epp show.epp Extender.cpp InputDevices.cpp \
ColList.cpp OptionsBase.cpp iutils.cpp
ISQL_Sources = $(addprefix isql/, $(ISQL_Files)) $(ISQL_Other_Sources)
ISQL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(ISQL_Sources))))
AllObjects = $(ISQL_Objects) $(FBCOMMON_Objects) $(FBUTIL_Objects) $(CLUMPLETS_Objects) $(FBCLASSES_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: isql
isql : $(LIBFBEMBED_SO) $(ISQL)
$(ISQL): $(AllObjects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LIBEDITLINE) $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,75 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
QLI_Other_Sources = jrd/dsc.cpp gpre/pretty.cpp jrd/path_utils.cpp
QLI_Files= all.cpp command.cpp compile.cpp dtr.cpp err.cpp eval.cpp \
expand.cpp exe.cpp format.cpp gener.cpp help.epp \
hsh.cpp lex.cpp meta.epp mov.cpp parse.cpp picstr.cpp proc.epp \
report.cpp show.epp
QLI_Sources = $(addprefix qli/, $(QLI_Files)) $(QLI_Other_Sources)
QLI_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(QLI_Sources))))
AllObjects = $(QLI_Objects) $(CLUMPLETS_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects) $(FBUTIL_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all qli
all: qli
qli : create_yachts $(LIBFBEMBED_SO) $(QLI)
$(QLI): $(AllObjects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
# EKU: At this point yachts.lnk is a link to empty.fdb, but gpre will fail
# with it. metadata.fdb is what is needed here.
create_yachts:
-$(RM) yachts.lnk
-$(LN) -f metadata.fdb yachts.lnk
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,225 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
LOCKPRINT_Other_Sources += jrd/isc_sync.cpp jrd/isc.cpp jrd/db_alias.cpp \
$(OS_SPECIFIC_Sources)
LOCKPRINT_Files= print.cpp
LOCKPRINT_Sources = $(addprefix lock/, $(LOCKPRINT_Files)) $(LOCKPRINT_Other_Sources)
LOCKPRINT_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(LOCKPRINT_Sources)))) \
$(FBCONFIG_Objects)
NBACKUP_Other_Sources = jrd/db_alias.cpp jrd/ods.cpp $(OS_SPECIFIC_Sources)
NBACKUP_Files= nbackup.cpp nbackup/nbkMain.cpp
NBACKUP_Sources = $(addprefix utilities/, $(NBACKUP_Files)) $(NBACKUP_Other_Sources)
NBACKUP_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(NBACKUP_Sources)))) \
$(FBCONFIG_Objects) $(FBUTILSVC_Objects)
CREATEDB_Files= create_db.cpp
CREATEDB_Sources = $(addprefix utilities/, $(CREATEDB_Files))
CREATEDB_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CREATEDB_Sources))))
DROP_Other_Sources += common/utils.cpp jrd/isc_sync.cpp jrd/isc.cpp \
common/config/config.cpp common/config/config_file.cpp common/config/ConfigCache.cpp \
$(OS_SPECIFIC_Sources)
DROP_Files= drop.cpp
DROP_Sources = $(addprefix utilities/, $(DROP_Files)) $(DROP_Other_Sources)
DROP_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(DROP_Sources)))) $(FBCOMMON_ClientObjects)
GSEC_Other_Sources = \
jrd/isc_file.cpp common/config/config.cpp common/config/config_file.cpp \
common/config/ConfigCache.cpp common/config/dir_list.cpp \
jrd/ThreadData.cpp $(OS_SPECIFIC_Sources)
GSEC_Files = gsec.cpp security.cpp call_service.cpp gsecMain.cpp
GSEC_Sources = $(addprefix utilities/gsec/, $(GSEC_Files)) $(GSEC_Other_Sources)
GSEC_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GSEC_Sources)))) \
$(FBUTILSVC_Objects)
GSTAT_Other_Sources = jrd/btn.cpp jrd/db_alias.cpp common/utils.cpp jrd/ods.cpp \
jrd/ThreadData.cpp jrd/isc_file.cpp $(OS_SPECIFIC_Sources) common/classes/DbImplementation.cpp
GSTAT_Files = dba.epp ppg.cpp gstatMain.cpp
GSTAT_Sources = $(addprefix utilities/gstat/, $(GSTAT_Files)) $(GSTAT_Other_Sources)
GSTAT_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GSTAT_Sources)))) \
$(FBUTILSVC_Objects)
FBSVCMGR_Files= fbsvcmgr.cpp
FBSVCMGR_Other_Sources = common/classes/fb_string.cpp common/classes/alloc.cpp \
common/fb_exception.cpp common/utils.cpp common/classes/locks.cpp jrd/path_utils.cpp \
common/classes/semaphore.cpp
FBSVCMGR_Sources = $(addprefix utilities/, $(FBSVCMGR_Files)) $(FBSVCMGR_Other_Sources)
FBSVCMGR_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBSVCMGR_Sources)))) \
$(FBCLASSES_MsgObjects) $(CLUMPLETS_Objects) $(FBCOMMON_ClientObjects)
FBTRACEMGR_Files= fbtracemgr/traceMgrMain.cpp
FBTRACEMGR_Other_Sources = common/classes/fb_string.cpp common/classes/alloc.cpp \
common/fb_exception.cpp common/utils.cpp common/classes/locks.cpp \
jrd/trace/TraceCmdLine.cpp jrd/path_utils.cpp common/classes/semaphore.cpp
FBTRACEMGR_Sources = $(addprefix utilities/, $(FBTRACEMGR_Files)) $(FBTRACEMGR_Other_Sources)
FBTRACEMGR_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBTRACEMGR_Sources)))) \
$(FBCLASSES_MsgObjects) $(CLUMPLETS_Objects) $(FBCOMMON_ClientObjects) $(FBUTILSVC_Objects)
FBGUARD_Other_Sources = jrd/isc.cpp jrd/divorce.cpp jrd/path_utils.cpp
FBGUARD_Files = guard.cpp util.cpp
FBGUARD_Sources = $(addprefix utilities/guard/, $(FBGUARD_Files)) $(FBGUARD_Other_Sources)
FBGUARD_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBGUARD_Sources)))) $(FBCLASSES_ClientObjects)
IBMGR_Files = ibmgr.cpp srvrmgr.cpp
IBMGR_Sources = $(addprefix utilities/ibmgr/, $(IBMGR_Files))
IBMGR_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(IBMGR_Sources))))
REBUILD_Files = rebuild.cpp rstore.epp rmet.epp
REBUILD_Sources = $(addprefix utilities/rebuild/, $(REBUILD_Files))
REBUILD_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(REBUILD_Sources))))
RELAY_Files = relay.cpp
RELAY_Sources = $(addprefix utilities/, $(RELAY_Files))
RELAY_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(RELAY_Sources))))
AllObjects = $(CREATEDB_Object) $(DROP_Object) $(FBSVCMGR_Objects) \
$(GSEC_Objects) $(GSTAT_Object) $(FBGUARD_Objects) \
$(IBMGR_Objects) $(REBUILD_Objects) $(RELAY_Objects) $(CLUMPLETS_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: create_db gstat gds_drop gds_relay gsec fbguard ibmgr_bin nbackup fb_lock_print \
fbsvcmgr fbtracemgr
all: $(EMBED_UTIL_TARGETS)
# it's important to note here that create_db is linked against the static
# 'boot' libraries rather than the later embedded shared library. The
# other utilities are released but create_db is used in construction.
# MOD 29-July-2002
create_db: $(CREATE_DB)
$(CREATE_DB): $(CREATEDB_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS) $(ICU_LIBS)
nbackup: $(LIBFBEMBED_SO) $(NBACKUP)
$(NBACKUP): $(NBACKUP_Objects) $(CLUMPLETS_Objects) $(COMMON_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
fb_lock_print: $(LIBFBEMBED_SO) $(LOCKPRINT)
$(LOCKPRINT): $(LOCKPRINT_Objects) $(COMMON_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
gstat : $(LIBFBEMBED_SO) $(GSTAT)
$(GSTAT): $(GSTAT_Objects) $(CLUMPLETS_Objects) $(COMMON_Objects) $(FBCONFIG_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
gds_drop: $(GDS_DROP)
$(GDS_DROP): $(DROP_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
fbsvcmgr: $(FBSVCMGR)
$(FBSVCMGR): $(FBSVCMGR_Objects) $(LIBFBEMBED_SO)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
fbtracemgr: $(FBTRACEMGR)
$(FBTRACEMGR): $(FBTRACEMGR_Objects) $(LIBFBEMBED_SO)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
gds_relay: $(GDS_RELAY)
$(GDS_RELAY): $(RELAY_Objects) $(LIBFBEMBED_SO)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $(RELAY_Objects) -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
gsec: $(GSEC)
$(GSEC): $(GSEC_Objects) $(CLUMPLETS_Objects) $(COMMON_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
fbguard: $(LIBFBCLIENT_SO) $(FBGUARD)
$(FBGUARD): $(FBGUARD_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ -L$(LIB) -lfbclient $(LIB_GUI) $(LINK_LIBS)
ibmgr_bin: $(IBMGR_BIN)
$(IBMGR_BIN): $(IBMGR_Objects) $(LIBFBEMBED_SO)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $(IBMGR_Objects) -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
# This one needs a bit of work.
rebuild: $(GDS_REBUILD)
$(GDS_REBUILD): $(REBUILD_Objects) $(LIBFBEMBED_SO)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $(REBUILD_Objects) -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -29,7 +29,6 @@
#
#
ROOT=../..
ObjModuleType=std
# Add the install include directory to the search path since the
# examples need to build using those headers values.
@ -51,15 +50,17 @@ include $(ROOT)/gen/make.shared.variables
PATH := ./:$(BIN):$(PATH)
export PATH
ifeq ($(PLATFORM),DARWIN)
DYLD_LIBRARY_PATH := $(GEN_ROOT)/firebird/lib
export DYLD_LIBRARY_PATH
else
LD_LIBRARY_PATH := $(GEN_ROOT)/firebird/lib
export LD_LIBRARY_PATH
endif
#ifeq ($(PLATFORM),DARWIN)
#DYLD_LIBRARY_PATH := $(GEN_ROOT)/firebird/lib
#export DYLD_LIBRARY_PATH
#else
#LD_LIBRARY_PATH := $(GEN_ROOT)/firebird/lib
#export LD_LIBRARY_PATH
#endif
GPRE_FLAGS= -r -m -z -n
LIB_LINK_RPATH = $(call LIB_PLATFORM_RPATH,$(if $(subst intl,,$(1)),$(LIB),$(LIB)/../intl))
EXAMPLES_DEST= $(GEN_ROOT)/examples
EXAMPLES_SRC= $(ROOT)/examples
@ -79,12 +80,13 @@ INTL_Sources = $(addprefix $(EXAMPLES_DEST)/, $(INTL_Files))
EMPLOYEE_DB= $(EXAMPLES_DEST)/employee.fdb
INTLEMP_DB= $(EXAMPLES_DEST)/intlemp.fdb
.PHONY: all examples plugins_examples
.PHONY: all examples
all: examples plugins_examples
all: examples
# examples: $(EMPLOYEE_DB) $(INTLEMP_DB) $(FIREBIRD)/examples/README
examples: $(EMPLOYEE_DB) $(FIREBIRD)/examples/README plugins_examples
examples: $(EMPLOYEE_DB)
$(MAKE) -f Makefile.examples $(FIREBIRD)/examples/README
$(FIREBIRD)/examples/README:
$(CP) $(ROOT)/examples/readme $(FIREBIRD)/examples/README
@ -120,14 +122,13 @@ $(EMPLOYEE_DB): $(EXAMPLES_DEST)/empbuild$(EXEC_EXT) $(INPUT_Sources) $(EXAMPLES
./empbuild $(EMPLOYEE_DB)
-$(CHMOD_6) $(EMPLOYEE_DB)
# To get past the fact isql is called from the programs, we create a local link
# to the static one in this directory
# To get past the fact isql is called from the programs, we create a local link in this directory
$(EXAMPLES_DEST)/isql$(EXEC_EXT):
-$(LN) $(ISQL_STATIC) $(EXAMPLES_DEST)/isql$(EXEC_EXT)
-$(LN) $(ISQL) $(EXAMPLES_DEST)/isql$(EXEC_EXT)
$(EXAMPLES_DEST)/empbuild$(EXEC_EXT): $(EMPBLD_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
$(EXE_LINK) $(LINK_OPTS) $(EMPBLD_Objects) $(COMMON_Objects) -o $@ -L$(LIB) -lfbstatic $(LINK_LIBS) $(ICU_LIBS)
$(EXAMPLES_DEST)/empbuild$(EXEC_EXT): $(EMPBLD_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
$(EXAMPLES_DEST)/empbuild.c: $(EXAMPLES_DEST)/empbuild.fdb $(EXAMPLES_DEST)/empbuild.e
@ -144,8 +145,8 @@ $(EXAMPLES_DEST)/intlemp.fdb: $(EXAMPLES_DEST)/intlbld$(EXEC_EXT) $(INTL_Sources
./intlbld intlemp.fdb
-$(CHMOD_6) intlemp.fdb
$(EXAMPLES_DEST)/intlbld$(EXEC_EXT): $(INTLBLD_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
$(EXE_LINK) $(LINK_OPTS) $(INTLBLD_Objects) $(COMMON_Objects) -o $@ -L$(LIB) -lfbstatic $(LINK_LIBS) $(ICU_LIBS)
$(EXAMPLES_DEST)/intlbld$(EXEC_EXT): $(INTLBLD_Objects) $(COMMON_LIB)
$(EXE_LINK) $(LINK_OPTS) @^ -o $@ -L$(LIB) $(FIREBIRD_LIBRARY_LINK) $(LINK_LIBS)
$(EXAMPLES_DEST)/intlbld.c: $(EXAMPLES_DEST)/intlbuild.fdb $(EXAMPLES_DEST)/intlbld.e
@ -165,6 +166,3 @@ $(EXAMPLES_DEST)/%.e: $(EXAMPLES_SRC)/empbuild/%.e
$(EXAMPLES_DEST)/%.h: $(EXAMPLES_SRC)/common/%.h
$(CP) $^ $@
plugins_examples: # plugins examples
$(MAKE) -f $(GEN_ROOT)/examples/Makefile.plugins_examples

View File

@ -1,42 +0,0 @@
# The contents of this file are subject to the Initial
# Developer's Public License Version 1.0 (the "License");
# you may not use this file except in compliance with the
# License. You may obtain a copy of the License at
# http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_idpl.
#
# Software distributed under the License is distributed AS IS,
# WITHOUT WARRANTY OF ANY KIND, either express or implied.
# See the License for the specific language governing rights
# and limitations under the License.
#
# The Original Code was created by Adriano dos Santos Fernandes
# for the Firebird Open Source RDBMS project.
#
# Copyright (c) 2005 Adriano dos Santos Fernandes <adrianosf@uol.com.br>
# and all contributors signed below.
#
# All Rights Reserved.
# Contributor(s): ______________________________________.
#
#
ROOT=..
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
ALL_ICU_SO = $(addsuffix *, $(notdir $(LIBICU_SO)))
.PHONY: libicu
# SD: Let it be so until I find the way to build only required things
libicu:
$(MAKE) -C $(ROOT)/extern/icu/source
(cd $(ROOT)/extern/icu/source/lib/; tar cf - $(ALL_ICU_SO)) | (cd $(LIB); tar xf -)
include $(ROOT)/gen/make.shared.targets

View File

@ -1,90 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
UDF= $(FIREBIRD)/UDF
UDF_Files = ib_udf.cpp
UDF_Sources = $(addprefix extlib/, $(UDF_Files))
UDF_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(UDF_Sources))))
UTIL_Files = ib_util.cpp
UTIL_Sources = $(addprefix extlib/, $(UTIL_Files))
UTIL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(UTIL_Sources))))
AllObjects = $(UDF_Objects) $(UTIL_Objects) $(FBUDF_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all lib_ib_udf lib_ib_util
all: lib_ib_util lib_ib_udf
# The libraries in this directory could do with a bit more work, since they
# the previous code (presumably by John) that does the ar crv stuff, might
# work still, even if the .o files have directory prefixes on them.
# And the udf stuff doesn't want to do .$(SHRLIB_EXT).X.X.X extensions in UDF directory
# or the loader gets confused with loading the links.
# MOD 29-July-2002
# ib_udf.$(SHRLIB_EXT)
#
# User defined functions. (I've put the .$(SHRLIB_EXT) extension back onto the library)
#
lib_ib_udf: $(LIBIBUTIL_SO) $(UDF)/ib_udf.$(SHRLIB_EXT)
$(UDF)/ib_udf.$(SHRLIB_EXT): $(UDF_Objects)
$(call LINK_UDF,ib_udf) -o $@ $^ $(LINK_UDF_LIBS)
# ib_util
lib_ib_util: $(LIBIBUTIL_SO)
$(LIBIBUTIL_SO): $(UTIL_Objects)
$(LINK_IB_UTIL) -o $@ $^ $(LINK_IB_UTIL_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,65 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
ROOT=..
ObjModuleType=superserver
CXXFLAGS+= -DSUPERSERVER
ArchType=super
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
SERVER_Other_sources = jrd/pwd.cpp jrd/sha.cpp
SERVER_Other_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(SERVER_Other_sources))))
SERVER_Files = $(OS_ServerFiles) server.cpp
SERVER_Sources = $(addprefix remote/, $(SERVER_Files))
SERVER_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(SERVER_Sources)))) \
$(LIBFBSERVER_Objects) $(COMMON_Objects) $(SERVER_Other_Objects)
.PHONY: fbserver
fbserver : $(FB_SUPER_SERVER)
$(FB_SUPER_SERVER): $(SERVER_Objects)
$(EXE_LINK) $(LINK_EXEC_EXPORT) $(LINK_FIREBIRD_SYMBOLS) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LIB_GUI) $(LINK_LIBS) $(ICU_LIBS)
AllObjects = $(SERVER_Objects)
Dependencies = $(AllObjects:.o=.d)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,80 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=superclient
CXXFLAGS+= -DSUPERCLIENT
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
FBTRACE_UTIL_Files= TraceConfiguration.cpp traceplugin.cpp TracePluginImpl.cpp \
TraceUnicodeUtils.cpp PluginLogWriter.cpp platform.cpp
FBTRACE_UTIL_Sources = $(addprefix utilities/ntrace/, $(FBTRACE_UTIL_Files))
FBTRACE_UTIL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBTRACE_UTIL_Sources))))
FBTRACE_OTHER_Sources = $(OS_SPECIFIC_Sources) $(TRACE_OS_Sources) \
jrd/isc.cpp jrd/isc_file.cpp jrd/isc_sync.cpp jrd/CharSet.cpp jrd/TextType.cpp \
jrd/IntlUtil.cpp jrd/unicode_util.cpp common/classes/ClumpletReader.cpp common/utils.cpp
FBTRACE_OTHER_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBTRACE_OTHER_Sources))))
FBTRACE_Objects = $(FBTRACE_UTIL_Objects) $(FBTRACE_OTHER_Objects) $(CONFIG_Objects) \
$(FBCOMMON_ClientObjects) $(FBCLASSES_MsgObjects) \
$(FBCLASSES_ClientObjects) $(FBCONFIG_Objects)
AllObjects = $(FBTRACE_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all fbtrace
all : fbtrace
fbtrace: $(FBTRACE)
$(FBTRACE): $(FBTRACE_Objects)
$(LINK_TRACE) -o $@ $^ $(LINK_TRACE_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,590 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
ISC_USER= sysdba
ISC_PASSWORD= masterkey
#LD_LIBRARY_PATH=/home/odonohue/src/firebird2/gen/firebird/lib:/usr/lib
TEST_PATH = @FIREBIRD_BUILD_DIR@
# Firebird libs path set at link time (-R) so do not override local requirements - nmcc 28/12/2002
#LD_LIBRARY_PATH=$(RealFirebirdPath)/lib
LD_LIBRARY_PATH=$(LIB)
FIREBIRD_BOOT_BUILD=1
#export ISC_USER
#export ISC_PASSWORD
#export INTERBASE
export FIREBIRD
export DYLD_FRAMEWORK_PATH
export LD_LIBRARY_PATH
export FIREBIRD_BOOT_BUILD
CPU = 1
CPU_OPTION = -j$(CPU)
######################################################################
########### Build process overview #################################
#
# Firebird2 has brought with it a new build process. This extended
# comment should help explain that process. Keep in mind there are
# a number of artifacts left in the makefiles from the previous build
# processes.
#
# The build process starts by building a bootstrap version of gpre.
# This is possible because of a special version of gpre_meta.cpp,
# gpre_meta_boot.cpp. It is a copy of the gpre_meta.epp file with all
# the embeded commands removed. There are pregenerated copy of the
# iberror.h and related files in the source tree. These are used for the
# entire build process. In the future we should check for the ability
# to regenerate iberror.h and friends (ie, a working FB install) and only
# use the static files as a last resort.
#
# The bootstrap version of gpre (gpre_boot) is used to build all the
# engine file.
# During this phase of the build process the limited version of alt.bin
# is used. The full version of alt.bin is compiled later in the build
# process after the security database is available. After the
# (hopefully pending) redesign of FB security the security database
# dependancies should go away.
#
# The engine objects are placed in the jrd_static.a archive. This archive
# contains all the objects needed to create statically linked programs.
# A fully functional version of gpre, gpre_static, is then generated
# using jrd_static.a. I choose to statically link the few utilities
# required to build FB to avoid possible shared library symbol conflicts.
#
# All of the aforementioned work is done in the
# first phase of the compilation. I called it the first phase because
# none of the work (except iberror.h and friends) requires database access.
# Phase 2 builds all the tools necessary to compile the rest of FB. Those
# tools are gbak and the gds.$(SHRLIB_EXT) shared library.
#
# The .epp files in gbak require the yachts.lnk database. But the only
# thing the database is used for is the metadata, so an empty database
# will do the job. The create_db program is a small c API utility that
# creates an empty database. This utility is statically linked.
# Once there is an empty database gbak_static is built. gbak_static is
# used later on in the compilation process to restore build databases.
#
# After gbak_static is built the gds.$(SHRLIB_EXT) library is built. This library is
# still missing the security functionality.
#
# Now we are on phase 3, building the actual DB tools. This is as expected.
# We build all tools and link them against the shared library, including
# gpre, gbak, and the fully functional gds.$(SHRLIB_EXT).
#
# John Belardo ~ July 2001
#
# In the tradition of makefiles, they have evolved even further. But most of
# the above is still applies. There now tends to be a Makefile for each
# target rather than the more traditional Makefile per directory model.
# This was needed to enable super to build corrently. But it also allowed
# some of the boot build process to be done simpler as well.
# MOD 28-July-2002
#
########### And now on with the show............
#################################################################
#__________________________________________________________________________
#
# This is the main target for the make. The targets are
# firebird_embedded and firebird_server. Or as they used to be known
# firebird_classic and firebird_super.
# (The .PHONY: stuff just means it's a fake target, and make wont go searching
# for a real file or directory - but there are a lot of them here
# MOD 28-July-2002)
.PHONY: all firebird firebird_boot firebird_basic
.PHONY: firebird_embedded firebird_server classic_programs super_programs
.PHONY: firebird_super firebird_classic btyacc_binary
.PHONY: plugins2
# The main targets are firebird_embedded or firebird_server
# or their older names _classic or _super.
# The following target is expanded by autoconf process to
# either _classic or _super.
firebird : firebird_@FIREBIRD_ARCH_TYPE@ $(PLATFORM_POSTBUILD_TARGET)
firebird_classic firebird_embedded: firebird_basic classic_targets plugins2
firebird_super firebird_server: firebird_basic super_targets plugins2
# In building embedded/server version some targets are common, mainly the
# boot kit, security2.fdb database and messages files. Boot builds a number of
# static programs gpre_static gbak_static isql_static though an involved
# process. These are used to compile the rest of the source, as it saves
# some complications particularly for super in needing to start the server
# that you are currently building. MOD 28-July-2002
firebird_basic: btyacc_binary external_libraries export_lists firebird_boot basic_targets
firebird_boot: updateBuildNum boot_phase1 boot_phase2
#----------------------------------------------------------------------------
# jrd/build_no.h contains the version and build# fields used throughout the
# program and quoted in the tools. This routine will update the build_no.h
# file with the auto update build# script file, writeBuildNum.sh. The
# writeBuildNum.sh script is autoupdated by CVS checkins.
#
.PHONY: updateBuildNum external_libraries export_lists
updateBuildNum : jrd/build_no.h $(GEN_ROOT)/Make.Version
jrd/build_no.h : $(SRC_ROOT)/misc/writeBuildNum.sh
(cd ..; ./src/misc/writeBuildNum.sh rebuildHeader)
$(GEN_ROOT)/Make.Version : $(SRC_ROOT)/misc/writeBuildNum.sh
$(SRC_ROOT)/misc/writeBuildNum.sh createMakeVersion $@
#
# Libraries that come from outside the project but are built
# as part of the project are included here. Currently IBM ICU and
# editline are the only externals libraries we have included.
#
external_libraries:
ifeq ($(STD_ICU),false)
$(MAKE) CFLAGS="@CFLAGS@" -f $(GEN_ROOT)/Makefile.extern.icu
endif
ifeq ($(STD_EDITLINE),false)
ifeq ($(EDITLINE_FLG),Y)
$(MAKE) CFLAGS="@CFLAGS@" $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.extern.editline
endif
endif
btyacc_binary: $(BTYACC)
$(BTYACC):
$(MAKE) -C $(ROOT)/extern/btyacc
#---------------------------------------------------------------------------
# Phase1: make a gpre_static from scratch so we can parse .e and .epp files
# to build the rest of the system. It goes in two bits make a real simple
# gpre_boot one and use that to build a gpre_static one.
#
# gpre_static has a fair bit more in it and we have now actually built most
# of the libraries. With gpre_static we now have enough to build gbak and
# start restoring databases.
#
# if $(BIN)/gpre_static exists then phase1 is complete. phase1 does not then
# rebuild automatically gpre_static if some of it's dependancies change. We
# only need on gpre_static to boot after we have one we don't care.
# (If you really want to rebuild it you need to remove the executable file
# $(BIN)/gpre_static).
#
.PHONY: boot_phase1 boot_phase1_build
.PHONY: libfbstatic gpre_boot gpre_static
boot_phase1: $(GPRE_STATIC)
$(GPRE_STATIC):
$(MAKE) boot_phase1_build
boot_phase1_build: gpre_boot libfbstatic gpre_static
gpre_boot:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.boot.gpre $@
libfbstatic:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.libfbstatic $@
gpre_static:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.static.gpre $@
#--------------------------------------------------------------------------
#Phase2: We can now start build some of the static utilities needed to build
# an empty database (lock manager and create_db). Then we rebuild all the
# items we have built in the static library into a dynamic library.
# (It's probably possible to directly build the dynamic library - but thats
# for another day). We still don't have the security database stuff.
#
# Phase2 is complete with the building of an security2.fdb user store database
# in order to do that isql tool needs to be built without security
# to do that a special alt_boot.o is inserted into the shared library.
# Again once security2.fdb is built then were not too worried about the
# components (in fact some of them have to be rebuilt again to incorperate
# the security module)
#
.PHONY: create_db empty_db gbak_static isql_static ref_databases
boot_phase2 : libfbstatic $(ISC_GDB)
$(ISC_GDB): create_db empty_db gbak_static isql_static ref_databases
create_db:
$(MAKE) -f $(GEN_ROOT)/Makefile.embed.util $(CREATE_DB)
gbak_static:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.static.gbak
isql_static:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.static.isql
empty_db :
$(MAKE) -f $(GEN_ROOT)/Makefile.refDatabases $@
ref_databases : $(GBAK_STATIC)
$(MAKE) -f $(GEN_ROOT)/Makefile.refDatabases $@
security2.fdb: isql # build the security database
$(MAKE) -C utilities $@
#--------------------------------------------------------------------------
#Phase3: Now we start building the tools we are actually going to use
# against the shared library.
# an empty database (lock manager and create_db). Then we rebuild all the
# items we have built in the static library into a dynamic library.
# (It's probably possible to directly build the dynamic library - but thats
# for another day). We still don't have the security database stuff.
#
# Notes:
# mainly we need isql to be able to build security2.fdb. I wonder
# if we could reduce the tricky dependancy by restoring the security2.fdb
# database earlier, then perhaps we could build the jrdlib in one step and
# include the security bits and pieces.
.PHONY: ref_databases msgs msgs_intl generated_headers intl extlib plugins includes
basic_targets: ref_databases msgs msgs_intl generated_headers \
intl extlib plugins includes examples_cp
# hack to make code regeneration work
generated_headers :
$(MAKE) -f $(GEN_ROOT)/Makefile.codes $@
msgs: # messages file for user $(FIREBIRD)/firebird.msg
$(MAKE) -f $(GEN_ROOT)/Makefile.msgs $@
msgs_intl: # international version of msgs file
$(MAKE) -f $(GEN_ROOT)/Makefile.msgs $@
intl: # international lang components $(FIREBIRD)/intl/
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.intl
extlib: # external programs than can be called
$(MAKE) -f $(GEN_ROOT)/Makefile.extlib
plugins: # plugins
$(MAKE) -f $(GEN_ROOT)/Makefile.plugins
# distribution header include files
includes: include_generic
# examples still need a good makefile to ship with them
examples_cp:
$(MAKE) -f Makefile.examples -C $(GEN_ROOT)/examples/
#_ Embedded Firebird Targets (Classic)_______________________________________
.PHONY: libfbembed fb_smp_server embed_gfix embed_gbak embed_isql
.PHONY: embed_gpre embed_util
classic_targets: $(PLAT_CLASSIC_PRE_TARGET) libfbembed fb_smp_server embed_gfix embed_gbak embed_isql \
embed_gpre libfbclient embed_util embed_qli embed_fbudf $(PLAT_CLASSIC_POST_TARGET)
libfbembed:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.libfbembed $@
fb_smp_server:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.smp_server
embed_gfix:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.embed.gfix
embed_gbak:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.embed.gbak
embed_isql:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.embed.isql
embed_gpre:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.embed.gpre
embed_util:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.embed.util
embed_qli:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.embed.qli
embed_fbudf:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.embed.fbudf
#_ Firebird Server Targets (super and super client)__________________________
.PHONY: fbserver
.PHONY: libfbclient client_gfix client_gbak client_isql client_gpre client_util client_fbudf
super_targets: $(PLAT_SUPER_PRE_TARGET) fbserver libfbclient client_gfix client_gbak client_gsec\
client_isql client_gpre client_util client_fbudf client_qli $(PLAT_SUPER_POST_TRAGET)
fbserver:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.fbserver $@
libfbclient:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.libfbclient $@
client_gfix:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.client.gfix
client_gbak:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.client.gbak
client_gsec:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.client.gsec
client_gpre:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.client.gpre
client_isql:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.client.isql
client_util:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.client.util
client_fbudf:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.client.fbudf
# Not sure we need this target in super
# MOD 04-Oct-2002
client_qli:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.client.qli
#sysdba_user gstat: # add sysdba user and build gstat program
# $(MAKE) -C utilities $@
#---------------------------------------------------------------------------
plugins2:
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.fbtrace
$(MAKE) $(CPU_OPTION) -f $(GEN_ROOT)/Makefile.user.management
#---------------------------------------------------------------------------
# This target builds the include files for disttribution with the release
# Some of the files differ from the ones used internally to compile the
# software - mainly they are just flattened out to make the view simpler
# from an external point of view.
INCLUDE_DEST= $(FIREBIRD)/include
include_generic: $(INCLUDE_DEST)/ib_util.h \
$(INCLUDE_DEST)/ibase.h
# ib_util.h actually is a marker for a number of headers
# All these files are #includes in ibase.h here we cat them all together
# and remove the embedded #includes to make it simpler for external usage.
IBASE_ExtraFiles = include/types_pub.h include/consts_pub.h dsql/sqlda_pub.h jrd/dsc_pub.h jrd/ibase.h jrd/inf_pub.h jrd/blr.h include/gen/iberror.h
SRC_IBASE_ExtraFiles = $(addprefix $(SRC_ROOT)/, $(IBASE_ExtraFiles))
MAKE_HEADER_Src = $(addprefix $(SRC_ROOT)/, misc/makeHeader.cpp)
MAKE_HEADER_Bin = ./makeHeader
$(INCLUDE_DEST)/ibase.h: $(SRC_IBASE_ExtraFiles)
$(STATICEXE_LINK) -o $(MAKE_HEADER_Bin) $(MAKE_HEADER_Src)
$(CP) $^ .
$(MAKE_HEADER_Bin) <ibase.h >$@
$(RM) -f ibase.h
# Copy all the other headers to the distribution directory. we use
# ib_util.h as the marker for all the files.
OtherDistribHeaders = extlib/ib_util.h \
jrd/perf.h \
include/gen/iberror.h
SRC_OtherDistribHeaders = $(addprefix $(SRC_ROOT)/, $(OtherDistribHeaders))
$(INCLUDE_DEST)/ib_util.h : $(SRC_OtherDistribHeaders)
$(CP) $^ $(INCLUDE_DEST)/
# There are also gds*f and gds*ada header files around if someone
# wants them. You might need to hunt around in the old cvs tree for them.
#___________________________________________________________________________
# create platform-specific export lists (version scripts) in gen
%.vers: ../builds/posix/%.vers
sh vers.sh $(firstword $@)
export_lists: $(ALLVERS)
#___________________________________________________________________________
# When the msgs.fdb dataabse has changed with new messages a number of header
# files need to be regenerated. This is the target to do it. These new
# header files (placed in include/gen) then need to be committed since they
# are not generally rebuilt from scratch
rebuild_codes :
$(MAKE) -C jrd $@
#___________________________________________________________________________
#
.PHONY: install install-embedded package packages dist srctarfile
install install-embedded package packages dist:
$(MAKE) -f $(GEN_ROOT)/Makefile.install $@
SrcTarFile=Firebird$(ArchPrefix)-$(Version).tar.bz2
srctarfile: $(SrcTarFile)
$(SrcTarFile) :
$(SRC_ROOT)/misc/src_bundle.sh
#___________________________________________________________________________
#
.PHONY: clean clean_objects clean_dependancies clean_extern_objects clean_build \
clean_gpre_gen clean_icu clean_dbs clean_examples clean_makefiles \
clean_editline clean_all
clean: clean_objects clean_dependancies clean_extern_objects clean_build \
clean_yacc_gen clean_gpre_gen clean_icu clean_dbs clean_examples
ifeq ($(EDITLINE_FLG),Y)
ifeq ($(STD_EDITLINE),false)
clean: clean_editline
endif
endif
clean_config clean_all: clean clean_makefiles
$(RM) $(ROOT)/configure
$(RM) $(ROOT)/aclocal.m4
$(RM) $(ROOT)/config.log
$(RM) $(ROOT)/config.status
$(RM) $(ROOT)/libtool
$(RM_R) $(ROOT)/autom4te.cache
-$(MAKE) -C $(ROOT)/extern/editline distclean
-$(MAKE) -C $(ROOT)/extern/icu/source distclean
-$(MAKE) -C $(ROOT)/extern/btyacc distclean
clean_dbs:
$(RM) *.fdb *.FDB msg.timestamp
$(RM) yachts.lnk
# The examples are a bit different, since the makefile is included in the directory
# and not in the gen directory, deleting it means, make clean; make doesnt work correctly
# so the code below deletes all the other stuff but not the Makefile.examples MOD Nov-2007
clean_examples:
$(RM) `find $(GEN_ROOT)/examples/ -type f ! -name 'Make*'`
clean_editline:
-$(MAKE) -C $(ROOT)/extern/editline clean
clean_icu:
-$(MAKE) -C $(ROOT)/extern/icu/source clean
clean_objects:
$(RM) `find $(ROOT)/extern/ -type f -name '*.lo' -print`
$(RM) `find $(TMP_ROOT)/ -type f -name '*.o' -print`
clean_extern_objects:
$(RM) `find $(ROOT)/extern/ -type f -name '*.o' -print`
# Clear out dependancies files created by the gcc compiler
# since when .o and other files are deleted the dependant
# targets need to be recalculated
# MOD 10-July-2002
clean_dependancies:
$(RM) -f `find $(TMP_ROOT)/ -type f -name '*.d' -print`
# delete only all of the files of type regular file in $FIREBIRD
# leave the directories to make dependacies work still
# MOD 11-July-2002
clean_build:
$(RM) `find $(GEN_ROOT)/firebird \( -type f -o -type l \) -print`
# $(RM) $(GDSLIB_OBJECTS) $(GDSLIB_PHASE3_OBJECTS)
#
clean_makefiles:
$(RM) $(GEN_ROOT)/Make*
$(RM) $(GEN_ROOT)/make*
$(RM) `find $(GEN_ROOT)/install \( -type f -o -type l \) -print`
-$(RM) $(GEN_ROOT)/examples/Make*
$(RM) $(ROOT)/Makefile
$(RM) $(SRC_ROOT)/include/gen/autoconfig.h
$(RM) $(SRC_ROOT)/include/gen/blrtable.h
clean_gpre_gen:
-$(RM) -f `find $(TMP_ROOT)/ -type f -name '*.cpp' -print`
clean_yacc_gen:
$(RM) $(ROOT)/src/dsql/parse.cpp $(ROOT)/src/dsql/dsql.tab.h
#___________________________________________________________________________
# Extra platform specific targets
@POSTFIX_INCLUDE@

View File

@ -1,89 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=superclient
CXXFLAGS+= -DSUPERCLIENT
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
INTL_Files1= ld.cpp cv_narrow.cpp \
cs_narrow.cpp lc_ascii.cpp lc_narrow.cpp lc_iso8859_1.cpp \
lc_iso8859_2.cpp lc_iso8859_13.cpp lc_dos.cpp \
cs_unicode_ucs2.cpp lc_unicode_ucs2.cpp \
cs_unicode_fss.cpp cv_unicode_fss.cpp \
cs_big5.cpp cv_big5.cpp lc_big5.cpp \
cs_gb2312.cpp cv_gb2312.cpp lc_gb2312.cpp \
cs_jis.cpp cv_jis.cpp lc_jis.cpp \
cs_ksc.cpp cv_ksc.cpp lc_ksc.cpp \
cs_icu.cpp cv_icu.cpp lc_icu.cpp
# use INTL_Files2 in prefix file for host-specific additional files
INTL_Sources= $(addprefix intl/, $(INTL_Files1)) $(INTL_Files2) \
jrd/IntlUtil.cpp jrd/unicode_util.cpp jrd/CharSet.cpp jrd/mod_loader.cpp
INTL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(INTL_Sources))))
# SD: Shared variables are overriden to exclude extra files and
# this way fix 'unresolved symbol' errors when some unused routines call
# other routines from not included modules
FBCLASSES_ClientFiles=alloc.cpp locks.cpp fb_string.cpp timestamp.cpp
AllObjects = $(INTL_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all libfbintl
all : libfbintl
# In the following the rpath variable probably wants to be different
# if it's going to be installed in fb specific path.
# Also the dynamic link process used in fb, will fall over if it finds
# links etc in the intl directory MOD 28-July-2002
libfbintl : $(LIBFBINTL_SO)
$(LIBFBINTL_SO): $(INTL_Objects) $(FBCOMMON_ClientObjects) $(FBCLASSES_ClientObjects)
$(LINK_INTL) -o $@ $^ $(LINK_INTL_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,114 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=superclient
CXXFLAGS+= -DSUPERCLIENT
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
# These are deliberatly unexported otherwise gbak and others will try and check
# the userid against the security2.fdb database, which doesn't exist at this stage
# in the build. MOD 11-July-2002
unexport ISC_USER
unexport ISC_PASSWORD
# jrd has it's own rule for using gpre to use gpre boot.
# I would eventually like to set these based on a determination
# if the file GPRE_STATIC exists or not.
JRD_ClientObjects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(JRD_ClientSources))))
DSQL_ClientSources = $(addprefix dsql/, $(DSQL_ClientFiles))
DSQL_ClientObjects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(DSQL_ClientSources))))
REMOTE_ClientObjects = $(INTERFACE_Objects)
GPRELIB_ClientSources = $(addprefix gpre/, $(GPRELIB_ClientFiles))
GPRELIB_ClientObjects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GPRELIB_ClientSources))))
SECURITY_ClientSources_gsec = $(addprefix utilities/gsec/, $(SECURITY_ClientFiles_gsec))
SECURITY_ClientObjects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(SECURITY_ClientSources_gsec))))
FBUTIL_ClientSources = $(addprefix fbutil/, $(FBUTIL_ClientFiles))
FBUTIL_ClientObjects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBUTIL_ClientSources))))
FBCLIENT_Objects = $(JRD_ClientObjects) \
$(DSQL_ClientObjects) \
$(REMOTE_ClientObjects) \
$(GPRELIB_ClientObjects) \
$(SECURITY_ClientObjects) \
$(FBUTIL_ClientObjects) \
$(FBCOMMON_Objects)\
$(FBCLASSES_ClientObjects)\
$(FBCLASSES_MsgObjects)\
$(OS_SPECIFIC_Objects)\
$(FBCONFIG_Objects) \
$(CLUMPLETS_Objects)
.PHONY: libfbclient
libfbclient : $(LIBFBCLIENT_SONAME)
ifneq ($(ClientLibraryNameFull),$(ClientLibrarySoName))
$(LIBFBCLIENT_SOBASENAME): $(LIBFBCLIENT_SO)
(cd $(LIB) && $(LN) -f $(ClientLibraryNameFull) $(ClientLibrarySoName) )
endif
ifneq ($(ClientLibrarySoName),$(ClientLibraryName))
$(LIBFBCLIENT_SONAME): $(LIBFBCLIENT_SOBASENAME)
(cd $(LIB) && $(LN) -f $(ClientLibrarySoName) $(ClientLibraryName) )
endif
$(LIBFBCLIENT_SO): $(FBCLIENT_Objects)
$(LINK_CLIENT) -o $@ $^ $(LINK_CLIENT_LIBS)
AllObjects = $(FBCLIENT_Objects)
Dependencies = $(AllObjects:.o=.d)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,69 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
ROOT=..
ObjModuleType=std
ArchType=classic
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
# These are deliberatly unexported otherwise gbak and others will try and check
# the userid against the security2.fdb database, which doesn't exist at this stage
# in the build. MOD 11-July-2002
unexport ISC_USER
unexport ISC_PASSWORD
AllObjects = $(LIBFBEMBED_Objects) $(COMMON_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: libfbembed
libfbembed : $(LIBIBUTIL_SO) $(LIBFBEMBED_SONAME)
$(LIBFBEMBED_SO): $(AllObjects)
$(LINK_EMBED) -o $@ $^ $(LINK_EMBED_LIBS)
$(LIBFBEMBED_SOBASENAME): $(LIBFBEMBED_SO)
(cd $(LIB) && $(LN) -f $(SharedLibraryName) $(SharedLibrarySoName) )
$(LIBFBEMBED_SONAME): $(LIBFBEMBED_SOBASENAME)
(cd $(LIB) && $(LN) -f $(SharedLibrarySoName) $(SharedLibraryBaseName) )
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,70 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
DSQL_GPRE_FLAGS += -lang_internal
AllObjects= $(LIBFBSTATIC_Objects)
Dependancies=$(AllObjects:.o=.d)
# added here to force creation of dsql.tab.h
PARSE = parse.cpp
PARSE_Sources = $(addprefix $(SRC_ROOT)/dsql/, $(PARSE))
.PHONY: libfbstatic
# Added to support super build, but have stong suspicion that
# will not be different from the above fbmem_boot.a library
# compile time macros being the main (if there) difference
libfbstatic: $(PARSE_Sources) $(LIB)/libfbstatic.a
$(LIB)/libfbstatic.a: $(LIBFBSTATIC_Objects)
-$(RM) $@
$(AR) $@ $^
-$(RANLIB) $@
$(CHMOD_6) $@
include $(ROOT)/gen/make.shared.targets
-include $(Dependancies)

View File

@ -1,180 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
unexport ISC_USER
unexport ISC_PASSWORD
.PHONY: msgs
CHECK_Files = check_msgs.epp
CHECK_Sources = $(addprefix msgs/, $(CHECK_Files))
CHECK_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CHECK_Sources))))
BUILD_Files = build_file.epp
BUILD_Sources = $(addprefix msgs/, $(BUILD_Files))
BUILD_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(BUILD_Sources))))
ENTER_Files = enter_msgs.epp
ENTER_Sources = $(addprefix msgs/, $(ENTER_Files))
ENTER_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(ENTER_Sources))))
MODIFY_Files = modify_msgs.epp
MODIFY_Sources = $(addprefix msgs/, $(MODIFY_Files))
MODIFY_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(MODIFY_Sources))))
CHANGE_Files = change_msgs.epp
CHANGE_Sources = $(addprefix msgs/, $(CHANGE_Files))
CHANGE_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CHANGE_Sources))))
AllObjects = $(CHECK_Objects) $(BUILD_Objects) $(ENTER_Objects) \
$(MODIFY_Objects) $(CHANGE_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all msgs build_file check_messages enter_messages modify_messages change_messages
Programs = $(BUILD_FILE) #$(CHECK_MESSAGES) $(ENTER_MESSAGES) \
# $(CHECK_MESSAGES) $(MODIFY_MESSAGES) $(CHANGE_MESSAGES)
all: build_file check_messages enter_messages modify_messages change_messages
msgs: $(Programs) message_file
do_check: $(CHECK_MESSAGES) $(BUILD_FILE)
$(CHECK_MESSAGES) -d $(MSGSDIR)master_msg_db.lnk -l
# it's important to note here that these programs are linked against the static
# 'boot' libraries rather than the later embedded shared library.
# They could be linked against the embedded one, or client one, if required.
# MOD 29-July-2002
check_messages : $(CHECK_MESSAGES)
$(CHECK_MESSAGES): $(CHECK_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $(CHECK_Objects) $(COMMON_Objects) -o $@ -L$(LIB) -lfbstatic $(LINK_LIBS) $(ICU_LIBS)
$(CHMOD_7) $@
build_file : $(BUILD_FILE)
$(BUILD_FILE): $(BUILD_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $(BUILD_Objects) $(COMMON_Objects) -o $@ -L$(LIB) -lfbstatic $(LINK_LIBS) $(ICU_LIBS)
$(CHMOD_7) $@
enter_messages : $(ENTER_MESSAGES)
$(ENTER_MESSAGES): $(ENTER_Objects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $(ENTER_Objects) $(COMMON_Objects) -o $@ -L$(LIB) -lfbstatic $(LINK_LIBS) $(ICU_LIBS)
$(CHMOD_7) $@
modify_messages: $(MODIFY_MESSAGES)
$(MODIFY_MESSAGES): $(MODIFY_Objects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $(MODIFY_Objects) $(COMMON_Objects) -o $@ -L$(LIB) -lfbstatic $(LINK_LIBS) $(ICU_LIBS)
$(CHMOD_7) $@
change_messages: $(CHANGE_MESSAGES)
$(CHANGE_MESSAGES): $(CHANGE_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $(CHANGE_Objects) $(COMMON_Objects) -o $@ -L$(LIB) -lfbstatic $(LINK_LIBS) $(ICU_LIBS)
$(CHMOD_7) $@
message_file : $(FIREBIRD_MSG)
$(FIREBIRD_MSG) : $(BUILD_FILE) msg.timestamp
$(BUILD_FILE) -d $(MSGSDIR)msg.fdb -f $@
$(CHMOD_6) $@
indicator.msg indicator.incl:
$(CHECK_MESSAGES) -d $(MSGSDIR)master_msg_db.lnk
indicator.loc:
$(CHECK_MESSAGES) -d $(MSGSDIR)master_msg_db.lnk -l
master_msg_db.lnk:
$(LN) -f msg.fdb master_msg_db.lnk
# I know nother about these other than the default being set to none. I
# assume that as we get into it someone will want to use them and fix the
# following.
# potential locals are $(fr_FR_MSG) $(de_DE_MSG) $(ja_JP_MSG)
LOCALES= $(fr_FR_MSG) $(de_DE_MSG)
#LOCALES=
msgs_intl locales.msg: $(LOCALES)
$(fr_FR_MSG) : $(BUILD_FILE) msg.timestamp
$(BUILD_FILE) -d $(MSGSDIR)msg.fdb -l fr_FR -f $@
$(CHMOD_6) $@
$(de_DE_MSG) : $(BUILD_FILE) msg.timestamp
$(BUILD_FILE) -d $(MSGSDIR)msg.fdb -l de_DE -f $@
$(CHMOD_6) $@
$(ja_JP_MSG) : $(BUILD_FILE) msg.timestamp
$(BUILD_FILE) -d $(MSGSDIR)msg.fdb -l ja_JP.EUC -f $@
$(CHMOD_6) $@
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,72 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
# Adriano dos Santos Fernandes
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
PLUGINS= $(FIREBIRD)/plugins
UDRENG_Files = UdrEngine.cpp
UDRENG_Sources = $(addprefix plugins/udr_engine/, $(UDRENG_Files)) jrd/mod_loader.cpp
UDRENG_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(UDRENG_Sources))))
AllObjects = $(UDRENG_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all udr_engine
all: udr_engine $(PLUGINS)/udr_engine.conf
udr_engine: $(PLUGINS)/$(LIB_PREFIX)udr_engine.$(SHRLIB_EXT)
$(PLUGINS)/$(LIB_PREFIX)udr_engine.$(SHRLIB_EXT): $(UDRENG_Objects) $(FBCOMMON_Objects) $(FBCLASSES_Objects) $(OS_SPECIFIC_Objects)
ifeq ($(PLATFORM),DARWIN)
$(LIB_LINK) $(LIB_BUNDLE_OPTIONS) -o $@ $^ @PTHREAD_CFLAGS@ @PTHREAD_LIBS@
else
$(LIB_LINK) $(LINK_UDRENG_SYMBOLS) $(LIB_LINK_OPTIONS) $(LIB_LINK_SONAME)udr_engine.$(SHRLIB_EXT) \
$(LIB_PATH_OPTS) -o $@ $^ $(THR_LIBS) $(SO_LINK_LIBS)
endif
$(PLUGINS)/udr_engine.conf: $(ROOT)/src/plugins/udr_engine/udr_engine.conf
cp $^ $@
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -28,7 +28,6 @@
# Adriano dos Santos Fernandes
#
ROOT=../..
ObjModuleType=std
CXXFLAGS+= -I$(ROOT)/gen/firebird/include

View File

@ -1,129 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
# If we export the username/password we get an error because we can't connect
# to security2.fdb! So we won't export them while we make the databases...
#
unexport ISC_USER
unexport ISC_PASSWORD
export DYLD_FRAMEWORK_PATH
DYLD_FRAMEWORK_PATH= $(OBJS)/firebird
export INTERBASE
MSG_SCRIPTS = msg.sql facilities2.sql locales.sql sqlstates.sql history2.sql messages2.sql \
symbols2.sql system_errors2.sql transmsgs.fr_FR2.sql transmsgs.de_DE2.sql
MSG_FILES = $(addprefix $(SRC_ROOT)/msgs/, $(MSG_SCRIPTS))
.PHONY: empty_db refDatabases
# This is where you are going to have trouble if there is one, at creating
# the first empty database. Things to watch out for, $INTERBASE variable
# pointing in the wrong place, shared library path LD_LIBRARY_PATH
# not pointing to new stuff (mind you this point it should be creating
# using create_db statically linked).
empty_db : empty.fdb yachts.lnk
empty.fdb : $(CREATE_DB)
$(MAKE) -f $(GEN_ROOT)/Makefile.embed.util $(BIN)/create_db
-$(RM) $@
$(BIN)/create_db $@
$(TOUCH) $@
$(CHMOD) 444 $@
# Ok so Jim had/has a sailing theme, and the sample database that a lot
# of .epp files require to compile is yachts.lnk. MOD 05-Aug-2002
yachts.lnk: empty.fdb
$(RM) -f yachts.lnk
$(LN) -f empty.fdb yachts.lnk
# These are the rest of the databases used to build the system. We also build
# the help database from here.
.PHONY: ref_databases
# Use msg.timestamp as a target to help dependency tracking work.
ref_databases : msg.timestamp help.fdb metadata.fdb $(FIREBIRD)/security2.fdb
msg.timestamp: $(MSG_FILES)
$(RM) -f msg.fdb
echo create database \'msg.fdb\'\; | $(ISQL_STATIC)
for sn in $(MSG_FILES); do (echo $$sn; $(ISQL_STATIC) -i $$sn msg.fdb) || exit; done
# $(CHMOD) 444 msg.fdb
$(TOUCH) $@
help.fdb: $(FIREBIRD)/help/help.fdb
$(RM) -f $@
$(LN) -f $^ $@
$(FIREBIRD)/help/help.fdb: $(BLD_ROOT)/misc/help.gbak
$(BIN)/gbak_static -MODE read_only -R $< $@
$(TOUCH) $@
$(CHMOD) 444 $@
$(FIREBIRD)/security2.fdb: security2.fdb
$(RM) -f $@
$(CP) -f $^ $@
security2.fdb: $(SRC_ROOT)/dbs/security.sql
$(RM) -f $@
echo create database \'$@\'\; | $(ISQL_STATIC)
$(ISQL_STATIC) -i $^ $@
$(CHMOD) a=rw $@
metadata.fdb: $(BLD_ROOT)/misc/metadata.gbak
$(BIN)/gbak_static -MODE read_only -R $< $@
$(TOUCH) $@
$(CHMOD) 444 $@
# An alternative metadata creation method, this one is actually preferred
# since it ensures the data is valid.
metadata.fdb.x: $(SRC_ROOT)/misc/metadata.sql
$(BIN)/isql -i $<
$(TOUCH) $@
$(CHMOD) 444 $@
FORCE:

View File

@ -1,72 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
ROOT=..
ObjModuleType=superserver
CXXFLAGS+= -DSUPERSERVER
ArchType=super
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
SERVER_JrdFiles = ThreadData.cpp divorce.cpp dsc.cpp enc.cpp isc_file.cpp isc.cpp \
sdl.cpp status.cpp
SERVER_Files = $(OS_ServerFiles) server.cpp
SERVER_Other_sources = common/cvt.cpp common/classes/DbImplementation.cpp auth/Auth.cpp \
jrd/pwd.cpp jrd/sha.cpp jrd/guid.cpp
SERVER_Sources = $(addprefix remote/, $(SERVER_Files)) $(addprefix jrd/, $(SERVER_JrdFiles)) $(SERVER_Other_sources)
REMOTE_CommonSources = $(addprefix remote/, $(REMOTE_CommonFiles))
REMOTE_CommonObjects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(REMOTE_CommonSources))))
SERVER_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(SERVER_Sources)))) \
$(REMOTE_CommonObjects) $(COMMON_Objects) $(CLUMPLETS_Objects) \
$(CONFIG_Objects) $(FBCONFIG_Objects) \
$(OS_SPECIFIC_Objects)
.PHONY: fb_smp_server
fb_smp_server: $(FB_DAEMON)
$(FB_DAEMON): $(SERVER_Objects)
$(EXE_LINK) $(LINK_EMPTY_SYMBOLS) $(LINK_OPTS) $^ -o $@ $(FBEMBED_LINK) $(LINK_LIBS)
AllObjects = $(SERVER_Objects)
Dependencies = $(AllObjects:.o=.d)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,67 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
GBAKSTATIC_Files = backup.epp restore.epp OdsDetection.epp \
burp.cpp canonical.cpp misc.cpp mvol.cpp burpMain.cpp
GBAK_Other_Sources =
GBAK_Other_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GBAK_Other_Sources))))
GBAKSTATIC_Sources = $(addprefix burp/, $(GBAKSTATIC_Files))
GBAKSTATIC_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GBAKSTATIC_Sources))))
AllObjects = $(GBAKSTATIC_Objects) $(GBAK_Other_Objects) $(COMMON_Objects) $(FBUTILSVC_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: gbak_static
gbak_static : $(GBAK_STATIC)
$(GBAK_STATIC) : $(AllObjects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS) $(ICU_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,70 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
GPRECOMMON_Files += cmd.cpp cme.cpp cmp.cpp c_cxx.cpp exp.cpp \
gpre.cpp hsh.cpp int_cxx.cpp jrdmet.cpp movg.cpp \
msc.cpp par.cpp pat.cpp sqe.cpp sql.cpp\
@GPRE_LANGUAGE_MODULES@
GPRESTATIC_Files = $(GPRECOMMON_Files) gpre_meta.epp
GPRESTATIC_Sources = $(addprefix gpre/, $(GPRESTATIC_Files))
GPRESTATIC_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GPRESTATIC_Sources))))
AllObjects = $(GPRESTATIC_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: gpre_static
all : gpre_static
gpre_static : $(GPRE_STATIC)
$(GPRE_STATIC): $(GPRESTATIC_Objects) $(COMMON_Objects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LINK_LIBS) $(ICU_LIBS)
-$(RM) $(GPRE_CURRENT)
(cd $(@D); $(LN) $(@F) $(notdir $(GPRE_CURRENT)))
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,66 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
unexport ISC_USER
unexport ISC_PASSWORD
ISQL_Files = extract.epp isql.epp show.epp Extender.cpp InputDevices.cpp \
ColList.cpp OptionsBase.cpp iutils.cpp
ISQL_Sources = $(addprefix isql/, $(ISQL_Files))
ISQL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(ISQL_Sources))))
AllObjects = $(ISQL_Objects) $(COMMON_Objects) $(FBUTIL_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: isql_static
isql_static : $(ISQL_STATIC)
$(ISQL_STATIC): $(AllObjects) $(LIBFBSTATIC_A)
$(STATICEXE_LINK) $(LINK_OPTS) $^ -o $@ -L$(LIB) $(LIBEDITLINE) $(LINK_LIBS) $(ICU_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -1,81 +0,0 @@
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
# You may obtain a copy of the Licence at
# http://www.gnu.org/licences/lgpl.html
#
# As a special exception this file can also be included in modules
# with other source code as long as that source code has been
# released under an Open Source Initiative certificed licence.
# More information about OSI certification can be found at:
# http://www.opensource.org
#
# This module is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public Licence for more details.
#
# This module was created by members of the firebird development
# team. All individual contributions remain the Copyright (C) of
# those individuals and all rights are reserved. Contributors to
# this file are either listed below or can be obtained from a CVS
# history command.
#
# Created by: Mark O'Donohue <mark.odonohue@ludwig.edu.au>
#
# Contributor(s):
#
#
#
ROOT=..
ObjModuleType=std
include $(ROOT)/gen/make.defaults
include $(ROOT)/gen/make.platform
include $(ROOT)/gen/make.rules
include $(ROOT)/gen/make.shared.variables
@SET_MAKE@
USER_MANAGEMENT_Files = LegacyManagement.epp
USER_MANAGEMENT_Sources = $(addprefix auth/SecurityDatabase/, $(USER_MANAGEMENT_Files))
USER_MANAGEMENT_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(USER_MANAGEMENT_Sources))))
MANAGEMENT_OTHER_Sources = jrd/enc.cpp jrd/sha.cpp jrd/guid.cpp common/classes/alloc.cpp \
common/classes/locks.cpp common/classes/UserBlob.cpp common/classes/init.cpp common/classes/fb_string.cpp \
common/fb_exception.cpp common/thd.cpp common/StatusArg.cpp
MANAGEMENT_OTHER_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(MANAGEMENT_OTHER_Sources))))
MANAGEMENT_Objects = $(USER_MANAGEMENT_Objects) $(MANAGEMENT_OTHER_Objects)
#$(FBCLASSES_ClientObjects) $(FBCOMMON_ClientObjects)
# $(CONFIG_Objects) \
# $(FBCLASSES_MsgObjects) \
# $(FBCONFIG_Objects)
AllObjects = $(MANAGEMENT_Objects)
Dependencies = $(AllObjects:.o=.d)
.PHONY: all user_management
all : user_management
user_management: $(MANAGEMENT)
$(MANAGEMENT): $(MANAGEMENT_Objects)
$(LINK_PLUGIN) $(call LIB_LINK_SONAME,$(MANAGEMENT).0) -o $@ $^ $(LINK_PLUG_LIBS)
include $(ROOT)/gen/make.shared.targets
-include $(Dependencies)

View File

@ -80,6 +80,7 @@ gds__open
gds__open_blob
gds__open_blob2
gds__parse_bpb
gds__parse_bpb2
gds__prefix
gds__prefix_lock
gds__prefix_msg
@ -123,6 +124,9 @@ gds__version
gds__vtof
gds__vtov
gds__default_printer
gds__trace
gds__trace_raw
gds__trace_printer
gds__alloc_debug
@ -332,12 +336,17 @@ Bopen
fb_shutdown
fb_shutdown_callback
fb_ping
# Plugins support
fb_register_plugin
fb_query_plugin
# COM emulation
fb_get_status_instance
# Other misc functions
isc_ftof
@ -355,7 +364,5 @@ isc_vtov
# OTHER FUNCTIONS
#-----------------
CVT_move
KEYWORD_stringIsAToken
KEYWORD_getTokens

View File

@ -40,14 +40,14 @@
#_____________________________________________________________________________
TMP_ROOT=$(ROOT)/temp
TMP_ROOT=$(ROOT)/temp/$(TARGET)
GEN_ROOT=$(ROOT)/gen
SRC_ROOT=$(ROOT)/src
BLD_ROOT=$(ROOT)/builds
LNG_ROOT=$(ROOT)/lang_helpers
EXA_ROOT=$(ROOT)/examples
FIREBIRD=$(GEN_ROOT)/firebird
FIREBIRD=$(GEN_ROOT)/$(TARGET)/firebird
INTERBASE=$(FIREBIRD)
export INTERBASE
@ -65,10 +65,13 @@ RealSrcRootPath = $(shell cd $(SRC_ROOT); pwd)
#ModuleName:=$(notdir $(CURDIR))
ModuleName:=$(subst $(RealSrcRootPath)/,,$(CURDIR))
OBJ=$(TMP_ROOT)/$(ObjModuleType)
OBJ=$(TMP_ROOT)
GEN_SRC=$(OBJ)
# avoid generated cpp files deletion
.SECONDARY: $(OBJ)/%.cpp
# This one is not so widely used at the momement.
# but I would like it to become so.
@ -88,9 +91,9 @@ CXXFLAGS:= $(CXXFLAGS) $(GLOB_OPTIONS)
#____________________________________________________________________________
IsProdTypeBuild = @PROD_BUILD_FLG@
# If this is defined then we are building a production
# release with debug and optimization
IsDeveloper = @DEVEL_FLG@
# If this is defined then we use special rules
# useful for developers only
CpuType=@CPU_TYPE@
@ -173,7 +176,15 @@ SHRLIB_FOREIGN_EXT= $(SHRLIB_EXT)
# Include file with version variable definitions
-include $(ROOT)/gen/Make.Version
include $(ROOT)/gen/Make.Version
#MajorVer = 2
#MinorVer = 5
#RevNo = 0
#BuildNum = 28678
#BuildType = T
#BuildSuffix = Firebird 3.0 Unstable
#PackageVersion = Unstable
#FirebirdVersion = 2.5.0
# Add windows dll to library patterns
@ -193,30 +204,26 @@ vpath %.dll $(LIB)
BLRTABLE = $(BIN)/blrtable$(EXEC_EXT)
# The shared library name for the embedded (or classic) library
# The firebird shared library name
# SD: This name is also hard-coded in builds/install/.../linux/classic scripts.
# Scold me, but I don't want library names to be in configure.in
#
SharedLibraryName=libfbembed.${SHRLIB_EXT}.${FirebirdVersion}
SharedLibrarySoName=libfbembed.${SHRLIB_EXT}.${MajorVer}.${MinorVer}
SharedLibraryBaseName=libfbembed.${SHRLIB_EXT}
#LibraryFileName=libfbclient
LibraryFileName=libfirebird
LibraryFullName=$(LibraryFileName).${SHRLIB_EXT}.${FirebirdVersion}
LibrarySoName=$(LibraryFileName).${SHRLIB_EXT}.${MajorVer}
LibraryBaseName=$(LibraryFileName).${SHRLIB_EXT}
LIBFBEMBED_SO = $(LIB)/$(SharedLibraryName)
LIBFBEMBED_SOBASENAME = $(LIB)/$(SharedLibrarySoName)
LIBFBEMBED_SONAME = $(LIB)/$(SharedLibraryBaseName)
LIBFIREBIRD_FULLNAME = $(LIB)/$(LibraryFullName)
LIBFIREBIRD_SONAME = $(LIB)/$(LibraryBaseName)
LIBFIREBIRD_BASENAME = $(LIB)/$(LibrarySoName)
# Shared library names for client side of fbserver (or super) version
# used to link all the utilities to enable them to connect over the wire
# to the fbserver. MOD 28-July-2002
# The firebird engine library name
ClientLibraryName = $(LIB_PREFIX)fbclient.$(SHRLIB_EXT)
ClientLibrarySoName = $(ClientLibraryName).2
ClientLibraryNameFull = $(ClientLibraryName).${FirebirdVersion}
LIBFBCLIENT_SO = $(LIB)/$(ClientLibraryNameFull)
LIBFBCLIENT_SOBASENAME=$(LIB)/$(ClientLibrarySoName)
LIBFBCLIENT_SONAME=$(LIB)/$(ClientLibraryName)
EngineFileName=libengine
EngineSoName=$(EngineFileName).${SHRLIB_EXT}.${OdsVersion}
ENGINE_SONAME = $(LIB)/$(EngineSoName)
# intl will load dynamically, and having the whole soname set with version
# confuses the dynamic load process. So we only have the .$(SHRLIB_EXT) file
@ -224,8 +231,6 @@ LIBFBCLIENT_SONAME=$(LIB)/$(ClientLibraryName)
LIBFBINTL_SO = $(FIREBIRD)/intl/$(LIB_PREFIX)fbintl.$(SHRLIB_EXT)
LIBFBSTATIC_A = $(LIB)/libfbstatic.a
ifeq ($(EDITLINE_FLG),Y)
ifeq ($(STD_EDITLINE), true)
LIBEDITLINE := -l$(READLINE)
@ -234,10 +239,6 @@ ifeq ($(EDITLINE_FLG),Y)
endif
endif
LIBICU_SO = $(LIB)/$(LIB_PREFIX)icuuc*.$(SHRLIB_FOREIGN_EXT) \
$(LIB)/$(LIB_PREFIX)icudata*.$(SHRLIB_FOREIGN_EXT) \
$(LIB)/$(LIB_PREFIX)icui18n*.$(SHRLIB_FOREIGN_EXT)
# Shared library name for usage inside of the UDF
IbUtilLibraryName = $(LIB_PREFIX)ib_util.$(SHRLIB_EXT)
LIBIBUTIL_SO = $(LIB)/$(IbUtilLibraryName)
@ -246,12 +247,11 @@ LIBIBUTIL_SO = $(LIB)/$(IbUtilLibraryName)
#
UNDEF_PLATFORM = -Wl,--no-undefined
ifneq ($(IsProdTypeBuild),Y)
ifeq ($(TARGET),Debug)
UNDEF_FLAGS = $(UNDEF_PLATFORM)
endif
FIREBIRD_VERS = firebird.vers
FIREBIRD_CLIENT_VERS = firebird.vers
FBTRACE_VERS = fbtrace.vers
FBINTL_VERS = fbintl.vers
IB_UTIL_VERS = ib_util.vers
@ -262,13 +262,12 @@ ALLVERS = $(FIREBIRD_VERS) $(FBTRACE_VERS) $(FBINTL_VERS) $(IB_UTIL_VERS)
ALLVERS += $(UDR_ENGINE_VERS) $(EMPTY_VERS)
LINK_FIREBIRD_SYMBOLS = $(LIB_LINK_MAPFILE)$(FIREBIRD_VERS)
LINK_FIREBIRD_EMBED_SYMBOLS=$(LIB_LINK_MAPFILE)$(FIREBIRD_VERS)
LINK_FIREBIRD_CLIENT_SYMBOLS=$(LIB_LINK_MAPFILE)$(FIREBIRD_CLIENT_VERS)
LINK_TRACE_SYMBOLS = $(LIB_LINK_MAPFILE)$(FBTRACE_VERS)
LINK_FBINTL_SYMBOLS = $(LIB_LINK_MAPFILE)$(FBINTL_VERS)
LINK_IBUTIL_SYMBOLS = $(LIB_LINK_MAPFILE)$(IB_UTIL_VERS)
LINK_UDRENG_SYMBOLS = $(LIB_LINK_MAPFILE)$(UDR_ENGINE_VERS)
LINK_EMPTY_SYMBOLS = $(LIB_LINK_MAPFILE)$(EMPTY_VERS)
LINK_PLUGIN_SYMBOLS = $(LINK_EMPTY_SYMBOLS)
LINK_EXEC_EXPORT=-rdynamic
LIB_PLATFORM_RPATH = -Wl,-rpath,$(1)
@ -280,46 +279,45 @@ endif
LIB_PATH_OPTS = $(call LIB_LINK_RPATH,lib) $(call LIB_LINK_RPATH,intl)
LIB_LINK_SONAME= -Wl,-soname,$(1)
LIB_LINK_MAPFILE= -Wl,--version-script,
FBEMBED_LINK= -L$(LIB) -lfbembed
FIREBIRD_LIBRARY_LINK= -L$(LIB) -lfirebird
LINK_OPTS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS)
LIB_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) -shared
FB_SUPER_SERVER = $(BIN)/fbserver$(EXEC_EXT)
FB_DAEMON = $(BIN)/fb_smp_server$(EXEC_EXT)
STATIC_CXXSUPPORT_LIB=@STATIC_CXXSUPPORT_LIB@
LIB_LINK_IMPLIB =
LIB_GUI =
FB_DAEMON = $(BIN)/firebird$(EXEC_EXT)
# Per-library link rules
LINK_UDF = $(LIB_LINK) $(LIB_LINK_OPTIONS) $(call LIB_LINK_SONAME,$(1).$(SHRLIB_EXT))\
LINK_UDF = $(LIB_LINK) $(LIB_LINK_OPTIONS) $(call LIB_LINK_SONAME,$(1).$(SHRLIB_EXT)) $(UNDEF_FLAGS)\
$(call LIB_LINK_RPATH,lib) -lm
LINK_UDF_LIBS = $(THR_LIBS) -L$(LIB) -lib_util
LINK_IB_UTIL = $(LIB_LINK) $(LINK_IBUTIL_SYMBOLS) $(LIB_LINK_OPTIONS)\
LINK_IB_UTIL = $(LIB_LINK) $(LINK_IBUTIL_SYMBOLS) $(LIB_LINK_OPTIONS) $(UNDEF_FLAGS)\
$(call LIB_LINK_SONAME,$(IbUtilLibraryName)) $(call LIB_LINK_RPATH,lib)
LINK_IB_UTIL_LIBS = $(THR_LIBS)
LINK_INTL = $(LIB_LINK) $(LINK_FBINTL_SYMBOLS) $(LIB_LINK_OPTIONS)\
LINK_INTL = $(LIB_LINK) $(LINK_FBINTL_SYMBOLS) $(LIB_LINK_OPTIONS) $(UNDEF_FLAGS)\
$(call LIB_LINK_SONAME,libintl.$(SHRLIB_EXT).1) $(call LIB_LINK_RPATH,lib)
LINK_INTL_LIBS = -L$(LIB) $(ICU_LIBS) $(SO_LINK_LIBS)
LINK_INTL_LIBS = -L$(LIB) $(ICU_LIBS) $(SO_LINK_LIBS) $(FIREBIRD_LIBRARY_LINK)
LINK_TRACE = $(LIB_LINK) $(LINK_TRACE_SYMBOLS) $(LIB_LINK_OPTIONS)\
LINK_TRACE = $(LIB_LINK) $(LINK_TRACE_SYMBOLS) $(LIB_LINK_OPTIONS) $(UNDEF_FLAGS)\
$(call LIB_LINK_SONAME,$(LIB_PREFIX)fbtrace.$(SHRLIB_EXT).0) $(call LIB_LINK_RPATH,lib)
LINK_TRACE_LIBS = -L$(LIB) $(SO_LINK_LIBS)
LINK_TRACE_LIBS = -L$(LIB) $(SO_LINK_LIBS) -licuuc
LINK_CLIENT = $(CLIENTLIB_LINK) $(LINK_FIREBIRD_CLIENT_SYMBOLS) $(LIB_LINK_OPTIONS)\
$(LIB_LINK_IMPLIB) $(call LIB_LINK_SONAME,$(ClientLibrarySoName)) $(call LIB_LINK_RPATH,lib)
LINK_CLIENT_LIBS = $(SO_LINK_LIBS) $(STATIC_CXXSUPPORT_LIB)
LINK_FIREBIRD = $(LIB_LINK) $(LINK_FIREBIRD_SYMBOLS) $(LIB_LINK_OPTIONS) $(LIB_FIREBIRD_OPTIONS) $(UNDEF_FLAGS)\
$(call LIB_LINK_SONAME,$(LibrarySoName)) $(call LIB_LINK_RPATH,lib)
LINK_FIREBIRD_LIBS = -L$(LIB) $(LIB_GUI) $(SO_LINK_LIBS)
LINK_EMBED = $(LIB_LINK) $(LINK_FIREBIRD_EMBED_SYMBOLS) $(LIB_LINK_OPTIONS) $(LIB_EMBED_LINK_OPTIONS)\
$(call LIB_LINK_SONAME,$(SharedLibrarySoName)) $(call LIB_LINK_RPATH,lib)
LINK_EMBED_LIBS = -L$(LIB) $(LIB_GUI) $(SO_LINK_LIBS) $(ICU_LIBS)
LINK_ENGINE = $(LIB_LINK) $(LINK_PLUGIN_SYMBOLS) $(LIB_LINK_OPTIONS) $(LIB_FIREBIRD_OPTIONS) $(UNDEF_FLAGS)\
$(call LIB_LINK_SONAME,$(EngineSoName)) $(call LIB_LINK_RPATH,lib)
LINK_ENGINE_LIBS = $(LINK_FIREBIRD_LIBS) $(FIREBIRD_LIBRARY_LINK) -licuuc
LINK_PLUGIN = $(LIB_LINK) $(LINK_EMPTY_SYMBOLS) $(LIB_LINK_OPTIONS) $(call LIB_LINK_RPATH,lib)
LINK_PLUGIN = $(LIB_LINK) $(LINK_PLUGIN_SYMBOLS) $(LIB_LINK_OPTIONS) $(call LIB_LINK_RPATH,lib) $(UNDEF_FLAGS)
LINK_PLUG_LIBS = -L$(LIB) $(SO_LINK_LIBS)
# Pay attention - we place common library into obj, not lib dir
# It's just a set of object files, prepared to be used by ld, not an output library
COMMON_LIB = $(OBJ)/common.a
# From utilities
CREATE_DB = $(BIN)/create_db$(EXEC_EXT)
GDS_DROP = $(BIN)/gds_drop$(EXEC_EXT)
@ -340,9 +338,8 @@ IBGUARD = $(BIN)/ibguard$(EXEC_EXT)
FBMGR_BIN = $(BIN)/fbmgr.bin$(EXEC_EXT)
INSTREG = $(BIN)/instreg$(EXEC_EXT)
INSTSVC = $(BIN)/instsvc$(EXEC_EXT)
ISC_GDB = $(FIREBIRD)/security2.fdb
ISC_GBAK = $(BIN)/security.gbak
MANAGEMENT = $(PLUGINS)/$(LIB_PREFIX)user_management.$(SHRLIB_EXT)
SECURITY_FDB = $(FIREBIRD)/security3.fdb
# From qli
QLI = $(BIN)/qli$(EXEC_EXT)

View File

@ -38,7 +38,7 @@ ifeq ($(STD_ICU),false)
WFLAGS:= $(WFLAGS) -I$(ROOT)/extern/icu/source/common -I$(ROOT)/extern/icu/source/i18n
endif
ifeq ($(IsProdTypeBuild),Y)
ifeq ($(TARGET),Release)
WFLAGS:= $(WFLAGS) $(PROD_FLAGS)
else
WFLAGS:= $(WFLAGS) $(DEV_FLAGS) -DDEV_BUILD
@ -75,65 +75,35 @@ DSQL_GPRE_FLAGS = -m -z -n
$(GPRE_CURRENT) $(GPRE_FLAGS) $< $@
$(OBJ)/jrd/%.cpp: $(SRC_ROOT)/jrd/%.epp
$(OBJ)/jrd/%.cpp: $(SRC_ROOT)/jrd/%.epp
$(GPRE_CURRENT) $(JRD_GPRE_FLAGS) $(firstword $<) $@
$(OBJ)/dsql/%.cpp: $(SRC_ROOT)/dsql/%.epp
$(GPRE_CURRENT) $(DSQL_GPRE_FLAGS) $< $@
$(OBJ)/%.cpp: $(SRC_ROOT)/%.epp
$(OBJ)/yvalve/%.cpp: $(SRC_ROOT)/yvalve/%.epp
$(GPRE_CURRENT) $(DSQL_GPRE_FLAGS) $< $@
$(OBJ)/%.cpp: $(SRC_ROOT)/%.epp
$(GPRE_CURRENT) $(GPRE_FLAGS) $(firstword $<) $@
.SUFFIXES: .lo .o .cpp .c
$(OBJ)/jrd/%.o: $(SRC_ROOT)/jrd/$(PLATFORM_PATH)/%.cpp
$(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@
@sed -i -e "1s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@)
$(OBJ)/utilities/ntrace/%.o: $(SRC_ROOT)/utilities/ntrace/$(PLATFORM_PATH)/%.cpp
$(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@
@sed -i -e "1s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@)
ifneq ($(strip $(PLATFORM_FALLBACK)),)
$(OBJ)/jrd/%.o: $(SRC_ROOT)/jrd/$(PLATFORM_FALLBACK)/%.cpp
$(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@
@sed -i -e "1s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@)
$(OBJ)/utilities/ntrace/%.o: $(SRC_ROOT)/utilities/ntrace/$(PLATFORM_FALLBACK)/%.cpp
$(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@
@sed -i -e "1s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@)
endif
$(OBJ)/%.o: $(SRC_ROOT)/%.c
$(OBJ)/%.o: $(SRC_ROOT)/%.c
$(CC) $(WCFLAGS) -c $(firstword $<) -o $@
@sed -i -e "1s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@)
$(OBJ)/%.o: $(OBJ)/%.cpp
$(OBJ)/%.o: $(OBJ)/%.cpp
$(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@
@sed -i -e "1s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@)
$(OBJ)/%.o: $(SRC_ROOT)/%.cpp
$(OBJ)/%.o: $(SRC_ROOT)/%.cpp
$(CXX) $(WCXXFLAGS) -c $(firstword $<) -o $@
@sed -i -e "1s/:/: \$$(wildcard/" -e "\$$s/\(.*\)/\\1)/" $(patsubst %.o,%.d,$@)
.SUFFIXES: .epp .e
.SECONDARY: \
$(OBJ)/msgs/modify_msgs.epp $(OBJ)/msgs/check_msgs.epp $(OBJ)/msgs/include.epp \
$(OBJ)/msgs/load.epp $(OBJ)/msgs/build_file.epp $(OBJ)/msgs/change_msgs.epp \
$(OBJ)/msgs/enter_msgs.epp $(OBJ)/jrd/ini.epp $(OBJ)/jrd/dyn_def.epp $(OBJ)/jrd/scl.epp \
$(OBJ)/jrd/dyn_del.epp $(OBJ)/jrd/dyn_mod.epp $(OBJ)/jrd/Function.epp $(OBJ)/jrd/grant.epp \
$(OBJ)/jrd/fun.epp $(OBJ)/jrd/dyn.epp $(OBJ)/jrd/dfw.epp $(OBJ)/jrd/dyn_util.epp \
$(OBJ)/jrd/pcmet.epp $(OBJ)/jrd/met.epp $(OBJ)/jrd/dpm.epp $(OBJ)/utilities/rebuild/rstore.epp \
$(OBJ)/utilities/rebuild/rmet.epp $(OBJ)/utilities/gstat/dba.epp $(OBJ)/utilities/stats.epp \
$(OBJ)/auth/SecurityDatabase/LegacyManagement.epp $(OBJ)/alice/alice_meta.epp $(OBJ)/qli/meta.epp \
$(OBJ)/qli/proc.epp $(OBJ)/qli/show.epp $(OBJ)/qli/help.epp $(OBJ)/misc/codes.epp \
$(OBJ)/gpre/gpre_meta.epp $(OBJ)/dsql/blob.epp $(OBJ)/dsql/array.epp \
$(OBJ)/dsql/PackageNodes.epp $(OBJ)/dsql/metd.epp $(OBJ)/dsql/DdlNodes.epp $(OBJ)/isql/show.epp \
$(OBJ)/isql/extract.epp $(OBJ)/isql/isql.epp $(OBJ)/burp/restore.epp $(OBJ)/burp/backup.epp \
$(OBJ)/burp/OdsDetection.epp
# Rules for making resource files
$(GEN_ROOT)/%.res: $(SRC_ROOT)/%.rc

View File

@ -41,10 +41,10 @@
# This rule creates parse.cpp from parse.y
$(SRC_ROOT)/dsql/parse.cpp $(SRC_ROOT)/dsql/dsql.tab.h: $(SRC_ROOT)/dsql/parse.y $(SRC_ROOT)/dsql/btyacc_fb.ske
$(OBJ)/dsql/parse.cpp $(SRC_ROOT)/include/gen/parse.h: $(SRC_ROOT)/dsql/parse.y $(SRC_ROOT)/dsql/btyacc_fb.ske
$(BTYACC) -l -d -S $(SRC_ROOT)/dsql/btyacc_fb.ske $<
$(MV) $(GEN_ROOT)/y_tab.c $(SRC_ROOT)/dsql/parse.cpp
$(MV) $(GEN_ROOT)/y_tab.h $(SRC_ROOT)/dsql/dsql.tab.h
$(MV) $(GEN_ROOT)/y_tab.c $(OBJ)/dsql/parse.cpp
$(MV) $(GEN_ROOT)/y_tab.h $(SRC_ROOT)/include/gen/parse.h
# gpre_meta needs a special boot build since there is no database.
@ -53,19 +53,6 @@ $(SRC_ROOT)/gpre/gpre_meta.cpp: $(SRC_ROOT)/gpre/gpre_meta.epp
$(GPRE_BOOT) -lang_internal $(GPRE_FLAGS) $< $@
buildb: security2.fdb yachts.lnk help.fdb
security2.fdb : $(ISC_GDB)
-$(LN) -f $(ISC_GDB) $@
yachts.lnk:
-$(LN) -f $(SRC_ROOT)/refDatabases/empty.fdb yachts.lnk
help.fdb:
-$(LN) -f $(SRC_ROOT)/refDatabases/help.fdb help.fdb
# These need to change to $(GEN_SRC) at some stage
#$(SRC_ROOT)/qli/meta.cpp $(SRC_ROOT)/qli/proc.cpp $(SRC_ROOT)/qli/show.cpp: yachts.lnk
#$(SRC_ROOT)/qli/help.cpp: help.fdb
@ -74,8 +61,7 @@ help.fdb:
$(OBJ)/jrd/par.o: $(SRC_ROOT)/include/gen/blrtable.h
# Explicit dependence on generated header (parser)
$(SRC_ROOT)/dsql/keywords.cpp: $(SRC_ROOT)/dsql/dsql.tab.h
$(OBJ)/dsql/Parser.h: $(SRC_ROOT)/dsql/dsql.tab.h
$(OBJ)/dsql/Parser.o $(OBJ)/dsql/keywords.o $(OBJ)/dsql/dsql.o: $(SRC_ROOT)/include/gen/parse.h
$(OBJ)/dsql/AggNodes.o: $(SRC_ROOT)/include/gen/blrtable.h
$(OBJ)/dsql/ExprNodes.o: $(SRC_ROOT)/include/gen/blrtable.h

View File

@ -1,388 +1,200 @@
#
# jrd
# Helper functions
makeObjects= $(addprefix $(OBJ)/$(1)/,$(patsubst %.y,%.o,$(patsubst %.epp,%.o,$(patsubst %.c,%.o,$(2:.cpp=.o)))))
dirFiles= $(notdir $(wildcard ../src/$(1)/*.cpp)) $(notdir $(wildcard ../src/$(1)/*.c)) \
$(notdir $(wildcard ../src/$(1)/*.epp)) $(notdir $(wildcard ../src/$(1)/*.y))
dirInPath= $(call makeObjects,$(1),$(call dirFiles,$(1)))
# to get at the database. why.cpp is the normal one whybk.cpp is the one
# compiled with a BACKEND flag, it seems to be (from a quick look at
# the code) to allow the use of another library to talk to data from
# and earlier version data file. (Good way to achieve back portability)
# In the current builds only why.cpp is used, to build using whybk.cpp you
# will need to look at what is contained in the original makefiles.
WHY_Sources = why.cpp
# why.cpp does the switch to determine the actual implementation to use
JRD_ClientFiles = alt.cpp db_alias.cpp dsc.cpp \
gds.cpp isc.cpp isc_file.cpp isc_ipc.cpp \
perf.cpp sdl.cpp status.cpp \
ThreadData.cpp ThreadStart.cpp utl.cpp \
$(WHY_Sources)
JRD_ClientSources = $(addprefix jrd/, $(JRD_ClientFiles)) \
common/cvt.cpp common/classes/DbImplementation.cpp
JRD_ServerFiles= blob_filter.cpp cvt.cpp dpm.epp dyn.epp dyn_def.epp \
dyn_del.epp dyn_mod.epp dyn_util.epp fun.epp Function.epp \
grant.epp ini.epp met.epp pcmet.epp scl.epp \
CharSet.cpp Collation.cpp DatabaseSnapshot.cpp VirtualTable.cpp RecordBuffer.cpp \
blb.cpp btn.cpp btr.cpp builtin.cpp \
GlobalRWLock.cpp cch.cpp cmp.cpp cvt2.cpp \
DataTypeUtil.cpp dfw.cpp UserManagement.cpp divorce.cpp \
err.cpp event.cpp ErrorImpl.cpp evl.cpp exe.cpp ext.cpp \
execute_statement.cpp ExtEngineManager.cpp filters.cpp flu.cpp \
idx.cpp inf.cpp intl.cpp intl_builtin.cpp IntlManager.cpp \
IntlUtil.cpp isc_sync.cpp \
jrd.cpp JrdStatement.cpp Attachment.cpp Database.cpp lck.cpp \
mov.cpp opt.cpp Optimizer.cpp pag.cpp par.cpp \
ods.cpp PluginManager.cpp PreparedStatement.cpp RandomGenerator.cpp \
Relation.cpp ResultSet.cpp rlck.cpp rpb_chain.cpp \
sdw.cpp shut.cpp sort.cpp sqz.cpp \
svc.cpp SysFunction.cpp TempSpace.cpp tpc.cpp tra.cpp validation.cpp \
ValueImpl.cpp ValuesImpl.cpp vio.cpp \
nodebug.cpp nbak.cpp $(Physical_IO_Module) TextType.cpp \
unicode_util.cpp RecordSourceNodes.cpp RuntimeStatistics.cpp DebugInterface.cpp \
extds/ExtDS.cpp extds/InternalDS.cpp extds/IscDS.cpp \
trace/TraceConfigStorage.cpp trace/TraceLog.cpp \
trace/TraceManager.cpp trace/TraceObjects.cpp \
recsrc/AggregatedStream.cpp recsrc/BitmapTableScan.cpp \
recsrc/BufferedStream.cpp recsrc/Cursor.cpp recsrc/ExternalTableScan.cpp \
recsrc/FilteredStream.cpp recsrc/FirstRowsStream.cpp recsrc/FullOuterJoin.cpp \
recsrc/FullTableScan.cpp recsrc/HashJoin.cpp recsrc/IndexTableScan.cpp recsrc/LockedStream.cpp \
recsrc/MergeJoin.cpp recsrc/NestedLoopJoin.cpp \
recsrc/ProcedureScan.cpp recsrc/RecordSource.cpp recsrc/RecursiveStream.cpp \
recsrc/SingularStream.cpp recsrc/SkipRowsStream.cpp recsrc/SortedStream.cpp recsrc/Union.cpp \
recsrc/VirtualTableScan.cpp recsrc/WindowedStream.cpp
JRD_ServerSources = $(addprefix jrd/, $(JRD_ServerFiles))
JRD_ServerSources += gpre/pretty.cpp
JRD_Sources = $(JRD_ClientSources) $(JRD_ServerSources)
# expands list to ../<module>/jrd/xx.o entries
JRD_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(JRD_Sources))))
# If your platform needs these then you may need
# to include something like.
# JRD_P_Sources := $(subst, flu.lo, , $(JRD_P_Sources))
#________________________________________________________________________
#
# dsql
DSQL_ClientFiles = array.epp blob.epp \
preparse.cpp user_dsql.cpp utld.cpp keywords.cpp
DSQL_ServerFiles= metd.epp DSqlDataTypeUtil.cpp \
ddl.cpp dsql.cpp errd.cpp gen.cpp hsh.cpp make.cpp \
movd.cpp parse.cpp Parser.cpp pass1.cpp \
DdlNodes.epp PackageNodes.epp AggNodes.cpp BlrWriter.cpp BoolNodes.cpp \
DsqlCompilerScratch.cpp ExprNodes.cpp StmtNodes.cpp WinNodes.cpp
DSQL_Files = $(DSQL_ClientFiles) $(DSQL_ServerFiles)
DSQL_Sources = $(addprefix dsql/, $(DSQL_Files))
DSQL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(DSQL_Sources))))
#________________________________________________________________________
#
# lock
LOCK_Files = lock.cpp
LOCK_Sources = $(addprefix lock/, $(LOCK_Files))
LOCK_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(LOCK_Sources))))
#________________________________________________________________________
#
# remote
REMOTE_CommonFiles = inet.cpp merge.cpp \
parser.cpp protocol.cpp remote.cpp xdr.cpp
REMOTE_ClientFiles = interface.cpp
INTERFACE_Files= $(REMOTE_ClientFiles) $(REMOTE_CommonFiles)
INTERFACE_Sources = $(addprefix remote/, $(INTERFACE_Files)) \
auth/Auth.cpp auth/AuthDbg.cpp auth/SecurityDatabase/LegacyClient.cpp jrd/enc.cpp
INTERFACE_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(INTERFACE_Sources))))
ifeq ($(PLATFORM),win32)
REMOTE_CommonFiles += os/win32/wnet.cpp xnet.cpp
INTERFACE_Objects += $(OBJ)/auth/trusted/AuthSspi.o
dirMaster= $(call dirInPath,$(1))
dirOs= $(call dirInPath,$(1)/$(PLATFORM_PATH))
ifneq ($(strip $(PLATFORM_FALLBACK)),)
dirBackList= $(filter-out $(call dirFiles,$(1)/$(PLATFORM_PATH)),$(call dirFiles,$(1)/$(PLATFORM_FALLBACK)))
dirFallBack= $(call makeObjects,$(1)/$(PLATFORM_FALLBACK),$(call dirBackList,$(1)))
else
dirFallBack=
endif
#________________________________________________________________________
#
# intl
# none currently.
dirObjects= $(call dirMaster,$(1)) $(call dirOs,$(1)) $(call dirOs2,$(1))
# Collect all object files here
AllObjects=
# Common files
CO1:= $(call dirObjects,common)
CO2:= $(call dirObjects,common/classes)
CO3:= $(call dirObjects,common/config)
#CO4:= $(call dirObjects,common/exceptions)
#CO5:= $(call dirObjects,common/sync)
Common_Objects:= $(CO1) $(CO2) $(CO3)
# $(CO4) $(CO5)
AllObjects += $(Common_Objects)
#________________________________________________________________________
#
# gpre
GPRE_Common_Objects:= $(call dirObjects,gpre) $(call makeObjects,gpre/languages,@GPRE_LANGUAGE_MODULES@)
GPRE_std:= $(call dirObjects,gpre/std)
GPRE_Objects:= $(GPRE_Common_Objects) $(GPRE_std)
GPRE_boot:= $(call dirObjects,gpre/boot) $(call makeObjects,yvalve,gds.cpp)
GPRE_Boot_Objects:= $(GPRE_Common_Objects) $(GPRE_boot)
GPRELIB_ClientFiles = pretty.cpp
GPRELIB_Files = $(GPRELIB_ClientFiles) $(GPRELIB_ServerFiles)
GPRELIB_Sources = $(addprefix gpre/, $(GPRELIB_Files))
GPRELIB_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(GPRELIB_Sources))))
AllObjects += $(GPRE_Common_Objects) $(GPRE_std) $(GPRE_boot)
# Y-Valve
YValve_Objects:= $(call dirObjects,yvalve)
#________________________________________________________________________
#
# alice
AllObjects += $(YValve_Objects)
ALICE_Files=alice.cpp exe.cpp alice_meta.epp tdr.cpp
ALICE_Sources = $(addprefix alice/, $(ALICE_Files))
ALICE_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(ALICE_Sources))))
#________________________________________________________________________
#
# burp
# Remote
Remote_Common:= $(call dirObjects,remote)
Remote_Server:= $(call dirObjects,remote/server) $(call makeObjects,auth/SecurityDatabase,pwd.cpp)
# legacy security database pwd.cpp should become SA plugin
Remote_Client:= $(call dirObjects,remote/client) $(call makeObjects,auth/SecurityDatabase,LegacyClient.cpp)
Remote_Server_Objects:= $(Remote_Common) $(Remote_Server)
Remote_Client_Objects:= $(Remote_Common) $(Remote_Client)
BURP_Files=burp.cpp backup.epp restore.epp OdsDetection.epp mvol.cpp misc.cpp canonical.cpp
BURP_Sources = $(addprefix burp/, $(BURP_Files))
BURP_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(BURP_Sources))))
AllObjects += $(Remote_Common) $(Remote_Server) $(Remote_Client)
# Engine
Engine_Objects:= $(call dirObjects,jrd) $(call dirObjects,dsql) $(call dirObjects,jrd/extds) \
$(call dirObjects,jrd/recsrc) $(call dirObjects,jrd/trace) \
$(call makeObjects,lock,lock.cpp)
AllObjects += $(Engine_Objects)
# services
# gfix
Svc_GFIX_Objects:= $(call dirObjects,alice)
GFIX_Objects:= $(Svc_GFIX_Objects) $(call dirObjects,alice/main)
AllObjects += $(GFIX_Objects)
# gbak
Svc_GBAK_Objects:= $(call dirObjects,burp)
GBAK_Objects:= $(Svc_GBAK_Objects) $(call dirObjects,burp/main)
AllObjects += $(GBAK_Objects)
# gsec
Svc_GSEC_Objects:= $(call dirObjects,utilities/gsec)
GSEC_Objects:= $(Svc_GSEC_Objects) $(call dirObjects,utilities/gsec/main)
AllObjects += $(GSEC_Objects)
# gstat
Svc_GSTAT_Objects:= $(call dirObjects,utilities/gstat)
GSTAT_Own_Objects:= $(Svc_GSTAT_Objects) $(call dirObjects,utilities/gstat/main)
GSTAT_Objects:= $(GSTAT_Own_Objects) $(call makeObjects,jrd,btn.cpp ods.cpp)
AllObjects += $(GSTAT_Own_Objects)
#________________________________________________________________________
#
# nbackup
Svc_NBACKUP_Objects:= $(call dirObjects,utilities/nbackup)
NBACKUP_Own_Objects:= $(Svc_NBACKUP_Objects) $(call dirObjects,utilities/nbackup/main)
NBACKUP_Objects:= $(NBACKUP_Own_Objects) $(call makeObjects,jrd,ods.cpp)
NBACKUP_SERVER_Files= nbackup.cpp
NBACKUP_SERVER_Sources = $(addprefix utilities/, $(NBACKUP_SERVER_Files))
NBACKUP_SERVER_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(NBACKUP_SERVER_Sources))))
AllObjects += $(NBACKUP_Own_Objects)
#________________________________________________________________________
#
# ntrace
SVC_Objects:= $(Svc_GFIX_Objects) $(Svc_GBAK_Objects) $(Svc_GSEC_Objects) $(Svc_GSTAT_Objects) \
$(Svc_NBACKUP_Objects)
NTRACE_SERVER_Files= TraceCmdLine.cpp TraceService.cpp
NTRACE_SERVER_Sources = $(addprefix jrd/trace/, $(NTRACE_SERVER_Files))
NTRACE_SERVER_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(NTRACE_SERVER_Sources))))
#________________________________________________________________________
#
# utilities
# International support
INTL_Objects:= $(call dirObjects,intl)
SECURITY_ClientFiles_gsec = call_service.cpp
AllObjects += $(INTL_Objects)
SECURITY_ServerFiles_gsec:= security.cpp gsec.cpp
SECURITY_ServerFiles_gstat:= dba.epp ppg.cpp
SECURITY_ServerFiles_common:=
SECURITY_Files_gsec = $(SECURITY_ClientFiles_gsec) $(SECURITY_ServerFiles_gsec)
SECURITY_Files_gstat = $(SECURITY_ServerFiles_gstat)
SECURITY_Files_common = $(SECURITY_ServerFiles_common)
SECURITY_Sources_gsec = $(addprefix utilities/gsec/, $(SECURITY_Files_gsec))
SECURITY_Sources_gstat = $(addprefix utilities/gstat/, $(SECURITY_Files_gstat))
SECURITY_Sources_common = $(addprefix utilities/common/, $(SECURITY_Files_common))
# Lockprint
LOCKPRINT_Objects:= $(call makeObjects,lock,print.cpp)
SECURITY_Sources = $(SECURITY_Sources_gsec) $(SECURITY_Sources_gstat) $(SECURITY_Sources_common)
SECURITY_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(SECURITY_Sources))))
AllObjects += $(LOCKPRINT_Objects)
SECURITY_ClientSources_gsec = $(addprefix utilities/gsec/, $(SECURITY_ClientFiles_gsec))
SECURITY_ClientObjects_gsec = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(SECURITY_ClientSources_gsec))))
#________________________________________________________________________
#
# common/classes
# Guardian
FBGUARD_Objects:= $(call dirObjects,utilities/guard)
FBCLASSES_ClientFiles=alloc.cpp locks.cpp semaphore.cpp fb_string.cpp timestamp.cpp \
PublicHandle.cpp TempFile.cpp
FBCLASSES_MsgFiles=SafeArg.cpp MsgPrint.cpp BaseStream.cpp
FBCLASSES_ServerFiles=UserBlob.cpp
AllObjects += $(FBGUARD_Objects)
FBCLASSES_ClientSources = $(addprefix common/classes/, $(FBCLASSES_ClientFiles))
FBCLASSES_MsgSources = $(addprefix common/classes/, $(FBCLASSES_MsgFiles))
FBCLASSES_ServerSources = $(addprefix common/classes/, $(FBCLASSES_ServerFiles))
FBCLASSES_ClientObjects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBCLASSES_ClientSources))))
FBCLASSES_MsgObjects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBCLASSES_MsgSources))))
FBCLASSES_ServerObjects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBCLASSES_ServerSources))))
# Services manager
FBSVCMGR_Objects:= $(call dirObjects,utilities/fbsvcmgr)
FBCLASSES_Objects = $(FBCLASSES_ClientObjects) $(FBCLASSES_ServerObjects) $(FBCLASSES_MsgObjects)
AllObjects += $(FBSVCMGR_Objects)
#________________________________________________________________________
#
# common/config
FBCONFIG_ClientFiles=config.cpp config_file.cpp dir_list.cpp ConfigCache.cpp
FBCONFIG_ServerFiles=
# Trace manager
FBTRACEMGR_Objects:= $(call dirObjects,utilities/fbtracemgr) $(call makeObjects,jrd/trace,TraceCmdLine.cpp)
FBCONFIG_Files= $(FBCONFIG_ClientFiles) $(FBCONFIG_ServerFiles)
AllObjects += $(FBTRACEMGR_Objects)
FBCONFIG_Sources = $(addprefix common/config/, $(FBCONFIG_Files))
FBCONFIG_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBCONFIG_Sources))))
#________________________________________________________________________
#
# config
# Trace plugin
FBTRACE_UTIL_Objects:= $(call dirObjects,utilities/ntrace)
CONFIG_ClientFiles=ScanDir.cpp
CONFIG_ServerFiles=
AllObjects += $(FBTRACE_UTIL_Objects)
CONFIG_Files= $(CONFIG_ClientFiles) $(CONFIG_ServerFiles)
CONFIG_Sources = $(addprefix config/, $(CONFIG_Files))
CONFIG_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CONFIG_Sources))))
# Split/merge backup files
GSPLIT_Objects:= $(call dirObjects,burp/split)
#________________________________________________________________________
#
# common
AllObjects += $(GSPLIT_Objects)
FBCOMMON_ClientFiles = fb_exception.cpp thd.cpp classes/MetaName.cpp StatusHolder.cpp classes/init.cpp StatusArg.cpp
FBCOMMON_ServerFiles = utils.cpp
FBCOMMON_ClientObjects = $(addprefix $(OBJ)/common/, $(addsuffix .o, $(basename $(FBCOMMON_ClientFiles))))
FBCOMMON_ServerObjects = $(addprefix $(OBJ)/common/, $(addsuffix .o, $(basename $(FBCOMMON_ServerFiles))))
# Interactive sql
ISQL_Objects:= $(call dirObjects,isql)
FBCOMMON_Objects = $(FBCOMMON_ClientObjects) $(FBCOMMON_ServerObjects)
AllObjects += $(ISQL_Objects)
#________________________________________________________________________
#
# clumplets
CLUMPLETS_ClientFiles = ClumpletReader.cpp ClumpletWriter.cpp
CLUMPLETS_ServerFiles =
# QLI
QLI_Objects:= $(call dirObjects,qli)
CLUMPLETS_Files = $(CLUMPLETS_ClientFiles) $(CLUMPLETS_ServerFiles)
AllObjects += $(QLI_Objects)
CLUMPLETS_Sources = $(addprefix common/classes/, $(CLUMPLETS_Files))
CLUMPLETS_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(CLUMPLETS_Sources))))
# Legacy users management in security database
LEGACY_USERS_MANAGE_Objects:= $(call makeObjects,auth/SecurityDatabase,LegacyManagement.epp)
#________________________________________________________________________
#
# Platform Manager
AllObjects += $(LEGACY_USERS_MANAGE_Objects)
# just in case if make.platform defined some files
OS_SPECIFIC_Files += config_root.cpp path_utils.cpp mod_loader.cpp fbsyslog.cpp guid.cpp os_utils.cpp
OS_SPECIFIC_Sources = $(addprefix jrd/, $(OS_SPECIFIC_Files)) common/dllinst.cpp
ifneq ($(strip @BINRELOC_CFLAGS@),)
OS_SPECIFIC_Sources += $(ROOT)/extern/binreloc/binreloc.c
endif
OS_SPECIFIC_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(OS_SPECIFIC_Sources))))
# UDR engine
UDRENG_Objects:= $(call dirObjects,plugins/udr_engine)
AllObjects += $(UDRENG_Objects)
#________________________________________________________________________
#
# These objects are needed in any target
# UDF support
IBUDF_Objects:= $(call makeObjects,extlib,ib_udf.cpp)
FBUDF_Objects:= $(call makeObjects,extlib/fbudf,fbudf.cpp)
UTIL_Objects:= $(call makeObjects,extlib,ib_util.cpp)
COMMON_Objects = $(FBCLASSES_Objects) \
$(FBCOMMON_Objects) \
$(CONFIG_Objects)
AllObjects += $(IBUDF_Objects) $(FBUDF_Objects) $(UTIL_Objects)
#________________________________________________________________________
#
# Regenerate error codes
CODES_Objects:= $(call makeObjects,misc,codes.epp)
MSG_SCRIPTS = msg.sql facilities2.sql locales.sql sqlstates.sql history2.sql messages2.sql \
symbols2.sql system_errors2.sql transmsgs.fr_FR2.sql transmsgs.de_DE2.sql
MSG_FILES = $(addprefix $(SRC_ROOT)/msgs/, $(MSG_SCRIPTS))
# These objects are needed for all utilities
AllObjects += $(CODES_Objects)
FBUTIL_Files = classes/Switches.cpp
FBUTIL_Sources = $(addprefix common/, $(FBUTIL_Files))
FBUTIL_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBUTIL_Sources))))
# Create messages file
BUILD_Objects:= $(call makeObjects,msgs,build_file.epp)
AllObjects += $(BUILD_Objects)
#________________________________________________________________________
#
# These objects are needed for all services
# BLR
BLRTABLE_Objects = $(call makeObjects,misc,blrtable.cpp)
FBSVC_Files = UtilSvc.cpp
FBSVC_Sources = $(addprefix common/, $(FBSVC_Files))
FBSVC_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(FBSVC_Sources))))
#________________________________________________________________________
#
# These objects are needed for utilities, that can be used as services
FBUTILSVC_Objects = $(FBUTIL_Objects) $(FBSVC_Objects)
#________________________________________________________________________
#
SVCTAB_Sources = jrd/svc_tab.cpp
SVCTAB_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(SVCTAB_Sources))))
# These are the lists of object/shared object files that will go into libgds.$(SHRLIB_EXT).
LIBFBEMBED_Objects =$(OS_SPECIFIC_Objects) \
$(JRD_Objects) \
$(DSQL_Objects) \
$(LOCK_Objects) \
$(INTERFACE_Objects) \
$(GPRELIB_Objects) \
$(SECURITY_Objects) \
$(CLUMPLETS_Objects) \
$(FBCONFIG_Objects) \
$(BURP_Objects) \
$(ALICE_Objects) \
$(NBACKUP_SERVER_Objects) \
$(NTRACE_SERVER_Objects) \
$(FBUTIL_Objects) \
$(SVCTAB_Objects)
# Objects differences for server (super) and embedded (classic) libraries
# have been worked out above in this file, based on macros, so here they
# both refer to the same thing. (better way always possible)
# MOD 29-July-2002
LIBFBSERVER_Objects =$(LIBFBEMBED_Objects)
# The following library is a 'reduced' set (although not that reduced)
# to enable easy compilation of a boot kit containing a simple gpre and
# gbak modules. These are then used to compile the rest of the system.
# MOD 29-July-2002
# Stub for services entrypoints missing in static library
STUB_Sources = jrd/svc_stub.cpp utilities/gsec/security.cpp
STUB_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(STUB_Sources))))
# Notice that $(SECURITY_Objects) are missing, because that file can't be
# compiled until later in the build process.
LIBFBSTATIC_Objects = $(OS_SPECIFIC_Objects) \
$(JRD_Objects) \
$(DSQL_Objects) \
$(LOCK_Objects) \
$(INTERFACE_Objects) \
$(GPRELIB_Objects) \
$(FBCONFIG_Objects) \
$(CLUMPLETS_Objects) \
$(SECURITY_ClientObjects_gsec) \
$(STUB_Objects)
# Not needed since loaded into libfbmemory.a already
# $(FBMEMORY_Objects)
#________________________________________________________________________
#
# blrtable builder
BLRTABLE_Sources = misc/blrtable.cpp
BLRTABLE_Objects = $(addprefix $(OBJ)/, $(addsuffix .o, $(basename $(BLRTABLE_Sources))))
AllObjects += $(BLRTABLE_Objects)

View File

@ -450,14 +450,14 @@ case $FIREBIRD_ARCH_TYPE in
esac
PROD_BUILD_FLG=Y
AC_ARG_ENABLE(debug,
[ --enable-debug build debug version (default=no)],
AC_ARG_ENABLE(developer,
[ --enable-developer use developer mopde rules (default=no)],
[case "$enableval" in
yes) PROD_BUILD_FLG=N;;
no) PROD_BUILD_FLG=Y;;
*) AC_MSG_ERROR(bad value '${enableval}' for --enable-debug);;
yes) DEVEL_FLG=Y;;
no) DEVEL_FLG=N;;
*) AC_MSG_ERROR(bad value '${enableval}' for --enable-developer);;
esac])
AC_SUBST(PROD_BUILD_FLG)
AC_SUBST(DEVEL_FLG)
dnl Avoid dumb '-g -O2' autoconf's default
dnl Debugging information and optimization flags should be set in prefix.$platform file
@ -1021,190 +1021,47 @@ AC_SUBST(EXPORT_SYMBOLS_STYLE)
AC_DEFINE_UNQUOTED(FB_PREFIX, $(if test "x$prefix" = "xNONE" ; then echo \"$ac_default_prefix\"; else echo \"$prefix\"; fi), [Installation path prefix])
AC_CONFIG_COMMANDS(,,[
dnl ### GEN ### directories for preprocessed cpp, databases and output
mkdir -p gen/alice
mkdir -p gen/burp
mkdir -p gen/dsql
mkdir -p gen/dudley
mkdir -p gen/gpre
mkdir -p gen/iscguard
mkdir -p gen/isql
mkdir -p gen/jrd
mkdir -p gen/jrd/extds
mkdir -p gen/jrd/recsrc
mkdir -p gen/jrd/trace
mkdir -p gen/msgs
mkdir -p gen/plugins/udr_engine
mkdir -p gen/qli
mkdir -p gen/utilities
mkdir -p gen/examples
for fb_tgt in Debug Release; do
dnl ### GEN ### directories for databases and misc
mkdir -p gen/\$fb_tgt/examples
mkdir -p gen/\$fb_tgt/refDatabases
dnl # some .o and .d in this directory (to be removed)
mkdir -p gen/remote/os/win32
mkdir -p gen/remote/os/sun
dnl # output
mkdir -p gen/\$fb_tgt/include
mkdir -p gen/\$fb_tgt/intl
mkdir -p gen/\$fb_tgt/firebird/UDF
mkdir -p gen/\$fb_tgt/firebird/bin
mkdir -p gen/\$fb_tgt/firebird/plugins
mkdir -p gen/\$fb_tgt/firebird/examples/api
mkdir -p gen/\$fb_tgt/firebird/examples/dyn
dnl # mkdir -p gen/\$fb_tgt/firebird/examples/build_unix
dnl # mkdir -p gen/\$fb_tgt/firebird/examples/build_win32
mkdir -p gen/\$fb_tgt/firebird/examples/empbuild
mkdir -p gen/\$fb_tgt/firebird/examples/include
mkdir -p gen/\$fb_tgt/firebird/examples/udr
mkdir -p gen/\$fb_tgt/firebird/examples/stat
mkdir -p gen/\$fb_tgt/firebird/examples/udf
mkdir -p gen/\$fb_tgt/firebird/lib
mkdir -p gen/\$fb_tgt/firebird/misc
mkdir -p gen/\$fb_tgt/firebird/help
mkdir -p gen/\$fb_tgt/firebird/plugins/udr
dnl # databases and output
mkdir -p gen/refDatabases
mkdir -p gen/firebird/include
mkdir -p gen/firebird/intl
mkdir -p gen/firebird/UDF
mkdir -p gen/firebird/bin
mkdir -p gen/firebird/plugins
mkdir -p gen/firebird/examples/api
mkdir -p gen/firebird/examples/dyn
dnl # mkdir -p gen/firebird/examples/build_unix
dnl # mkdir -p gen/firebird/examples/build_win32
mkdir -p gen/firebird/examples/empbuild
mkdir -p gen/firebird/examples/include
mkdir -p gen/firebird/examples/udr
mkdir -p gen/firebird/examples/stat
mkdir -p gen/firebird/examples/udf
mkdir -p gen/firebird/lib
mkdir -p gen/firebird/misc
mkdir -p gen/firebird/help
mkdir -p gen/firebird/plugins/udr
dnl #### TEMP ######### directories for generated .cpp, .o and .d
dnl # by module name
for src_dir in `cd src; ls -R -1 * | grep : | tr -d : | tr "\n" " "; cd ..`; do
mkdir -p temp/\$fb_tgt/\$src_dir
done
src/misc/writeBuildNum.sh createMakeVersion gen/Make.Version
done
for src_dir in `ls -R -1 examples | grep : | tr -d : | tr "\n" " "`; do
mkdir -p temp/\$src_dir
done
dnl # rebuild version header if needed
./src/misc/writeBuildNum.sh rebuildHeader
dnl #### TEMP ######### directories for .o and .d
dnl # by module name
mkdir -p temp/extern/binreloc
mkdir -p temp/std/alice
mkdir -p temp/std/auth/trusted
mkdir -p temp/std/auth/SecurityDatabase
mkdir -p temp/std/burp
mkdir -p temp/std/common/classes
mkdir -p temp/std/common/config
mkdir -p temp/std/config
mkdir -p temp/std/dsql
mkdir -p temp/std/dudley
mkdir -p temp/std/extlib
mkdir -p temp/std/extlib/fbudf
mkdir -p temp/std/gpre
mkdir -p temp/std/intl
mkdir -p temp/std/ipserver
mkdir -p temp/std/iscguard
mkdir -p temp/std/isql
mkdir -p temp/std/jrd
mkdir -p temp/std/jrd/extds
mkdir -p temp/std/jrd/recsrc
mkdir -p temp/std/jrd/trace
mkdir -p temp/std/jrd/os/posix
mkdir -p temp/std/jrd/os/win32
mkdir -p temp/std/jrd/os/darwin
mkdir -p temp/std/lock
mkdir -p temp/std/misc
mkdir -p temp/std/msgs
mkdir -p temp/std/plugins/udr_engine
mkdir -p temp/std/qli
mkdir -p temp/std/remote
mkdir -p temp/std/remote/os/win32
mkdir -p temp/std/remote/os/sun
mkdir -p temp/std/remote/os/darwin
mkdir -p temp/std/utilities/common
mkdir -p temp/std/utilities/fbtracemgr
mkdir -p temp/std/utilities/gsec
mkdir -p temp/std/utilities/gstat
mkdir -p temp/std/utilities/guard
mkdir -p temp/std/utilities/ibmgr
mkdir -p temp/std/utilities/install
mkdir -p temp/std/utilities/nbackup
mkdir -p temp/std/utilities/rebuild
mkdir -p temp/std/utilities/ntrace
mkdir -p temp/std/vulcan
mkdir -p temp/superclient/alice
mkdir -p temp/superclient/auth/trusted
mkdir -p temp/superclient/auth/SecurityDatabase
mkdir -p temp/superclient/burp
mkdir -p temp/superclient/common/classes
mkdir -p temp/superclient/common/config
mkdir -p temp/superclient/config
mkdir -p temp/superclient/dsql
mkdir -p temp/superclient/dudley
mkdir -p temp/superclient/extlib
mkdir -p temp/superclient/extlib/fbudf
mkdir -p temp/superclient/gpre
mkdir -p temp/superclient/intl
mkdir -p temp/superclient/ipserver
mkdir -p temp/superclient/iscguard
mkdir -p temp/superclient/isql
mkdir -p temp/superclient/jrd
mkdir -p temp/superclient/jrd/extds
mkdir -p temp/superclient/jrd/recsrc
mkdir -p temp/superclient/jrd/trace
mkdir -p temp/superclient/jrd/os/posix
mkdir -p temp/superclient/jrd/os/win32
mkdir -p temp/superclient/jrd/os/darwin
mkdir -p temp/superclient/lock
mkdir -p temp/superclient/misc
mkdir -p temp/superclient/msgs
mkdir -p temp/superclient/plugins/udr_engine
mkdir -p temp/superclient/qli
mkdir -p temp/superclient/remote
mkdir -p temp/superclient/remote/os/win32
mkdir -p temp/superclient/remote/os/sun
mkdir -p temp/superclient/remote/os/darwin
mkdir -p temp/superclient/utilities/common
mkdir -p temp/superclient/utilities/fbtracemgr
mkdir -p temp/superclient/utilities/gsec
mkdir -p temp/superclient/utilities/gstat
mkdir -p temp/superclient/utilities/guard
mkdir -p temp/superclient/utilities/ibmgr
mkdir -p temp/superclient/utilities/install
mkdir -p temp/superclient/utilities/nbackup
mkdir -p temp/superclient/utilities/rebuild
mkdir -p temp/superclient/utilities/ntrace
mkdir -p temp/superclient/vulcan
mkdir -p temp/superserver/alice
mkdir -p temp/superserver/auth/trusted
mkdir -p temp/superserver/auth/SecurityDatabase
mkdir -p temp/superserver/burp
mkdir -p temp/superserver/common/classes
mkdir -p temp/superserver/common/config
mkdir -p temp/superserver/config
mkdir -p temp/superserver/dsql
mkdir -p temp/superserver/dudley
mkdir -p temp/superserver/extlib
mkdir -p temp/superserver/extlib/fbudf
mkdir -p temp/superserver/gpre
mkdir -p temp/superserver/intl
mkdir -p temp/superserver/ipserver
mkdir -p temp/superserver/iscguard
mkdir -p temp/superserver/isql
mkdir -p temp/superserver/jrd
mkdir -p temp/superserver/jrd/extds
mkdir -p temp/superserver/jrd/recsrc
mkdir -p temp/superserver/jrd/trace
mkdir -p temp/superserver/jrd/os/posix
mkdir -p temp/superserver/jrd/os/win32
mkdir -p temp/superserver/jrd/os/darwin
mkdir -p temp/superserver/lock
mkdir -p temp/superserver/misc
mkdir -p temp/superserver/msgs
mkdir -p temp/superserver/plugins/udr_engine
mkdir -p temp/superserver/qli
mkdir -p temp/superserver/remote
mkdir -p temp/superserver/remote/os/win32
mkdir -p temp/superserver/remote/os/sun
mkdir -p temp/superserver/remote/os/darwin
mkdir -p temp/superserver/utilities/common
mkdir -p temp/superserver/utilities/fbtracemgr
mkdir -p temp/superserver/utilities/gsec
mkdir -p temp/superserver/utilities/gstat
mkdir -p temp/superserver/utilities/guard
mkdir -p temp/superserver/utilities/ibmgr
mkdir -p temp/superserver/utilities/install
mkdir -p temp/superserver/utilities/nbackup
mkdir -p temp/superserver/utilities/rebuild
mkdir -p temp/superserver/utilities/ntrace
mkdir -p temp/superserver/vulcan
mkdir -p temp/examples/udr
])
@ -1212,29 +1069,35 @@ MAKE_SRC_DIR=builds/posix
dnl common files for all posix hosts
dnl TODO: fix "arch-specific/linux/" paths for common posix scripts with SVN
AC_CONFIG_FILES([gen/firebird/firebird.conf:builds/install/misc/firebird.conf.in
gen/firebird/aliases.conf:builds/install/misc/aliases.conf.in
gen/firebird/fbtrace.conf:src/utilities/ntrace/fbtrace.conf
gen/firebird/intl/fbintl.conf:builds/install/misc/fbintl.conf
gen/firebird/bin/fb_config:builds/install/misc/fb_config.in
gen/firebird/bin/posixLibrary.sh:builds/install/misc/posixLibrary.sh.in
gen/firebird/bin/classicLibrary.sh:builds/install/misc/classicLibrary.sh.in
gen/firebird/bin/superLibrary.sh:builds/install/misc/superLibrary.sh.in
gen/firebird/bin/changeRunUser.sh:builds/install/misc/changeRunUser.sh.in
gen/firebird/bin/restoreRootRunUser.sh:builds/install/misc/restoreRootRunUser.sh.in
gen/firebird/bin/tarMainInstall.sh:builds/install/arch-specific/linux/misc/tarMainInstall.sh.in
gen/firebird/bin/tarinstall.sh:builds/install/arch-specific/linux/misc/tarinstall.sh.in
gen/firebird/bin/preinstall.sh:builds/install/arch-specific/linux/misc/preinstall.sh.in
gen/firebird/bin/postinstall.sh:builds/install/arch-specific/linux/misc/postinstall.sh.in
gen/firebird/bin/preuninstall.sh:builds/install/arch-specific/linux/misc/preuninstall.sh.in
gen/firebird/bin/postuninstall.sh:builds/install/arch-specific/linux/misc/postuninstall.sh.in
gen/firebird/bin/taruninstall.sh:builds/install/arch-specific/linux/misc/taruninstall.sh.in
gen/firebird/bin/tarMainUninstall.sh:builds/install/arch-specific/linux/misc/tarMainUninstall.sh.in
AC_CONFIG_FILES([
gen/Debug/firebird/firebird.conf:builds/install/misc/firebird.conf.in
gen/Release/firebird/firebird.conf:builds/install/misc/firebird.conf.in
gen/Debug/firebird/aliases.conf:builds/install/misc/aliases.conf.in
gen/Release/firebird/aliases.conf:builds/install/misc/aliases.conf.in
gen/Debug/firebird/fbtrace.conf:src/utilities/ntrace/fbtrace.conf
gen/Release/firebird/fbtrace.conf:src/utilities/ntrace/fbtrace.conf
gen/Debug/firebird/intl/fbintl.conf:builds/install/misc/fbintl.conf
gen/Release/firebird/intl/fbintl.conf:builds/install/misc/fbintl.conf
gen/Release/firebird/bin/fb_config:builds/install/misc/fb_config.in
gen/Release/firebird/bin/posixLibrary.sh:builds/install/misc/posixLibrary.sh.in
gen/Release/firebird/bin/classicLibrary.sh:builds/install/misc/classicLibrary.sh.in
gen/Release/firebird/bin/superLibrary.sh:builds/install/misc/superLibrary.sh.in
gen/Release/firebird/bin/changeRunUser.sh:builds/install/misc/changeRunUser.sh.in
gen/Release/firebird/bin/restoreRootRunUser.sh:builds/install/misc/restoreRootRunUser.sh.in
gen/Release/firebird/bin/tarMainInstall.sh:builds/install/arch-specific/linux/misc/tarMainInstall.sh.in
gen/Release/firebird/bin/tarinstall.sh:builds/install/arch-specific/linux/misc/tarinstall.sh.in
gen/Release/firebird/bin/preinstall.sh:builds/install/arch-specific/linux/misc/preinstall.sh.in
gen/Release/firebird/bin/postinstall.sh:builds/install/arch-specific/linux/misc/postinstall.sh.in
gen/Release/firebird/bin/preuninstall.sh:builds/install/arch-specific/linux/misc/preuninstall.sh.in
gen/Release/firebird/bin/postuninstall.sh:builds/install/arch-specific/linux/misc/postuninstall.sh.in
gen/Release/firebird/bin/taruninstall.sh:builds/install/arch-specific/linux/misc/taruninstall.sh.in
gen/Release/firebird/bin/tarMainUninstall.sh:builds/install/arch-specific/linux/misc/tarMainUninstall.sh.in
gen/vers.sh:builds/posix/vers.sh.in
gen/firebird/bin/changeDBAPassword.sh:builds/install/misc/changeDBAPassword.sh.in
gen/firebird/bin/changeMultiConnectMode.sh:builds/install/misc/changeMultiConnectMode.sh.in
gen/firebird/bin/changeGdsLibraryCompatibleLink.sh:builds/install/misc/changeGdsLibraryCompatibleLink.sh.in
gen/firebird/bin/createAliasDB.sh:builds/install/misc/createAliasDB.sh.in],
gen/Release/firebird/bin/changeDBAPassword.sh:builds/install/misc/changeDBAPassword.sh.in
gen/Release/firebird/bin/changeMultiConnectMode.sh:builds/install/misc/changeMultiConnectMode.sh.in
gen/Release/firebird/bin/changeGdsLibraryCompatibleLink.sh:builds/install/misc/changeGdsLibraryCompatibleLink.sh.in
gen/Release/firebird/bin/createAliasDB.sh:builds/install/misc/createAliasDB.sh.in
],
[chmod a+x gen/install/scripts/*.sh gen/install/*sh 2>/dev/null])
dnl: Platform Specific Files
@ -1248,19 +1111,21 @@ case "$PLATFORM" in
mkdir -p gen/RPM/BUILD])
INSTALL_SRC_DIR=builds/install/arch-specific/linux/${FIREBIRD_ARCH_TYPE}
AC_CONFIG_FILES([gen/install/makeInstallImage.sh:builds/install/arch-specific/linux/misc/makeInstallImage.sh.in
gen/install/scripts/rpmheader.txt:${INSTALL_SRC_DIR}/rpmheader.txt.in
gen/install/scripts/rpmfiles.txt:${INSTALL_SRC_DIR}/rpmfiles.txt.in
gen/install/misc/firebird.xinetd:builds/install/arch-specific/linux/misc/firebird.xinetd.in
gen/install/misc/firebird.init.d.generic:builds/install/arch-specific/linux/misc/firebird.init.d.generic.in
gen/install/misc/firebird.init.d.mandrake:builds/install/arch-specific/linux/misc/firebird.init.d.mandrake.in
gen/install/misc/firebird.init.d.suse:builds/install/arch-specific/linux/misc/firebird.init.d.suse.in
gen/install/misc/firebird.init.d.debian:builds/install/arch-specific/linux/misc/firebird.init.d.debian.in
gen/install/misc/firebird.init.d.gentoo:builds/install/arch-specific/linux/misc/firebird.init.d.gentoo.in
gen/install/misc/firebird.init.d.slackware:builds/install/arch-specific/linux/misc/firebird.init.d.slackware.in
gen/install/misc/rc.config.firebird:builds/install/arch-specific/linux/misc/rc.config.firebird.in
gen/firebird/bin/linuxLibrary.sh:builds/install/arch-specific/linux/misc/linuxLibrary.sh.in]
,[chmod a+x gen/install/scripts/*.sh gen/install/*sh 2>/dev/null])
AC_CONFIG_FILES([
gen/install/makeInstallImage.sh:builds/install/arch-specific/linux/misc/makeInstallImage.sh.in
gen/install/scripts/rpmheader.txt:${INSTALL_SRC_DIR}/rpmheader.txt.in
gen/install/scripts/rpmfiles.txt:${INSTALL_SRC_DIR}/rpmfiles.txt.in
gen/install/misc/firebird.xinetd:builds/install/arch-specific/linux/misc/firebird.xinetd.in
gen/install/misc/firebird.init.d.generic:builds/install/arch-specific/linux/misc/firebird.init.d.generic.in
gen/install/misc/firebird.init.d.mandrake:builds/install/arch-specific/linux/misc/firebird.init.d.mandrake.in
gen/install/misc/firebird.init.d.suse:builds/install/arch-specific/linux/misc/firebird.init.d.suse.in
gen/install/misc/firebird.init.d.debian:builds/install/arch-specific/linux/misc/firebird.init.d.debian.in
gen/install/misc/firebird.init.d.gentoo:builds/install/arch-specific/linux/misc/firebird.init.d.gentoo.in
gen/install/misc/firebird.init.d.slackware:builds/install/arch-specific/linux/misc/firebird.init.d.slackware.in
gen/install/misc/rc.config.firebird:builds/install/arch-specific/linux/misc/rc.config.firebird.in
gen/Release/firebird/bin/linuxLibrary.sh:builds/install/arch-specific/linux/misc/linuxLibrary.sh.in
],
[chmod a+x gen/install/scripts/*.sh gen/install/*sh 2>/dev/null])
;;
HPUX)
@ -1277,10 +1142,7 @@ case "$PLATFORM" in
gen/firebird/bin/postUninstall.sh:${HP_INSTALL_SRC_DIR}/postUninstall.sh.in
gen/install/misc/firebird.init.d.hpux:builds/install/arch-specific/hpux/misc/firebird.init.d.hpux.in
gen/install/misc/rc.config.firebird.hpux:builds/install/arch-specific/hpux/misc/rc.config.firebird.hpux.in
gen/firebird/bin/changedbaPassword.sh:builds/install/arch-specific/hpux/misc/changedbaPassword.sh.in
gen/firebird/bin/changegdslibrarycompatibleLink.sh:builds/install/arch-specific/hpux/misc/changegdslibrarycompatibleLink.sh.in
gen/firebird/bin/hpuxLibrary.sh:builds/install/arch-specific/hpux/misc/hpuxLibrary.sh.in
gen/firebird/bin/createaliasDB.sh:builds/install/arch-specific/hpux/misc/createaliasDB.sh.in],
gen/Release/firebird/bin/hpuxLibrary.sh:builds/install/arch-specific/hpux/misc/hpuxLibrary.sh.in],
[chmod a+x gen/install/scripts/*.sh gen/install/*.sh 2>/dev/null])
;;
@ -1359,41 +1221,9 @@ gen/darwin.defaults:${MAKE_SRC_DIR}/darwin.defaults
${POSTFIX_FILE}
gen/make.shared.variables:${MAKE_SRC_DIR}/make.shared.variables
gen/make.shared.targets:${MAKE_SRC_DIR}/make.shared.targets
gen/Makefile:${MAKE_SRC_DIR}/Makefile.in.firebird
gen/Makefile.codes:${MAKE_SRC_DIR}/Makefile.in.codes
gen/Makefile.boot.gpre:${MAKE_SRC_DIR}/Makefile.in.boot.gpre
gen/Makefile.libfbstatic:${MAKE_SRC_DIR}/Makefile.in.libfbstatic
gen/Makefile.static.gpre:${MAKE_SRC_DIR}/Makefile.in.static.gpre
gen/Makefile.static.gbak:${MAKE_SRC_DIR}/Makefile.in.static.gbak
gen/Makefile.static.isql:${MAKE_SRC_DIR}/Makefile.in.static.isql
gen/Makefile.refDatabases:${MAKE_SRC_DIR}/Makefile.in.refDatabases
gen/Makefile.fbserver:${MAKE_SRC_DIR}/Makefile.in.fbserver
gen/Makefile.smp_server:${MAKE_SRC_DIR}/Makefile.in.smp_server
gen/Makefile.libfbclient:${MAKE_SRC_DIR}/Makefile.in.libfbclient
gen/Makefile.client.fbudf:${MAKE_SRC_DIR}/Makefile.in.client.fbudf
gen/Makefile.client.gbak:${MAKE_SRC_DIR}/Makefile.in.client.gbak
gen/Makefile.client.gfix:${MAKE_SRC_DIR}/Makefile.in.client.gfix
gen/Makefile.client.qli:${MAKE_SRC_DIR}/Makefile.in.client.qli
gen/Makefile.client.isql:${MAKE_SRC_DIR}/Makefile.in.client.isql
gen/Makefile.client.gpre:${MAKE_SRC_DIR}/Makefile.in.client.gpre
gen/Makefile.client.util:${MAKE_SRC_DIR}/Makefile.in.client.util
gen/Makefile.client.gsec:${MAKE_SRC_DIR}/Makefile.in.client.gsec
gen/Makefile.intl:${MAKE_SRC_DIR}/Makefile.in.intl
gen/Makefile.msgs:${MAKE_SRC_DIR}/Makefile.in.msgs
gen/Makefile.extlib:${MAKE_SRC_DIR}/Makefile.in.extlib
gen/Makefile.plugins:${MAKE_SRC_DIR}/Makefile.in.plugins
gen/Makefile:${MAKE_SRC_DIR}/Makefile.in
gen/examples/Makefile.examples:${MAKE_SRC_DIR}/Makefile.in.examples
gen/examples/Makefile.plugins_examples:${MAKE_SRC_DIR}/Makefile.in.plugins_examples
gen/Makefile.libfbembed:${MAKE_SRC_DIR}/Makefile.in.libfbembed
gen/Makefile.embed.util:${MAKE_SRC_DIR}/Makefile.in.embed.util
gen/Makefile.embed.fbudf:${MAKE_SRC_DIR}/Makefile.in.embed.fbudf
gen/Makefile.embed.gfix:${MAKE_SRC_DIR}/Makefile.in.embed.gfix
gen/Makefile.embed.gbak:${MAKE_SRC_DIR}/Makefile.in.embed.gbak
gen/Makefile.embed.isql:${MAKE_SRC_DIR}/Makefile.in.embed.isql
gen/Makefile.embed.qli:${MAKE_SRC_DIR}/Makefile.in.embed.qli
gen/Makefile.embed.gpre:${MAKE_SRC_DIR}/Makefile.in.embed.gpre
gen/Makefile.fbtrace:${MAKE_SRC_DIR}/Makefile.in.fbtrace
gen/Makefile.user.management:${MAKE_SRC_DIR}/Makefile.in.user.management
gen/Makefile.install:builds/install/arch-specific/${INSTALL_PREFIX}/Makefile.in
Makefile:Makefile.in
)

View File

@ -1450,6 +1450,8 @@ C --
PARAMETER (GDS__private_function = 335545018)
INTEGER*4 GDS__private_procedure
PARAMETER (GDS__private_procedure = 335545019)
INTEGER*4 GDS__bad_events_handle
PARAMETER (GDS__bad_events_handle = 335545020)
INTEGER*4 GDS__gfix_db_name
PARAMETER (GDS__gfix_db_name = 335740929)
INTEGER*4 GDS__gfix_invalid_sw

View File

@ -732,6 +732,7 @@ const
gds_async_active = 335545017;
gds_private_function = 335545018;
gds_private_procedure = 335545019;
gds_bad_events_handle = 335545020;
gds_gfix_db_name = 335740929;
gds_gfix_invalid_sw = 335740930;
gds_gfix_incmp_sw = 335740932;

View File

@ -46,7 +46,7 @@
#include "../alice/alice.h"
#include "../alice/exe_proto.h"
#include "../jrd/msg_encode.h"
#include "../jrd/gds_proto.h"
#include "../yvalve/gds_proto.h"
#include "../jrd/svc.h"
#include "../alice/alice_proto.h"
#include "../common/utils_proto.h"

View File

@ -27,7 +27,7 @@
#include <stdio.h>
#include "../jrd/ibase.h"
#include "../jrd/ThreadData.h"
#include "../common/ThreadData.h"
#include "../include/fb_blk.h"
#include "../common/classes/alloc.h"
#include "../common/classes/array.h"

View File

@ -34,7 +34,7 @@
//#include "../jrd/license.h"
#include "../alice/alice.h"
#include "../alice/alice_meta.h"
#include "../jrd/gds_proto.h"
#include "../yvalve/gds_proto.h"
#include "../include/fb_exception.h"
#include "../common/classes/alloc.h"
#include "../alice/alice_proto.h"

View File

@ -24,7 +24,7 @@
#ifndef ALICE_ALICE_PROTO_H
#define ALICE_ALICE_PROTO_H
#include "../jrd/ThreadData.h"
#include "../common/ThreadData.h"
#include "../common/classes/MsgPrint.h"
#include "../common/UtilSvc.h"

View File

@ -44,7 +44,7 @@
#include "../alice/aliceswi.h"
#include "../alice/alice_meta.h"
#include "../alice/tdr_proto.h"
#include "../jrd/gds_proto.h"
#include "../yvalve/gds_proto.h"
#include "../jrd/constants.h"
#include "../common/classes/ClumpletWriter.h"

View File

@ -42,8 +42,8 @@
#include "../alice/alice_proto.h"
#include "../alice/alice_meta.h"
#include "../alice/tdr_proto.h"
#include "../jrd/gds_proto.h"
#include "../jrd/isc_proto.h"
#include "../yvalve/gds_proto.h"
#include "../common/isc_proto.h"
#include "../jrd/constants.h"
#include "../common/classes/ClumpletWriter.h"

View File

@ -29,7 +29,7 @@
#include "../jrd/ibase.h"
#include "../common/utils_proto.h"
#include "../jrd/sha.h"
#include "../common/sha.h"
#include "gen/iberror.h"
#include "../common/classes/ClumpletWriter.h"
@ -52,7 +52,7 @@ class SecurityDatabase
public:
static void getPath(char* path_buffer)
{
static const char* USER_INFO_NAME = "security2.fdb";
static const char* USER_INFO_NAME = "security3.fdb";
Firebird::PathName name = fb_utils::getPrefix(fb_utils::FB_DIR_SECDB, USER_INFO_NAME);
name.copyTo(path_buffer, MAXPATHLEN);
}

View File

@ -30,11 +30,11 @@
#include "../jrd/common.h"
#include "../jrd/ibase.h"
#include "../jrd/jrd.h"
#include "../jrd/jrd_pwd.h"
#include "../jrd/enc_proto.h"
#include "../auth/SecurityDatabase/jrd_pwd.h"
#include "../common/enc_proto.h"
#include "../jrd/err_proto.h"
#include "../jrd/gds_proto.h"
#include "../jrd/isc_proto.h"
#include "../yvalve/gds_proto.h"
#include "../common/isc_proto.h"
#include "../jrd/thread_proto.h"
#include "../jrd/jrd_proto.h"
#include "../jrd/scl.h"
@ -50,7 +50,7 @@ namespace {
// register plugin
#ifndef WIN_NT
char name[] = "LEGACY_AUTH";
PluginHelper<Auth::SecurityDatabaseServer, Firebird::Plugin::AuthServer, name> server;
PluginHelper<Auth::SecurityDatabaseServer, Firebird::Plugin::AuthServer, 200, name> server;
#endif
// temporal implementation of timer
@ -110,7 +110,7 @@ int fb_alloc_timer()
if (! active)
{
active = 1;
gds__thread_start(threadTimer, 0, 0, 0, 0);
Thread::start(threadTimer, 0, 0);
fb_shutdown_callback(0, stopTimer, fb_shut_preproviders | fb_shut_finish, 0);
}
return 1;

View File

@ -54,7 +54,7 @@
#include "../burp/mvol_proto.h"
#include "../remote/protocol.h"
#ifdef DEBUG
#include "../gpre/prett_proto.h"
#include "../common/prett_proto.h"
#endif
#include "../common/classes/UserBlob.h"

View File

@ -53,7 +53,7 @@
#include "../burp/backu_proto.h"
#include "../burp/mvol_proto.h"
#include "../burp/resto_proto.h"
#include "../jrd/gds_proto.h"
#include "../yvalve/gds_proto.h"
#include "../jrd/gdsassert.h"
#include "../common/classes/ClumpletWriter.h"
#include "../common/classes/Switches.h"

View File

@ -32,10 +32,10 @@
#include <stdio.h>
#include "../jrd/common.h"
#include "../jrd/ibase.h"
#include "../jrd/dsc.h"
#include "../common/dsc.h"
#include "../burp/misc_proto.h"
#include "../jrd/gds_proto.h"
#include "../jrd/ThreadData.h"
#include "../yvalve/gds_proto.h"
#include "../common/ThreadData.h"
#include "../common/UtilSvc.h"
#include "../common/classes/array.h"
#include "../common/classes/fb_pair.h"

View File

@ -24,7 +24,7 @@
#ifndef BURP_BURP_PROTO_H
#define BURP_BURP_PROTO_H
#include "../jrd/ThreadData.h"
#include "../common/ThreadData.h"
#include "../common/classes/MsgPrint.h"
#include "../common/UtilSvc.h"

View File

@ -36,10 +36,10 @@
#endif
#include "../burp/burp.h"
#include "../jrd/align.h"
#include "../jrd/sdl.h"
#include "../common/sdl.h"
#include "../burp/canon_proto.h"
#include "../jrd/sdl_proto.h"
#include "../remote/xdr_proto.h"
#include "../common/sdl_proto.h"
#include "../common/xdr_proto.h"
#include "../jrd/gdsassert.h"
#include "../include/fb_types.h"

View File

@ -42,7 +42,7 @@
#include "../burp/burp.h"
#include "../burp/burp_proto.h"
#include "../burp/mvol_proto.h"
#include "../jrd/gds_proto.h"
#include "../yvalve/gds_proto.h"
#include "../jrd/gdsassert.h"
#include <fcntl.h>
#include <sys/types.h>

View File

@ -47,7 +47,7 @@
#include "../jrd/constants.h"
#include "../remote/protocol.h"
#ifdef DEBUG
#include "../gpre/prett_proto.h"
#include "../common/prett_proto.h"
#endif
#include "../common/classes/ClumpletWriter.h"
#include "../common/classes/UserBlob.h"

View File

@ -46,7 +46,7 @@
# include <time.h>
# endif
#endif
#include "../burp/spit.h"
#include "../burp/split/spit.h"
#include "../common/classes/Switches.h"
#include "../burp/burpswi.h"

View File

@ -26,7 +26,7 @@
*/
#include "firebird.h"
#include "../auth/Auth.h"
#include "../common/Auth.h"
#include "../jrd/ibase.h"
#include "../common/classes/ImplementHelper.h"

View File

@ -25,8 +25,8 @@
*/
#include "firebird.h"
#include "../jrd/IntlUtil.h"
#include "../jrd/unicode_util.h"
#include "../common/IntlUtil.h"
#include "../common/unicode_util.h"
#include "../jrd/intl_classes.h"
#include "../intl/country_codes.h"
#include "../common/classes/auto.h"

View File

@ -30,7 +30,7 @@
#include "../common/classes/array.h"
#include "../common/classes/GenericMap.h"
#include "../common/classes/fb_string.h"
#include "../jrd/intlobj_new.h"
#include "../common/intlobj_new.h"
namespace Jrd
{

View File

@ -28,6 +28,7 @@
#include "firebird.h"
#include "../common/StatusArg.h"
#include "../common/utils_proto.h"
#include "../common/classes/fb_string.h"
#include "../common/classes/MetaName.h"
@ -126,25 +127,9 @@ bool StatusVector::ImplStatusVector::append(const ISC_STATUS* const from, const
if (!count)
return true; // not sure it's the best option here
unsigned int copied = 0;
for (unsigned int i = 0; i < count; )
{
if (from[i] == isc_arg_end)
{
break;
}
i += (from[i] == isc_arg_cstring ? 3 : 2);
if (m_length + i > FB_NELEM(m_status_vector) - 1)
{
break;
}
copied = i;
}
memcpy(&m_status_vector[m_length], from, copied * sizeof(m_status_vector[0]));
unsigned int copied =
fb_utils::copyStatus(&m_status_vector[m_length], FB_NELEM(m_status_vector) - m_length, from, count);
m_length += copied;
m_status_vector[m_length] = isc_arg_end;
return copied == count;
}

View File

@ -109,7 +109,7 @@ void StatusHolder::clear()
break;
}
}
memset(m_status_vector, 0, sizeof(m_status_vector));
fb_utils::init_status(m_status_vector);
m_raised = false;
}

View File

@ -29,15 +29,65 @@
#ifndef FB_STATUS_HOLDER
#define FB_STATUS_HOLDER
#include "ProviderInterface.h"
#include "../common/utils_proto.h"
namespace Firebird {
class BaseStatus : public FbApi::Status
{
public:
virtual void set(const ISC_STATUS* value)
{
set(fb_utils::statusLength(value), value);
}
virtual void set(size_t length, const ISC_STATUS* value)
{
fb_utils::copyStatus(vector, FB_NELEM(vector), value, length);
}
virtual void init()
{
fb_utils::init_status(vector);
}
virtual const ISC_STATUS* get() const
{
return vector;
}
virtual int isSuccess() const
{
return vector[1] == 0;
}
public:
BaseStatus()
{
init();
}
private:
ISC_STATUS vector[40]; // FixMe - may be a kind of dynamic storage will be better?
};
class LocalStatus : public Firebird::BaseStatus
{
public:
virtual void release()
{
// do nothing - we are supposed to be on stack or a part of other object
fb_assert(false);
}
};
class StatusHolder
{
public:
explicit StatusHolder(const ISC_STATUS* status = NULL)
{
memset(m_status_vector, 0, sizeof(m_status_vector));
fb_utils::init_status(m_status_vector);
m_raised = false;
if (status)
@ -53,10 +103,7 @@ public:
ISC_STATUS getError()
{
if (m_raised) {
clear();
}
return m_status_vector[1];
return value()[1];
}
const ISC_STATUS* value()
@ -67,6 +114,11 @@ public:
return m_status_vector;
}
bool isSuccess()
{
return getError() == 0;
}
private:
ISC_STATUS_ARRAY m_status_vector;
bool m_raised;

View File

@ -95,7 +95,7 @@
#include "gen/iberror.h"
#include "../jrd/jrd.h"
#include "../jrd/intl_classes.h"
#include "../jrd/IntlUtil.h"
#include "../common/IntlUtil.h"
#include "../common/classes/Aligner.h"

View File

@ -31,9 +31,7 @@
#include <stdio.h>
#include <errno.h>
#include "../jrd/common.h"
#include "../jrd/ThreadData.h"
#include "../jrd/gds_proto.h"
#include "../jrd/isc_s_proto.h"
#include "../common/ThreadData.h"
#include "../jrd/gdsassert.h"
#include "../common/classes/fb_tls.h"

View File

@ -31,10 +31,10 @@
#include <stdio.h>
#include <errno.h>
#include "../jrd/common.h"
#include "../jrd/ThreadStart.h"
#include "../common/ThreadStart.h"
#include "../jrd/os/thd_priority.h"
#include "../jrd/gds_proto.h"
#include "../jrd/isc_s_proto.h"
#include "../yvalve/gds_proto.h"
#include "../common/isc_s_proto.h"
#include "../jrd/gdsassert.h"
@ -51,34 +51,6 @@
#include "../common/classes/rwlock.h"
int API_ROUTINE gds__thread_start(ThreadEntryPoint* entrypoint,
void* arg,
int priority,
int /*flags*/,
void* thd_id)
{
/**************************************
*
* g d s _ _ t h r e a d _ s t a r t
*
**************************************
*
* Functional description
* Start a thread.
*
**************************************/
int rc = 0;
try {
ThreadStart::start(entrypoint, arg, priority, thd_id);
}
catch (const Firebird::status_exception& status) {
rc = status.value()[1];
}
return rc;
}
namespace
{
@ -86,7 +58,7 @@ namespace
THREAD_ENTRY_DECLARE threadStart(THREAD_ENTRY_PARAM arg)
{
fb_assert(arg);
Firebird::MemoryPool::setContextPool(getDefaultMemoryPool());
MemoryPool::setContextPool(getDefaultMemoryPool());
{
ThreadPriorityScheduler* tps = static_cast<ThreadPriorityScheduler*>(arg);
try {
@ -136,7 +108,7 @@ extern "C"
THREAD_ENTRY_DECLARE threadStart(THREAD_ENTRY_PARAM arg)
{
fb_assert(arg);
Firebird::ContextPoolHolder mainThreadContext(getDefaultMemoryPool());
MemoryPool::setContextPool(getDefaultMemoryPool());
ThreadArgs localArgs(*static_cast<ThreadArgs*>(arg));
delete static_cast<ThreadArgs*>(arg);
localArgs.run();
@ -150,7 +122,7 @@ THREAD_ENTRY_DECLARE threadStart(THREAD_ENTRY_PARAM arg)
#ifdef USE_POSIX_THREADS
#define START_THREAD
void ThreadStart::start(ThreadEntryPoint* routine, void* arg, int priority_arg, void* thd_id)
void Thread::start(ThreadEntryPoint* routine, void* arg, int priority_arg, Handle* thd_id)
{
/**************************************
*
@ -222,11 +194,11 @@ void ThreadStart::start(ThreadEntryPoint* routine, void* arg, int priority_arg,
if (thd_id)
{
*static_cast<pthread_t*>(thd_id) = thread;
*thd_id = thread;
}
}
void THD_wait_for_completion(ThreadHandle& thread)
void Thread::waitForCompletion(Handle& thread)
{
int state = pthread_join(thread, NULL);
if (state)
@ -237,7 +209,7 @@ void THD_wait_for_completion(ThreadHandle& thread)
#ifdef WIN_NT
#define START_THREAD
void ThreadStart::start(ThreadEntryPoint* routine, void* arg, int priority_arg, void* thd_id)
void Thread::start(ThreadEntryPoint* routine, void* arg, int priority_arg, Handle* thd_id)
{
/**************************************
*
@ -302,7 +274,7 @@ void ThreadStart::start(ThreadEntryPoint* routine, void* arg, int priority_arg,
if (thd_id)
{
*static_cast<HANDLE*>(thd_id) = handle;
*thd_id = handle;
}
else
{
@ -310,7 +282,7 @@ void ThreadStart::start(ThreadEntryPoint* routine, void* arg, int priority_arg,
}
}
void THD_wait_for_completion(ThreadHandle& handle)
void Thread::waitForCompletion(Handle&)
{
WaitForSingleObject(handle, INFINITE);
}
@ -318,7 +290,7 @@ void THD_wait_for_completion(ThreadHandle& handle)
#ifndef START_THREAD
void ThreadStart::start(ThreadEntryPoint* routine, void* arg, int priority_arg, void* thd_id)
void Thread::start(ThreadEntryPoint* routine, void* arg, int priority_arg, Handle* thd_id)
{
/**************************************
*
@ -333,7 +305,7 @@ void ThreadStart::start(ThreadEntryPoint* routine, void* arg, int priority_arg,
}
void THD_wait_for_completion(ThreadHandle&)
void Thread::waitForCompletion(Handle&)
{
}
#endif // START_THREAD

View File

@ -31,7 +31,7 @@
#define JRD_THREADSTART_H
#include "firebird.h"
#include "../jrd/ThreadData.h"
#include "../common/ThreadData.h"
// Thread priorities (may be ignored)
@ -50,25 +50,20 @@ const int THREAD_critical = 6;
// The definition inside the thdd class should be replaced with the following one.
typedef THREAD_ENTRY_DECLARE ThreadEntryPoint(THREAD_ENTRY_PARAM);
class ThreadStart : public ThreadData
class Thread : public ThreadData
{
public:
explicit ThreadStart(ThreadData::ThreadDataType t) : ThreadData(t) { }
static void start(ThreadEntryPoint* routine, void* arg, int priority_arg, void* thd_id);
};
extern "C" {
int API_ROUTINE gds__thread_start(ThreadEntryPoint*, void*, int, int, void*);
}
explicit Thread(ThreadData::ThreadDataType t) : ThreadData(t) { }
#ifdef WIN_NT
typedef HANDLE ThreadHandle;
typedef HANDLE Handle;
#endif
#ifdef USE_POSIX_THREADS
typedef pthread_t ThreadHandle;
typedef pthread_t Handle;
#endif
void THD_wait_for_completion(ThreadHandle& handle);
static void start(ThreadEntryPoint* routine, void* arg, int priority_arg, Handle* thd_id = NULL);
static void waitForCompletion(Handle& handle);
};
#endif // JRD_THREADSTART_H

View File

@ -23,7 +23,7 @@
#include "firebird.h"
#include "../jrd/common.h"
#include "../utilities/gsec/call_service.h"
#include "../common/call_service.h"
#include "../common/classes/ClumpletWriter.h"
#include <string.h>
#include <stdio.h>
@ -419,7 +419,7 @@ void callRemoteServiceManager(ISC_STATUS* status,
ISC_STATUS_ARRAY temp_status;
ISC_STATUS* local_status = status[1] ? temp_status : status;
memset(local_status, 0, sizeof(ISC_STATUS_ARRAY));
fb_utils::init_status(local_status);
if (userInfo.operation == DIS_OPER || userInfo.operation == OLD_DIS_OPER)
{

View File

@ -34,7 +34,7 @@
#include "../jrd/ibase.h"
#ifdef DEBUG_CLUMPLETS
#include "../jrd/gds_proto.h"
#include "../yvalve/gds_proto.h"
#include <ctype.h>
namespace Firebird {

View File

@ -31,7 +31,7 @@
#include "../common/classes/Interface.h"
//#include "../jrd/gds_proto.h"
//#include "../yvalve/gds_proto.h"
#include "../common/classes/alloc.h"
namespace Firebird {
@ -71,7 +71,7 @@ void interfaceFree(T* ptr)
}
// Template to create static instance of plugin
template <typename C, unsigned int T, char NM[]>
template <typename C, unsigned int T, unsigned int P, char NM[]>
class PluginHelper : public C
{
public:
@ -90,18 +90,23 @@ public:
return T;
}
virtual unsigned int priority() const
{
return P;
}
virtual void link(Plugin* chain)
{
pp = chain;
plug = chain;
}
virtual Plugin* next() const
{
return pp;
return plug;
}
private:
Plugin* pp;
Plugin* plug;
};
} // namespace Firebird

View File

@ -49,16 +49,17 @@ class Plugin
public:
virtual const char* name() const = 0;
virtual unsigned int type() const = 0;
virtual unsigned int priority() const = 0;
virtual void link(Plugin* chain) = 0;
virtual Plugin* next() const = 0;
// static const unsigned int YValve = 1;
// static const unsigned int Engine = 2;
// static const unsigned int Redirector = 3;
static const unsigned int AuthServer = 4;
static const unsigned int AuthClient = 5;
static const unsigned int UserManagement = 6;
static const unsigned int YValve = 1;
static const unsigned int Provider = 2;
// leave space for may be some more super-std plugins
static const unsigned int AuthServer = 11;
static const unsigned int AuthClient = 12;
static const unsigned int UserManagement = 13;
};
} // namespace Firebird

View File

@ -29,7 +29,7 @@
#include "BaseStream.h"
#include "MsgPrint.h"
#include <string.h>
#include "../jrd/gds_proto.h"
#include "../yvalve/gds_proto.h"
#include "../common/utils_proto.h"
#include "../jrd/file_params.h"

View File

@ -45,7 +45,7 @@
#endif
#include "../jrd/gdsassert.h"
#include "../jrd/os/path_utils.h"
#include "../common/os/path_utils.h"
#include "../common/classes/init.h"
#include "../common/classes/TempFile.h"

View File

@ -24,7 +24,7 @@
#include "UserBlob.h"
#include "../jrd/ibase.h"
#include "../jrd/common.h"
#include "../jrd/gds_proto.h"
#include "../yvalve/gds_proto.h"
static const USHORT SEGMENT_LIMIT = 65535;
//static SLONG fb_vax_integer(const UCHAR* ptr, int length);

View File

@ -144,12 +144,21 @@ void MemoryPool::cleanup()
VALGRIND_MAKE_MEM_DEFINED(defaultMemoryManager, sizeof(MemoryPool)));
#endif
defaultMemoryManager->~MemoryPool();
defaultMemoryManager = NULL;
default_stats_group->~MemoryStats();
default_stats_group = NULL;
cache_mutex->~Mutex();
cache_mutex = NULL;
if (defaultMemoryManager)
{
defaultMemoryManager->~MemoryPool();
defaultMemoryManager = NULL;
}
if (default_stats_group)
{
default_stats_group->~MemoryStats();
default_stats_group = NULL;
}
if (cache_mutex)
{
cache_mutex->~Mutex();
cache_mutex = NULL;
}
}
MemoryPool::MemoryPool(MemoryStats& s, bool shared, int rounding, int cutoff, int minAlloc)

View File

@ -27,7 +27,7 @@
#ifndef CLASSES_TIMESTAMP_H
#define CLASSES_TIMESTAMP_H
#include "../jrd/dsc.h"
#include "../common/dsc.h"
// struct tm declaration
#if defined(TIME_WITH_SYS_TIME)

View File

@ -24,10 +24,10 @@
#include "../common/config/config.h"
#include "../common/config/config_file.h"
#include "../jrd/os/config_root.h"
#include "../common/config/os/config_root.h"
#include "../common/classes/init.h"
#include "../common/dllinst.h"
#include "../jrd/os/fbsyslog.h"
#include "../common/os/fbsyslog.h"
#ifdef HAVE_STDLIB_H
#include <stdlib.h>

Some files were not shown because too many files have changed in this diff Show More