mirror of
https://github.com/FirebirdSQL/firebird.git
synced 2025-01-23 18:03:04 +01:00
b3668751f6
some of them submitted by Nickolay Samofatov
668 lines
21 KiB
Makefile
668 lines
21 KiB
Makefile
|
|
# 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):
|
|
#
|
|
#
|
|
# $Id: Makefile.in.firebird,v 1.3 2002-08-31 09:25:13 fsg Exp $
|
|
#
|
|
|
|
ROOT=..
|
|
|
|
include $(ROOT)/gen/make.rules
|
|
include $(ROOT)/gen/make.defaults
|
|
include $(ROOT)/gen/make.platform
|
|
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@
|
|
LD_LIBRARY_PATH=$(RealFirebirdPath)/lib
|
|
|
|
#export ISC_USER
|
|
#export ISC_PASSWORD
|
|
#export INTERBASE
|
|
export FIREBIRD
|
|
export DYLD_FRAMEWORK_PATH
|
|
export LD_LIBRARY_PATH
|
|
|
|
######################################################################
|
|
########### 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
|
|
# codes.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 codes.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 files, except security.bin. security.epp requires the security
|
|
# database which is not available at this time. The code in jrd/alt.cpp
|
|
# that references the functions in security.bin has been #ifdef'ed out.
|
|
# 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 codes.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.so 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.so library is built. This library is
|
|
# still missing the security functionality. Note there is a dependancy
|
|
# between gbak_static and gds.so because the shared library contains the
|
|
# PYXIS code, which needs the forms.gdb database restored from forms.gbak.
|
|
#
|
|
# 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.so.
|
|
#
|
|
# 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
|
|
|
|
|
|
# The main targets, firebird_embedded and firebird_server
|
|
|
|
firebird : firebird_embedded
|
|
firebird_embedded: firebird_basic classic_targets
|
|
firebird_server: firebird_basic super_targets
|
|
|
|
# To help those remember to 'older' forms
|
|
firebird_classic: firebird_embedded
|
|
firebird_super: firebird_server
|
|
|
|
|
|
|
|
# In building embedded/server version some targets are common, mainly the
|
|
# boot kit, isc4.gdb 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: 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
|
|
|
|
updateBuildNum : jrd/build_no.h
|
|
|
|
jrd/build_no.h : misc/writeBuildNum.sh
|
|
(cd ..; ./src/misc/writeBuildNum.sh rebuildHeader)
|
|
|
|
|
|
#---------------------------------------------------------------------------
|
|
# 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: libfbcommon libfbstatic gpre_boot gpre_static
|
|
|
|
boot_phase1: $(GPRE_STATIC)
|
|
|
|
$(GPRE_STATIC):
|
|
$(MAKE) boot_phase1_build
|
|
|
|
boot_phase1_build: libfbcommon gpre_boot libfbstatic gpre_static lock_mgr
|
|
|
|
libfbcommon:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.libfbcommon $@
|
|
|
|
gpre_boot:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.boot.gpre $@
|
|
|
|
libfbstatic:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.libfbstatic $@
|
|
|
|
gpre_static:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.static.gpre $@
|
|
|
|
# The lock manager for classic (embedded)
|
|
lock_mgr :
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.embed.lockmgr $@
|
|
|
|
|
|
|
|
#--------------------------------------------------------------------------
|
|
#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 isc4.gdb user store database
|
|
# in order to do that isql and gdef tools need to be built without security
|
|
# to do that a special alt_boot.o is inserted into the shared library.
|
|
# Again once isc4.gdb 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 refDatabases
|
|
|
|
boot_phase2 : $(ISC_GDB)
|
|
|
|
$(ISC_GDB):
|
|
$(MAKE) boot_phase2_build
|
|
|
|
boot_phase2_build: create_db empty_db gbak_static isql_static
|
|
|
|
create_db:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.embed.util $@
|
|
|
|
gbak_static: lock_mgr
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.static.gbak $@
|
|
|
|
isql_static:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.static.isql $@
|
|
|
|
empty_db :
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.refDatabases $@
|
|
|
|
ref_databases : gbak_static
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.refDatabases $@
|
|
|
|
|
|
isc4.gdb: gdef 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 gdef and isql to be able to build isc4.gdb. I wonder
|
|
# if we could reduce the tricky dependancy by restoring the isc4.gdb 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 intl extlib includes
|
|
|
|
basic_targets: ref_databases msgs msgs_intl intl extlib includes examples \
|
|
otherfiles
|
|
|
|
msgs: # messages file for user $(FIREBIRD)/interbase.msg
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.msgs $@
|
|
|
|
msgs_intl: # international version of msgs file
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.msgs $@
|
|
|
|
intl: # international lang components $(FIREBIRD)/intl/
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.intl
|
|
|
|
extlib: # external programs than can be called
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.extlib
|
|
|
|
# distribution header include files
|
|
includes: include_generic
|
|
|
|
# examples still need a good makefile to ship with them
|
|
examples:
|
|
$(MAKE) -C ../gen/v5_examples -f ../Makefile.v5_examples
|
|
|
|
otherfiles: misc_files script_files
|
|
|
|
|
|
#_ Embedded Firebird Targets (Classic)_______________________________________
|
|
|
|
.PHONY: libfbembed inet_server embed_gfix embed_gbak embed_isql
|
|
.PHONY: embed_gpre embed_util
|
|
|
|
classic_targets: libfbembed inet_server embed_gfix embed_gbak embed_isql \
|
|
embed_gpre embed_util
|
|
|
|
libfbembed:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.libfbembed $@
|
|
|
|
inet_server:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.inet_server
|
|
|
|
embed_gfix:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.embed.gfix
|
|
|
|
embed_gbak:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.embed.gbak
|
|
|
|
embed_isql:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.embed.gbak
|
|
|
|
embed_gpre:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.embed.gpre
|
|
|
|
embed_util:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.embed.util
|
|
|
|
embed_gdef:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.embed.gdef
|
|
|
|
embed_qli:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.embed.qli
|
|
|
|
|
|
#_ Firebird Server Targets (super and super client)__________________________
|
|
|
|
.PHONY: libfbserver fbserver
|
|
.PHONY: libfbclient client_gfix client_gbak client_isql client_gpre client_util
|
|
|
|
super_targets: libfbserver fbserver libfbclient client_gfix client_gbak \
|
|
client_isql client_gpre client_util
|
|
|
|
libfbserver:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.libfbserver $@
|
|
|
|
fbserver:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.fbserver $@
|
|
|
|
libfbclient:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.libfbclient $@
|
|
|
|
client_gfix:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.client.gfix
|
|
|
|
client_gbak:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.client.gbak
|
|
|
|
client_gpre:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.client.gpre
|
|
|
|
client_isql:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.client.gbak
|
|
|
|
client_util:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.client.util
|
|
|
|
client_gdef:
|
|
$(MAKE) -f $(MAKE_ROOT)/Makefile.client.gdef
|
|
|
|
|
|
|
|
|
|
#sysdba_user gstat: # add sysdba user and build gstat program
|
|
# $(MAKE) -C utilities $@
|
|
|
|
|
|
|
|
#---------------------------------------------------------------------------
|
|
|
|
# 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)/gds.h \
|
|
$(INCLUDE_DEST)/ibase.h
|
|
|
|
# ib_util.h actually is a marker for a number of headers
|
|
|
|
# All these files are #includes in gds.h here we cat them all together
|
|
# and remove the embedded #includes to make it simpler for external usage.
|
|
|
|
GDS_ExtraFiles = misc/gds_header.txt include/fb_types.h \
|
|
jrd/ibase.h jrd/blr.h include/gen/iberror.h \
|
|
jrd/gdsold.h include/gen/codes.h
|
|
|
|
SRC_GDS_ExtraFiles = $(addprefix $(SRC_ROOT)/, $(GDS_ExtraFiles))
|
|
|
|
$(INCLUDE_DEST)/gds.h: $(SRC_GDS_ExtraFiles)
|
|
$(CAT) $^ \
|
|
| grep -v '^#include "../jrd/blr.h"' \
|
|
| grep -v '^#include "fb_types.h"' \
|
|
| grep -v '^#include "gen/iberror.h"' \
|
|
| grep -v '^#include "iberror.h"' \
|
|
| grep -v '^#include "gen/codes.h"' > $@
|
|
|
|
|
|
IBASE_ExtraFiles = jrd/blr.h include/gen/iberror.h
|
|
SRC_IBASE_ExtraFiles = $(addprefix $(SRC_ROOT)/, $(IBASE_ExtraFiles))
|
|
|
|
$(INCLUDE_DEST)/ibase.h: $(SRC_IBASE_ExtraFiles)
|
|
$(CAT) $^ \
|
|
| grep -v '^#include "../jrd/blr.h"' \
|
|
| grep -v '^#include "fb_types.h"' \
|
|
| grep -v '^#include "gen/iberror.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 \
|
|
jrd/blr.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.
|
|
|
|
|
|
|
|
#___________________________________________________________________________
|
|
|
|
# When the msgs.gdb 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 $@
|
|
|
|
|
|
|
|
|
|
#___________________________________________________________________________
|
|
# Install generic files.
|
|
|
|
CLASSIC_MiscFiles = firebird.xinetd
|
|
SUPER_MiscFiles = firebird.init.d.generic firebird.init.d.mandrake README
|
|
|
|
INSTALL_MiscFiles = $(addprefix $(FIREBIRD)/misc/, $(CLASSIC_MiscFiles))
|
|
#INSTALL_MiscFiles = $(addprefix $(FIREBIRD)/misc/, $(SUPER_MiscFiles))
|
|
|
|
|
|
misc_files : $(INSTALL_MiscFiles)
|
|
|
|
|
|
$(FIREBIRD)/misc/% :: $(SRC_ROOT)/install/misc/%
|
|
$(CP) $^ $@
|
|
|
|
|
|
|
|
#___________________________________________________________________________
|
|
#
|
|
|
|
CLASSIC_ScriptFiles = CSchangeRunUser.sh CSrestoreRootRunUser.sh changeDBAPassword.sh
|
|
SUPER_ScriptFiles = SSchangeRunUser.sh SSrestoreRootRunUser.sh changeDBAPassword.sh
|
|
|
|
|
|
INSTALL_ScriptFiles = $(addprefix $(BIN)/, $(CLASSIC_ScriptFiles))
|
|
#INSTALL_ScriptFiles = $(addprefix $(BIN)/, $(SUPER_ScriptFiles))
|
|
|
|
|
|
script_files : $(INSTALL_ScriptFiles)
|
|
|
|
|
|
$(BIN)/% :: $(SRC_ROOT)/install/classic/%
|
|
$(CP) $^ $@
|
|
chmod ugo=rx $@
|
|
|
|
$(BIN)/% :: $(SRC_ROOT)/install/super/%
|
|
$(CP) $^ $@
|
|
chmod ugo=rx $@
|
|
|
|
$(BIN)/% :: $(SRC_ROOT)/install/misc/%
|
|
$(CP) $^ $@
|
|
chmod ugo=rx $@
|
|
|
|
# Just a note that some of the script files (xinetd/firebird etc) need to h
|
|
# have their paths changed in their shell scripts.
|
|
#___________________________________________________________________________
|
|
#
|
|
|
|
.PHONY: install
|
|
|
|
install:
|
|
$(MAKE) -C install $@
|
|
|
|
|
|
packages:
|
|
$(MAKE) -C install $@
|
|
|
|
|
|
installclassic:
|
|
$(SRC_ROOT)/install/classic/CSpreinstall.sh
|
|
# $(SRC_ROOT)/install/classic/CSinstall.sh
|
|
# $(SRC_ROOT)/install/classic/CSpostinstall.sh
|
|
|
|
dist:
|
|
$(MAKE) -C install $@
|
|
|
|
|
|
#___________________________________________________________________________
|
|
# This one needs some more work.
|
|
|
|
|
|
clean: clean_objs clean_libs clean_exes clean_dbs clean_dependancies clean_build
|
|
|
|
clean_objs:
|
|
-echo $(GDSLIB_Objects) | xargs rm -f
|
|
-echo $(GDSLIB_SharedObjects) | xargs rm -f
|
|
|
|
|
|
|
|
clean_libs:
|
|
-rm $(GDSLIB_LA)
|
|
-rm $(JRD_BOOT)
|
|
|
|
clean_exes:
|
|
-rm -f $(BIN)/*
|
|
# -rm $(Executables)
|
|
|
|
clean_dbs:
|
|
-rm -f refDatabases/*\.gdb
|
|
|
|
|
|
# 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 $(GEN_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 -f `find $(GEN_ROOT)/firebird -type f -print`
|
|
# rm -f $(GDSLIB_OBJECTS) $(GDSLIB_PHASE3_OBJECTS)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
darwin_installer_common: force
|
|
$(QUIET_ECHO) "Building Firebird Installer..."
|
|
mkdir -p $(OBJS)/firebird/installer_tmp
|
|
$(MV) $(OBJS)/firebird/Firebird.framework $(OBJS)/firebird/installer_tmp
|
|
$(CP) $(SOURCE)/sandbox/bellardo/darwin/makefile \
|
|
$(OBJS)/firebird/installer_tmp
|
|
ln -s $(OBJS)/firebird/bellardo/darwin \
|
|
$(OBJS)/firebird/installer_tmp/files
|
|
ln -s ../.. $(OBJS)/firebird/installer_tmp/source
|
|
$(CD) $(OBJS)/firebird/installer_tmp && $(MAKE) install_package
|
|
$(RM) -rf $(OBJS)/firebird/installer_tmp
|
|
-$(RM) -rf $(OBJS)/firebird/Firebird.framework
|
|
|
|
darwin_installer: darwin_installer_common darwin_framework
|
|
super_darwin_installer: darwin_installer_common ss_darwin_framework
|
|
|
|
darwin_framework: force
|
|
$(QUIET_ECHO) "Building Classic Firebird Framework..."
|
|
$(RM) -rf $(OBJS)/firebird/Firebird2.framework
|
|
$(MAKE) -f $(SOURCE)/sandbox/bellardo/darwin/FirebirdFramework.make \
|
|
framework
|
|
|
|
ss_darwin_framework: force
|
|
$(QUIET_ECHO) "Building Super Server Firebird Framework..."
|
|
$(RM) -rf $(OBJS)/firebird/Firebird.framework
|
|
$(MAKE) -f $(SOURCE)/sandbox/bellardo/darwin/FirebirdFramework.make \
|
|
super_framework
|
|
|
|
|
|
#____________________________________________________________________________
|
|
# The installations need to find a better and possibly linux
|
|
# specific home. The tar installs should probably work with
|
|
# other unix type of systems.
|
|
|
|
# I have seperated super and classic out since I needed different
|
|
# files in each case.
|
|
|
|
miscFiles: force
|
|
$(QUIET_ECHO) "Building miscellaneous install files..."
|
|
mkdir -p $(OBJS)/firebird/misc
|
|
-$(CP) $(SOURCE)/makefiles/install.unix $(OBJS)/firebird/install
|
|
-$(CP) $(SOURCE)/makefiles/servers.isc $(OBJS)/firebird
|
|
-$(CP) $(SOURCE)/makefiles/inetd.conf.unx $(OBJS)/firebird/inetd.conf.isc
|
|
-$(CP) $(SOURCE)/makefiles/services.isc $(OBJS)/firebird
|
|
-$(CP) $(SOURCE)/makefiles/sys.conf.isc $(OBJS)/firebird
|
|
-$(CP) $(SOURCE)/sandbox/skywalker/install/misc/firebird.xinetd $(OBJS)/firebird/misc
|
|
|
|
superMiscFiles: force
|
|
$(QUIET_ECHO) "Building miscellaneous install files..."
|
|
$(CP) source/$(SYSTEM)/install source/interbase
|
|
-$(CP) source/$(SYSTEM)/servers.isc source/interbase
|
|
$(CP) source/$(SYSTEM)/inetd.conf.isc source/interbase
|
|
$(CP) source/$(SYSTEM)/original/services.isc source/interbase
|
|
-$(CP) source/$(SYSTEM)/sys.conf.isc source/interbase
|
|
mkdir -p source/interbase/misc
|
|
$(CP) firebird/skywalker/install/misc/firebird.init.d.* source/interbase/misc
|
|
|
|
#install: force
|
|
# make -f firebird/skywalker/install/Makefile install
|
|
|
|
runclassicinstall: force
|
|
make -f firebird/skywalker/install/Makefile runclassicinstall
|
|
|
|
classicpackages: force
|
|
make -f firebird/skywalker/install/Makefile classicpackages
|
|
|
|
classictarfile: force
|
|
make -f firebird/skywalker/install/Makefile classictarfile
|
|
|
|
classicrpmfile: force
|
|
make -f firebird/skywalker/install/Makefile classicrpmfile
|
|
|
|
|
|
superpackages: force
|
|
make -f firebird/skywalker/install/Makefile superpackages
|
|
|
|
supertarfile: force
|
|
make -f firebird/skywalker/install/Makefile supertarfile
|
|
|
|
superrpmfile: force
|
|
make -f firebird/skywalker/install/Makefile superrpmfile
|