# # Don't edit, this file is generated by FPCMake Version 2.0.0 # default: all MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim i386-android i386-aros m68k-linux m68k-netbsd m68k-amiga m68k-atari m68k-palmos m68k-macosclassic m68k-embedded m68k-sinclairql m68k-human68k powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macosclassic powerpc-darwin powerpc-morphos powerpc-embedded powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-haiku x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-android x86_64-aros x86_64-dragonfly arm-linux arm-netbsd arm-palmos arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros arm-freertos arm-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android mipsel-ps1 mips64-linux mips64el-linux jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-freebsd aarch64-darwin aarch64-win64 aarch64-embedded aarch64-iphonesim aarch64-android aarch64-ios wasm32-embedded wasm32-wasip1 wasm32-wasip1threads wasm32-wasip2 sparc64-linux riscv32-linux riscv32-embedded riscv32-freertos riscv64-linux riscv64-embedded xtensa-linux xtensa-embedded xtensa-freertos z80-embedded z80-zxspectrum z80-msxdos z80-amstradcpc loongarch64-linux BSDs = freebsd netbsd openbsd darwin dragonfly UNIXs = linux $(BSDs) solaris qnx haiku aix LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari human68k OSNeedsComspecToRunBatch = go32v2 watcom FORCE: .PHONY: FORCE lc = $(subst A,a,$(subst B,b,$(subst C,c,$(subst D,d,$(subst E,e,$(subst F,f,$(subst G,g,$(subst H,h,$(subst I,i,$(subst J,j,$(subst K,k,$(subst L,l,$(subst M,m,$(subst N,n,$(subst O,o,$(subst P,p,$(subst Q,q,$(subst R,r,$(subst S,s,$(subst T,t,$(subst U,u,$(subst V,v,$(subst W,w,$(subst X,x,$(subst Y,y,$(subst Z,z,$1)))))))))))))))))))))))))) 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 COMSPEC ifneq ($(filter $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),) ifndef RUNBATCH RUNBATCH=$(COMSPEC) /C endif 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 override DEFAULT_FPCDIR=.. ifndef FPC ifdef PP FPC=$(PP) endif endif ifndef FPC FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH)))) ifneq ($(FPCPROG),) FPCPROG:=$(firstword $(FPCPROG)) ifneq ($(CPU_TARGET),) FPC:=$(shell $(FPCPROG) -P$(CPU_TARGET) -PB) else FPC:=$(shell $(FPCPROG) -PB) endif ifneq ($(findstring Error,$(FPC)),) override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH))))) else ifeq ($(strip $(wildcard $(FPC))),) FPC:=$(firstword $(FPCPROG)) endif 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 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 CPU_OS_TARGET=$(CPU_TARGET)-$(OS_TARGET) ifdef SUB_TARGET L_SUB_TARGET=$(call lc,$(SUB_TARGET)) FULL_TARGET:=$(CPU_TARGET)-$(OS_TARGET)-$(L_SUB_TARGET) else FULL_TARGET:=$(CPU_TARGET)-$(OS_TARGET) endif CPU_OS_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) ifdef SUB_SOURCE L_SUB_SOURCE=$(call lc,$(SUB_SOURCE)) FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)-$(L_SUB_SOURCE) else FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) endif ifeq ($(CPU_TARGET),armeb) ARCH=arm override FPCOPT+=-Cb else ifeq ($(CPU_TARGET),armel) ARCH=arm override FPCOPT+=-CaEABI else ARCH=$(CPU_TARGET) endif endif ifeq ($(CPU_OS_TARGET),aarch64-embedded) endif ifdef SUB_TARGET FPCOPT+=-t$(SUB_TARGET) FPMAKE_OPT+=--subtarget=$(SUB_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-embedded) ifeq ($(SUBARCH),) $(error When compiling for arm-embedded, a sub-architecture (e.g. SUBARCH=armv4t or SUBARCH=armv7m) must be defined) endif override FPCOPT+=-Cp$(SUBARCH) endif ifeq ($(CPU_OS_TARGET),avr-embedded) ifeq ($(SUBARCH),) $(error When compiling for avr-embedded, a sub-architecture (e.g. SUBARCH=avr25 or SUBARCH=avr35) must be defined) endif override FPCOPT+=-Cp$(SUBARCH) endif ifeq ($(CPU_OS_TARGET),mipsel-embedded) ifeq ($(SUBARCH),) $(error When compiling for mipsel-embedded, a sub-architecture (e.g. SUBARCH=pic32mx) must be defined) endif override FPCOPT+=-Cp$(SUBARCH) endif ifeq ($(CPU_OS_TARGET),xtensa-embedded) ifeq ($(SUBARCH),) $(error When compiling for xtensa-embedded, a sub-architecture (e.g. SUBARCH=lx106 or SUBARCH=lx6) must be defined) endif override FPCOPT+=-Cp$(SUBARCH) endif ifeq ($(CPU_OS_TARGET),xtensa-freertos) ifeq ($(SUBARCH),) $(error When compiling for xtensa-freertos, a sub-architecture (e.g. SUBARCH=lx106 or SUBARCH=lx6) must be defined) endif override FPCOPT+=-Cp$(SUBARCH) endif ifeq ($(CPU_OS_TARGET),arm-freertos) ifeq ($(SUBARCH),) $(error When compiling for arm-freertos, a sub-architecture (e.g. SUBARCH=armv6m or SUBARCH=armv7em) must be defined) endif override FPCOPT+=-Cp$(SUBARCH) endif ifneq ($(filter $(OS_SOURCE),$(LIMIT83fs)),) TARGETSUFFIX=$(OS_TARGET) SOURCESUFFIX=$(OS_SOURCE) else ifneq ($(filter $(OS_TARGET),$(LIMIT83fs)),) TARGETSUFFIX=$(OS_TARGET) else TARGETSUFFIX=$(FULL_TARGET) endif SOURCESUFFIX=$(FULL_SOURCE) endif ifneq ($(CPU_OS_TARGET),$(CPU_OS_SOURCE)) CROSSCOMPILE=1 endif ifeq ($(findstring makefile,$(MAKECMDGOALS)),) ifeq ($(filter $(CPU_OS_TARGET),$(MAKEFILETARGETS)),) $(error The Makefile doesn't support target $(FULL_TARGET), please run fpcmake first) endif endif ifneq ($(filter $(OS_TARGET),$(BSDs)),) BSDhier=1 endif ifeq ($(OS_TARGET),linux) linuxHier=1 endif ifndef CROSSCOMPILE BUILDFULLNATIVE=1 export BUILDFULLNATIVE endif ifdef BUILDFULLNATIVE BUILDNATIVE=1 export BUILDNATIVE endif export OS_TARGET OS_SOURCE ARCH CPU_TARGET CPU_SOURCE SUB_TARGET SUB_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE CPU_OS_TARGET CPU_OS_SOURCE ifdef FPCDIR override FPCDIR:=$(subst \,/,$(FPCDIR)) ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),) 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)),) 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)),) override FPCDIR:=$(FPCDIR)/.. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),) override FPCDIR:=$(BASEDIR) ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),) override FPCDIR=c:/pp endif endif endif endif endif ifndef CROSSBINDIR CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX)) endif ifneq ($(filter $(OS_TARGET),darwin iphonesim ios),) ifneq ($(filter $(OS_SOURCE),darwin ios),) DARWIN2DARWIN=1 endif endif ifndef BINUTILSPREFIX ifndef CROSSBINDIR ifdef CROSSCOMPILE ifneq ($(OS_TARGET),msdos) ifndef DARWIN2DARWIN ifneq ($(CPU_TARGET),jvm) BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)- ifeq ($(OS_TARGET),android) ifeq ($(CPU_TARGET),arm) BINUTILSPREFIX=arm-linux-androideabi- else ifeq ($(CPU_TARGET),i386) BINUTILSPREFIX=i686-linux-android- else BINUTILSPREFIX=$(CPU_TARGET)-linux-android- endif endif endif endif endif else BINUTILSPREFIX=$(OS_TARGET)- endif endif endif endif UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX)) ifeq ($(UNITSDIR),) UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET)) endif PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages) ifndef FPCFPMAKE ifdef CROSSCOMPILE ifeq ($(strip $(wildcard $(addsuffix /compiler/ppc$(SRCEXEEXT),$(FPCDIR)))),) FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH)))) ifneq ($(FPCPROG),) FPCPROG:=$(firstword $(FPCPROG)) FPCFPMAKE:=$(shell $(FPCPROG) -PB) ifeq ($(strip $(wildcard $(FPCFPMAKE))),) FPCFPMAKE:=$(firstword $(FPCPROG)) endif else override FPCFPMAKE=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH))))) endif else FPCFPMAKE=$(strip $(wildcard $(addsuffix /compiler/ppc$(SRCEXEEXT),$(FPCDIR)))) FPMAKE_SKIP_CONFIG=-n export FPCFPMAKE export FPMAKE_SKIP_CONFIG endif else FPMAKE_SKIP_CONFIG=-n FPCFPMAKE=$(FPC) endif endif override PACKAGE_NAME=compiler override PACKAGE_VERSION=3.3.1 unexport FPC_VERSION FPC_COMPILERINFO CYCLETARGETS=i386 powerpc sparc arm x86_64 powerpc64 m68k armeb mipsel mips avr jvm i8086 aarch64 sparc64 riscv32 riscv64 xtensa z80 wasm32 loongarch64 BETATARGETS=mips64 mips64el ALLTARGETS=$(CYCLETARGETS) NO_NATIVE_COMPILER_OS_LIST=amstradcpc embedded freertos gba macosclassic msdos msxdos nds palmos sinclairql symbian watcom wii win16 zxspectrum ps1 wasip2 NO_NATIVE_COMPILER_CPU_LIST=avr i8086 jvm z80 ifneq ($(CPU_SOURCE),$(CPU_TARGET)) ifneq ($(findstring $(CPU_TARGET),$(NO_NATIVE_COMPILER_CPU_LIST)),) NoNativeBinaries=1 endif endif ifneq ($(OS_SOURCE),$(OS_TARGET)) ifneq ($(findstring $(OS_TARGET),$(NO_NATIVE_COMPILER_OS_LIST)),) NoNativeBinaries=1 endif endif ifndef FORCE_NATIVE_BINARIES ifeq ($(NoNativeBinaries),1) override EXEEXT=$(SRCEXEEXT) CROSSINSTALL=1 endif endif ifdef POWERPC PPC_TARGET=powerpc endif ifdef POWERPC64 PPC_TARGET=powerpc64 endif ifdef SPARC PPC_TARGET=sparc endif ifdef SPARC64 PPC_TARGET=sparc64 endif ifdef M68K PPC_TARGET=m68k endif ifdef I386 PPC_TARGET=i386 endif ifdef X86_64 PPC_TARGET=x86_64 endif ifdef ARM PPC_TARGET=arm endif ifdef ARMEB PPC_TARGET=armeb endif ifdef MIPS PPC_TARGET=mips endif ifdef MIPSEL PPC_TARGET=mipsel endif ifdef MIPS64 PPC_TARGET=mips64 endif ifdef MIPS64EL PPC_TARGET=mips64el endif ifdef AVR PPC_TARGET=avr endif ifdef JVM PPC_TARGET=jvm endif ifdef I8086 PPC_TARGET=i8086 endif ifdef AARCH64 PPC_TARGET=aarch64 endif ifdef RISCV32 PPC_TARGET=riscv32 endif ifdef RISCV64 PPC_TARGET=riscv64 endif ifdef XTENSA PPC_TARGET=xtensa endif ifdef Z80 PPC_TARGET=z80 endif ifdef LOONGARCH64 PPC_TARGET=loongarch64 endif ifndef PPC_TARGET PPC_TARGET=$(CPU_TARGET) endif ifeq ($(PPC_TARGET),armeb) CPC_TARGET=arm else CPC_TARGET=$(PPC_TARGET) endif ifndef PPC_OS PPC_OS=$(OS_TARGET) endif CPU_UNITDIR=$(CPC_TARGET) UTILSDIR=../utils COMPILERSOURCEDIR=$(CPC_TARGET) systems COMPILERUTILSDIR=utils ifndef FPCLANG FPCLANG=e endif ifndef LOCALOPT LOCALOPT:=$(OPT) endif ifndef RTLOPT RTLOPT:=$(OPT) endif SVNVERSION:=$(firstword $(wildcard $(addsuffix /svnversion$(SRCEXEEXT),$(SEARCHPATH)))) ifndef GIT GIT:=$(firstword $(wildcard $(addsuffix /git$(SRCEXEEXT),$(SEARCHPATH)))) endif DATE_FMT = +%Y/%m/%d ifdef SOURCE_DATE_EPOCH COMPDATESTR ?= $(shell date -u -d "@$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)" 2>/dev/null || date -u -r "$(SOURCE_DATE_EPOCH)" "$(DATE_FMT)" 2>/dev/null || date -u "$(DATE_FMT)") else GIT_DIR = $(wildcard ../.git) ifneq ($(GIT_DIR),) ifneq ($(GIT),) COMPDATESTR:=$(shell $(GIT) log -1 --pretty=%cd --date=format:'%Y/%m/%d') endif endif endif ifdef COMPDATESTR override OPTNEW+=-DD$(COMPDATESTR) endif ifdef CYCLELEVEL ifeq ($(CYCLELEVEL),1) override LOCALOPT+=$(OPTLEVEL1) override RTLOPT+=$(OPTLEVEL1) override LOCALOPT+=$(LOCALOPTLEVEL1) override RTLOPT+=$(RTLOPTLEVEL1) endif ifeq ($(CYCLELEVEL),2) override LOCALOPT+=$(OPTLEVEL2) override RTLOPT+=$(OPTLEVEL2) override LOCALOPT+=$(LOCALOPTLEVEL2) override RTLOPT+=$(RTLOPTLEVEL2) override LOCALOPT+=$(OPTNEW) override RTLOPT+=$(OPTNEW) endif ifeq ($(CYCLELEVEL),3) override LOCALOPT+=$(OPTLEVEL3) override RTLOPT+=$(OPTLEVEL3) override LOCALOPT+=$(LOCALOPTLEVEL3) override RTLOPT+=$(RTLOPTLEVEL3) override LOCALOPT+=$(OPTNEW) override RTLOPT+=$(OPTNEW) endif ifeq ($(CYCLELEVEL),4) override LOCALOPT+=$(OPTLEVEL4) override RTLOPT+=$(OPTLEVEL4) override LOCALOPT+=$(LOCALOPTLEVEL4) override RTLOPT+=$(RTLOPTLEVEL4) override LOCALOPT+=$(OPTNEW) override RTLOPT+=$(OPTNEW) endif else ifdef COMPDATESTR ifeq ($(FPC_VERSION),$(PACKAGE_VERSION)) override LOCALOPT+=-DD$(COMPDATESTR) endif endif endif override OPT= MSGFILES=$(wildcard msg/error*.msg) ifeq ($(CPC_TARGET),i386) CPUSUF=386 endif ifeq ($(CPC_TARGET),m68k) CPUSUF=68k endif ifeq ($(CPC_TARGET),powerpc) CPUSUF=ppc endif ifeq ($(CPC_TARGET),powerpc64) CPUSUF=ppc64 endif ifeq ($(CPC_TARGET),sparc) CPUSUF=sparc endif ifeq ($(CPC_TARGET),sparc64) CPUSUF=sparc64 endif ifeq ($(CPC_TARGET),x86_64) CPUSUF=x64 endif ifeq ($(CPC_TARGET),arm) CPUSUF=arm endif ifeq ($(CPC_TARGET),mips) CPUSUF=mips endif ifeq ($(CPC_TARGET),mipsel) CPUSUF=mipsel endif ifeq ($(CPC_TARGET),mips64) CPUSUF=mips64 endif ifeq ($(CPC_TARGET),mips64el) CPUSUF=mips64el endif ifeq ($(CPC_TARGET),avr) CPUSUF=avr ALLOW_WARNINGS=1 endif ifeq ($(CPC_TARGET),jvm) CPUSUF=jvm endif ifeq ($(CPC_TARGET),i8086) CPUSUF=8086 endif ifeq ($(CPC_TARGET),aarch64) CPUSUF=a64 endif ifeq ($(CPC_TARGET),riscv32) CPUSUF=rv32 endif ifeq ($(CPC_TARGET),riscv64) CPUSUF=rv64 endif ifeq ($(CPC_TARGET),xtensa) CPUSUF=xtensa endif ifeq ($(CPC_TARGET),z80) CPUSUF=z80 endif ifeq ($(CPC_TARGET),wasm32) CPUSUF=wasm32 endif ifeq ($(CPC_TARGET),loongarch64) CPUSUF=loongarch64 endif NOCPUDEF=1 MSGFILE=msg/error$(FPCLANG).msg PPUDUMPPROG:=$(firstword $(strip $(wildcard $(addsuffix /ppudump$(SRCEXEEXT),$(SEARCHPATH))))) ifndef PPUDUMP ifdef PPUDUMPPROG PPUDUMP=$(PPUDUMPPROG) else PPUDUMP=ppudump endif endif REVINC:=$(wildcard revision.inc) ifneq ($(REVINC),) override LOCALOPT+=-dREVINC ifeq ($(REVSTR),) ifneq ($(wildcard ../.git),) ifneq ($(GIT),) GITDESCRIBE=$(shell $(GIT) describe --dirty) REVSTR:=$(word 2,$(subst -, ,$(GITDESCRIBE)))-$(word 3,$(subst -, ,$(GITDESCRIBE))) ifneq ($(shell $(GIT) log @{u}..),) REVSTR:=$(REVSTR)-unpushed endif ifneq ($(word 4,$(subst -, ,$(GITDESCRIBE))),) REVSTR:=$(REVSTR)-$(word 4,$(subst -, ,$(GITDESCRIBE))) endif endif export REVSTR else ifneq ($(SVNVERSION),) SVNVERSTR:=$(shell $(SVNVERSION) -c .) ifneq ($(words $(SVNVERSTR)),1) REVSTR:=$(subst $() $(),_,$(SVNVERSTR)) else REVSTR:=$(subst r,,$(subst r1:,,r$(subst exported,,$(SVNVERSTR)))) endif export REVSTR endif endif endif endif ifeq ($(REVINC),force) ifeq ($(REVSTR),) REVSTR:=exported export REVSTR endif endif override LOCALOPT+=-d$(CPC_TARGET) ifdef LLVM ifeq ($(findstring $(PPC_TARGET),x86_64 aarch64 arm),) $(error The $(PPC_TARGET) architecture is not (yet) supported by the FPC/LLVM code generator) endif ifeq ($(findstring $(OS_TARGET),darwin iphonesim linux),) $(error The $(OS_TARGET) target OS is not (yet) supported by the FPC/LLVM code generator) endif override LOCALOPT+=-dllvm -Fullvm endif ifeq ($(PPC_TARGET),i386) override LOCALOPT+=-Fux86 -Fix86 endif ifeq ($(PPC_TARGET),x86_64) override LOCALOPT+=-Fux86 -Fix86 endif ifeq ($(PPC_TARGET),powerpc) override LOCALOPT+=-Fuppcgen endif ifeq ($(PPC_TARGET),powerpc64) override LOCALOPT+=-Fuppcgen endif ifeq ($(PPC_TARGET),m68k) override LOCALOPT+= endif ifeq ($(PPC_TARGET),sparc) override LOCALOPT+=-Fusparcgen -Fisparcgen endif ifeq ($(PPC_TARGET),sparc64) override LOCALOPT+=-Fusparcgen -Fisparcgen endif ifeq ($(PPC_TARGET),arm) override LOCALOPT+=-Fuarmgen endif ifeq ($(PPC_TARGET),armeb) override LOCALOPT+=-Fuarmgen endif ifeq ($(PPC_TARGET),mips) override LOCALOPT+=-Fumips endif ifeq ($(PPC_TARGET),mipsel) override LOCALOPT+=-Fumips endif ifeq ($(PPC_TARGET),mips64) override LOCALOPT+=-Fumips endif ifeq ($(PPC_TARGET),mips64el) override LOCALOPT+=-Fumips endif ifeq ($(PPC_TARGET),jvm) override LOCALOPT+=-Fujvm endif ifeq ($(PPC_TARGET),aarch64) override LOCALOPT+=-Fuarmgen endif ifeq ($(PPC_TARGET),i8086) override LOCALOPT+=-Fux86 endif ifeq ($(PPC_TARGET),riscv32) override LOCALOPT+=-Furiscv endif ifeq ($(PPC_TARGET),riscv64) override LOCALOPT+=-Furiscv endif ifeq ($(PPC_TARGET),wasm32) override LOCALOPT+=-Fuwasm32 endif ifeq ($(PPC_TARGET),loongarch64) override LOCALOPT+=-Fuloongarch64 endif OPTWPOCOLLECT=-OWdevirtcalls,optvmts -FW$(BASEDIR)/pp1.wpo OPTWPOPERFORM=-Owdevirtcalls,optvmts -Fw$(BASEDIR)/pp1.wpo ifneq ($(findstring $(OS_TARGET),darwin linux dragonfly freebsd solaris),) ifdef LINKSMART ifdef CREATESMART OPTWPOCOLLECT+=-OWsymbolliveness -Xs- OPTWPOPERFORM+=-Owsymbolliveness endif endif endif ifeq ($(CPU_OS_TARGET),i386-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-go32v2) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-win32) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-os2) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-freebsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-beos) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-haiku) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-netbsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-solaris) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-netware) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-openbsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-wdosx) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-darwin) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-emx) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-watcom) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-netwlibc) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-wince) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-symbian) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-nativent) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-iphonesim) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-android) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-aros) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),m68k-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),m68k-netbsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),m68k-amiga) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),m68k-atari) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),m68k-palmos) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),m68k-macosclassic) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),m68k-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),m68k-sinclairql) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),m68k-human68k) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc-netbsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc-amiga) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc-macosclassic) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc-darwin) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc-morphos) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc-wii) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc-aix) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),sparc-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),sparc-netbsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),sparc-solaris) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),sparc-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-freebsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-haiku) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-netbsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-solaris) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-openbsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-darwin) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-win64) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-iphonesim) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-android) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-aros) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),x86_64-dragonfly) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-netbsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-palmos) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-wince) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-gba) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-nds) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-symbian) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-android) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-aros) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-freertos) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),arm-ios) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc64-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc64-darwin) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc64-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),powerpc64-aix) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),avr-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),armeb-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),armeb-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),mips-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),mipsel-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),mipsel-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),mipsel-android) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),mipsel-ps1) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),mips64-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),mips64el-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),jvm-java) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),jvm-android) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i8086-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i8086-msdos) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i8086-win16) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),aarch64-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),aarch64-freebsd) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),aarch64-darwin) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),aarch64-win64) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),aarch64-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),aarch64-iphonesim) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),aarch64-android) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),aarch64-ios) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),wasm32-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1threads) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),wasm32-wasip2) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),sparc64-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),riscv32-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),riscv32-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),riscv32-freertos) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),riscv64-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),riscv64-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),xtensa-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),xtensa-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),xtensa-freertos) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),z80-embedded) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),z80-zxspectrum) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),z80-msxdos) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),z80-amstradcpc) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),loongarch64-linux) override TARGET_DIRS+=utils endif ifeq ($(CPU_OS_TARGET),i386-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-go32v2) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-win32) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-os2) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-freebsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-beos) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-haiku) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-netbsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-solaris) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-netware) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-openbsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-wdosx) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-darwin) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-emx) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-watcom) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-netwlibc) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-wince) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-symbian) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-nativent) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-iphonesim) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-android) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i386-aros) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),m68k-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),m68k-netbsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),m68k-amiga) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),m68k-atari) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),m68k-palmos) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),m68k-macosclassic) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),m68k-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),m68k-sinclairql) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),m68k-human68k) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc-netbsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc-amiga) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc-macosclassic) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc-darwin) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc-morphos) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc-wii) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc-aix) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),sparc-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),sparc-netbsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),sparc-solaris) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),sparc-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-freebsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-haiku) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-netbsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-solaris) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-openbsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-darwin) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-win64) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-iphonesim) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-android) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-aros) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),x86_64-dragonfly) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-netbsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-palmos) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-wince) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-gba) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-nds) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-symbian) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-android) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-aros) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-freertos) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),arm-ios) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc64-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc64-darwin) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc64-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),powerpc64-aix) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),avr-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),armeb-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),armeb-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),mips-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),mipsel-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),mipsel-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),mipsel-android) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),mipsel-ps1) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),mips64-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),mips64el-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),jvm-java) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),jvm-android) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i8086-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i8086-msdos) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),i8086-win16) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),aarch64-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),aarch64-freebsd) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),aarch64-darwin) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),aarch64-win64) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),aarch64-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),aarch64-iphonesim) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),aarch64-android) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),aarch64-ios) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),wasm32-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1threads) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),wasm32-wasip2) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),sparc64-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),riscv32-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),riscv32-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),riscv32-freertos) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),riscv64-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),riscv64-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),xtensa-linux) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),xtensa-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),xtensa-freertos) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),z80-embedded) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),z80-zxspectrum) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),z80-msxdos) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),z80-amstradcpc) override TARGET_PROGRAMS+=pp endif ifeq ($(CPU_OS_TARGET),loongarch64-linux) override TARGET_PROGRAMS+=pp endif override INSTALL_FPCPACKAGE=y ifeq ($(CPU_OS_TARGET),i386-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-go32v2) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-win32) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-os2) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-freebsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-beos) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-haiku) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-netbsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-solaris) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-netware) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-openbsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-wdosx) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-darwin) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-emx) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-watcom) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-netwlibc) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-wince) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-symbian) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-nativent) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-iphonesim) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-android) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-aros) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-netbsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-amiga) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-atari) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-palmos) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-macosclassic) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-sinclairql) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-human68k) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-netbsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-amiga) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-macosclassic) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-darwin) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-morphos) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-wii) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-aix) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-netbsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-solaris) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-freebsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-haiku) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-netbsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-solaris) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-openbsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-darwin) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-win64) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-iphonesim) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-android) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-aros) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-dragonfly) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-netbsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-palmos) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-wince) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-gba) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-nds) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-symbian) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-android) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-aros) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-freertos) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-ios) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-darwin) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-aix) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),avr-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),armeb-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),armeb-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),mips-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-android) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-ps1) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),mips64-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),mips64el-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),jvm-java) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),jvm-android) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i8086-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i8086-msdos) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i8086-win16) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-freebsd) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-darwin) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-win64) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-iphonesim) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-android) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-ios) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1threads) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip2) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc64-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv32-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv32-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv32-freertos) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv64-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv64-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),xtensa-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),xtensa-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),xtensa-freertos) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-embedded) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-zxspectrum) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-msxdos) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-amstradcpc) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),loongarch64-linux) override COMPILER_INCLUDEDIR+=$(CPC_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-go32v2) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-win32) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-os2) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-freebsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-beos) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-haiku) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-netbsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-solaris) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-netware) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-openbsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-wdosx) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-darwin) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-emx) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-watcom) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-netwlibc) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-wince) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-symbian) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-nativent) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-iphonesim) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-android) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-aros) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),m68k-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),m68k-netbsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),m68k-amiga) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),m68k-atari) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),m68k-palmos) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),m68k-macosclassic) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),m68k-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),m68k-sinclairql) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),m68k-human68k) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc-netbsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc-amiga) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc-macosclassic) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc-darwin) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc-morphos) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc-wii) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc-aix) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),sparc-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),sparc-netbsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),sparc-solaris) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),sparc-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-freebsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-haiku) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-netbsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-solaris) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-openbsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-darwin) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-win64) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-iphonesim) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-android) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-aros) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),x86_64-dragonfly) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-netbsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-palmos) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-wince) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-gba) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-nds) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-symbian) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-android) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-aros) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-freertos) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),arm-ios) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc64-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc64-darwin) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc64-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),powerpc64-aix) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),avr-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),armeb-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),armeb-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),mips-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),mipsel-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),mipsel-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),mipsel-android) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),mipsel-ps1) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),mips64-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),mips64el-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),jvm-java) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),jvm-android) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i8086-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i8086-msdos) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i8086-win16) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),aarch64-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),aarch64-freebsd) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),aarch64-darwin) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),aarch64-win64) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),aarch64-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),aarch64-iphonesim) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),aarch64-android) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),aarch64-ios) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),wasm32-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1threads) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip2) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),sparc64-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),riscv32-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),riscv32-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),riscv32-freertos) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),riscv64-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),riscv64-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),xtensa-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),xtensa-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),xtensa-freertos) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),z80-embedded) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),z80-zxspectrum) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),z80-msxdos) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),z80-amstradcpc) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),loongarch64-linux) override COMPILER_UNITDIR+=$(COMPILERSOURCEDIR) endif ifeq ($(CPU_OS_TARGET),i386-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-go32v2) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-win32) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-os2) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-freebsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-beos) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-haiku) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-netbsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-solaris) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-netware) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-openbsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-wdosx) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-darwin) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-emx) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-watcom) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-netwlibc) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-wince) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-symbian) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-nativent) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-iphonesim) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-android) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-aros) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-netbsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-amiga) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-atari) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-palmos) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-macosclassic) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-sinclairql) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-human68k) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-netbsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-amiga) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-macosclassic) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-darwin) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-morphos) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-wii) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-aix) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-netbsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-solaris) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-freebsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-haiku) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-netbsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-solaris) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-openbsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-darwin) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-win64) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-iphonesim) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-android) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-aros) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-dragonfly) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-netbsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-palmos) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-wince) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-gba) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-nds) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-symbian) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-android) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-aros) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-freertos) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-ios) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-darwin) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-aix) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),avr-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),armeb-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),armeb-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mips-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-android) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-ps1) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mips64-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mips64el-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),jvm-java) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),jvm-android) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i8086-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i8086-msdos) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i8086-win16) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-freebsd) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-darwin) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-win64) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-iphonesim) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-android) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-ios) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1threads) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip2) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc64-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv32-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv32-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv32-freertos) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv64-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv64-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),xtensa-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),xtensa-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),xtensa-freertos) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-embedded) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-zxspectrum) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-msxdos) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-amstradcpc) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),loongarch64-linux) override COMPILER_TARGETDIR+=$(CPU_UNITDIR)/bin/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-go32v2) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-win32) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-os2) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-freebsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-beos) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-haiku) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-netbsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-solaris) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-netware) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-openbsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-wdosx) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-darwin) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-emx) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-watcom) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-netwlibc) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-wince) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-symbian) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-nativent) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-iphonesim) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-android) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i386-aros) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-netbsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-amiga) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-atari) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-palmos) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-macosclassic) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-sinclairql) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),m68k-human68k) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-netbsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-amiga) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-macosclassic) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-darwin) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-morphos) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-wii) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc-aix) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-netbsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-solaris) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-freebsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-haiku) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-netbsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-solaris) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-openbsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-darwin) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-win64) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-iphonesim) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-android) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-aros) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),x86_64-dragonfly) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-netbsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-palmos) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-wince) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-gba) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-nds) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-symbian) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-android) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-aros) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-freertos) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),arm-ios) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-darwin) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),powerpc64-aix) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),avr-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),armeb-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),armeb-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mips-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-android) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mipsel-ps1) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mips64-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),mips64el-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),jvm-java) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),jvm-android) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i8086-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i8086-msdos) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),i8086-win16) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-freebsd) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-darwin) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-win64) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-iphonesim) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-android) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),aarch64-ios) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1threads) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),wasm32-wasip2) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),sparc64-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv32-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv32-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv32-freertos) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv64-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),riscv64-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),xtensa-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),xtensa-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),xtensa-freertos) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-embedded) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-zxspectrum) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-msxdos) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),z80-amstradcpc) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifeq ($(CPU_OS_TARGET),loongarch64-linux) override COMPILER_UNITTARGETDIR+=$(CPU_UNITDIR)/units/$(FULL_TARGET) endif ifdef REQUIRE_UNITSDIR override UNITSDIR+=$(REQUIRE_UNITSDIR) endif ifdef REQUIRE_PACKAGESDIR override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR) endif ifdef ZIPINSTALL ifneq ($(filter $(OS_TARGET),$(UNIXs)),) UNIXHier=1 endif else ifneq ($(filter $(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 ifeq ($(OS_SOURCE),linux) ifndef GCCLIBDIR ifeq ($(CPU_TARGET),i386) ifneq ($(filter x86_64,$(shell uname -a)),) ifeq ($(BINUTILSPREFIX),) GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) else CROSSGCCOPT=-m32 endif endif endif ifeq ($(CPU_TARGET),powerpc) ifeq ($(BINUTILSPREFIX),) GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) else CROSSGCCOPT=-m32 endif endif ifeq ($(CPU_TARGET),powerpc64) ifeq ($(BINUTILSPREFIX),) GCCLIBDIR:=$(shell dirname `gcc -m64 -print-libgcc-file-name`) else CROSSGCCOPT=-m64 endif endif ifeq ($(CPU_TARGET),sparc) ifneq ($(filter sparc64,$(shell uname -a)),) ifeq ($(BINUTILSPREFIX),) GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`) else CROSSGCCOPT=-m32 endif endif endif ifneq ($(filter $(CPU_TARGET),mips64 mipsel64),) ifeq ($(BINUTILSPREFIX),) GCCLIBDIR:=$(shell dirname `gcc -mabi=64 -print-libgcc-file-name`) else CROSSGCCOPT=-mabi=64 endif endif ifneq ($(filter $(CPU_TARGET),mips mipsel),) ifeq ($(BINUTILSPREFIX),) GCCLIBDIR:=$(shell dirname `gcc -mabi=32 -print-libgcc-file-name`) else CROSSGCCOPT=-mabi=32 endif endif ifeq ($(BINUTILSPREFIX),) ifeq ($(GCCLIBDIR),) GCCLIBDIR:=$(shell dirname `gcc -print-libgcc-file-name`) endif else ifeq ($(CROSSGCCOPT),) CROSSGCCOPT=-g endif endif endif ifdef FPCFPMAKE FPCFPMAKE_CPU_TARGET=$(shell $(FPCFPMAKE) -iTP) ifeq ($(CPU_TARGET),$(FPCFPMAKE_CPU_TARGET)) FPCMAKEGCCLIBDIR:=$(GCCLIBDIR) else ifneq ($(filter $(FPCFPMAKE_CPU_TARGET),aarch64 powerpc64 riscv64 sparc64 x86_64 loongarch64),) FPCMAKE_CROSSGCCOPT=-m64 else ifneq ($(filter $(FPCFPMAKE_CPU_TARGET),mips64 mips64el),) FPCMAKE_CROSSGCCOPT=-mabi=64 else ifneq ($(filter $(FPCFPMAKE_CPU_TARGET),mips mipsel),) FPCMAKE_CROSSGCCOPT=-mabi=32 else ifeq ($(FPCFPMAKE_CPU_TARGET),riscv64) FPCMAKE_CROSSGCCOPT=-mabi=lp64 else ifeq ($(FPCFPMAKE_CPU_TARGET),riscv32) FPCMAKE_CROSSGCCOPT=-mabi=ilp32 else ifeq ($(FPCFPMAKE_CPU_TARGET),loongarch64) FPCMAKE_CROSSGCCOPT=-mabi=lp64d else FPCMAKE_CROSSGCCOPT=-m32 endif endif endif endif endif endif FPCMAKEGCCLIBDIR:=$(shell dirname `gcc $(FPCMAKE_CROSSGCCOPT) -print-libgcc-file-name`) endif endif ifndef FPCMAKEGCCLIBDIR FPCMAKEGCCLIBDIR:=$(shell dirname `gcc -print-libgcc-file-name`) endif ifndef GCCLIBDIR CROSSGCC=$(strip $(wildcard $(addsuffix /$(BINUTILSPREFIX)gcc$(SRCEXEEXT),$(SEARCHPATH)))) ifneq ($(CROSSGCC),) GCCLIBDIR:=$(shell dirname `$(CROSSGCC) $(CROSSGCCOPT) -print-libgcc-file-name`) endif endif endif ifdef inUnix ifeq ($(OS_SOURCE),netbsd) OTHERLIBDIR:=/usr/pkg/lib endif export GCCLIBDIR FPCMAKEGCCLIBDIR OTHERLIBDIR endif BATCHEXT=.bat LOADEREXT=.as EXEEXT=.exe PPLEXT=.ppl PPUEXT=.ppu OEXT=.o LTOEXT=.bc ASMEXT=.s SMARTEXT=.sl STATICLIBEXT=.a SHAREDLIBEXT=.so SHAREDLIBPREFIX=libfp STATICLIBPREFIX=libp IMPORTLIBPREFIX=libimp RSTEXT=.rst EXEDBGEXT=.dbg ifeq ($(OS_TARGET),go32v1) STATICLIBPREFIX= SHORTSUFFIX=v1 endif ifeq ($(OS_TARGET),go32v2) STATICLIBPREFIX= SHORTSUFFIX=dos IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),watcom) STATICLIBPREFIX= OEXT=.obj ASMEXT=.asm SHAREDLIBEXT=.dll SHORTSUFFIX=wat IMPORTLIBPREFIX= endif ifneq ($(CPU_TARGET),jvm) ifeq ($(OS_TARGET),android) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=lnx endif endif ifeq ($(OS_TARGET),linux) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=lnx endif ifeq ($(OS_TARGET),dragonfly) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=df 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 IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),emx) BATCHEXT=.cmd AOUTEXT=.out STATICLIBPREFIX= SHAREDLIBEXT=.dll SHORTSUFFIX=emx ECHO=echo IMPORTLIBPREFIX= endif ifeq ($(OS_TARGET),amiga) EXEEXT= SHAREDLIBEXT=.library SHORTSUFFIX=amg endif ifeq ($(OS_TARGET),aros) EXEEXT= SHAREDLIBEXT=.library SHORTSUFFIX=aros 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),haiku) BATCHEXT=.sh EXEEXT= SHORTSUFFIX=hai 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 IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),netwlibc) EXEEXT=.nlm STATICLIBPREFIX= SHORTSUFFIX=nwl IMPORTLIBPREFIX=imp endif ifeq ($(OS_TARGET),macosclassic) BATCHEXT= EXEEXT= DEBUGSYMEXT=.xcoff SHORTSUFFIX=mac IMPORTLIBPREFIX=imp endif ifneq ($(filter $(OS_TARGET),darwin iphonesim ios),) BATCHEXT=.sh EXEEXT= HASSHAREDLIB=1 SHORTSUFFIX=dwn EXEDBGEXT=.dSYM endif ifeq ($(OS_TARGET),gba) EXEEXT=.gba SHAREDLIBEXT=.so SHORTSUFFIX=gba endif ifeq ($(OS_TARGET),symbian) SHAREDLIBEXT=.dll SHORTSUFFIX=symbian endif ifeq ($(OS_TARGET),NativeNT) SHAREDLIBEXT=.dll SHORTSUFFIX=nativent endif ifeq ($(OS_TARGET),wii) EXEEXT=.dol SHAREDLIBEXT=.so SHORTSUFFIX=wii endif ifeq ($(OS_TARGET),aix) BATCHEXT=.sh EXEEXT= SHAREDLIBEXT=.a SHORTSUFFIX=aix endif ifeq ($(OS_TARGET),java) OEXT=.class ASMEXT=.j SHAREDLIBEXT=.jar SHORTSUFFIX=java endif ifeq ($(CPU_TARGET),jvm) ifeq ($(OS_TARGET),android) OEXT=.class ASMEXT=.j SHAREDLIBEXT=.jar SHORTSUFFIX=android endif endif ifeq ($(OS_TARGET),msdos) STATICLIBPREFIX= STATICLIBEXT=.a SHORTSUFFIX=d16 endif ifeq ($(OS_TARGET),msxdos) STATICLIBPREFIX= STATICLIBEXT=.a SHORTSUFFIX=msd endif ifeq ($(OS_TARGET),embedded) ifeq ($(CPU_TARGET),i8086) STATICLIBPREFIX= STATICLIBEXT=.a else EXEEXT=.bin endif ifeq ($(CPU_TARGET),z80) OEXT=.rel endif SHORTSUFFIX=emb endif ifeq ($(OS_TARGET),win16) STATICLIBPREFIX= STATICLIBEXT=.a SHAREDLIBEXT=.dll SHORTSUFFIX=w16 endif ifeq ($(OS_TARGET),zxspectrum) OEXT=.rel endif ifeq ($(OS_TARGET),wasip1) EXEEXT=.wasm endif ifeq ($(OS_TARGET),wasip1threads) EXEEXT=.wasm endif ifeq ($(OS_TARGET),wasip2) EXEEXT=.wasm endif ifneq ($(filter $(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 NASMNAME=$(BINUTILSPREFIX)nasm 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 ifndef NASMPROG ifdef CROSSBINDIR NASMPROG=$(CROSSBINDIR)/$(NASMNAME)$(SRCEXEEXT) else NASMPROG=$(NASMNAME) endif endif AS=$(ASPROG) LD=$(LDPROG) RC=$(RCPROG) AR=$(ARPROG) NASM=$(NASMPROG) ifdef inUnix PPAS=./ppas$(SRCBATCHEXT) else PPAS=ppas$(SRCBATCHEXT) endif ifdef inUnix LDCONFIG=ldconfig else LDCONFIG= endif ifdef DATE DATESTR:=$(shell $(DATE) +%Y%m%d) else DATESTR= endif ZIPOPT=-9 ZIPEXT=.zip ifeq ($(USETAR),bz2) TAROPT=vj TAREXT=.tar.bz2 else TAROPT=vz TAREXT=.tar.gz endif override REQUIRE_PACKAGES=rtl rtl ifeq ($(CPU_OS_TARGET),i386-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-go32v2) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-win32) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-os2) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-freebsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-beos) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-haiku) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-netbsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-solaris) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-netware) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-openbsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-wdosx) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-darwin) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-emx) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-watcom) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-netwlibc) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-wince) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-symbian) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-nativent) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-iphonesim) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-android) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i386-aros) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),m68k-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),m68k-netbsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),m68k-amiga) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),m68k-atari) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),m68k-palmos) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),m68k-macosclassic) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),m68k-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),m68k-sinclairql) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),m68k-human68k) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc-netbsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc-amiga) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc-macosclassic) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc-darwin) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc-morphos) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc-wii) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc-aix) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),sparc-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),sparc-netbsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),sparc-solaris) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),sparc-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-freebsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-haiku) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-netbsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-solaris) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-openbsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-darwin) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-win64) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-iphonesim) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-android) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-aros) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),x86_64-dragonfly) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-netbsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-palmos) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-wince) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-gba) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-nds) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-symbian) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-android) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-aros) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-freertos) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),arm-ios) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc64-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc64-darwin) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc64-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),powerpc64-aix) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),avr-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),armeb-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),armeb-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),mips-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),mipsel-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),mipsel-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),mipsel-android) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),mipsel-ps1) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),mips64-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),mips64el-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),jvm-java) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),jvm-android) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i8086-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i8086-msdos) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),i8086-win16) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),aarch64-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),aarch64-freebsd) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),aarch64-darwin) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),aarch64-win64) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),aarch64-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),aarch64-iphonesim) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),aarch64-android) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),aarch64-ios) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),wasm32-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1threads) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),wasm32-wasip2) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),sparc64-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),riscv32-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),riscv32-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),riscv32-freertos) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),riscv64-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),riscv64-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),xtensa-linux) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),xtensa-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),xtensa-freertos) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),z80-embedded) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),z80-zxspectrum) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),z80-msxdos) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),z80-amstradcpc) REQUIRE_PACKAGES_RTL=1 endif ifeq ($(CPU_OS_TARGET),loongarch64-linux) REQUIRE_PACKAGES_RTL=1 endif ifdef REQUIRE_PACKAGES_RTL PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) ifeq ($(PACKAGEDIR_RTL),) PACKAGEDIR_RTL:=$(firstword $(subst /Makefile,,$(strip $(wildcard $(addsuffix /rtl/Makefile,$(PACKAGESDIR)))))) ifneq ($(PACKAGEDIR_RTL),) PACKAGEDIR_RTL:=$(firstword $(subst /fpmake.pp,,$(strip $(wildcard $(addsuffix /rtl/fpmake.pp,$(PACKAGESDIR)))))) endif endif ifneq ($(PACKAGEDIR_RTL),) ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)),) UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX) else UNITDIR_RTL=$(PACKAGEDIR_RTL) endif ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX)),) UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX) else ifneq ($(wildcard $(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX)),) UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX) else UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL) endif endif ifdef CHECKDEPEND $(PACKAGEDIR_RTL)/$(OS_TARGET)/$(FPCMADE): $(MAKE) -C $(PACKAGEDIR_RTL)/$(OS_TARGET) $(FPCMADE) override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(OS_TARGET)/$(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 ifdef UNITDIR_FPMAKE_RTL override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_RTL) endif endif ifndef NOCPUDEF override FPCOPTDEF=$(ARCH) endif ifneq ($(OS_TARGET),$(OS_SOURCE)) override FPCOPT+=-T$(OS_TARGET) endif ifneq ($(CPU_TARGET),$(CPU_SOURCE)) override FPCOPT+=-P$(ARCH) endif ifeq ($(OS_SOURCE),openbsd) override FPCOPT+=-FD$(NEW_BINUTILS_PATH) override FPCMAKEOPT+=-FD$(NEW_BINUTILS_PATH) override FPMAKE_BUILD_OPT+=-FD$(NEW_BINUTILS_PATH) endif ifndef CROSSBOOTSTRAP ifneq ($(BINUTILSPREFIX),) override FPCOPT+=-XP$(BINUTILSPREFIX) ifneq ($(RLINKPATH),) override FPCOPT+=-Xr$(RLINKPATH) endif endif endif ifndef CROSSCOMPILE ifneq ($(BINUTILSPREFIX),) override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) override FPMAKE_BUILD_OPT+=-XP$(BINUTILSPREFIX) 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 FPCCPUOPT:=-O2 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 SYSROOTPATH override FPCOPT+=-XR$(SYSROOTPATH) else ifeq ($(OS_TARGET),$(OS_SOURCE)) ifeq ($(OS_TARGET),darwin) ifeq ($(CPU_TARGET),aarch64) ifneq ($(wildcard /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk),) override FPCOPT+=-XR/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk endif endif endif endif endif ifdef CREATESHARED override FPCOPT+=-Cg endif ifneq ($(filter $(OS_TARGET),dragonfly freebsd openbsd netbsd linux solaris),) ifneq ($(filter $(CPU_TARGET),x86_64 mips mipsel mips64 mips64el riscv64 powerpc64),) override FPCOPT+=-Cg endif endif ifneq ($(filter $(CPU_TARGET),z80),) override FPCOPT+=-CX -XX endif ifdef LINKSHARED endif ifdef GCCLIBDIR override FPCOPT+=-Fl$(GCCLIBDIR) ifdef FPCMAKEGCCLIBDIR override FPCMAKEOPT+=-Fl$(FPCMAKEGCCLIBDIR) else override FPCMAKEOPT+=-Fl$(GCCLIBDIR) endif endif ifdef OTHERLIBDIR override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR)) endif ifdef OPT override FPCOPT+=$(OPT) endif ifdef FPMAKEBUILDOPT override FPMAKE_BUILD_OPT+=$(FPMAKEBUILDOPT) 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:=$(strip $(FPC) $(FPCOPT)) ifneq (,$(filter -sh,$(COMPILER))) UseEXECPPAS=1 endif ifneq (,$(filter -s,$(COMPILER))) ifeq ($(FULL_SOURCE),$(FULL_TARGET)) UseEXECPPAS=1 endif endif ifneq ($(UseEXECPPAS),1) EXECPPAS= else ifdef RUNBATCH EXECPPAS:=@$(RUNBATCH) $(PPAS) else EXECPPAS:=@$(PPAS) endif endif .PHONY: fpc_exes ifndef CROSSINSTALL ifneq ($(TARGET_PROGRAMS),) override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS)) override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addsuffix $(LTOEXT),$(TARGET_PROGRAMS))$(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS)) override ALLTARGET+=fpc_exes override INSTALLEXEFILES+=$(EXEFILES) override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES) override CLEANEXEDBGFILES+=$(EXEDBGFILES) ifeq ($(OS_TARGET),os2) override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_PROGRAMS)) endif ifeq ($(OS_TARGET),emx) override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_PROGRAMS)) endif endif endif fpc_exes: $(COMPILER_TARGETDIR) $(COMPILER_UNITTARGETDIR) $(EXEFILES) ifdef TARGET_RSTS override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) override CLEANRSTFILES+=$(RSTFILES) endif .PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared $(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) $(LTOEXT) .pas .lpr .dpr .pp .rc .res $(COMPILER_UNITTARGETDIR): $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) $(COMPILER_TARGETDIR): $(MKDIRTREE) $(COMPILER_TARGETDIR) %$(PPUEXT): %.pp $(COMPILER) $< $(EXECPPAS) %$(PPUEXT): %.pas $(COMPILER) $< $(EXECPPAS) %$(EXEEXT): %.pp $(COMPILER) $< $(EXECPPAS) %$(EXEEXT): %.pas $(COMPILER) $< $(EXECPPAS) %$(EXEEXT): %.lpr $(COMPILER) $< $(EXECPPAS) %$(EXEEXT): %.dpr $(COMPILER) $< $(EXECPPAS) %.res: %.rc windres -i $< -o $@ vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) vpath %.inc $(COMPILER_INCLUDEDIR) vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) vpath %$(LTOEXT) $(COMPILER_UNITTARGETDIR) vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) .PHONY: fpc_shared override INSTALLTARGET+=fpc_shared_install ifndef SHARED_LIBVERSION SHARED_LIBVERSION=$(FPC_VERSION) endif ifndef SHARED_LIBNAME SHARED_LIBNAME=$(PACKAGE_NAME) endif ifndef SHARED_FULLNAME SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) endif ifndef SHARED_LIBUNITS SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) endif fpc_shared: ifdef HASSHAREDLIB $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 ifneq ($(SHARED_BUILD),n) $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) -P$(BINUTILSPREFIX) endif else @$(ECHO) Shared Libraries not supported endif fpc_shared_install: ifneq ($(SHARED_BUILD),n) ifneq ($(SHARED_LIBUNITS),) ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) endif endif endif .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 ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT)) override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) else override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) endif ifneq ($(UNITTARGETDIRPREFIX),) override INSTALLPPUFILENAMES:=$(notdir $(INSTALLPPUFILES)) override INSTALLPPULINKFILENAMES:=$(notdir $(INSTALLPPULINKFILES)) override INSTALLPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILENAMES)) override INSTALLPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILENAMES))) endif override INSTALL_CREATEPACKAGEFPC=1 endif ifdef INSTALLEXEFILES ifneq ($(TARGETDIRPREFIX),) override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES))) endif endif fpc_install: all $(INSTALLTARGET) ifdef INSTALLEXEFILES $(MKDIR) $(INSTALL_BINDIR) $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) endif ifdef INSTALL_CREATEPACKAGEFPC ifdef FPCMAKE ifdef PACKAGE_VERSION ifneq ($(wildcard Makefile.fpc),) $(FPCMAKE) -p -T$(CPU_TARGET)-$(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: $(EXAMPLEINSTALLTARGET) $(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=$(PACKAGE_NAME) endif endif ifndef FULLZIPNAME FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX) 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)/$(FULLZIPNAME)$(TAREXT) ZIPCMD_ZIP:=$(TARPROG) c$(TAROPT)f $(ZIPDESTFILE) * else ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(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 ifdef RUNBATCH $(RUNBATCH) $(ZIPWRAPPER) else $(ZIPWRAPPER) endif endif $(DEL) $(ZIPWRAPPER) else $(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE) endif $(DELTREE) $(PACKDIR) fpc_zipsourceinstall: $(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX) fpc_zipexampleinstall: ifdef HASEXAMPLES $(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX) endif fpc_zipdistinstall: $(MAKE) fpc_zipinstall ZIPTARGET=distinstall .PHONY: fpc_clean fpc_cleanall fpc_distclean ifdef EXEFILES override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES)) override CLEANEXEDBGFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEDBGFILES)) endif ifdef CLEAN_PROGRAMS override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEEXT), $(CLEAN_PROGRAMS))) override CLEANEXEDBGFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEDBGEXT), $(CLEAN_PROGRAMS))) endif ifdef CLEAN_UNITS override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS)) endif ifdef CLEANPPUFILES override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(subst $(PPUEXT),$(LTOEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) ifdef DEBUGSYMEXT override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) endif override CLEANPPUFILENAMES:=$(CLEANPPUFILES) override CLEANPPUFILES=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILENAMES)) override CLEANPPULINKFILENAMES:=$(CLEANPPULINKFILES) override CLEANPPULINKFILES=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILENAMES))) endif fpc_clean: $(CLEANTARGET) ifdef CLEANEXEFILES -$(DEL) $(CLEANEXEFILES) endif ifdef CLEANEXEDBGFILES -$(DELTREE) $(CLEANEXEDBGFILES) 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) *$(FULL_TARGET).fpm Package.fpc *$(ASMEXT) -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(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 ifdef CLEAN_FILES -$(DEL) $(CLEAN_FILES) endif -$(DELTREE) units -$(DELTREE) bin -$(DEL) *$(OEXT) *$(LTOEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT) ifneq ($(PPUEXT),.ppu) -$(DEL) *.o *.ppu *.a endif -$(DELTREE) *$(SMARTEXT) -$(DEL) fpcmade.* Package.fpc *.fpm -$(DEL) $(FPCEXTFILE) $(REDIRFILE) script*.res link*.res *_script.res *_link.res -$(DEL) $(PPAS) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT) ifdef AOUTEXT -$(DEL) *$(AOUTEXT) endif ifdef DEBUGSYMEXT -$(DEL) *$(DEBUGSYMEXT) endif ifdef LOCALFPMAKEBIN -$(DEL) $(LOCALFPMAKEBIN) -$(DEL) $(FPMAKEBINOBJ) 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) FPC fpmake... $(FPCFPMAKE) @$(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) 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 ($(CPU_OS_TARGET),i386-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-go32v2) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-win32) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-os2) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-freebsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-beos) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-haiku) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-netbsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-solaris) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-netware) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-openbsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-wdosx) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-darwin) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-emx) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-watcom) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-netwlibc) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-wince) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-symbian) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-nativent) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-iphonesim) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-android) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i386-aros) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),m68k-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),m68k-netbsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),m68k-amiga) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),m68k-atari) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),m68k-palmos) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),m68k-macosclassic) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),m68k-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),m68k-sinclairql) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),m68k-human68k) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc-netbsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc-amiga) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc-macosclassic) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc-darwin) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc-morphos) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc-wii) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc-aix) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),sparc-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),sparc-netbsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),sparc-solaris) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),sparc-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-freebsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-haiku) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-netbsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-solaris) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-openbsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-darwin) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-win64) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-iphonesim) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-android) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-aros) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),x86_64-dragonfly) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-netbsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-palmos) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-wince) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-gba) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-nds) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-symbian) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-android) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-aros) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-freertos) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),arm-ios) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc64-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc64-darwin) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc64-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),powerpc64-aix) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),avr-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),armeb-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),armeb-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),mips-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),mipsel-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),mipsel-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),mipsel-android) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),mipsel-ps1) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),mips64-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),mips64el-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),jvm-java) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),jvm-android) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i8086-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i8086-msdos) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),i8086-win16) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),aarch64-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),aarch64-freebsd) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),aarch64-darwin) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),aarch64-win64) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),aarch64-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),aarch64-iphonesim) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),aarch64-android) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),aarch64-ios) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),wasm32-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),wasm32-wasip1threads) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),wasm32-wasip2) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),sparc64-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),riscv32-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),riscv32-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),riscv32-freertos) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),riscv64-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),riscv64-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),xtensa-linux) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),xtensa-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),xtensa-freertos) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),z80-embedded) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),z80-zxspectrum) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),z80-msxdos) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),z80-amstradcpc) TARGET_DIRS_UTILS=1 endif ifeq ($(CPU_OS_TARGET),loongarch64-linux) TARGET_DIRS_UTILS=1 endif ifdef TARGET_DIRS_UTILS utils_all: $(MAKE) -C utils all utils_debug: $(MAKE) -C utils debug utils_smart: $(MAKE) -C utils smart utils_release: $(MAKE) -C utils release utils_units: $(MAKE) -C utils units utils_examples: $(MAKE) -C utils examples utils_shared: $(MAKE) -C utils shared utils_install: $(MAKE) -C utils install utils_sourceinstall: $(MAKE) -C utils sourceinstall utils_exampleinstall: $(MAKE) -C utils exampleinstall utils_distinstall: $(MAKE) -C utils distinstall utils_zipinstall: $(MAKE) -C utils zipinstall utils_zipsourceinstall: $(MAKE) -C utils zipsourceinstall utils_zipexampleinstall: $(MAKE) -C utils zipexampleinstall utils_zipdistinstall: $(MAKE) -C utils zipdistinstall utils_clean: $(MAKE) -C utils clean utils_distclean: $(MAKE) -C utils distclean utils_cleanall: $(MAKE) -C utils cleanall utils_info: $(MAKE) -C utils info utils_makefiles: $(MAKE) -C utils makefiles utils: $(MAKE) -C utils all .PHONY: utils_all utils_debug utils_smart utils_release utils_units utils_examples utils_shared utils_install utils_sourceinstall utils_exampleinstall utils_distinstall utils_zipinstall utils_zipsourceinstall utils_zipexampleinstall utils_zipdistinstall utils_clean utils_distclean utils_cleanall utils_info utils_makefiles utils endif ifndef DIFF DIFF:=$(strip $(wildcard $(addsuffix /diff$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(DIFF),) DIFF= __missing_command_DIFF else DIFF:=$(firstword $(DIFF)) endif endif export DIFF ifndef CMP CMP:=$(strip $(wildcard $(addsuffix /cmp$(SRCEXEEXT),$(SEARCHPATH)))) ifeq ($(CMP),) CMP= __missing_command_CMP else CMP:=$(firstword $(CMP)) endif endif export CMP debug: fpc_debug smart: fpc_smart release: fpc_release units: fpc_units $(addsuffix _units,$(TARGET_DIRS)) examples: $(addsuffix _examples,$(TARGET_DIRS)) shared: fpc_shared 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 cleanall: fpc_cleanall $(addsuffix _cleanall,$(TARGET_DIRS)) info: fpc_info makefiles: fpc_makefiles .PHONY: debug smart release units examples shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles ifneq ($(wildcard fpcmake.loc),) include fpcmake.loc endif ifneq ($(findstring $(OS_TARGET),win32 win64 aix),) USE_CMP_FOR_DIFF=1 endif ifdef USE_CMP_FOR_DIFF ifdef CMP override DIFF:=$(CMP) -i218 endif endif ifeq ($(OS_TARGET), darwin) CODESIGN?=$(firstword $(wildcard $(addsuffix /codesign$(SRCEXEEXT),$(SEARCHPATH)))) endif ifneq ($(CYCLELEVEL),1) ifndef ALLOW_WARNINGS override LOCALOPT+=-Sew endif endif override COMPILER+=$(LOCALOPT) PASDOC:=$(strip $(wildcard $(addsuffix /pasdoc.exe,$(SEARCHPATH)))) ifeq ($(PASDOC),) PASDOC:=$(strip $(wildcard $(addsuffix /pasdoc,$(SEARCHPATH)))) endif ifeq ($(PASDOC),) PASDOC:=../projects/pasdoc/bin/pasdoc else PASDOC:=$(firstword $(PASDOC)) endif ifndef EXENAME EXENAME=ppc$(CPUSUF)$(EXEEXT) endif PPEXENAME=pp$(EXEEXT) TEMPNAME=ppc$(SRCEXEEXT) ifneq ($(CPUSUF),jvm) PPCROSSNAME=ppcross$(CPUSUF)$(SRCEXEEXT) else PPCROSSNAME=ppc$(CPUSUF)$(SRCEXEEXT) endif TEMPNAME1=ppc1$(EXEEXT) TEMPNAME2=ppc2$(EXEEXT) TEMPNAME3=ppc3$(EXEEXT) TEMPWPONAME1=ppcwpo1$(EXEEXT) TEMPWPONAME2=ppcwpo2$(EXEEXT) MAKEDEP=ppdep$(EXEEXT) MSG2INC=./msg2inc$(EXEEXT) ifdef CROSSINSTALL INSTALLEXEFILE=$(PPCROSSNAME) else INSTALLEXEFILE=$(EXENAME) endif ifdef DEBUG_CYCLE DEBUG_EXENAME=1 DEBUG_PPEXENAME=1 DEBUG_TEMPNAME=1 DEBUG_PPCROSSNAME=1 DEBUG_TEMPNAME1=1 DEBUG_TEMPNAME2=1 DEBUG_TEMPNAME3=1 DEBUG_TEMPWPONAME1=1 DEBUG_TEMPWPONAME2=1 endif ifdef DEBUG_EXENAME EXENAMEPREFIX=g NEED_G_COMPILERS+=g$(EXENAME) endif ifdef DEBUG_PPEXENAME PPEXENAMEPREFIX=g NEED_G_COMPILERS+=g$(PPEXENAME) endif ifdef DEBUG_TEMPNAME TEMPNAMEPREFIX=g NEED_G_COMPILERS+=g$(TEMPNAME) endif ifdef DEBUG_PPCROSSNAME PPCROSSNAMEPREFIX=g NEED_G_COMPILERS+=g$(PPCROSSNAME) endif ifdef DEBUG_TEMPNAME1 TEMPNAME1PREFIX=g NEED_G_COMPILERS+=g$(TEMPNAME1) endif ifdef DEBUG_TEMPNAME2 TEMPNAME2PREFIX=g NEED_G_COMPILERS+=g$(TEMPNAME2) endif ifdef DEBUG_TEMPNAME3 TEMPNAME3PREFIX=g NEED_G_COMPILERS+=g$(TEMPNAME3) endif ifdef DEBUG_TEMPWPONAME1 TEMPNAMEWPO1PREFIX=g NEED_G_COMPILERS+=g$(TEMPWPONAME1) endif ifdef DEBUG_TEMPWPONAME2 TEMPWPONAME2PREFIX=g NEED_G_COMPILERS+=g$(TEMPWPONAME2) endif ALL_G_COMPILERS="g$(EXENAME) g$(PPEXENAME) g$(TEMPNAME) g$(PPCROSSNAME) g$(TEMPNAME1) g$(TEMPNAME2) g$(TEMPNAME3) g$(TEMPWPONAME1) g$(TEMPWPONAME2)" g$(COMPILERTEMPNAME): fpcmade.generate_g_compilers $(COPY) ./utils/gppc386 ./g$(COMPILERTEMPNAME) fpcmade.generate_g_compilers: utils/gppc386.pp $(MAKE) rtlclean rtl utils $(MAKE) -C utils gppc386$(EXEEXT) $(GECHO) -n "utils/gppc386 generated at " > $@ $(GDATE) >> $@ ifdef EXENAMEPREFIX $(MAKE) g$(EXENAME) COMPILERTEMPNAME=$(EXENAME) endif ifdef PPEXENAMEPREFIX $(MAKE) g$(PPEXENAME) COMPILERTEMPNAME=$(PPEXENAME) endif ifdef TEMPNAMEPREFIX $(MAKE) g$(TEMPNAME) COMPILERTEMPNAME=$(TEMPNAME) endif ifdef PPCROSSNAMEPREFIX $(MAKE) g$(PPCROSSNAME) COMPILERTEMPNAME=$(PPCROSSNAME) endif ifdef TEMPNAME1PREFIX $(MAKE) g$(TEMPNAME1) COMPILERTEMPNAME=$(TEMPNAME1) endif ifdef TEMPNAME2PREFIX $(MAKE) g$(TEMPNAME2) COMPILERTEMPNAME=$(TEMPNAME2) endif ifdef TEMPNAME3PREFIX $(MAKE) g$(TEMPNAME3) COMPILERTEMPNAME=$(TEMPNAME3) endif ifdef TEMPWPONAME1PREFIX $(MAKE) g$(TEMPWPONAME1) COMPILERTEMPNAME=$(TEMPWPONAME1) endif ifdef TEMPWPONAME2PREFIX $(MAKE) g$(TEMPWPONAME2) COMPILERTEMPNAME=$(TEMPWPONAME2) endif PPC_TARGETS=i386 m68k powerpc sparc arm armeb x86_64 powerpc64 mips mipsel mips64 mips64el avr jvm i8086 aarch64 sparc64 riscv32 riscv64 xtensa z80 wasm32 loongarch64 PPC_SUFFIXES=386 68k ppc sparc arm armeb x64 ppc64 mips mipsel mips64 mips64el avr jvm 8086 a64 sparc64 rv32 rv64 xtensa z80 wasm32 loongarch64 INSTALL_TARGETS=$(addsuffix _exe_install,$(sort $(CYCLETARGETS) $(PPC_TARGETS))) CLEAN_TARGETS=$(addsuffix _clean,$(sort $(CYCLETARGETS) $(PPC_TARGETS))) SYMLINKINSTALL_TARGETS=$(addsuffix _symlink_install,$(sort $(CYCLETARGETS) $(PPC_TARGETS))) .PHONY: $(PPC_TARGETS) $(INSTALL_TARGETS)$(SYMLINKINSTALL_TARGETS) $(PPC_TARGETS): $(MAKE) PPC_TARGET=$@ CPU_UNITDIR=$@ compiler $(INSTALL_TARGETS): $(MAKE) PPC_TARGET=$(subst _exe_install,,$@) CPU_UNITDIR=$(subst _exe_install,,$@) compiler $(MAKE) PPC_TARGET=$(subst _exe_install,,$@) CPU_UNITDIR=$(subst _exe_install,,$@) exeinstall $(SYMLINKINSTALL_TARGETS): $(MAKE) PPC_TARGET=$(subst _symlink_install,,$@) CPU_UNITDIR=$(subst _symlink_install,,$@) compiler $(MAKE) PPC_TARGET=$(subst _symlink_install,,$@) CPU_UNITDIR=$(subst _symlink_install,,$@) installsymlink alltargets: $(ALLTARGETS) .PHONY: all compiler echotime ppuclean execlean clean distclean all: compiler $(addsuffix _all,$(TARGET_DIRS)) compiler: msg $(COMPILER_UNITTARGETDIR) $(COMPILER_TARGETDIR) $(EXENAME) ifeq ($(MAKELEVEL),0) ifndef STARTTIME ifdef DATE STARTTIME:=$(shell $(DATE) +%T) else STARTTIME:=unknown endif endif endif export STARTTIME ifdef DATE ENDTIME=$(shell $(DATE) +%T) else ENDTIME:=unknown endif echotime: @echo Start $(STARTTIME) now $(ENDTIME) ppuclean: -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT) -$(DEL) $(addsuffix /*$(PPUEXT),$(COMPILERSOURCEDIR)) tempclean: -$(DEL) $(PPCROSSNAME) $(TEMPNAME) $(TEMPNAME1) $(TEMPNAME2) $(TEMPNAME3) $(MSG2INC) pp1.wpo pp2.wpo execlean : -$(DEL) $(addsuffix $(EXEEXT), $(addprefix ppc, $(PPC_SUFFIXES))) -$(DEL) $(addsuffix $(EXEEXT), $(addprefix ppcross, $(PPC_SUFFIXES))) -$(DEL) $(EXENAME) $(TEMPWPONAME1) $(TEMPWPONAME2) $(ALL_G_COMPILERS) -$(DEL) fpcmade.generate_g_compilers $(CLEAN_TARGETS): -$(DELTREE) $(addprefix $(subst _clean,,$@),/units) -$(DELTREE) $(addprefix $(subst _clean,,$@),/bin) -$(DEL) $(addprefix $(subst _clean,,$@)/,*$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)) -$(DEL) $(addprefix $(subst _clean,,$@)/ppc,$(addsuffix $(EXEEXT), $(PPC_SUFFIXES))) cycleclean: cleanall $(addsuffix _clean,$(CPC_TARGET)) -$(DEL) $(EXENAME) clean: tempclean execlean cleanall $(addsuffix _clean,$(CPC_TARGET)) $(addsuffix _clean,$(TARGET_DIRS)) distclean: tempclean execlean cleanall $(addsuffix _clean,$(ALLTARGETS) $(BETATARGETS)) $(addsuffix _distclean,$(TARGET_DIRS)) -$(DEL) msgtxt.inc msgidx.inc $(MSG2INC): $(COMPILER_TARGETDIR) $(COMPILER_UNITTARGETDIR) $(COMPILERUTILSDIR)/msg2inc.pp $(COMPILER) -FE. $(COMPILERUTILSDIR)/msg2inc.pp msgtxt.inc: $(MSGFILE) $(MAKE) rtl $(MAKE) $(MSG2INC) $(MSG2INC) $(MSGFILE) msg msg msg: msgtxt.inc insdatx86 : $(COMPILER_UNITTARGETDIR) x86/x86ins.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkx86ins.pp cd x86 && ..$(PATHSEP)utils$(PATHSEP)mkx86ins$(SRCEXEEXT) i8086 && mv -f i8086tab.inc i8086op.inc i8086nop.inc i8086att.inc i8086atts.inc i8086int.inc i8086prop.inc ../i8086 cd x86 && ..$(PATHSEP)utils$(PATHSEP)mkx86ins$(SRCEXEEXT) && mv -f i386tab.inc i386op.inc i386nop.inc i386att.inc i386atts.inc i386int.inc i386prop.inc ../i386 cd x86 && ..$(PATHSEP)utils$(PATHSEP)mkx86ins$(SRCEXEEXT) x86_64 && mv -f x8664tab.inc x8664op.inc x8664nop.inc x8664att.inc x8664ats.inc x8664int.inc x8664pro.inc ../x86_64 insdatarm : arm/armins.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkarmins.pp cd arm && ..$(PATHSEP)utils$(PATHSEP)mkarmins$(SRCEXEEXT) insdataarch64 : aarch64/a64ins.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mka64ins.pp cd aarch64 && ..$(PATHSEP)utils$(PATHSEP)mka64ins$(SRCEXEEXT) insdatz80 : z80/z80ins.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkz80ins.pp cd z80 && ..$(PATHSEP)utils$(PATHSEP)mkz80ins$(SRCEXEEXT) insdatloongarch64 : loongarch64/loongarchins.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkloongarch64ins.pp cd loongarch64 && ..$(PATHSEP)utils$(PATHSEP)mkloongarch64ins$(SRCEXEEXT) insdat: insdatx86 insdatarm insdataarch64 insdatz80 insdatloongarch64 regdatx86 : x86/x86reg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkx86reg.pp cd x86 && ..$(PATHSEP)utils$(PATHSEP)mkx86reg$(SRCEXEEXT) i8086 mv -f x86/r8086*.inc i8086 cd x86 && ..$(PATHSEP)utils$(PATHSEP)mkx86reg$(SRCEXEEXT) mv -f x86/r386*.inc i386 cd x86 && ..$(PATHSEP)utils$(PATHSEP)mkx86reg$(SRCEXEEXT) x86_64 mv -f x86/r8664*.inc x86_64 regdatarm : arm/armreg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkarmreg.pp cd arm && ..$(PATHSEP)utils$(PATHSEP)mkarmreg$(SRCEXEEXT) regdatsp : sparcgen/spreg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkspreg.pp cd sparcgen && ..$(PATHSEP)utils$(PATHSEP)mkspreg$(SRCEXEEXT) mv -f sparcgen/rsp*.inc sparc regdatsp64 : sparcgen/spreg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkspreg.pp cd sparcgen && ..$(PATHSEP)utils$(PATHSEP)mkspreg$(SRCEXEEXT) sparc64 mv -f sparcgen/rsp*.inc sparc64 regdatavr : avr/avrreg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkavrreg.pp cd avr && ..$(PATHSEP)utils$(PATHSEP)mkavrreg$(SRCEXEEXT) regdataarch64 : aarch64/a64reg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mka64reg.pp cd aarch64 && ..$(PATHSEP)utils$(PATHSEP)mka64reg$(SRCEXEEXT) regdatmips : mips/mipsreg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkmpsreg.pp cd mips && ..$(PATHSEP)utils$(PATHSEP)mkmpsreg$(SRCEXEEXT) regdatz80 : z80/z80reg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkz80reg.pp cd z80 && ..$(PATHSEP)utils$(PATHSEP)mkz80reg$(SRCEXEEXT) regdatwasm : wasm32/wasmreg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkwasmreg.pp cd wasm32 && ..$(PATHSEP)utils$(PATHSEP)mkwasmreg$(SRCEXEEXT) regdatrv32 : riscv/rvreg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkrvreg.pp cd riscv && ..$(PATHSEP)utils$(PATHSEP)mkrvreg$(SRCEXEEXT) riscv32 mv -f riscv/rrv32*.inc riscv32 regdatrv64 : riscv/rvreg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkrvreg.pp cd riscv && ..$(PATHSEP)utils$(PATHSEP)mkrvreg$(SRCEXEEXT) riscv64 mv -f riscv/rrv64*.inc riscv64 regdatloongarch64 : loongarch64/loongarchreg.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkloongarch64reg.pp cd loongarch64 && ..$(PATHSEP)utils$(PATHSEP)mkloongarch64reg$(SRCEXEEXT) regdat : regdatx86 regdatarm regdatsp regdatavr regdataarch64 regdatmips regdatsp64 regdatz80 regdatwasm regdatrv32 regdatrv64 regdatloongarch64 intrdatx86 : x86/x86intr.dat $(COMPILER) -FE$(COMPILERUTILSDIR) $(COMPILERUTILSDIR)/mkx86inl.pp cd x86 && ..$(PATHSEP)utils$(PATHSEP)mkx86inl$(SRCEXEEXT) cp -f x86/cpummprocs.inc ../rtl/x86_64 cp -f x86/cpumminnr.inc ../rtl/x86_64 cp -f x86/cpummprocs.inc ../rtl/i386 cp -f x86/cpumminnr.inc ../rtl/i386 intrdat : intrdatx86 revision.inc : ifneq ($(REVSTR),) ifdef USEZIPWRAPPER ifneq ($(ECHOREDIR),echo) $(ECHOREDIR) "'$(REVSTR)'" > revision.inc else $(ECHOREDIR) '$(REVSTR)' > revision.inc endif else $(ECHOREDIR) "'$(REVSTR)'" > revision.inc endif else $(MAKE) revision.inc REVINC=force endif ifeq ($(COMPILEREXENAME),) COMPILEREXENAME:=$(EXENAME) endif .PHONY : revision revision : $(DEL) revision.inc $(MAKE) revision.inc $(EXENAME) : $(wildcard *.pas) $(wildcard *.inc) msg \ $(wildcard systems/*.pas) $(wilcard systems/*.inc) \ $(wildcard $(CPC_TARGET)/*.pas) $(wildcard $(CPC_TARGET)/*.inc) \ $(COMPILER_UNITTARGETDIR) $(COMPILER_TARGETDIR) ifneq ($(REVSTR),) ifdef USEZIPWRAPPER ifneq ($(ECHOREDIR),echo) $(ECHOREDIR) "'$(REVSTR)'" > revision.inc else $(ECHOREDIR) '$(REVSTR)' > revision.inc endif else $(ECHOREDIR) "'$(REVSTR)'" > revision.inc endif $(COMPILER) version.pas endif $(COMPILER) -o$(BASEDIR)/$(COMPILEREXENAME) pp.pas $(EXECPPAS) .PHONY: cycle full full_targets fullcycle wpocycle ifeq ($(CPU_SOURCE),$(PPC_TARGET)) ifeq ($(OS_SOURCE),$(OS_TARGET)) ifndef NOWPOCYCLE ifdef RELEASE DOWPOCYCLE=1 endif endif ifdef DOWPOCYCLE wpocycle: $(RM) $(EXENAME) $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME3PREFIX)$(TEMPNAME3)' 'OPT=$(strip $(LOCALOPT) $(OPTWPOCOLLECT) $(OPTNEW))' compiler $(RM) $(EXENAME) $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME3PREFIX)$(TEMPNAME3)' 'OPT=$(strip $(RTLOPT) $(OPTWPOPERFORM) $(OPTNEW))' rtlclean $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME3PREFIX)$(TEMPNAME3)' 'OPT=$(strip $(RTLOPT) $(OPTWPOPERFORM) $(OPTNEW))' rtl $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME3PREFIX)$(TEMPNAME3)' 'OPT=$(strip $(LOCALOPT) $(OPTNEW) $(OPTWPOPERFORM) $(subst pp1.wpo,pp2.wpo,$(OPTWPOCOLLECT)))' $(addsuffix _clean,$(ALLTARGETS)) $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME3PREFIX)$(TEMPNAME3)' 'OPT=$(strip $(LOCALOPT) $(OPTNEW) $(OPTWPOPERFORM) $(subst pp1.wpo,pp2.wpo,$(OPTWPOCOLLECT)))' 'COMPILEREXENAME=$(TEMPWPONAME1PREFIX)$(TEMPWPONAME1)' compiler $(MAKE) 'FPC=$(BASEDIR)/$(TEMPWPONAME1PREFIX)$(TEMPWPONAME1)' 'OPT=$(strip $(RTLOPT) $(OPTNEW) $(subst pp1.wpo,pp2.wpo,$(OPTWPOPERFORM)))' rtlclean $(MAKE) 'FPC=$(BASEDIR)/$(TEMPWPONAME1PREFIX)$(TEMPWPONAME1)' 'OPT=$(strip $(RTLOPT) $(OPTNEW) $(subst pp1.wpo,pp2.wpo,$(OPTWPOPERFORM)))' rtl $(MAKE) 'FPC=$(BASEDIR)/$(TEMPWPONAME1PREFIX)$(TEMPWPONAME1)' 'OPT=$(strip $(LOCALOPT) $(OPTNEW) $(subst pp1.wpo,pp2.wpo,$(OPTWPOPERFORM)))' $(addsuffix _clean,$(ALLTARGETS)) $(MAKE) 'FPC=$(BASEDIR)/$(TEMPWPONAME1PREFIX)$(TEMPWPONAME1)' 'OPT=$(strip $(LOCALOPT) $(OPTNEW) $(subst pp1.wpo,pp2.wpo,$(OPTWPOPERFORM)))' 'COMPILEREXENAME=$(EXENAME)' compiler else wpocycle: endif ifdef DIFF ifdef OLDFPC ifneq ($(OS_TARGET),darwin) DIFFRESULT:=$(shell $(DIFF) $(OLDFPC) $(FPC)) else ifneq ($(CODESIGN),) DIFFRESULT:=$(shell $(COPY) $(OLDFPC) $(OLDFPC).tmp; $(COPY) $(FPC) $(FPC).tmp; strip -no_uuid $(OLDFPC).tmp; strip -no_uuid $(FPC).tmp; $(CODESIGN) --remove-signature $(OLDFPC).tmp; $(CODESIGN) --remove-signature $(FPC).tmp; $(DIFF) $(OLDFPC).tmp $(FPC).tmp; $(RMPROG) $(OLDFPC).tmp $(FPC).tmp) else DIFFRESULT:=$(shell $(COPY) $(OLDFPC) $(OLDFPC).tmp; $(COPY) $(FPC) $(FPC).tmp; strip -no_uuid $(OLDFPC).tmp; strip -no_uuid $(FPC).tmp; $(DIFF) $(OLDFPC).tmp $(FPC).tmp; $(RMPROG) $(OLDFPC).tmp $(FPC).tmp) endif endif else DIFFRESULT=Not equal endif else DIFFRESULT=No diff program endif ifndef DIFFRESULT next : @echo $(OLDFPC) and $(FPC) are equal $(COPY) $(FPC) $(EXENAME) else next : $(MAKE) rtlclean $(MAKE) rtl $(MAKE) cycleclean $(MAKE) compiler $(MAKE) echotime endif $(TEMPNAME1) : $(MAKE) 'OLDFPC=' next CYCLELEVEL=1 'COMPILEREXENAME=$(TEMPNAME1PREFIX)$(TEMPNAME1)' $(TEMPNAME2) : $(TEMPNAME1) $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME1PREFIX)$(TEMPNAME1)' 'OLDFPC=' next CYCLELEVEL=2 'COMPILEREXENAME=$(TEMPNAME2REFIX)$(TEMPNAME2)' $(TEMPNAME3) : $(TEMPNAME2) $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME2PREFIX)$(TEMPNAME2)' 'OLDFPC=$(BASEDIR)/$(TEMPNAME1)' next CYCLELEVEL=3 -$(DEL) $(TEMPNAME3) $(MOVE) $(EXENAME) $(TEMPNAME3) cycle: ifdef NEED_G_COMPILERS $(MAKE) fpcmade.generate_g_compilers endif $(MAKE) tempclean $(MAKE) $(TEMPNAME3) $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAME3PREFIX)$(TEMPNAME3)' 'OLDFPC=$(BASEDIR)/$(TEMPNAME2)' next CYCLELEVEL=4 ifneq ($(OS_TARGET), darwin) $(DIFF) $(TEMPNAME3) $(EXENAME) else $(COPY) $(TEMPNAME3) $(TEMPNAME3).tmp $(COPY) $(EXENAME) $(EXENAME).tmp strip -no_uuid $(TEMPNAME3).tmp strip -no_uuid $(EXENAME).tmp ifneq ($(CODESIGN),) $(CODESIGN) --remove-signature $(TEMPNAME3).tmp $(CODESIGN) --remove-signature $(EXENAME).tmp endif $(DIFF) $(TEMPNAME3).tmp $(EXENAME).tmp rm $(TEMPNAME3).tmp $(EXENAME).tmp endif $(MAKE) $(addsuffix _all,$(TARGET_DIRS)) 'FPC=$(BASEDIR)/$(EXENAMEPREFIX)$(EXENAME)' $(MAKE) wpocycle $(MAKE) echotime else cycle: ifdef NEED_G_COMPILERS $(MAKE) fpcmade.generate_g_compilers endif $(MAKE) OS_TARGET=$(OS_SOURCE) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=1 rtlclean $(MAKE) OS_TARGET=$(OS_SOURCE) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=1 rtl $(MAKE) OS_TARGET=$(OS_SOURCE) EXENAME=$(TEMPNAME) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=1 cycleclean $(MAKE) OS_TARGET=$(OS_SOURCE) EXENAME=$(TEMPNAME) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=1 compiler $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAMEPREFIX)$(TEMPNAME)' OS_TARGET=$(OS_SOURCE) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=2 rtlclean $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAMEPREFIX)$(TEMPNAME)' OS_TARGET=$(OS_SOURCE) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=2 rtl $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAMEPREFIX)$(TEMPNAME)' OS_TARGET=$(OS_SOURCE) EXENAME=$(PPCROSSNAME) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=2 cycleclean $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAMEPREFIX)$(TEMPNAME)' OS_TARGET=$(OS_SOURCE) EXENAME=$(PPCROSSNAME) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=2 compiler ifndef CROSSINSTALL $(MAKE) 'FPC=$(BASEDIR)/$(PPCROSSNAMEPREFIX)$(PPCROSSNAME)' CYCLELEVEL=3 rtlclean $(MAKE) 'FPC=$(BASEDIR)/$(PPCROSSNAMEPREFIX)$(PPCROSSNAME)' CYCLELEVEL=3 rtl ifndef NoNativeBinaries $(MAKE) 'FPC=$(BASEDIR)/$(PPCROSSNAMEPREFIX)$(PPCROSSNAME)' CYCLELEVEL=3 cycleclean $(MAKE) 'FPC=$(BASEDIR)/$(PPCROSSNAMEPREFIX)$(PPCROSSNAME)' CYCLELEVEL=3 compiler endif endif endif else cycle: override FPC= cycle: ifdef NEED_G_COMPILERS $(MAKE) fpcmade.generate_g_compilers endif $(MAKE) OS_TARGET=$(OS_SOURCE) CPU_TARGET=$(CPU_SOURCE) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=1 rtlclean $(MAKE) OS_TARGET=$(OS_SOURCE) CPU_TARGET=$(CPU_SOURCE) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=1 rtl $(MAKE) OS_TARGET=$(OS_SOURCE) CPU_TARGET=$(CPU_SOURCE) EXENAME=$(TEMPNAME) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=1 cycleclean $(MAKE) OS_TARGET=$(OS_SOURCE) CPU_TARGET=$(CPU_SOURCE) EXENAME=$(TEMPNAME) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=1 compiler $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAMEPREFIX)$(TEMPNAME)' OS_TARGET=$(OS_SOURCE) CPU_TARGET=$(CPU_SOURCE) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=2 rtlclean $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAMEPREFIX)$(TEMPNAME)' OS_TARGET=$(OS_SOURCE) CPU_TARGET=$(CPU_SOURCE) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=2 rtl $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAMEPREFIX)$(TEMPNAME)' OS_TARGET=$(OS_SOURCE) CPU_TARGET=$(CPU_SOURCE) PPC_TARGET=$(CPU_TARGET) EXENAME=$(PPCROSSNAME) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=2 cycleclean $(MAKE) 'FPC=$(BASEDIR)/$(TEMPNAMEPREFIX)$(TEMPNAME)' OS_TARGET=$(OS_SOURCE) CPU_TARGET=$(CPU_SOURCE) PPC_TARGET=$(CPU_TARGET) EXENAME=$(PPCROSSNAME) CROSSBINDIR= BINUTILSPREFIX= CROSSCYCLEBOOTSTRAP=1 CYCLELEVEL=2 compiler ifndef CROSSINSTALL $(MAKE) 'FPC=$(BASEDIR)/$(PPCROSSNAMEPREFIX)$(PPCROSSNAME)' 'OPT=$(RTLOPT) $(CROSSOPT)' CYCLELEVEL=3 rtlclean $(MAKE) 'FPC=$(BASEDIR)/$(PPCROSSNAMEPREFIX)$(PPCROSSNAME)' 'OPT=$(RTLOPT) $(CROSSOPT)' CYCLELEVEL=3 rtl ifndef NoNativeBinaries $(MAKE) 'FPC=$(BASEDIR)/$(PPCROSSNAMEPREFIX)$(PPCROSSNAME)' 'OPT=$(strip $(LOCALOPT) $(CROSSOPT))' CYCLELEVEL=3 cycleclean $(MAKE) 'FPC=$(BASEDIR)/$(PPCROSSNAMEPREFIX)$(PPCROSSNAME)' 'OPT=$(strip $(LOCALOPT) $(CROSSOPT))' CYCLELEVEL=3 compiler endif endif endif cycledep: $(MAKE) cycle USEDEPEND=1 extcycle: $(MAKE) cycle RTLOPT="$(RTLOPT) -n -glttt -CRriot -dEXTDEBUG" LOCALOPT="$(LOCALOPT) -n -glttt -CRriot -dEXTDEBUG" ALLOW_WARNINGS=1 extoptcycle: $(MAKE) cycle RTLOPT="$(RTLOPT) -n -glttt -CRriot -dEXTDEBUG -dDEBUG_ALL_OPT" LOCALOPT="$(LOCALOPT) -n -glttt -CRriot -dEXTDEBUG -dDEBUG_ALL_OPT" ALLOW_WARNINGS=1 cvstest: $(MAKE) cycle 'LOCALOPT=-n -Se' 'RTLOPT=-n -Se' ifeq ($(findstring -dFPC_SOFT_FPUX80,$(LOCALOPT)),) ifeq ($(OS_SOURCE),win64) EXCLUDE_80BIT_TARGETS=1 endif ifneq ($(findstring $(CPU_SOURCE),aarch64 arm avr jvm m68k mips mipsel mips64 mips64el powerpc powerpc64 sparc sparc64 riscv32 riscv64 xtensa loongarch64),) EXCLUDE_80BIT_TARGETS=1 endif endif ifndef EXCLUDE_80BIT_TARGETS FULL_TARGETS=$(filter-out $(PPC_TARGET),$(CYCLETARGETS)) else FULL_TARGETS=$(filter-out x86_64,$(filter-out i8086,$(filter-out i386,$(filter-out $(PPC_TARGET),$(CYCLETARGETS))))) endif full: fullcycle fullcycle: $(MAKE) distclean $(MAKE) cycle $(MAKE) ppuclean ifdef DOWPOCYCLE $(MAKE) rtlclean $(MAKE) rtl 'FPC=$(BASEDIR)/$(EXENAMEPREFIX)$(EXENAME)' endif $(MAKE) $(FULL_TARGETS) 'FPC=$(BASEDIR)/$(EXENAMEPREFIX)$(EXENAME)' full_targets: $(MAKE) $(FULL_TARGETS) htmldocs: $(PASDOC) -p -h -o html$(PATHSEP)$(PPC_TARGET) -d fpc -d gdb -d $(PPC_TARGET) -u $(PPC_TARGET) $(PPC_TARGET)$(PATHSEP)*.pas systems$(PATHSEP)*.pas *.pas .PHONY: quickinstall exeinstall install installsymlink fullinstall fullinstallsymlink MSGINSTALLDIR=$(INSTALL_BASEDIR)/msg override PPEXEFILE:=$(wildcard $(EXENAME)) ifdef UNIXHier PPCCPULOCATION=$(INSTALL_BASEDIR) else PPCCPULOCATION=$(INSTALL_BINDIR) endif ifndef NoNativeBinaries quickinstall: quickinstall_withutils else quickinstall: exeinstall endif quickinstall_withutils: $(addsuffix _install,$(TARGET_DIRS)) exeinstall exeinstall: ifneq ($(INSTALLEXEFILE),) ifdef UPXPROG -$(UPXPROG) $(INSTALLEXEFILE) endif $(MKDIR) $(PPCCPULOCATION) $(INSTALLEXE) $(INSTALLEXEFILE) $(PPCCPULOCATION)/$(INSTALLEXEFILE) endif fullinstall: $(MAKE) $(addsuffix _exe_install,$(FULL_TARGETS)) $(MAKE) $(addsuffix _all,$(TARGET_DIRS)) $(MAKE) $(addsuffix _install,$(TARGET_DIRS)) auxfilesinstall: ifndef CROSSINSTALL ifdef UNIXHier $(MKDIR) $(INSTALL_BASEDIR) $(INSTALLEXE) $(COMPILERUTILSDIR)/samplecfg $(INSTALL_BASEDIR)/samplecfg endif $(MKDIR) $(MSGINSTALLDIR) $(INSTALL) $(MSGFILES) $(MSGINSTALLDIR) endif install: ifndef FPC $(MAKE) quickinstall auxfilesinstall FPC=$(BASEDIR)/$(INSTALLEXEFILE) else $(MAKE) quickinstall auxfilesinstall endif installsymlink: exeinstall ifneq ($(PPCCPULOCATION),$(INSTALL_BINDIR)) $(MKDIR) $(INSTALL_BINDIR) ln -sf $(INSTALL_BASEDIR)/$(EXENAME) $(INSTALL_BINDIR)/$(EXENAME) endif fullinstallsymlink: $(MAKE) $(addsuffix _symlink_install,$(FULL_TARGETS)) .PHONY: rtl rtlclean rtlinstall rtl: $(MAKE) -C $(PACKAGEDIR_RTL) 'OPT=$(RTLOPT)' all rtlclean: $(MAKE) -C $(PACKAGEDIR_RTL) clean rtlinstall: $(MAKE) -C $(PACKAGEDIR_RTL) install PPUDIR=$(COMPILER_UNITTARGETDIR) ALLPPUDIRS:=$(wildcard $(CPU_TARGET)/units/*) PPULIST=$(wildcard $(PPUDIR)/*.ppu) PPULOGLIST=$(subst .ppu,.log-ppu,$(PPULIST)) RTLPPUDIR=../rtl/units/$(TARGETSUFFIX) RTLPPULIST=$(wildcard $(RTLPPUDIR)/*.ppu) RTLPPULOGLIST=$(subst .ppu,.log-ppu,$(RTLPPULIST)) .PHONY : ppulogs cleanppulogs rtlppulogs cleanrtlppulogs testppudump ppulogs : $(PPULOGLIST) rtlppulogs : $(RTLPPULOGLIST) vpath %.ppu $(PPUDIR) $(RTLPPUDIR) $(ALLPPUDIR) vpath %.log-ppu $(PPUDIR) $(RTLPPUDIR) $(ALLPPUDIR) %.log-ppu : %.ppu $(PPUDUMP) -VA -M $< > $@ ./utils/ppudump$(EXEEXT): $(MAKE) -C $(COMPILERUTILSDIR) ppudump$(EXEEXT) ppuinfo : echo list of PPU directories is "$(ALLPPUDIRS)" echo PPU list is "$(PPULIST)" echo PPULOG list is "$(PPULOGLIST)" echo RTLPPUDIR is "$(RTLPPUDIR)" echo RTLPPU list is "$(RTLPPULIST)" cleanppulogs : -$(RMPROG) $(PPULOGLIST) cleanrtlppulogs : -$(RMPROG) $(RTLPPULOGLIST) testppudump : $(MAKE) cleanrtlppulogs cleanppulogs $(MAKE) ppulogs rtlppulogs localmake:=$(strip $(wildcard makefile.loc)) ifdef localmake include ./$(localmake) endif