mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-05 16:08:01 +02:00

Pass CROSSASTARGET value to ASTARGET variable when cross-compiling, do the same for CROSSASPROG and ASPROG. This allows to pass custom ASPROG (like vasm assembler) without getting into trouble for 'singlezipinstall' makefile target.
3347 lines
83 KiB
Makefile
3347 lines
83 KiB
Makefile
#
|
|
# Don't edit, this file is generated by FPCMake Version 2.0.0
|
|
#
|
|
default: help
|
|
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 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 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-wasi 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
|
|
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=fpc
|
|
override PACKAGE_VERSION=3.3.1
|
|
REQUIREDVERSION=3.2.2
|
|
REQUIREDVERSION2=3.2.0
|
|
ifndef inOS2
|
|
override FPCDIR:=$(BASEDIR)
|
|
export FPCDIR
|
|
endif
|
|
ifndef BUILDDIR
|
|
BUILDDIR=$(BASEDIR)/build
|
|
endif
|
|
ifndef PPNEW
|
|
ifeq ($(CPU_TARGET),m68k)
|
|
PPSUF=68k
|
|
endif
|
|
ifeq ($(CPU_TARGET),i386)
|
|
PPSUF=386
|
|
endif
|
|
ifeq ($(CPU_TARGET),x86_64)
|
|
PPSUF=x64
|
|
endif
|
|
ifeq ($(CPU_TARGET),sparc)
|
|
PPSUF=sparc
|
|
endif
|
|
ifeq ($(CPU_TARGET),sparc64)
|
|
PPSUF=sparc64
|
|
endif
|
|
ifeq ($(CPU_TARGET),powerpc)
|
|
PPSUF=ppc
|
|
endif
|
|
ifeq ($(CPU_TARGET),powerpc64)
|
|
PPSUF=ppc64
|
|
endif
|
|
ifeq ($(CPU_TARGET),alpha)
|
|
PPSUF=axp
|
|
endif
|
|
ifeq ($(CPU_TARGET),arm)
|
|
PPSUF=arm
|
|
endif
|
|
ifeq ($(CPU_TARGET),armeb)
|
|
PPSUF=arm
|
|
endif
|
|
ifeq ($(CPU_TARGET),jvm)
|
|
PPSUF=jvm
|
|
endif
|
|
ifeq ($(CPU_TARGET),mips)
|
|
PPSUF=mips
|
|
endif
|
|
ifeq ($(CPU_TARGET),mipsel)
|
|
PPSUF=mipsel
|
|
endif
|
|
ifeq ($(CPU_TARGET),i8086)
|
|
PPSUF=8086
|
|
endif
|
|
ifeq ($(CPU_TARGET),avr)
|
|
PPSUF=avr
|
|
endif
|
|
ifeq ($(CPU_TARGET),aarch64)
|
|
PPSUF=a64
|
|
endif
|
|
ifeq ($(CPU_TARGET),riscv32)
|
|
PPSUF=rv32
|
|
endif
|
|
ifeq ($(CPU_TARGET),riscv64)
|
|
PPSUF=rv64
|
|
endif
|
|
ifeq ($(CPU_TARGET),xtensa)
|
|
PPSUF=xtensa
|
|
endif
|
|
ifeq ($(CPU_TARGET),z80)
|
|
PPSUF=z80
|
|
endif
|
|
ifeq ($(CPU_TARGET),wasm32)
|
|
PPSUF=wasm32
|
|
endif
|
|
ifeq ($(CPU_TARGET),loongarch64)
|
|
PPSUF=loongarch64
|
|
endif
|
|
ifdef CROSSCOMPILE
|
|
ifneq ($(CPU_TARGET),jvm)
|
|
PPPRE=ppcross
|
|
else
|
|
PPPRE=ppc
|
|
endif
|
|
else
|
|
PPPRE=ppc
|
|
endif
|
|
PPNEW=$(BASEDIR)/compiler/$(PPPRE)$(PPSUF)$(SRCEXEEXT)
|
|
endif
|
|
ifndef FPCFPMAKENEW
|
|
ifdef CROSSCOMPILE
|
|
FPCFPMAKENEW=$(BASEDIR)/compiler/ppc$(SRCEXEEXT)
|
|
else
|
|
FPCFPMAKENEW=$(PPNEW)
|
|
endif
|
|
endif
|
|
ifneq ($(wildcard install),)
|
|
CVSINSTALL=install
|
|
else
|
|
CVSINSTALL=.
|
|
endif
|
|
ifdef SNAPSHOT
|
|
INSTALLTARGET=install
|
|
else
|
|
ifdef CROSSINSTALL
|
|
INSTALLTARGET=install
|
|
else
|
|
INSTALLTARGET=distinstall
|
|
endif
|
|
endif
|
|
ifdef SNAPSHOT
|
|
ALLTARGET=all
|
|
else
|
|
ifndef ALLTARGET
|
|
SHAREDTARGETS=
|
|
SMARTTARGETS=win32 go32v2 linux freebsd netbsd openbsd netware netwlibc darwin
|
|
ifneq ($(findstring $(OS_TARGET),$(SHAREDTARGETS)),)
|
|
ALLTARGET=shared
|
|
else
|
|
ifneq ($(findstring $(OS_TARGET),$(SMARTTARGETS)),)
|
|
ALLTARGET=smart
|
|
else
|
|
ALLTARGET=all
|
|
endif
|
|
endif
|
|
endif
|
|
endif
|
|
ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
|
|
PKGUNITSPRE=u
|
|
else
|
|
PKGUNITSPRE=units-
|
|
endif
|
|
ifdef CROSSINSTALL
|
|
PKGPRE=$(FULL_TARGET)-
|
|
else
|
|
PKGPRE=
|
|
endif
|
|
override RELEASE=1
|
|
export RELEASE
|
|
ifndef DIST_DESTDIR
|
|
export DIST_DESTDIR:=$(BASEDIR)
|
|
endif
|
|
BASEPACKDIR=$(BASEDIR)/basepack
|
|
ifndef FPCMAKENEW
|
|
ifdef CROSSCOMPILE
|
|
FPCMAKENEW=$(BASEDIR)/utils/fpcm/fpcmake$(SRCEXEEXT)
|
|
else
|
|
FPCMAKENEW=$(BASEDIR)/utils/fpcm/bin/$(SOURCESUFFIX)/fpcmake$(SRCEXEEXT)
|
|
endif
|
|
endif
|
|
ifneq ($(OPT),)
|
|
OPTNEW+=$(OPT)
|
|
endif
|
|
ifneq ($(findstring $(OS_TARGET),linux),)
|
|
ifneq ($(findstring $(CPU_TARGET),i386 arm),)
|
|
override OPTNEW+=-CVglobal-dynamic
|
|
endif
|
|
endif
|
|
CLEANOPTS=FPC=$(PPNEW)
|
|
BUILDOPTS=FPC=$(PPNEW) FPCFPMAKE=$(FPCFPMAKENEW) RELEASE=1 'OPT=$(OPTNEW)' 'FPCMAKEOPT=$(OPT)'
|
|
ifdef CROSSCOMPILE
|
|
ifneq ($(CROSSASPROG),)
|
|
BUILDOPTS+=ASPROG=$(CROSSASPROG)
|
|
endif
|
|
ifneq ($(CROSSASTARGET),)
|
|
BUILDOPTS+=ASTARGET=$(CROSSASTARGET)
|
|
endif
|
|
endif
|
|
INSTALLOPTS=FPC=$(PPNEW) ZIPDESTDIR=$(BASEDIR) FPCMAKE=$(FPCMAKENEW)
|
|
BuildOnlyBaseCPUs=jvm
|
|
ifneq ($(wildcard utils),)
|
|
NOUTILSTARGETS=embedded gba nds msdos win16 macosclassic $(BuildOnlyBaseCPUs) freertos
|
|
ifeq ($(findstring $(OS_TARGET),$(NOUTILSTARGETS)),)
|
|
ifdef BUILDFULLNATIVE
|
|
UTILS=1
|
|
endif
|
|
endif
|
|
endif
|
|
INSTALLERTARGETS=emx go32v2 msdos os2
|
|
ifneq ($(findstring $(OS_TARGET),$(INSTALLERTARGETS)),)
|
|
INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-go32v2)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-win32)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-os2)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-freebsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-beos)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-haiku)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-netbsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-solaris)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-netware)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-openbsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-wdosx)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-darwin)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-emx)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-watcom)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-netwlibc)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-wince)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-symbian)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-nativent)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-iphonesim)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-android)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-aros)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-netbsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-amiga)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-atari)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-palmos)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-macosclassic)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-sinclairql)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-netbsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-amiga)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-macosclassic)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-darwin)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-morphos)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-wii)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-aix)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc-netbsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc-solaris)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-freebsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-haiku)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-netbsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-solaris)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-openbsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-darwin)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-win64)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-iphonesim)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-android)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-aros)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-dragonfly)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-netbsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-palmos)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-wince)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-gba)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-nds)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-symbian)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-android)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-aros)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-freertos)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-ios)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc64-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc64-darwin)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc64-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc64-aix)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),avr-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),armeb-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),armeb-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mips-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mipsel-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mipsel-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mipsel-android)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mips64-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mips64el-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),jvm-java)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),jvm-android)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i8086-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i8086-msdos)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i8086-win16)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-freebsd)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-darwin)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-win64)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-iphonesim)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-android)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-ios)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),wasm32-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),wasm32-wasi)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc64-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv32-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv32-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv32-freertos)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv64-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv64-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),xtensa-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),xtensa-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),xtensa-freertos)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),z80-embedded)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),z80-zxspectrum)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),z80-msxdos)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),z80-amstradcpc)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),loongarch64-linux)
|
|
override TARGET_DIRS+=compiler rtl utils packages installer
|
|
endif
|
|
override INSTALL_FPCPACKAGE=y
|
|
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),wasi)
|
|
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
|
|
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
|
|
ifdef TARGET_RSTS
|
|
override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
|
|
override CLEANRSTFILES+=$(RSTFILES)
|
|
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_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-go32v2)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-win32)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-os2)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-freebsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-beos)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-haiku)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-netbsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-solaris)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-netware)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-openbsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-wdosx)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-darwin)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-emx)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-watcom)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-netwlibc)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-wince)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-symbian)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-nativent)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-iphonesim)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-android)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i386-aros)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-netbsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-amiga)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-atari)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-palmos)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-macosclassic)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),m68k-sinclairql)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-netbsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-amiga)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-macosclassic)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-darwin)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-morphos)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-wii)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc-aix)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc-netbsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc-solaris)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-freebsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-haiku)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-netbsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-solaris)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-openbsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-darwin)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-win64)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-iphonesim)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-android)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-aros)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),x86_64-dragonfly)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-netbsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-palmos)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-wince)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-gba)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-nds)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-symbian)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-android)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-aros)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-freertos)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),arm-ios)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc64-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc64-darwin)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc64-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),powerpc64-aix)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),avr-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),armeb-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),armeb-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mips-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mipsel-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mipsel-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mipsel-android)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mips64-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),mips64el-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),jvm-java)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),jvm-android)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i8086-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i8086-msdos)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),i8086-win16)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-freebsd)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-darwin)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-win64)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-iphonesim)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-android)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),aarch64-ios)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),wasm32-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),wasm32-wasi)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),sparc64-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv32-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv32-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv32-freertos)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv64-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),riscv64-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),xtensa-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),xtensa-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),xtensa-freertos)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),z80-embedded)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),z80-zxspectrum)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),z80-msxdos)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),z80-amstradcpc)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifeq ($(CPU_OS_TARGET),loongarch64-linux)
|
|
TARGET_DIRS_COMPILER=1
|
|
TARGET_DIRS_RTL=1
|
|
TARGET_DIRS_UTILS=1
|
|
TARGET_DIRS_PACKAGES=1
|
|
TARGET_DIRS_INSTALLER=1
|
|
endif
|
|
ifdef TARGET_DIRS_COMPILER
|
|
compiler_all:
|
|
$(MAKE) -C compiler all
|
|
compiler_debug:
|
|
$(MAKE) -C compiler debug
|
|
compiler_smart:
|
|
$(MAKE) -C compiler smart
|
|
compiler_release:
|
|
$(MAKE) -C compiler release
|
|
compiler_units:
|
|
$(MAKE) -C compiler units
|
|
compiler_examples:
|
|
$(MAKE) -C compiler examples
|
|
compiler_shared:
|
|
$(MAKE) -C compiler shared
|
|
compiler_install:
|
|
$(MAKE) -C compiler install
|
|
compiler_sourceinstall:
|
|
$(MAKE) -C compiler sourceinstall
|
|
compiler_exampleinstall:
|
|
$(MAKE) -C compiler exampleinstall
|
|
compiler_distinstall:
|
|
$(MAKE) -C compiler distinstall
|
|
compiler_zipinstall:
|
|
$(MAKE) -C compiler zipinstall
|
|
compiler_zipsourceinstall:
|
|
$(MAKE) -C compiler zipsourceinstall
|
|
compiler_zipexampleinstall:
|
|
$(MAKE) -C compiler zipexampleinstall
|
|
compiler_zipdistinstall:
|
|
$(MAKE) -C compiler zipdistinstall
|
|
compiler_clean:
|
|
$(MAKE) -C compiler clean
|
|
compiler_distclean:
|
|
$(MAKE) -C compiler distclean
|
|
compiler_cleanall:
|
|
$(MAKE) -C compiler cleanall
|
|
compiler_info:
|
|
$(MAKE) -C compiler info
|
|
compiler_makefiles:
|
|
$(MAKE) -C compiler makefiles
|
|
compiler:
|
|
$(MAKE) -C compiler all
|
|
.PHONY: compiler_all compiler_debug compiler_smart compiler_release compiler_units compiler_examples compiler_shared compiler_install compiler_sourceinstall compiler_exampleinstall compiler_distinstall compiler_zipinstall compiler_zipsourceinstall compiler_zipexampleinstall compiler_zipdistinstall compiler_clean compiler_distclean compiler_cleanall compiler_info compiler_makefiles compiler
|
|
endif
|
|
ifdef TARGET_DIRS_RTL
|
|
rtl_all:
|
|
$(MAKE) -C rtl all
|
|
rtl_debug:
|
|
$(MAKE) -C rtl debug
|
|
rtl_smart:
|
|
$(MAKE) -C rtl smart
|
|
rtl_release:
|
|
$(MAKE) -C rtl release
|
|
rtl_units:
|
|
$(MAKE) -C rtl units
|
|
rtl_examples:
|
|
$(MAKE) -C rtl examples
|
|
rtl_shared:
|
|
$(MAKE) -C rtl shared
|
|
rtl_install:
|
|
$(MAKE) -C rtl install
|
|
rtl_sourceinstall:
|
|
$(MAKE) -C rtl sourceinstall
|
|
rtl_exampleinstall:
|
|
$(MAKE) -C rtl exampleinstall
|
|
rtl_distinstall:
|
|
$(MAKE) -C rtl distinstall
|
|
rtl_zipinstall:
|
|
$(MAKE) -C rtl zipinstall
|
|
rtl_zipsourceinstall:
|
|
$(MAKE) -C rtl zipsourceinstall
|
|
rtl_zipexampleinstall:
|
|
$(MAKE) -C rtl zipexampleinstall
|
|
rtl_zipdistinstall:
|
|
$(MAKE) -C rtl zipdistinstall
|
|
rtl_clean:
|
|
$(MAKE) -C rtl clean
|
|
rtl_distclean:
|
|
$(MAKE) -C rtl distclean
|
|
rtl_cleanall:
|
|
$(MAKE) -C rtl cleanall
|
|
rtl_info:
|
|
$(MAKE) -C rtl info
|
|
rtl_makefiles:
|
|
$(MAKE) -C rtl makefiles
|
|
rtl:
|
|
$(MAKE) -C rtl all
|
|
.PHONY: rtl_all rtl_debug rtl_smart rtl_release rtl_units rtl_examples rtl_shared rtl_install rtl_sourceinstall rtl_exampleinstall rtl_distinstall rtl_zipinstall rtl_zipsourceinstall rtl_zipexampleinstall rtl_zipdistinstall rtl_clean rtl_distclean rtl_cleanall rtl_info rtl_makefiles rtl
|
|
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
|
|
ifdef TARGET_DIRS_PACKAGES
|
|
packages_all:
|
|
$(MAKE) -C packages all
|
|
packages_debug:
|
|
$(MAKE) -C packages debug
|
|
packages_smart:
|
|
$(MAKE) -C packages smart
|
|
packages_release:
|
|
$(MAKE) -C packages release
|
|
packages_units:
|
|
$(MAKE) -C packages units
|
|
packages_examples:
|
|
$(MAKE) -C packages examples
|
|
packages_shared:
|
|
$(MAKE) -C packages shared
|
|
packages_install:
|
|
$(MAKE) -C packages install
|
|
packages_sourceinstall:
|
|
$(MAKE) -C packages sourceinstall
|
|
packages_exampleinstall:
|
|
$(MAKE) -C packages exampleinstall
|
|
packages_distinstall:
|
|
$(MAKE) -C packages distinstall
|
|
packages_zipinstall:
|
|
$(MAKE) -C packages zipinstall
|
|
packages_zipsourceinstall:
|
|
$(MAKE) -C packages zipsourceinstall
|
|
packages_zipexampleinstall:
|
|
$(MAKE) -C packages zipexampleinstall
|
|
packages_zipdistinstall:
|
|
$(MAKE) -C packages zipdistinstall
|
|
packages_clean:
|
|
$(MAKE) -C packages clean
|
|
packages_distclean:
|
|
$(MAKE) -C packages distclean
|
|
packages_cleanall:
|
|
$(MAKE) -C packages cleanall
|
|
packages_info:
|
|
$(MAKE) -C packages info
|
|
packages_makefiles:
|
|
$(MAKE) -C packages makefiles
|
|
packages:
|
|
$(MAKE) -C packages all
|
|
.PHONY: packages_all packages_debug packages_smart packages_release packages_units packages_examples packages_shared packages_install packages_sourceinstall packages_exampleinstall packages_distinstall packages_zipinstall packages_zipsourceinstall packages_zipexampleinstall packages_zipdistinstall packages_clean packages_distclean packages_cleanall packages_info packages_makefiles packages
|
|
endif
|
|
ifdef TARGET_DIRS_INSTALLER
|
|
installer_all:
|
|
$(MAKE) -C installer all
|
|
installer_debug:
|
|
$(MAKE) -C installer debug
|
|
installer_smart:
|
|
$(MAKE) -C installer smart
|
|
installer_release:
|
|
$(MAKE) -C installer release
|
|
installer_units:
|
|
$(MAKE) -C installer units
|
|
installer_examples:
|
|
$(MAKE) -C installer examples
|
|
installer_shared:
|
|
$(MAKE) -C installer shared
|
|
installer_install:
|
|
$(MAKE) -C installer install
|
|
installer_sourceinstall:
|
|
$(MAKE) -C installer sourceinstall
|
|
installer_exampleinstall:
|
|
$(MAKE) -C installer exampleinstall
|
|
installer_distinstall:
|
|
$(MAKE) -C installer distinstall
|
|
installer_zipinstall:
|
|
$(MAKE) -C installer zipinstall
|
|
installer_zipsourceinstall:
|
|
$(MAKE) -C installer zipsourceinstall
|
|
installer_zipexampleinstall:
|
|
$(MAKE) -C installer zipexampleinstall
|
|
installer_zipdistinstall:
|
|
$(MAKE) -C installer zipdistinstall
|
|
installer_clean:
|
|
$(MAKE) -C installer clean
|
|
installer_distclean:
|
|
$(MAKE) -C installer distclean
|
|
installer_cleanall:
|
|
$(MAKE) -C installer cleanall
|
|
installer_info:
|
|
$(MAKE) -C installer info
|
|
installer_makefiles:
|
|
$(MAKE) -C installer makefiles
|
|
installer:
|
|
$(MAKE) -C installer all
|
|
.PHONY: installer_all installer_debug installer_smart installer_release installer_units installer_examples installer_shared installer_install installer_sourceinstall installer_exampleinstall installer_distinstall installer_zipinstall installer_zipsourceinstall installer_zipexampleinstall installer_zipdistinstall installer_clean installer_distclean installer_cleanall installer_info installer_makefiles installer
|
|
endif
|
|
debug: $(addsuffix _debug,$(TARGET_DIRS))
|
|
smart: $(addsuffix _smart,$(TARGET_DIRS))
|
|
release: $(addsuffix _release,$(TARGET_DIRS))
|
|
units: $(addsuffix _units,$(TARGET_DIRS))
|
|
examples: $(addsuffix _examples,$(TARGET_DIRS))
|
|
shared: $(addsuffix _shared,$(TARGET_DIRS))
|
|
sourceinstall: fpc_sourceinstall
|
|
exampleinstall: fpc_exampleinstall $(addsuffix _exampleinstall,$(TARGET_DIRS))
|
|
distinstall: fpc_distinstall
|
|
zipsourceinstall: fpc_zipsourceinstall
|
|
zipexampleinstall: fpc_zipexampleinstall $(addsuffix _zipexampleinstall,$(TARGET_DIRS))
|
|
zipdistinstall: fpc_zipdistinstall
|
|
cleanall: $(addsuffix _cleanall,$(TARGET_DIRS))
|
|
info: fpc_info
|
|
makefiles: fpc_makefiles
|
|
.PHONY: debug smart release units examples shared sourceinstall exampleinstall distinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles
|
|
ifneq ($(wildcard fpcmake.loc),)
|
|
include fpcmake.loc
|
|
endif
|
|
unexport FPC_VERSION FPC_COMPILERINFO OS_SOURCE
|
|
override TARGET_DIRS:=$(wildcard $(TARGET_DIRS))
|
|
.PHONY: help
|
|
help:
|
|
@$(ECHO)
|
|
@$(ECHO) Targets
|
|
@$(ECHO) all Build a new compiler and all packages
|
|
@$(ECHO) install Install newly build files
|
|
@$(ECHO) zipinstall Create zip/tar of installed files
|
|
@$(ECHO) singlezipinstall Alias for zipinstall
|
|
@$(ECHO)
|
|
@exit
|
|
.PHONY: compiler_cycle
|
|
compiler_cycle:
|
|
$(MAKE) -C compiler cycle
|
|
BUILDSTAMP=build-stamp.$(FULL_TARGET)
|
|
.PHONY: all clean distclean build buildbase install installbase
|
|
.PHONY: installother zipinstallbase zipinstallotherzipinstall
|
|
.PHONY: singlezipinstall versioncheckstartingcompiler
|
|
versioncheckstartingcompiler:
|
|
ifndef CROSSCOMPILE
|
|
ifneq ($(FPC_VERSION),$(REQUIREDVERSION))
|
|
ifneq ($(FPC_VERSION),$(REQUIREDVERSION2))
|
|
ifndef OVERRIDEVERSIONCHECK
|
|
$(error The only supported starting compiler version is $(REQUIREDVERSION). You are trying to build with $(FPC_VERSION).)
|
|
else
|
|
@$(ECHO) You have overriden the starting compiler versioncheck while using starting compiler version $(FPC_VERSION). This situation is not supported and strange things and errors may happen. Remove OVERRIDEVERSIONCHECK=1 to fix this.
|
|
endif
|
|
endif
|
|
endif
|
|
endif
|
|
ifeq ($(findstring $(CPU_TARGET),$(BuildOnlyBaseCPUs)),)
|
|
all: versioncheckstartingcompiler build
|
|
install: installall
|
|
zipinstall: zipinstallall
|
|
else
|
|
all: versioncheckstartingcompiler buildbase
|
|
install: installbase
|
|
zipinstall: zipinstallbase
|
|
endif
|
|
clean: $(addsuffix _distclean,$(TARGET_DIRS))
|
|
-$(DEL) build-stamp.*
|
|
-$(DEL) base.build-stamp.*
|
|
distclean: clean
|
|
build: $(BUILDSTAMP)
|
|
$(BUILDSTAMP):
|
|
$(MAKE) compiler_cycle RELEASE=1
|
|
ifdef CROSSCOMPILE
|
|
$(MAKE) -C utils/fpcm bootstrap $(BUILDOPTS)
|
|
endif
|
|
$(MAKE) rtl_clean $(CLEANOPTS)
|
|
$(MAKE) packages_clean $(CLEANOPTS)
|
|
ifdef UTILS
|
|
$(MAKE) utils_clean $(CLEANOPTS)
|
|
endif
|
|
ifdef INSTALLER
|
|
$(MAKE) installer_clean $(CLEANOPTS)
|
|
endif
|
|
$(MAKE) rtl_$(ALLTARGET) $(BUILDOPTS)
|
|
$(MAKE) packages_$(ALLTARGET) $(BUILDOPTS)
|
|
ifdef UTILS
|
|
$(MAKE) utils_all $(BUILDOPTS)
|
|
endif
|
|
ifdef INSTALLER
|
|
$(MAKE) installer_all $(BUILDOPTS)
|
|
endif
|
|
$(ECHOREDIR) Build > $(BUILDSTAMP)
|
|
$(ECHOREDIR) Build > base.$(BUILDSTAMP)
|
|
buildbase: base.$(BUILDSTAMP)
|
|
base.$(BUILDSTAMP):
|
|
$(MAKE) compiler_cycle RELEASE=1
|
|
ifdef CROSSCOMPILE
|
|
$(MAKE) -C utils/fpcm bootstrap $(BUILDOPTS)
|
|
endif
|
|
$(MAKE) rtl_clean $(CLEANOPTS)
|
|
$(MAKE) rtl_$(ALLTARGET) $(BUILDOPTS)
|
|
$(ECHOREDIR) Build > base.$(BUILDSTAMP)
|
|
installbase: base.$(BUILDSTAMP)
|
|
$(MKDIR) $(INSTALL_BASEDIR)
|
|
$(MKDIR) $(INSTALL_BINDIR)
|
|
$(MAKE) compiler_$(INSTALLTARGET) $(INSTALLOPTS)
|
|
$(MAKE) rtl_$(INSTALLTARGET) $(INSTALLOPTS)
|
|
installother:
|
|
$(MAKE) packages_$(INSTALLTARGET) $(INSTALLOPTS)
|
|
ifdef UTILS
|
|
$(MAKE) utils_$(INSTALLTARGET) $(INSTALLOPTS)
|
|
endif
|
|
zipinstallbase:
|
|
$(MAKE) fpc_zipinstall ZIPTARGET=installbase ZIPNAME=base $(INSTALLOPTS)
|
|
zipinstallother:
|
|
$(MAKE) packages_zip$(INSTALLTARGET) $(INSTALLOPTS) ZIPPREFIX=$(PKGUNITSPRE)
|
|
ifdef UTILS
|
|
$(MAKE) utils_zip$(INSTALLTARGET) $(INSTALLOPTS)
|
|
endif
|
|
installall: $(BUILDSTAMP)
|
|
$(MAKE) installbase $(INSTALLOPTS)
|
|
ifeq ($(findstring $(CPU_TARGET), $(BuildOnlyBaseCPUs)),)
|
|
$(MAKE) installother $(INSTALLOPTS)
|
|
endif
|
|
singlezipinstall: zipinstallall
|
|
zipinstallall: $(BUILDSTAMP)
|
|
ifeq ($(FULL_SOURCE),$(FULL_TARGET))
|
|
$(MAKE) fpc_zipinstall ZIPTARGET=install FULLZIPNAME=fpc-$(PACKAGE_VERSION).$(TARGETSUFFIX) $(INSTALLOPTS)
|
|
else
|
|
$(MAKE) fpc_zipinstall ZIPTARGET=install FULLZIPNAME=fpc-$(PACKAGE_VERSION).$(TARGETSUFFIX).built.on.$(SOURCESUFFIX) $(INSTALLOPTS)
|
|
endif
|
|
.PHONY: crossall crossinstall crosszipinstall crosssinglezipinstall
|
|
crossall:
|
|
$(MAKE) all CROSSINSTALL=1
|
|
crossinstall:
|
|
$(MAKE) install CROSSINSTALL=1
|
|
crosszipinstall:
|
|
$(MAKE) zipinstall CROSSINSTALL=1
|
|
crosssinglezipinstall:
|
|
$(MAKE) fpc_zipinstall ZIPTARGET=crossinstall FULLZIPNAME=fpc-$(PACKAGE_VERSION).$(SOURCESUFFIX).cross.$(TARGETSUFFIX) $(INSTALLOPTS)
|