# # Don't edit, this file is generated by FPCMake Version 1.1 [2004/07/25] # default: all MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom morphos BSDs = freebsd netbsd openbsd darwin UNIXs = linux $(BSDs) sunos qnx FORCE: .PHONY: FORCE override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH))) ifneq ($(findstring darwin,$(OSTYPE)),) inUnix=1 #darwin SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH))) else ifeq ($(findstring ;,$(PATH)),) inUnix=1 SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH))) else SEARCHPATH:=$(subst ;, ,$(PATH)) endif endif SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE)))) PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH)))) ifeq ($(PWD),) PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH)))) ifeq ($(PWD),) $(error You need the GNU utils package to use this Makefile) else PWD:=$(firstword $(PWD)) SRCEXEEXT= endif else PWD:=$(firstword $(PWD)) SRCEXEEXT=.exe endif ifndef inUnix ifeq ($(OS),Windows_NT) inWinNT=1 else ifdef OS2_SHELL inOS2=1 endif endif else ifneq ($(findstring cygdrive,$(PATH)),) inCygWin=1 endif endif ifdef inUnix SRCBATCHEXT=.sh else ifdef inOS2 SRCBATCHEXT=.cmd else SRCBATCHEXT=.bat endif endif ifdef inUnix PATHSEP=/ else PATHSEP:=$(subst /,\,/) ifdef inCygWin PATHSEP=/ endif endif ifdef PWD BASEDIR:=$(subst \,/,$(shell $(PWD))) ifdef inCygWin ifneq ($(findstring /cygdrive/,$(BASEDIR)),) BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR)) BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR))) BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR)) endif endif else BASEDIR=. endif ifdef inOS2 ifndef ECHO ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(ECHO),) ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(ECHO),) ECHO=echo else ECHO:=$(firstword $(ECHO)) endif else ECHO:=$(firstword $(ECHO)) endif endif export ECHO endif ifndef FPC ifdef PP FPC=$(PP) endif endif ifndef FPC FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH)))) ifneq ($(FPCPROG),) FPCPROG:=$(firstword $(FPCPROG)) FPC:=$(shell $(FPCPROG) -PB) ifneq ($(findstring Error,$(FPC)),) override FPC=ppc386 endif else override FPC=ppc386 endif endif override FPC:=$(subst $(SRCEXEEXT),,$(FPC)) override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT) ifndef FPC_VERSION FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO) FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO)) endif export FPC FPC_VERSION FPC_COMPILERINFO unexport CHECKDEPEND ALLDEPENDENCIES ifndef CPU_TARGET ifdef CPU_TARGET_DEFAULT CPU_TARGET=$(CPU_TARGET_DEFAULT) endif endif ifndef OS_TARGET ifdef OS_TARGET_DEFAULT OS_TARGET=$(OS_TARGET_DEFAULT) endif endif ifneq ($(words $(FPC_COMPILERINFO)),5) FPC_COMPILERINFO+=$(shell $(FPC) -iSP) FPC_COMPILERINFO+=$(shell $(FPC) -iTP) FPC_COMPILERINFO+=$(shell $(FPC) -iSO) FPC_COMPILERINFO+=$(shell $(FPC) -iTO) endif ifndef CPU_SOURCE CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO)) endif ifndef CPU_TARGET CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO)) endif ifndef OS_SOURCE OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO)) endif ifndef OS_TARGET OS_TARGET:=$(word 5,$(FPC_COMPILERINFO)) endif FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET) FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) ifneq ($(FULL_TARGET),$(FULL_SOURCE)) CROSSCOMPILE=1 endif ifeq ($(findstring makefile,$(MAKECMDGOALS)),) ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),) $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first) endif endif ifneq ($(findstring $(OS_TARGET),$(BSDs)),) BSDhier=1 endif ifeq ($(OS_TARGET),linux) linuxHier=1 endif export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE ifdef FPCDIR override FPCDIR:=$(subst \,/,$(FPCDIR)) ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) override FPCDIR=wrong endif else override FPCDIR=wrong endif ifdef DEFAULT_FPCDIR ifeq ($(FPCDIR),wrong) override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR)) ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) override FPCDIR=wrong endif endif endif ifeq ($(FPCDIR),wrong) ifdef inUnix override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION) ifeq ($(wildcard $(FPCDIR)/units),) override FPCDIR=/usr/lib/fpc/$(FPC_VERSION) endif else override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH)))))) override FPCDIR:=$(FPCDIR)/.. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) override FPCDIR:=$(FPCDIR)/.. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) override FPCDIR:=$(BASEDIR) ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) override FPCDIR=c:/pp endif endif endif endif endif ifndef CROSSDIR CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET) endif ifndef CROSSTARGETDIR CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET) endif ifdef CROSSCOMPILE UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units) ifeq ($(UNITSDIR),) UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET)) endif else UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET)) endif PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra) override PACKAGE_NAME=lcl override PACKAGE_VERSION=0.9b override DEFAULT_LCLDIR=. ifndef LCL_PLATFORM ifeq ($(OS_TARGET),win32) LCL_PLATFORM=win32 else LCL_PLATFORM=gtk endif endif export LCL_PLATFORM ifdef LCLDIR override LCLDIR:=$(subst \,/,$(LCLDIR)) ifeq ($(wildcard $(LCLDIR)/units/$(LCL_PLATFORM)),) override LCLDIR=wrong endif else override LCLDIR=wrong endif ifdef DEFAULT_LCLDIR override LCLDIR:=$(subst \,/,$(DEFAULT_LCLDIR)) ifeq ($(wildcard $(LCLDIR)/units/$(LCL_PLATFORM)),) override LCLDIR=wrong endif endif ifeq ($(LCLDIR),wrong) override LCLDIR=$(subst /units/$(LCL_PLATFORM),,$(firstword $(wildcard $(addsuffix /units/$(LCL_PLATFORM),$(BASEDIR)/lcl $(BASEDIR))))) ifeq ($(LCLDIR),) override LCLDIR=wrong endif endif ifeq ($(LCLDIR),wrong) override LCLDIR=$(subst /units/$(LCL_PLATFORM),,$(firstword $(wildcard $(addsuffix /lib/lazarus/units/$(LCL_PLATFORM),/usr/local /usr)))) ifeq ($(LCLDIR),) override LCLDIR=wrong endif endif override LCLUNITDIR:=$(wildcard $(LCLDIR)/units/$(LCL_PLATFORM) $(LCLDIR)/units) override LCLCOMPONENTDIR:=$(wildcard $(LCLDIR)/.. $(LCLDIR)/../components $(LCLDIR)/components) export LCLDIR LCLUNITDIR LCLCOMPONENTDIR override REQUIRE_PACKAGESDIR+=$(LCLCOMPONENTDIR) override COMPILER_UNITDIR+=$(LCLUNITDIR) ifneq ($(OS_TARGET),win32) NONWIN32=nonwin32 else ifneq ($(findstring 1.0.,$(FPC_VERSION)),) NONWIN32=nonwin32 endif endif override TARGET_DIRS+=interfaces override TARGET_UNITS+=alllclunits override TARGET_IMPLICITUNITS+=actnlist arrow avglvltree buttons calendar checklst clipbrd clistbox comctrls commctrl controls dbctrls dbgrids dialogs dynamicarray dynhasharray editbtn extctrls extdlgs extendedstrings extgraphics filectrl forms fpcadds graphics graphmath graphtype grids imglist inipropstorage interfacebase lazlinkedlist lclintf lclmemmanager lclproc lclstrconsts lcltype lmessages lresources maskedit menus pairsplitter postscriptprinter printers propertystorage spin stdactns stdctrls stringhashlist textstrings toolwin utrace xmlpropstorage vclglobals override TARGET_RSTS+=lclstrconsts override CLEAN_FILES+=$(wildcard $(COMPILER_UNITTARGETDIR)/*$(OEXT)) $(wildcard $(COMPILER_UNITTARGETDIR)/*$(PPUEXT)) $(wildcard $(COMPILER_UNITTARGETDIR)/*$(RSTEXT)) $(wildcard ./units/*$(OEXT)) $(wildcard ./units/*$(PPUEXT)) $(wildcard ./units/*$(RSTEXT)) $(wildcard *$(OEXT)) $(wildcard *$(PPUEXT)) $(wildcard *$(RSTEXT)) override COMPILER_OPTIONS+=-gl override COMPILER_INCLUDEDIR+=include override COMPILER_UNITDIR+=. $(NONWIN32) widgetset override COMPILER_UNITTARGETDIR+=units/$(CPU_TARGET)/$(OS_TARGET) ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif ifdef REQUIRE_PACKAGESDIR override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR) endif ifdef ZIPINSTALL ifneq ($(findstring $(OS_TARGET),$(UNIXs)),) UNIXHier=1 endif else ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),) UNIXHier=1 endif endif ifndef INSTALL_PREFIX ifdef PREFIX INSTALL_PREFIX=$(PREFIX) endif endif ifndef INSTALL_PREFIX ifdef UNIXHier INSTALL_PREFIX=/usr/local else ifdef INSTALL_FPCPACKAGE INSTALL_BASEDIR:=/pp else INSTALL_BASEDIR:=/$(PACKAGE_NAME) endif endif endif export INSTALL_PREFIX ifdef INSTALL_FPCSUBDIR export INSTALL_FPCSUBDIR endif ifndef DIST_DESTDIR DIST_DESTDIR:=$(BASEDIR) endif export DIST_DESTDIR ifndef INSTALL_BASEDIR ifdef UNIXHier ifdef INSTALL_FPCPACKAGE INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION) else INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME) endif else INSTALL_BASEDIR:=$(INSTALL_PREFIX) endif endif ifndef INSTALL_BINDIR ifdef UNIXHier ifdef CROSSCOMPILE INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin else INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin endif else ifdef CROSSCOMPILE INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin else INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin endif ifdef INSTALL_FPCPACKAGE INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET) endif endif endif ifndef INSTALL_UNITDIR ifdef CROSSCOMPILE INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units else INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET) endif ifdef INSTALL_FPCPACKAGE ifdef PACKAGE_NAME INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME) endif endif endif ifndef INSTALL_LIBDIR ifdef UNIXHier INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib else INSTALL_LIBDIR:=$(INSTALL_UNITDIR) endif endif ifndef INSTALL_SOURCEDIR ifdef UNIXHier ifdef BSDhier SRCPREFIXDIR=share/src else ifdef linuxHier SRCPREFIXDIR=share/src else SRCPREFIXDIR=src endif endif ifdef INSTALL_FPCPACKAGE ifdef INSTALL_FPCSUBDIR INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME) else INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME) endif else INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION) endif else ifdef INSTALL_FPCPACKAGE ifdef INSTALL_FPCSUBDIR INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME) else INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME) endif else INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source endif endif endif ifndef INSTALL_DOCDIR ifdef UNIXHier ifdef BSDhier DOCPREFIXDIR=share/doc else ifdef linuxHier DOCPREFIXDIR=share/doc else DOCPREFIXDIR=doc endif endif ifdef INSTALL_FPCPACKAGE INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME) else INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION) endif else ifdef INSTALL_FPCPACKAGE INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME) else INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc endif endif endif ifndef INSTALL_EXAMPLEDIR ifdef UNIXHier ifdef INSTALL_FPCPACKAGE ifdef BSDhier INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME) else ifdef linuxHier INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples else INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME) endif endif else ifdef BSDhier INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION) else ifdef linuxHier INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION) else INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION) endif endif endif else ifdef INSTALL_FPCPACKAGE INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME) else INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples endif endif endif ifndef INSTALL_DATADIR INSTALL_DATADIR=$(INSTALL_BASEDIR) endif ifdef CROSSCOMPILE ifndef CROSSBINDIR CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE)) ifeq ($(CROSSBINDIR),) CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE)) endif endif else CROSSBINDIR= endif ifeq ($(OS_SOURCE),linux) ifndef GCCLIBDIR ifeq ($(CPU_TARGET),i386) ifneq ($(findstring x86_64,$(shell uname -a)),) ifeq ($(BINUTILSPREFIX),) GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) else GCCLIBDIR:=$(shell dirname `$(BINUTILSPREFIX)gcc -print-libgcc-file-name`) endif else GCCLIBDIR:=$(shell dirname `$(BINUTILSPREFIX)gcc -print-libgcc-file-name`) endif else GCCLIBDIR:=$(shell dirname `$(BINUTILSPREFIX)gcc -print-libgcc-file-name`) endif endif ifndef OTHERLIBDIR OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }') endif endif ifdef inUnix ifeq ($(OS_SOURCE),netbsd) OTHERLIBDIR+=/usr/pkg/lib endif export GCCLIBDIR OTHERLIB endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe PPLEXT=.ppl PPUEXT=.ppu OEXT=.o ASMEXT=.s SMARTEXT=.sl STATICLIBEXT=.a SHAREDLIBEXT=.so STATICLIBPREFIX=libp RSTEXT=.rst FPCMADE=fpcmade ifeq ($(findstring 1.0.,$(FPC_VERSION)),) ifeq ($(OS_TARGET),go32v1) STATICLIBPREFIX= FPCMADE=fpcmade.v1 PACKAGESUFFIX=v1 endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= FPCMADE=fpcmade.dos ZIPSUFFIX=go32 endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= FPCMADE=fpcmade.wat ZIPSUFFIX=watc OEXT=.obj ASMEXT=.asm SHAREDLIBEXT=.dll endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 FPCMADE=fpcmade.lnx ZIPSUFFIX=linux endif ifeq ($(OS_TARGET),freebsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 FPCMADE=fpcmade.freebsd ZIPSUFFIX=freebsd endif ifeq ($(OS_TARGET),netbsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 FPCMADE=fpcmade.netbsd ZIPSUFFIX=netbsd endif ifeq ($(OS_TARGET),openbsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 FPCMADE=fpcmade.openbsd ZIPSUFFIX=openbsd endif ifeq ($(OS_TARGET),win32) SHAREDLIBEXT=.dll FPCMADE=fpcmade.w32 ZIPSUFFIX=w32 endif ifeq ($(OS_TARGET),os2) BATCHEXT=.cmd AOUTEXT=.out STATICLIBPREFIX= SHAREDLIBEXT=.dll FPCMADE=fpcmade.os2 ZIPSUFFIX=os2 ECHO=echo endif ifeq ($(OS_TARGET),emx) BATCHEXT=.cmd AOUTEXT=.out STATICLIBPREFIX= SHAREDLIBEXT=.dll FPCMADE=fpcmade.emx ZIPSUFFIX=emx ECHO=echo endif ifeq ($(OS_TARGET),amiga) EXEEXT= SHAREDLIBEXT=.library FPCMADE=fpcmade.amg endif ifeq ($(OS_TARGET),morphos) EXEEXT= SHAREDLIBEXT=.library FPCMADE=fpcmade.mos endif ifeq ($(OS_TARGET),atari) EXEEXT=.ttp FPCMADE=fpcmade.ata endif ifeq ($(OS_TARGET),beos) BATCHEXT=.sh EXEEXT= FPCMADE=fpcmade.be ZIPSUFFIX=be endif ifeq ($(OS_TARGET),sunos) BATCHEXT=.sh EXEEXT= FPCMADE=fpcmade.sun ZIPSUFFIX=sun endif ifeq ($(OS_TARGET),qnx) BATCHEXT=.sh EXEEXT= FPCMADE=fpcmade.qnx ZIPSUFFIX=qnx endif ifeq ($(OS_TARGET),netware) EXEEXT=.nlm STATICLIBPREFIX= FPCMADE=fpcmade.nw ZIPSUFFIX=nw endif ifeq ($(OS_TARGET),macos) BATCHEXT= EXEEXT= FPCMADE=fpcmade.macos ZIPSUFFIX=macos DEBUGSYMEXT=.xcoff endif ifeq ($(OS_TARGET),darwin) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 FPCMADE=fpcmade.darwin ZIPSUFFIX=darwin endif else ifeq ($(OS_TARGET),go32v1) PPUEXT=.pp1 OEXT=.o1 ASMEXT=.s1 SMARTEXT=.sl1 STATICLIBEXT=.a1 SHAREDLIBEXT=.so1 STATICLIBPREFIX= FPCMADE=fpcmade.v1 PACKAGESUFFIX=v1 endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= FPCMADE=fpcmade.dos ZIPSUFFIX=go32 endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= FPCMADE=fpcmade.dos ZIPSUFFIX=watcom endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 FPCMADE=fpcmade.lnx ZIPSUFFIX=linux endif ifeq ($(OS_TARGET),freebsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 FPCMADE=fpcmade.freebsd ZIPSUFFIX=freebsd endif ifeq ($(OS_TARGET),netbsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 FPCMADE=fpcmade.netbsd ZIPSUFFIX=netbsd endif ifeq ($(OS_TARGET),openbsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 FPCMADE=fpcmade.openbsd ZIPSUFFIX=openbsd endif ifeq ($(OS_TARGET),win32) PPUEXT=.ppw OEXT=.ow ASMEXT=.sw SMARTEXT=.slw STATICLIBEXT=.aw SHAREDLIBEXT=.dll FPCMADE=fpcmade.w32 ZIPSUFFIX=w32 endif ifeq ($(OS_TARGET),os2) BATCHEXT=.cmd PPUEXT=.ppo ASMEXT=.so2 OEXT=.oo2 AOUTEXT=.out SMARTEXT=.sl2 STATICLIBPREFIX= STATICLIBEXT=.ao2 SHAREDLIBEXT=.dll FPCMADE=fpcmade.os2 ZIPSUFFIX=emx ECHO=echo endif ifeq ($(OS_TARGET),amiga) EXEEXT= PPUEXT=.ppu ASMEXT=.asm OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a SHAREDLIBEXT=.library FPCMADE=fpcmade.amg endif ifeq ($(OS_TARGET),atari) PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT=.ttp FPCMADE=fpcmade.ata endif ifeq ($(OS_TARGET),beos) BATCHEXT=.sh PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT= FPCMADE=fpcmade.be ZIPSUFFIX=be endif ifeq ($(OS_TARGET),sunos) BATCHEXT=.sh PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT= FPCMADE=fpcmade.sun ZIPSUFFIX=sun endif ifeq ($(OS_TARGET),qnx) BATCHEXT=.sh PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT= FPCMADE=fpcmade.qnx ZIPSUFFIX=qnx endif ifeq ($(OS_TARGET),netware) STATICLIBPREFIX= PPUEXT=.ppu OEXT=.o ASMEXT=.s SMARTEXT=.sl STATICLIBEXT=.a SHAREDLIBEXT=.nlm FPCMADE=fpcmade.nw ZIPSUFFIX=nw EXEEXT=.nlm endif ifeq ($(OS_TARGET),macos) BATCHEXT= PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT= DEBUGSYMEXT=.xcoff FPCMADE=fpcmade.macos endif endif ifndef ECHO ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(ECHO),) ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(ECHO),) ECHO= __missing_command__ else ECHO:=$(firstword $(ECHO)) endif else ECHO:=$(firstword $(ECHO)) endif endif export ECHO ifndef DATE DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(DATE),) DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(DATE),) DATE= __missing_command__ else DATE:=$(firstword $(DATE)) endif else DATE:=$(firstword $(DATE)) endif endif export DATE ifndef GINSTALL GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(GINSTALL),) GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(GINSTALL),) GINSTALL= __missing_command__ else GINSTALL:=$(firstword $(GINSTALL)) endif else GINSTALL:=$(firstword $(GINSTALL)) endif endif export GINSTALL ifndef CPPROG CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(CPPROG),) CPPROG= __missing_command__ else CPPROG:=$(firstword $(CPPROG)) endif endif export CPPROG ifndef RMPROG RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(RMPROG),) RMPROG= __missing_command__ else RMPROG:=$(firstword $(RMPROG)) endif endif export RMPROG ifndef MVPROG MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(MVPROG),) MVPROG= __missing_command__ else MVPROG:=$(firstword $(MVPROG)) endif endif export MVPROG ifndef ECHOREDIR ifndef inUnix ECHOREDIR=echo else ECHOREDIR=$(ECHO) endif endif ifndef COPY COPY:=$(CPPROG) -fp endif ifndef COPYTREE COPYTREE:=$(CPPROG) -rfp endif ifndef MOVE MOVE:=$(MVPROG) -f endif ifndef DEL DEL:=$(RMPROG) -f endif ifndef DELTREE DELTREE:=$(RMPROG) -rf endif ifndef INSTALL ifdef inUnix INSTALL:=$(GINSTALL) -c -m 644 else INSTALL:=$(COPY) endif endif ifndef INSTALLEXE ifdef inUnix INSTALLEXE:=$(GINSTALL) -c -m 755 else INSTALLEXE:=$(COPY) endif endif ifndef MKDIR MKDIR:=$(GINSTALL) -m 755 -d endif export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR ifndef PPUMOVE PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(PPUMOVE),) PPUMOVE= __missing_command__ else PPUMOVE:=$(firstword $(PPUMOVE)) endif endif export PPUMOVE ifndef FPCMAKE FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(FPCMAKE),) FPCMAKE= __missing_command__ else FPCMAKE:=$(firstword $(FPCMAKE)) endif endif export FPCMAKE ifndef ZIPPROG ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(ZIPPROG),) ZIPPROG= __missing_command__ else ZIPPROG:=$(firstword $(ZIPPROG)) endif endif export ZIPPROG ifndef TARPROG TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(TARPROG),) TARPROG= __missing_command__ else TARPROG:=$(firstword $(TARPROG)) endif endif export TARPROG ASNAME=$(BINUTILSPREFIX)as LDNAME=$(BINUTILSPREFIX)ld ARNAME=$(BINUTILSPREFIX)ar RCNAME=$(BINUTILSPREFIX)rc ifneq ($(findstring 1.0.,$(FPC_VERSION)),) ifeq ($(OS_TARGET),win32) ifeq ($(CROSSBINDIR),) ASNAME=asw LDNAME=ldw ARNAME=arw endif endif endif ifndef ASPROG ifdef CROSSBINDIR ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT) else ASPROG=$(ASNAME) endif endif ifndef LDPROG ifdef CROSSBINDIR LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT) else LDPROG=$(LDNAME) endif endif ifndef RCPROG ifdef CROSSBINDIR RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT) else RCPROG=$(RCNAME) endif endif ifndef ARPROG ifdef CROSSBINDIR ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT) else ARPROG=$(ARNAME) endif endif AS=$(ASPROG) LD=$(LDPROG) RC=$(RCPROG) AR=$(ARPROG) PPAS=ppas$(SRCBATCHEXT) ifdef inUnix LDCONFIG=ldconfig else LDCONFIG= endif ifdef DATE DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif ifndef UPXPROG ifeq ($(OS_TARGET),go32v2) UPXPROG:=1 endif ifeq ($(OS_TARGET),win32) UPXPROG:=1 endif ifdef UPXPROG UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(UPXPROG),) UPXPROG= else UPXPROG:=$(firstword $(UPXPROG)) endif else UPXPROG= endif endif export UPXPROG ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) TAROPT=vI TAREXT=.tar.bz2 else TAROPT=vz TAREXT=.tar.gz endif override REQUIRE_PACKAGES=rtl fcl ifeq ($(OS_TARGET),linux) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),linux) ifeq ($(CPU_TARGET),m68k) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),linux) ifeq ($(CPU_TARGET),powerpc) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),linux) ifeq ($(CPU_TARGET),sparc) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),linux) ifeq ($(CPU_TARGET),x86_64) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),linux) ifeq ($(CPU_TARGET),arm) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),go32v2) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),win32) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),os2) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),freebsd) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),freebsd) ifeq ($(CPU_TARGET),m68k) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),freebsd) ifeq ($(CPU_TARGET),x86_64) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),beos) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),netbsd) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),netbsd) ifeq ($(CPU_TARGET),m68k) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),netbsd) ifeq ($(CPU_TARGET),powerpc) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),netbsd) ifeq ($(CPU_TARGET),sparc) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),amiga) ifeq ($(CPU_TARGET),m68k) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),atari) ifeq ($(CPU_TARGET),m68k) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),sunos) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),sunos) ifeq ($(CPU_TARGET),sparc) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),qnx) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),netware) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),openbsd) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),openbsd) ifeq ($(CPU_TARGET),m68k) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_X11=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),wdosx) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),palmos) ifeq ($(CPU_TARGET),m68k) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),macos) ifeq ($(CPU_TARGET),powerpc) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),darwin) ifeq ($(CPU_TARGET),powerpc) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_PTHREADS=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_MYSQL=1 REQUIRE_PACKAGES_IBASE=1 REQUIRE_PACKAGES_SQLITE=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),emx) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),watcom) ifeq ($(CPU_TARGET),i386) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifeq ($(OS_TARGET),morphos) ifeq ($(CPU_TARGET),powerpc) REQUIRE_PACKAGES_RTL=1 REQUIRE_PACKAGES_PASZLIB=1 REQUIRE_PACKAGES_FCL=1 REQUIRE_PACKAGES_PASJPEG=1 REQUIRE_PACKAGES_NETDB=1 REQUIRE_PACKAGES_LIBASYNC=1 REQUIRE_PACKAGES_OPENGL=1 REQUIRE_PACKAGES_GTK=1 endif endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_RTL),) ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),) UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET) else UNITDIR_RTL=$(PACKAGEDIR_RTL) endif ifdef CHECKDEPEND $(PACKAGEDIR_RTL)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_RTL) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(FPCMADE) endif else PACKAGEDIR_RTL= UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_RTL),) UNITDIR_RTL:=$(firstword $(UNITDIR_RTL)) else UNITDIR_RTL= endif endif ifdef UNITDIR_RTL override COMPILER_UNITDIR+=$(UNITDIR_RTL) endif endif ifdef REQUIRE_PACKAGES_PASZLIB PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_PASZLIB),) ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/$(OS_TARGET)),) UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/$(OS_TARGET) else UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB) endif ifdef CHECKDEPEND $(PACKAGEDIR_PASZLIB)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_PASZLIB) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) endif else PACKAGEDIR_PASZLIB= UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_PASZLIB),) UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) else UNITDIR_PASZLIB= endif endif ifdef UNITDIR_PASZLIB override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB) endif endif ifdef REQUIRE_PACKAGES_NETDB PACKAGEDIR_NETDB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /netdb/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_NETDB),) ifneq ($(wildcard $(PACKAGEDIR_NETDB)/$(OS_TARGET)),) UNITDIR_NETDB=$(PACKAGEDIR_NETDB)/$(OS_TARGET) else UNITDIR_NETDB=$(PACKAGEDIR_NETDB) endif ifdef CHECKDEPEND $(PACKAGEDIR_NETDB)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_NETDB) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_NETDB)/$(FPCMADE) endif else PACKAGEDIR_NETDB= UNITDIR_NETDB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /netdb/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_NETDB),) UNITDIR_NETDB:=$(firstword $(UNITDIR_NETDB)) else UNITDIR_NETDB= endif endif ifdef UNITDIR_NETDB override COMPILER_UNITDIR+=$(UNITDIR_NETDB) endif endif ifdef REQUIRE_PACKAGES_LIBASYNC PACKAGEDIR_LIBASYNC:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /libasync/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_LIBASYNC),) ifneq ($(wildcard $(PACKAGEDIR_LIBASYNC)/$(OS_TARGET)),) UNITDIR_LIBASYNC=$(PACKAGEDIR_LIBASYNC)/$(OS_TARGET) else UNITDIR_LIBASYNC=$(PACKAGEDIR_LIBASYNC) endif ifdef CHECKDEPEND $(PACKAGEDIR_LIBASYNC)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_LIBASYNC) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_LIBASYNC)/$(FPCMADE) endif else PACKAGEDIR_LIBASYNC= UNITDIR_LIBASYNC:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /libasync/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_LIBASYNC),) UNITDIR_LIBASYNC:=$(firstword $(UNITDIR_LIBASYNC)) else UNITDIR_LIBASYNC= endif endif ifdef UNITDIR_LIBASYNC override COMPILER_UNITDIR+=$(UNITDIR_LIBASYNC) endif endif ifdef REQUIRE_PACKAGES_PTHREADS PACKAGEDIR_PTHREADS:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /pthreads/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_PTHREADS),) ifneq ($(wildcard $(PACKAGEDIR_PTHREADS)/$(OS_TARGET)),) UNITDIR_PTHREADS=$(PACKAGEDIR_PTHREADS)/$(OS_TARGET) else UNITDIR_PTHREADS=$(PACKAGEDIR_PTHREADS) endif ifdef CHECKDEPEND $(PACKAGEDIR_PTHREADS)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_PTHREADS) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_PTHREADS)/$(FPCMADE) endif else PACKAGEDIR_PTHREADS= UNITDIR_PTHREADS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /pthreads/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_PTHREADS),) UNITDIR_PTHREADS:=$(firstword $(UNITDIR_PTHREADS)) else UNITDIR_PTHREADS= endif endif ifdef UNITDIR_PTHREADS override COMPILER_UNITDIR+=$(UNITDIR_PTHREADS) endif endif ifdef REQUIRE_PACKAGES_FCL PACKAGEDIR_FCL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_FCL),) ifneq ($(wildcard $(PACKAGEDIR_FCL)/$(OS_TARGET)),) UNITDIR_FCL=$(PACKAGEDIR_FCL)/$(OS_TARGET) else UNITDIR_FCL=$(PACKAGEDIR_FCL) endif ifdef CHECKDEPEND $(PACKAGEDIR_FCL)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_FCL) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL)/$(FPCMADE) endif else PACKAGEDIR_FCL= UNITDIR_FCL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_FCL),) UNITDIR_FCL:=$(firstword $(UNITDIR_FCL)) else UNITDIR_FCL= endif endif ifdef UNITDIR_FCL override COMPILER_UNITDIR+=$(UNITDIR_FCL) endif endif ifdef REQUIRE_PACKAGES_PASJPEG PACKAGEDIR_PASJPEG:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /pasjpeg/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_PASJPEG),) ifneq ($(wildcard $(PACKAGEDIR_PASJPEG)/$(OS_TARGET)),) UNITDIR_PASJPEG=$(PACKAGEDIR_PASJPEG)/$(OS_TARGET) else UNITDIR_PASJPEG=$(PACKAGEDIR_PASJPEG) endif ifdef CHECKDEPEND $(PACKAGEDIR_PASJPEG)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_PASJPEG) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_PASJPEG)/$(FPCMADE) endif else PACKAGEDIR_PASJPEG= UNITDIR_PASJPEG:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /pasjpeg/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_PASJPEG),) UNITDIR_PASJPEG:=$(firstword $(UNITDIR_PASJPEG)) else UNITDIR_PASJPEG= endif endif ifdef UNITDIR_PASJPEG override COMPILER_UNITDIR+=$(UNITDIR_PASJPEG) endif endif ifdef REQUIRE_PACKAGES_MYSQL PACKAGEDIR_MYSQL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /mysql/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_MYSQL),) ifneq ($(wildcard $(PACKAGEDIR_MYSQL)/$(OS_TARGET)),) UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL)/$(OS_TARGET) else UNITDIR_MYSQL=$(PACKAGEDIR_MYSQL) endif ifdef CHECKDEPEND $(PACKAGEDIR_MYSQL)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_MYSQL) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_MYSQL)/$(FPCMADE) endif else PACKAGEDIR_MYSQL= UNITDIR_MYSQL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /mysql/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_MYSQL),) UNITDIR_MYSQL:=$(firstword $(UNITDIR_MYSQL)) else UNITDIR_MYSQL= endif endif ifdef UNITDIR_MYSQL override COMPILER_UNITDIR+=$(UNITDIR_MYSQL) endif endif ifdef REQUIRE_PACKAGES_IBASE PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_IBASE),) ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),) UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET) else UNITDIR_IBASE=$(PACKAGEDIR_IBASE) endif ifdef CHECKDEPEND $(PACKAGEDIR_IBASE)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_IBASE) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_IBASE)/$(FPCMADE) endif else PACKAGEDIR_IBASE= UNITDIR_IBASE:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /ibase/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_IBASE),) UNITDIR_IBASE:=$(firstword $(UNITDIR_IBASE)) else UNITDIR_IBASE= endif endif ifdef UNITDIR_IBASE override COMPILER_UNITDIR+=$(UNITDIR_IBASE) endif endif ifdef REQUIRE_PACKAGES_SQLITE PACKAGEDIR_SQLITE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /sqlite/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_SQLITE),) ifneq ($(wildcard $(PACKAGEDIR_SQLITE)/$(OS_TARGET)),) UNITDIR_SQLITE=$(PACKAGEDIR_SQLITE)/$(OS_TARGET) else UNITDIR_SQLITE=$(PACKAGEDIR_SQLITE) endif ifdef CHECKDEPEND $(PACKAGEDIR_SQLITE)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_SQLITE) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_SQLITE)/$(FPCMADE) endif else PACKAGEDIR_SQLITE= UNITDIR_SQLITE:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /sqlite/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_SQLITE),) UNITDIR_SQLITE:=$(firstword $(UNITDIR_SQLITE)) else UNITDIR_SQLITE= endif endif ifdef UNITDIR_SQLITE override COMPILER_UNITDIR+=$(UNITDIR_SQLITE) endif endif ifdef REQUIRE_PACKAGES_X11 PACKAGEDIR_X11:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /x11/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_X11),) ifneq ($(wildcard $(PACKAGEDIR_X11)/$(OS_TARGET)),) UNITDIR_X11=$(PACKAGEDIR_X11)/$(OS_TARGET) else UNITDIR_X11=$(PACKAGEDIR_X11) endif ifdef CHECKDEPEND $(PACKAGEDIR_X11)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_X11) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_X11)/$(FPCMADE) endif else PACKAGEDIR_X11= UNITDIR_X11:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /x11/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_X11),) UNITDIR_X11:=$(firstword $(UNITDIR_X11)) else UNITDIR_X11= endif endif ifdef UNITDIR_X11 override COMPILER_UNITDIR+=$(UNITDIR_X11) endif endif ifdef REQUIRE_PACKAGES_OPENGL PACKAGEDIR_OPENGL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /opengl/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_OPENGL),) ifneq ($(wildcard $(PACKAGEDIR_OPENGL)/$(OS_TARGET)),) UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL)/$(OS_TARGET) else UNITDIR_OPENGL=$(PACKAGEDIR_OPENGL) endif ifdef CHECKDEPEND $(PACKAGEDIR_OPENGL)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_OPENGL) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_OPENGL)/$(FPCMADE) endif else PACKAGEDIR_OPENGL= UNITDIR_OPENGL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /opengl/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_OPENGL),) UNITDIR_OPENGL:=$(firstword $(UNITDIR_OPENGL)) else UNITDIR_OPENGL= endif endif ifdef UNITDIR_OPENGL override COMPILER_UNITDIR+=$(UNITDIR_OPENGL) endif endif ifdef REQUIRE_PACKAGES_GTK PACKAGEDIR_GTK:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /gtk/Makefile.fpc,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_GTK),) ifneq ($(wildcard $(PACKAGEDIR_GTK)/$(OS_TARGET)),) UNITDIR_GTK=$(PACKAGEDIR_GTK)/$(OS_TARGET) else UNITDIR_GTK=$(PACKAGEDIR_GTK) endif ifdef CHECKDEPEND $(PACKAGEDIR_GTK)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_GTK) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_GTK)/$(FPCMADE) endif else PACKAGEDIR_GTK= UNITDIR_GTK:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /gtk/Package.fpc,$(UNITSDIR))))) ifneq ($(UNITDIR_GTK),) UNITDIR_GTK:=$(firstword $(UNITDIR_GTK)) else UNITDIR_GTK= endif endif ifdef UNITDIR_GTK override COMPILER_UNITDIR+=$(UNITDIR_GTK) endif endif ifndef NOCPUDEF override FPCOPTDEF=$(CPU_TARGET) endif ifneq ($(OS_TARGET),$(OS_SOURCE)) override FPCOPT+=-T$(OS_TARGET) endif ifeq ($(OS_SOURCE),openbsd) override FPCOPT+=-FD$(NEW_BINUTILS_PATH) endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc endif ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-Xr$(RLINKPATH) endif endif ifdef UNITDIR override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) endif ifdef LIBDIR override FPCOPT+=$(addprefix -Fl,$(LIBDIR)) endif ifdef OBJDIR override FPCOPT+=$(addprefix -Fo,$(OBJDIR)) endif ifdef INCDIR override FPCOPT+=$(addprefix -Fi,$(INCDIR)) endif ifdef LINKSMART override FPCOPT+=-XX endif ifdef CREATESMART override FPCOPT+=-CX endif ifdef DEBUG override FPCOPT+=-gl override FPCOPTDEF+=DEBUG endif ifdef RELEASE ifeq ($(CPU_TARGET),i386) FPCCPUOPT:=-OG2p3 else ifeq ($(CPU_TARGET),powerpc) FPCCPUOPT:=-O1 else FPCCPUOPT:= endif endif override FPCOPT+=-Xs $(FPCCPUOPT) -n override FPCOPTDEF+=RELEASE endif ifdef STRIP override FPCOPT+=-Xs endif ifdef OPTIMIZE ifeq ($(CPU_TARGET),i386) override FPCOPT+=-OG2p3 endif endif ifdef VERBOSE override FPCOPT+=-vwni endif ifdef COMPILER_OPTIONS override FPCOPT+=$(COMPILER_OPTIONS) endif ifdef COMPILER_UNITDIR override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR)) endif ifdef COMPILER_LIBRARYDIR override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR)) endif ifdef COMPILER_OBJECTDIR override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR)) endif ifdef COMPILER_INCLUDEDIR override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR)) endif ifdef CROSSBINDIR override FPCOPT+=-FD$(CROSSBINDIR) endif ifdef COMPILER_TARGETDIR override FPCOPT+=-FE$(COMPILER_TARGETDIR) ifeq ($(COMPILER_TARGETDIR),.) override TARGETDIRPREFIX= else override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/ endif endif ifdef COMPILER_UNITTARGETDIR override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR) ifeq ($(COMPILER_UNITTARGETDIR),.) override UNITTARGETDIRPREFIX= else override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/ endif else ifdef COMPILER_TARGETDIR override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR) override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX) endif endif ifeq ($(OS_TARGET),linux) ifeq ($(FPC_VERSION),1.0.6) override FPCOPTDEF+=HASUNIX endif endif ifdef GCCLIBDIR override FPCOPT+=-Fl$(GCCLIBDIR) endif ifdef OTHERLIBDIR override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) endif ifdef OPT override FPCOPT+=$(OPT) endif ifdef FPCOPTDEF override FPCOPT+=$(addprefix -d,$(FPCOPTDEF)) endif ifdef CFGFILE override FPCOPT+=@$(CFGFILE) endif ifdef USEENV override FPCEXTCMD:=$(FPCOPT) override FPCOPT:=!FPCEXTCMD export FPCEXTCMD endif override COMPILER:=$(FPC) $(FPCOPT) ifeq (,$(findstring -s ,$(COMPILER))) EXECPPAS= else ifeq ($(FULL_SOURCE),$(FULL_TARGET)) EXECPPAS:=@$(PPAS) endif endif .PHONY: fpc_units ifneq ($(TARGET_UNITS),) override ALLTARGET+=fpc_units override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS)) override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS)) override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES) endif fpc_units: $(UNITPPUFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif .PHONY: fpc_all fpc_smart fpc_debug fpc_release $(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) @$(ECHOREDIR) Compiled > $(FPCMADE) fpc_all: $(FPCMADE) fpc_smart: $(MAKE) all LINKSMART=1 CREATESMART=1 fpc_debug: $(MAKE) all DEBUG=1 fpc_release: $(MAKE) all RELEASE=1 .SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res %$(PPUEXT): %.pp $(COMPILER) $< $(EXECPPAS) %$(PPUEXT): %.pas $(COMPILER) $< $(EXECPPAS) %$(EXEEXT): %.pp $(COMPILER) $< $(EXECPPAS) %$(EXEEXT): %.pas $(COMPILER) $< $(EXECPPAS) %$(EXEEXT): %.dpr $(COMPILER) $< $(EXECPPAS) %.res: %.rc windres -i $< -o $@ vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall ifdef INSTALL_UNITS override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) endif ifdef INSTALL_BUILDUNIT override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES)) endif ifdef INSTALLPPUFILES override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES)) override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES))) override INSTALL_CREATEPACKAGEFPC=1 endif ifdef INSTALLEXEFILES override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES)) endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) ifdef UPXPROG -$(UPXPROG) $(INSTALLEXEFILES) endif $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC ifdef FPCMAKE ifdef PACKAGE_VERSION ifneq ($(wildcard Makefile.fpc),) $(FPCMAKE) -p -T$(OS_TARGET) Makefile.fpc $(MKDIR) $(INSTALL_UNITDIR) $(INSTALL) Package.fpc $(INSTALL_UNITDIR) endif endif endif endif ifdef INSTALLPPUFILES $(MKDIR) $(INSTALL_UNITDIR) $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR) ifneq ($(INSTALLPPULINKFILES),) $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR) endif ifneq ($(wildcard $(LIB_FULLNAME)),) $(MKDIR) $(INSTALL_LIBDIR) $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR) ifdef inUnix ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME) endif endif endif ifdef INSTALL_FILES $(MKDIR) $(INSTALL_DATADIR) $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR) endif fpc_sourceinstall: distclean $(MKDIR) $(INSTALL_SOURCEDIR) $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR) fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS)) ifdef HASEXAMPLES $(MKDIR) $(INSTALL_EXAMPLEDIR) endif ifdef EXAMPLESOURCEFILES $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR) endif ifdef TARGET_EXAMPLEDIRS $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR) endif .PHONY: fpc_distinstall fpc_distinstall: install exampleinstall .PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall ifndef PACKDIR ifndef inUnix PACKDIR=$(BASEDIR)/../fpc-pack else PACKDIR=/tmp/fpc-pack endif endif ifndef ZIPNAME ifdef DIST_ZIPNAME ZIPNAME=$(DIST_ZIPNAME) else ZIPNAME=$(ZIPPREFIX)$(PACKAGE_NAME)$(ZIPSUFFIX) endif endif ifndef ZIPTARGET ifdef DIST_ZIPTARGET ZIPTARGET=DIST_ZIPTARGET else ZIPTARGET=install endif endif ifndef USEZIP ifdef inUnix USETAR=1 endif endif ifndef inUnix USEZIPWRAPPER=1 endif ifdef USEZIPWRAPPER ZIPPATHSEP=$(PATHSEP) ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT)) else ZIPPATHSEP=/ endif ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR)) ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR)) ifdef USETAR ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(TAREXT) ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) * else ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(ZIPEXT) ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) * endif fpc_zipinstall: $(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1 $(MKDIR) $(DIST_DESTDIR) $(DEL) $(ZIPDESTFILE) ifdef USEZIPWRAPPER ifneq ($(ECHOREDIR),echo) $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER) $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER) $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER) else echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER) echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER) echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER) endif ifdef inUnix /bin/sh $(ZIPWRAPPER) else $(ZIPWRAPPER) endif $(DEL) $(ZIPWRAPPER) else $(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE) endif $(DELTREE) $(PACKDIR) fpc_zipsourceinstall: $(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src fpc_zipexampleinstall: ifdef HASEXAMPLES $(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm endif fpc_zipdistinstall: $(MAKE) fpc_zipinstall ZIPTARGET=distinstall .PHONY: fpc_clean fpc_cleanall fpc_distclean ifdef EXEFILES override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES)) endif ifdef CLEAN_UNITS override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS)) endif ifdef CLEANPPUFILES override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) ifdef DEBUGSYMEXT override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) endif override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES)) override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES))) endif fpc_clean: $(CLEANTARGET) ifdef CLEANEXEFILES -$(DEL) $(CLEANEXEFILES) endif ifdef CLEANPPUFILES -$(DEL) $(CLEANPPUFILES) endif ifneq ($(CLEANPPULINKFILES),) -$(DEL) $(CLEANPPULINKFILES) endif ifdef CLEANRSTFILES -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES)) endif ifdef CLEAN_FILES -$(DEL) $(CLEAN_FILES) endif ifdef LIB_NAME -$(DEL) $(LIB_NAME) $(LIB_FULLNAME) endif -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE) -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) fpc_distclean: clean ifdef COMPILER_UNITTARGETDIR TARGETDIRCLEAN=fpc_clean endif fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN) ifdef CLEANEXEFILES -$(DEL) $(CLEANEXEFILES) endif -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT) -$(DELTREE) *$(SMARTEXT) -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE) -$(DEL) *_ppas$(BATCHEXT) ifdef AOUTEXT -$(DEL) *$(AOUTEXT) endif ifdef DEBUGSYMEXT -$(DEL) *$(DEBUGSYMEXT) endif .PHONY: fpc_baseinfo override INFORULES+=fpc_baseinfo fpc_baseinfo: @$(ECHO) @$(ECHO) == Package info == @$(ECHO) Package Name..... $(PACKAGE_NAME) @$(ECHO) Package Version.. $(PACKAGE_VERSION) @$(ECHO) @$(ECHO) == Configuration info == @$(ECHO) @$(ECHO) FPC.......... $(FPC) @$(ECHO) FPC Version.. $(FPC_VERSION) @$(ECHO) Source CPU... $(CPU_SOURCE) @$(ECHO) Target CPU... $(CPU_TARGET) @$(ECHO) Source OS.... $(OS_SOURCE) @$(ECHO) Target OS.... $(OS_TARGET) @$(ECHO) Full Source.. $(FULL_SOURCE) @$(ECHO) Full Target.. $(FULL_TARGET) @$(ECHO) @$(ECHO) == Directory info == @$(ECHO) @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES) @$(ECHO) @$(ECHO) Basedir......... $(BASEDIR) @$(ECHO) FPCDir.......... $(FPCDIR) @$(ECHO) CrossBinDir..... $(CROSSBINDIR) @$(ECHO) UnitsDir........ $(UNITSDIR) @$(ECHO) PackagesDir..... $(PACKAGESDIR) @$(ECHO) @$(ECHO) GCC library..... $(GCCLIBDIR) @$(ECHO) Other library... $(OTHERLIBDIR) @$(ECHO) @$(ECHO) == Tools info == @$(ECHO) @$(ECHO) As........ $(AS) @$(ECHO) Ld........ $(LD) @$(ECHO) Ar........ $(AR) @$(ECHO) Rc........ $(RC) @$(ECHO) @$(ECHO) Mv........ $(MVPROG) @$(ECHO) Cp........ $(CPPROG) @$(ECHO) Rm........ $(RMPROG) @$(ECHO) GInstall.. $(GINSTALL) @$(ECHO) Echo...... $(ECHO) @$(ECHO) Shell..... $(SHELL) @$(ECHO) Date...... $(DATE) @$(ECHO) FPCMake... $(FPCMAKE) @$(ECHO) PPUMove... $(PPUMOVE) @$(ECHO) Upx....... $(UPXPROG) @$(ECHO) Zip....... $(ZIPPROG) @$(ECHO) @$(ECHO) == Object info == @$(ECHO) @$(ECHO) Target Loaders........ $(TARGET_LOADERS) @$(ECHO) Target Units.......... $(TARGET_UNITS) @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS) @$(ECHO) Target Programs....... $(TARGET_PROGRAMS) @$(ECHO) Target Dirs........... $(TARGET_DIRS) @$(ECHO) Target Examples....... $(TARGET_EXAMPLES) @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS) @$(ECHO) @$(ECHO) Clean Units......... $(CLEAN_UNITS) @$(ECHO) Clean Files......... $(CLEAN_FILES) @$(ECHO) @$(ECHO) Install Units....... $(INSTALL_UNITS) @$(ECHO) Install Files....... $(INSTALL_FILES) @$(ECHO) @$(ECHO) == Install info == @$(ECHO) @$(ECHO) DateStr.............. $(DATESTR) @$(ECHO) ZipPrefix............ $(ZIPPREFIX) @$(ECHO) ZipSuffix............ $(ZIPSUFFIX) @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE) @$(ECHO) @$(ECHO) Install base dir..... $(INSTALL_BASEDIR) @$(ECHO) Install binary dir... $(INSTALL_BINDIR) @$(ECHO) Install library dir.. $(INSTALL_LIBDIR) @$(ECHO) Install units dir.... $(INSTALL_UNITDIR) @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR) @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR) @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR) @$(ECHO) Install data dir..... $(INSTALL_DATADIR) @$(ECHO) @$(ECHO) Dist destination dir. $(DIST_DESTDIR) @$(ECHO) Dist zip name........ $(DIST_ZIPNAME) @$(ECHO) override INFORULES+=lclinfo .PHONY: lclinfo lclinfo: @$(ECHO) == LCL info == @$(ECHO) @$(ECHO) Platform............. $(LCL_PLATFORM) @$(ECHO) LCLDIR............... $(LCLDIR) @$(ECHO) LCL Unit dir......... $(LCLUNITDIR) @$(ECHO) LCL Component dir.... $(LCLCOMPONENTDIR) @$(ECHO) .PHONY: fpc_info fpc_info: $(INFORULES) .PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \ fpc_makefile_dirs fpc_makefile: $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc fpc_makefile_sub1: ifdef TARGET_DIRS $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS)) endif ifdef TARGET_EXAMPLEDIRS $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS)) endif fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 fpc_makefiles: fpc_makefile fpc_makefile_dirs TARGET_DIRS_INTERFACES=1 ifdef TARGET_DIRS_INTERFACES interfaces_all: $(MAKE) -C interfaces all interfaces_debug: $(MAKE) -C interfaces debug interfaces_smart: $(MAKE) -C interfaces smart interfaces_release: $(MAKE) -C interfaces release interfaces_examples: $(MAKE) -C interfaces examples interfaces_shared: $(MAKE) -C interfaces shared interfaces_install: $(MAKE) -C interfaces install interfaces_sourceinstall: $(MAKE) -C interfaces sourceinstall interfaces_exampleinstall: $(MAKE) -C interfaces exampleinstall interfaces_distinstall: $(MAKE) -C interfaces distinstall interfaces_zipinstall: $(MAKE) -C interfaces zipinstall interfaces_zipsourceinstall: $(MAKE) -C interfaces zipsourceinstall interfaces_zipexampleinstall: $(MAKE) -C interfaces zipexampleinstall interfaces_zipdistinstall: $(MAKE) -C interfaces zipdistinstall interfaces_clean: $(MAKE) -C interfaces clean interfaces_distclean: $(MAKE) -C interfaces distclean interfaces_cleanall: $(MAKE) -C interfaces cleanall interfaces_info: $(MAKE) -C interfaces info interfaces_makefiles: $(MAKE) -C interfaces makefiles interfaces: $(MAKE) -C interfaces all .PHONY: interfaces_all interfaces_debug interfaces_smart interfaces_release interfaces_examples interfaces_shared interfaces_install interfaces_sourceinstall interfaces_exampleinstall interfaces_distinstall interfaces_zipinstall interfaces_zipsourceinstall interfaces_zipexampleinstall interfaces_zipdistinstall interfaces_clean interfaces_distclean interfaces_cleanall interfaces_info interfaces_makefiles interfaces endif debug: fpc_debug smart: fpc_smart release: fpc_release examples: $(addsuffix _examples,$(TARGET_DIRS)) shared: $(addsuffix _shared,$(TARGET_DIRS)) install: fpc_install $(addsuffix _install,$(TARGET_DIRS)) sourceinstall: fpc_sourceinstall exampleinstall: fpc_exampleinstall $(addsuffix _exampleinstall,$(TARGET_DIRS)) distinstall: fpc_distinstall zipinstall: fpc_zipinstall zipsourceinstall: fpc_zipsourceinstall zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(TARGET_DIRS)) zipdistinstall: fpc_zipdistinstall clean: fpc_clean $(addsuffix _clean,$(TARGET_DIRS)) distclean: fpc_distclean $(addsuffix _distclean,$(TARGET_DIRS)) cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS)) info: fpc_info makefiles: fpc_makefiles .PHONY: debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif .PHONY: cleartarget all cleartarget: -$(DEL) $(COMPILER_UNITTARGETDIR)/alllclunits$(PPUEXT) all: cleartarget alllclunits$(PPUEXT) $(TARGET_DIRS)