# # Don't edit, this file is generated by FPCMake Version 2.0.0 [2006/07/01] # default: all MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-solaris x86_64-linux x86_64-freebsd x86_64-win64 arm-linux arm-palmos arm-wince arm-gba powerpc64-linux BSDs = freebsd netbsd openbsd darwin UNIXs = linux $(BSDs) solaris qnx LIMIT83fs = go32v2 os2 emx watcom 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=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH))))) endif else override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH))))) endif endif override FPC:=$(subst $(SRCEXEEXT),,$(FPC)) override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT) FOUNDFPC:=$(strip $(wildcard $(FPC))) ifeq ($(FOUNDFPC),) FOUNDFPC=$(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH)))) ifeq ($(FOUNDFPC),) $(error Compiler $(FPC) not found) endif endif ifndef FPC_COMPILERINFO FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO) endif ifndef FPC_VERSION 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 ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) TARGETSUFFIX=$(OS_TARGET) SOURCESUFFIX=$(OS_SOURCE) else TARGETSUFFIX=$(FULL_TARGET) SOURCESUFFIX=$(FULL_SOURCE) endif ifneq ($(FULL_TARGET),$(FULL_SOURCE)) CROSSCOMPILE=1 endif ifeq ($(findstring makefile,$(MAKECMDGOALS)),) ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),) $(error The Makefile doesn't support target $(FULL_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 TARGETSUFFIX SOURCESUFFIX 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 CROSSBINDIR CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX)) endif ifndef BINUTILSPREFIX ifndef CROSSBINDIR ifdef CROSSCOMPILE BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)- endif endif endif UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX)) ifeq ($(UNITSDIR),) UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET)) endif PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra) ifeq ($(FULL_TARGET),i386-linux) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-go32v2) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-win32) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-os2) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-freebsd) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-beos) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-netbsd) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-solaris) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-qnx) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-netware) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-openbsd) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-wdosx) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-darwin) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-emx) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-watcom) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-netwlibc) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-wince) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),m68k-linux) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),m68k-freebsd) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),m68k-netbsd) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),m68k-amiga) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),m68k-atari) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),m68k-openbsd) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),m68k-palmos) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),powerpc-linux) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),powerpc-netbsd) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),powerpc-macos) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),powerpc-darwin) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),powerpc-morphos) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),sparc-linux) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),sparc-netbsd) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),sparc-solaris) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),x86_64-linux) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),x86_64-freebsd) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),x86_64-win64) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),arm-linux) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),arm-palmos) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),arm-wince) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),arm-gba) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),powerpc64-linux) override TARGET_DIRS+=src endif ifeq ($(FULL_TARGET),i386-linux) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-go32v2) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-win32) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-os2) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-freebsd) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-beos) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-netbsd) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-solaris) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-qnx) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-netware) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-openbsd) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-wdosx) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-darwin) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-emx) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-watcom) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-netwlibc) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),i386-wince) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),m68k-linux) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),m68k-freebsd) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),m68k-netbsd) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),m68k-amiga) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),m68k-atari) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),m68k-openbsd) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),m68k-palmos) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),powerpc-linux) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),powerpc-netbsd) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),powerpc-macos) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),powerpc-darwin) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),powerpc-morphos) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),sparc-linux) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),sparc-netbsd) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),sparc-solaris) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),x86_64-linux) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),x86_64-freebsd) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),x86_64-win64) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),arm-linux) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),arm-palmos) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),arm-wince) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),arm-gba) override TARGET_EXAMPLEDIRS+=examples endif ifeq ($(FULL_TARGET),powerpc64-linux) override TARGET_EXAMPLEDIRS+=examples endif 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 COMPILER_UNITTARGETDIR ifdef PACKAGEDIR_MAIN COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX) else COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX) endif endif ifndef COMPILER_TARGETDIR COMPILER_TARGETDIR=. endif 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 INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin else INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin ifdef INSTALL_FPCPACKAGE ifdef CROSSCOMPILE ifdef CROSSINSTALL INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX) else INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX) endif else INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX) endif endif endif endif ifndef INSTALL_UNITDIR INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX) 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 ifndef INSTALL_SHAREDDIR INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib endif ifdef CROSSCOMPILE ifndef CROSSBINDIR CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX)) ifeq ($(CROSSBINDIR),) CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE)) endif endif else CROSSBINDIR= endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe PPLEXT=.ppl PPUEXT=.ppu OEXT=.o ASMEXT=.s SMARTEXT=.sl STATICLIBEXT=.a SHAREDLIBEXT=.so SHAREDLIBPREFIX=libfp STATICLIBPREFIX=libp IMPORTLIBPREFIX=libimp RSTEXT=.rst ifeq ($(findstring 1.0.,$(FPC_VERSION)),) ifeq ($(OS_TARGET),go32v1) STATICLIBPREFIX= SHORTSUFFIX=v1 endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= SHORTSUFFIX=dos endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= OEXT=.obj ASMEXT=.asm SHAREDLIBEXT=.dll SHORTSUFFIX=wat endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=lnx endif ifeq ($(OS_TARGET),freebsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=fbs endif ifeq ($(OS_TARGET),netbsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=nbs endif ifeq ($(OS_TARGET),openbsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=obs endif ifeq ($(OS_TARGET),win32) SHAREDLIBEXT=.dll SHORTSUFFIX=w32 endif ifeq ($(OS_TARGET),os2) BATCHEXT=.cmd AOUTEXT=.out STATICLIBPREFIX= SHAREDLIBEXT=.dll SHORTSUFFIX=os2 ECHO=echo endif ifeq ($(OS_TARGET),emx) BATCHEXT=.cmd AOUTEXT=.out STATICLIBPREFIX= SHAREDLIBEXT=.dll SHORTSUFFIX=emx ECHO=echo endif ifeq ($(OS_TARGET),amiga) EXEEXT= SHAREDLIBEXT=.library SHORTSUFFIX=amg endif ifeq ($(OS_TARGET),morphos) EXEEXT= SHAREDLIBEXT=.library SHORTSUFFIX=mos endif ifeq ($(OS_TARGET),atari) EXEEXT=.ttp SHORTSUFFIX=ata endif ifeq ($(OS_TARGET),beos) BATCHEXT=.sh EXEEXT= SHORTSUFFIX=be endif ifeq ($(OS_TARGET),solaris) BATCHEXT=.sh EXEEXT= SHORTSUFFIX=sun endif ifeq ($(OS_TARGET),qnx) BATCHEXT=.sh EXEEXT= SHORTSUFFIX=qnx endif ifeq ($(OS_TARGET),netware) EXEEXT=.nlm STATICLIBPREFIX= SHORTSUFFIX=nw endif ifeq ($(OS_TARGET),netwlibc) EXEEXT=.nlm STATICLIBPREFIX= SHORTSUFFIX=nwl endif ifeq ($(OS_TARGET),macos) BATCHEXT= EXEEXT= DEBUGSYMEXT=.xcoff SHORTSUFFIX=mac endif ifeq ($(OS_TARGET),darwin) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=dwn endif else ifeq ($(OS_TARGET),go32v1) PPUEXT=.pp1 OEXT=.o1 ASMEXT=.s1 SMARTEXT=.sl1 STATICLIBEXT=.a1 SHAREDLIBEXT=.so1 STATICLIBPREFIX= SHORTSUFFIX=v1 endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= SHORTSUFFIX=dos endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= SHORTSUFFIX=wat endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=lnx endif ifeq ($(OS_TARGET),freebsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=fbs endif ifeq ($(OS_TARGET),netbsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=nbs endif ifeq ($(OS_TARGET),openbsd) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=obs endif ifeq ($(OS_TARGET),win32) PPUEXT=.ppw OEXT=.ow ASMEXT=.sw SMARTEXT=.slw STATICLIBEXT=.aw SHAREDLIBEXT=.dll SHORTSUFFIX=w32 endif ifeq ($(OS_TARGET),os2) BATCHEXT=.cmd PPUEXT=.ppo ASMEXT=.so2 OEXT=.oo2 AOUTEXT=.out SMARTEXT=.sl2 STATICLIBPREFIX= STATICLIBEXT=.ao2 SHAREDLIBEXT=.dll SHORTSUFFIX=os2 ECHO=echo endif ifeq ($(OS_TARGET),amiga) EXEEXT= PPUEXT=.ppu ASMEXT=.asm OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a SHAREDLIBEXT=.library SHORTSUFFIX=amg endif ifeq ($(OS_TARGET),atari) PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT=.ttp SHORTSUFFIX=ata endif ifeq ($(OS_TARGET),beos) BATCHEXT=.sh PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT= SHORTSUFFIX=be endif ifeq ($(OS_TARGET),solaris) BATCHEXT=.sh PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT= SHORTSUFFIX=sun endif ifeq ($(OS_TARGET),qnx) BATCHEXT=.sh PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT= SHORTSUFFIX=qnx endif ifeq ($(OS_TARGET),netware) STATICLIBPREFIX= PPUEXT=.ppu OEXT=.o ASMEXT=.s SMARTEXT=.sl STATICLIBEXT=.a SHAREDLIBEXT=.nlm EXEEXT=.nlm SHORTSUFFIX=nw endif ifeq ($(OS_TARGET),netwlibc) STATICLIBPREFIX= PPUEXT=.ppu OEXT=.o ASMEXT=.s SMARTEXT=.sl STATICLIBEXT=.a SHAREDLIBEXT=.nlm EXEEXT=.nlm SHORTSUFFIX=nwl endif ifeq ($(OS_TARGET),macos) BATCHEXT= PPUEXT=.ppu ASMEXT=.s OEXT=.o SMARTEXT=.sl STATICLIBEXT=.a EXEEXT= DEBUGSYMEXT=.xcoff SHORTSUFFIX=mac endif endif ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) FPCMADE=fpcmade.$(SHORTSUFFIX) ZIPSUFFIX=$(SHORTSUFFIX) ZIPCROSSPREFIX= ZIPSOURCESUFFIX=src ZIPEXAMPLESUFFIX=exm else FPCMADE=fpcmade.$(TARGETSUFFIX) ZIPSOURCESUFFIX=.source ZIPEXAMPLESUFFIX=.examples ifdef CROSSCOMPILE ZIPSUFFIX=.$(SOURCESUFFIX) ZIPCROSSPREFIX=$(TARGETSUFFIX)- else ZIPSUFFIX=.$(TARGETSUFFIX) ZIPCROSSPREFIX= 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_ECHO 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_DATE 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_GINSTALL 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_CPPROG else CPPROG:=$(firstword $(CPPROG)) endif endif export CPPROG ifndef RMPROG RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(RMPROG),) RMPROG= __missing_command_RMPROG else RMPROG:=$(firstword $(RMPROG)) endif endif export RMPROG ifndef MVPROG MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(MVPROG),) MVPROG= __missing_command_MVPROG else MVPROG:=$(firstword $(MVPROG)) endif endif export MVPROG ifndef MKDIRPROG MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(MKDIRPROG),) MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(MKDIRPROG),) MKDIRPROG= __missing_command_MKDIRPROG else MKDIRPROG:=$(firstword $(MKDIRPROG)) endif else MKDIRPROG:=$(firstword $(MKDIRPROG)) endif endif export MKDIRPROG ifndef ECHOREDIR ifndef inUnix ECHOREDIR=echo else ECHOREDIR=$(ECHO) endif endif ifndef COPY COPY:=$(CPPROG) -fp endif ifndef COPYTREE COPYTREE:=$(CPPROG) -Rfp endif ifndef MKDIRTREE MKDIRTREE:=$(MKDIRPROG) -p 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_PPUMOVE else PPUMOVE:=$(firstword $(PPUMOVE)) endif endif export PPUMOVE ifndef FPCMAKE FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(FPCMAKE),) FPCMAKE= __missing_command_FPCMAKE else FPCMAKE:=$(firstword $(FPCMAKE)) endif endif export FPCMAKE ifndef ZIPPROG ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(ZIPPROG),) ZIPPROG= __missing_command_ZIPPROG else ZIPPROG:=$(firstword $(ZIPPROG)) endif endif export ZIPPROG ifndef TARPROG TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(TARPROG),) TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(TARPROG),) TARPROG= __missing_command_TARPROG else TARPROG:=$(firstword $(TARPROG)) endif 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=vj TAREXT=.tar.bz2 else TAROPT=vz TAREXT=.tar.gz endif ifndef NOCPUDEF override FPCOPTDEF=$(CPU_TARGET) endif ifneq ($(OS_TARGET),$(OS_SOURCE)) override FPCOPT+=-T$(OS_TARGET) endif ifneq ($(CPU_TARGET),$(CPU_SOURCE)) override FPCOPT+=-P$(CPU_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 ifneq ($(findstring 2.0.,$(FPC_VERSION)),) ifeq ($(CPU_TARGET),i386) FPCCPUOPT:=-OG2p3 endif ifeq ($(CPU_TARGET),powerpc) FPCCPUOPT:=-O1r endif else FPCCPUOPT:=-O2 endif override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n override FPCOPTDEF+=RELEASE endif ifdef STRIP override FPCOPT+=-Xs endif ifdef OPTIMIZE override FPCOPT+=-O2 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 ifdef CREATESHARED override FPCOPT+=-Cg ifeq ($(CPU_TARGET),i386) override FPCOPT+=-Aas endif endif ifdef LINKSHARED 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 AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET) override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) ifneq ($(AFULL_TARGET),$(AFULL_SOURCE)) override ACROSSCOMPILE=1 endif ifdef ACROSSCOMPILE override FPCOPT+=$(CROSSOPT) endif override COMPILER:=$(FPC) $(FPCOPT) ifeq (,$(findstring -s ,$(COMPILER))) EXECPPAS= else ifeq ($(FULL_SOURCE),$(FULL_TARGET)) EXECPPAS:=@$(PPAS) endif endif ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif .PHONY: fpc_examples ifneq ($(TARGET_EXAMPLES),) HASEXAMPLES=1 override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES))) override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES)) override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES) ifeq ($(OS_TARGET),os2) override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) endif ifeq ($(OS_TARGET),emx) override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES)) endif endif ifneq ($(TARGET_EXAMPLEDIRS),) HASEXAMPLES=1 endif fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS)) .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))) $(addprefix $(IMPORTLIBPREFIX),$(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_cleanall: $(CLEANTARGET) ifdef CLEANEXEFILES -$(DEL) $(CLEANEXEFILES) endif ifdef COMPILER_UNITTARGETDIR ifdef CLEANPPUFILES -$(DEL) $(CLEANPPUFILES) endif ifneq ($(CLEANPPULINKFILES),) -$(DEL) $(CLEANPPULINKFILES) endif ifdef CLEANRSTFILES -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES)) endif endif -$(DELTREE) units -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT) ifneq ($(PPUEXT),.ppu) -$(DEL) *.o *.ppu *.a endif -$(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 fpc_distclean: cleanall .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) SourceSuffix. $(SOURCESUFFIX) @$(ECHO) TargetSuffix. $(TARGETSUFFIX) @$(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) ZipName.............. $(ZIPNAME) @$(ECHO) ZipPrefix............ $(ZIPPREFIX) @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX) @$(ECHO) ZipSuffix............ $(ZIPSUFFIX) @$(ECHO) FullZipName.......... $(FULLZIPNAME) @$(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) .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 ifeq ($(FULL_TARGET),i386-linux) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-go32v2) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-win32) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-os2) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-freebsd) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-beos) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-netbsd) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-solaris) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-qnx) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-netware) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-openbsd) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-wdosx) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-darwin) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-emx) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-watcom) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),i386-wince) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),m68k-linux) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),m68k-amiga) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),m68k-atari) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),m68k-palmos) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),powerpc-linux) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),powerpc-macos) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),sparc-linux) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),sparc-solaris) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),x86_64-linux) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),x86_64-win64) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),arm-linux) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),arm-palmos) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),arm-wince) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),arm-gba) TARGET_DIRS_SRC=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) TARGET_DIRS_SRC=1 endif ifdef TARGET_DIRS_SRC src_all: $(MAKE) -C src all src_debug: $(MAKE) -C src debug src_smart: $(MAKE) -C src smart src_release: $(MAKE) -C src release src_units: $(MAKE) -C src units src_examples: $(MAKE) -C src examples src_shared: $(MAKE) -C src shared src_install: $(MAKE) -C src install src_sourceinstall: $(MAKE) -C src sourceinstall src_exampleinstall: $(MAKE) -C src exampleinstall src_distinstall: $(MAKE) -C src distinstall src_zipinstall: $(MAKE) -C src zipinstall src_zipsourceinstall: $(MAKE) -C src zipsourceinstall src_zipexampleinstall: $(MAKE) -C src zipexampleinstall src_zipdistinstall: $(MAKE) -C src zipdistinstall src_clean: $(MAKE) -C src clean src_distclean: $(MAKE) -C src distclean src_cleanall: $(MAKE) -C src cleanall src_info: $(MAKE) -C src info src_makefiles: $(MAKE) -C src makefiles src: $(MAKE) -C src all .PHONY: src_all src_debug src_smart src_release src_units src_examples src_shared src_install src_sourceinstall src_exampleinstall src_distinstall src_zipinstall src_zipsourceinstall src_zipexampleinstall src_zipdistinstall src_clean src_distclean src_cleanall src_info src_makefiles src endif ifeq ($(FULL_TARGET),i386-linux) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-go32v2) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-win32) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-os2) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-freebsd) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-beos) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-netbsd) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-solaris) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-qnx) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-netware) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-openbsd) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-wdosx) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-darwin) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-emx) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-watcom) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-netwlibc) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),i386-wince) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),m68k-linux) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),m68k-freebsd) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),m68k-netbsd) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),m68k-amiga) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),m68k-atari) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),m68k-openbsd) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),m68k-palmos) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),powerpc-linux) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),powerpc-netbsd) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),powerpc-macos) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),powerpc-darwin) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),powerpc-morphos) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),sparc-linux) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),sparc-netbsd) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),sparc-solaris) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),x86_64-linux) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),x86_64-freebsd) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),x86_64-win64) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),arm-linux) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),arm-palmos) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),arm-wince) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),arm-gba) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifeq ($(FULL_TARGET),powerpc64-linux) TARGET_EXAMPLEDIRS_EXAMPLES=1 endif ifdef TARGET_EXAMPLEDIRS_EXAMPLES examples_all: $(MAKE) -C examples all examples_debug: $(MAKE) -C examples debug examples_smart: $(MAKE) -C examples smart examples_release: $(MAKE) -C examples release examples_units: $(MAKE) -C examples units examples_examples: $(MAKE) -C examples examples examples_shared: $(MAKE) -C examples shared examples_install: $(MAKE) -C examples install examples_sourceinstall: $(MAKE) -C examples sourceinstall examples_exampleinstall: $(MAKE) -C examples exampleinstall examples_distinstall: $(MAKE) -C examples distinstall examples_zipinstall: $(MAKE) -C examples zipinstall examples_zipsourceinstall: $(MAKE) -C examples zipsourceinstall examples_zipexampleinstall: $(MAKE) -C examples zipexampleinstall examples_zipdistinstall: $(MAKE) -C examples zipdistinstall examples_clean: $(MAKE) -C examples clean examples_distclean: $(MAKE) -C examples distclean examples_cleanall: $(MAKE) -C examples cleanall examples_info: $(MAKE) -C examples info examples_makefiles: $(MAKE) -C examples makefiles examples: $(MAKE) -C examples all .PHONY: examples_all examples_debug examples_smart examples_release examples_units examples_examples examples_shared examples_install examples_sourceinstall examples_exampleinstall examples_distinstall examples_zipinstall examples_zipsourceinstall examples_zipexampleinstall examples_zipdistinstall examples_clean examples_distclean examples_cleanall examples_info examples_makefiles examples endif all: $(addsuffix _all,$(TARGET_DIRS)) debug: $(addsuffix _debug,$(TARGET_DIRS)) smart: $(addsuffix _smart,$(TARGET_DIRS)) release: $(addsuffix _release,$(TARGET_DIRS)) units: $(addsuffix _units,$(TARGET_DIRS)) examples: fpc_examples $(addsuffix _examples,$(TARGET_DIRS)) shared: $(addsuffix _shared,$(TARGET_DIRS)) install: $(addsuffix _install,$(TARGET_DIRS)) sourceinstall: $(addsuffix _sourceinstall,$(TARGET_DIRS)) exampleinstall: $(addsuffix _exampleinstall,$(TARGET_DIRS)) distinstall: $(addsuffix _distinstall,$(TARGET_DIRS)) zipinstall: $(addsuffix _zipinstall,$(TARGET_DIRS)) zipsourceinstall: $(addsuffix _zipsourceinstall,$(TARGET_DIRS)) zipexampleinstall: $(addsuffix _zipexampleinstall,$(TARGET_DIRS)) zipdistinstall: $(addsuffix _zipdistinstall,$(TARGET_DIRS)) clean: $(addsuffix _clean,$(TARGET_DIRS)) $(addsuffix _clean,$(TARGET_EXAMPLEDIRS)) distclean: $(addsuffix _distclean,$(TARGET_DIRS)) cleanall: $(addsuffix _cleanall,$(TARGET_DIRS)) info: fpc_info makefiles: fpc_makefiles $(addsuffix _makefiles,$(TARGET_DIRS)) .PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif