1# 2# Don't edit, this file is generated by FPCMake Version 2.0.0 3# 4default: all 5MAKEFILETARGETS=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 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-ios powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin aarch64-android aarch64-ios wasm-wasm sparc64-linux 6BSDs = freebsd netbsd openbsd darwin dragonfly 7UNIXs = linux $(BSDs) solaris qnx haiku aix 8LIMIT83fs = go32v2 os2 emx watcom msdos win16 atari 9OSNeedsComspecToRunBatch = go32v2 watcom 10FORCE: 11.PHONY: FORCE 12override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH))) 13ifneq ($(findstring darwin,$(OSTYPE)),) 14inUnix=1 #darwin 15SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH))) 16else 17ifeq ($(findstring ;,$(PATH)),) 18inUnix=1 19SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH))) 20else 21SEARCHPATH:=$(subst ;, ,$(PATH)) 22endif 23endif 24SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE)))) 25PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH)))) 26ifeq ($(PWD),) 27PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH)))) 28ifeq ($(PWD),) 29$(error You need the GNU utils package to use this Makefile) 30else 31PWD:=$(firstword $(PWD)) 32SRCEXEEXT= 33endif 34else 35PWD:=$(firstword $(PWD)) 36SRCEXEEXT=.exe 37endif 38ifndef inUnix 39ifeq ($(OS),Windows_NT) 40inWinNT=1 41else 42ifdef OS2_SHELL 43inOS2=1 44endif 45endif 46else 47ifneq ($(findstring cygdrive,$(PATH)),) 48inCygWin=1 49endif 50endif 51ifdef inUnix 52SRCBATCHEXT=.sh 53else 54ifdef inOS2 55SRCBATCHEXT=.cmd 56else 57SRCBATCHEXT=.bat 58endif 59endif 60ifdef COMSPEC 61ifneq ($(findstring $(OS_SOURCE),$(OSNeedsComspecToRunBatch)),) 62ifndef RUNBATCH 63RUNBATCH=$(COMSPEC) /C 64endif 65endif 66endif 67ifdef inUnix 68PATHSEP=/ 69else 70PATHSEP:=$(subst /,\,/) 71ifdef inCygWin 72PATHSEP=/ 73endif 74endif 75ifdef PWD 76BASEDIR:=$(subst \,/,$(shell $(PWD))) 77ifdef inCygWin 78ifneq ($(findstring /cygdrive/,$(BASEDIR)),) 79BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR)) 80BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR))) 81BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR)) 82endif 83endif 84else 85BASEDIR=. 86endif 87ifdef inOS2 88ifndef ECHO 89ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH)))) 90ifeq ($(ECHO),) 91ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH)))) 92ifeq ($(ECHO),) 93ECHO=echo 94else 95ECHO:=$(firstword $(ECHO)) 96endif 97else 98ECHO:=$(firstword $(ECHO)) 99endif 100endif 101export ECHO 102endif 103override DEFAULT_FPCDIR=../.. 104ifndef FPC 105ifdef PP 106FPC=$(PP) 107endif 108endif 109ifndef FPC 110FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH)))) 111ifneq ($(FPCPROG),) 112FPCPROG:=$(firstword $(FPCPROG)) 113ifneq ($(CPU_TARGET),) 114FPC:=$(shell $(FPCPROG) -P$(CPU_TARGET) -PB) 115else 116FPC:=$(shell $(FPCPROG) -PB) 117endif 118ifneq ($(findstring Error,$(FPC)),) 119override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH))))) 120else 121ifeq ($(strip $(wildcard $(FPC))),) 122FPC:=$(firstword $(FPCPROG)) 123endif 124endif 125else 126override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH))))) 127endif 128endif 129override FPC:=$(subst $(SRCEXEEXT),,$(FPC)) 130override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT) 131FOUNDFPC:=$(strip $(wildcard $(FPC))) 132ifeq ($(FOUNDFPC),) 133FOUNDFPC=$(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH)))) 134ifeq ($(FOUNDFPC),) 135$(error Compiler $(FPC) not found) 136endif 137endif 138ifndef FPC_COMPILERINFO 139FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO) 140endif 141ifndef FPC_VERSION 142FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO)) 143endif 144export FPC FPC_VERSION FPC_COMPILERINFO 145unexport CHECKDEPEND ALLDEPENDENCIES 146ifndef CPU_TARGET 147ifdef CPU_TARGET_DEFAULT 148CPU_TARGET=$(CPU_TARGET_DEFAULT) 149endif 150endif 151ifndef OS_TARGET 152ifdef OS_TARGET_DEFAULT 153OS_TARGET=$(OS_TARGET_DEFAULT) 154endif 155endif 156ifndef CPU_SOURCE 157CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO)) 158endif 159ifndef CPU_TARGET 160CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO)) 161endif 162ifndef OS_SOURCE 163OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO)) 164endif 165ifndef OS_TARGET 166OS_TARGET:=$(word 5,$(FPC_COMPILERINFO)) 167endif 168FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET) 169FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) 170ifeq ($(CPU_TARGET),armeb) 171ARCH=arm 172override FPCOPT+=-Cb 173else 174ifeq ($(CPU_TARGET),armel) 175ARCH=arm 176override FPCOPT+=-CaEABI 177else 178ARCH=$(CPU_TARGET) 179endif 180endif 181ifeq ($(FULL_TARGET),arm-embedded) 182ifeq ($(SUBARCH),) 183$(error When compiling for arm-embedded, a sub-architecture (e.g. SUBARCH=armv4t or SUBARCH=armv7m) must be defined) 184endif 185override FPCOPT+=-Cp$(SUBARCH) 186endif 187ifeq ($(FULL_TARGET),avr-embedded) 188ifeq ($(SUBARCH),) 189$(error When compiling for avr-embedded, a sub-architecture (e.g. SUBARCH=avr25 or SUBARCH=avr35) must be defined) 190endif 191override FPCOPT+=-Cp$(SUBARCH) 192endif 193ifeq ($(FULL_TARGET),mipsel-embedded) 194ifeq ($(SUBARCH),) 195$(error When compiling for mipsel-embedded, a sub-architecture (e.g. SUBARCH=pic32mx) must be defined) 196endif 197override FPCOPT+=-Cp$(SUBARCH) 198endif 199ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) 200TARGETSUFFIX=$(OS_TARGET) 201SOURCESUFFIX=$(OS_SOURCE) 202else 203ifneq ($(findstring $(OS_TARGET),$(LIMIT83fs)),) 204TARGETSUFFIX=$(OS_TARGET) 205else 206TARGETSUFFIX=$(FULL_TARGET) 207endif 208SOURCESUFFIX=$(FULL_SOURCE) 209endif 210ifneq ($(FULL_TARGET),$(FULL_SOURCE)) 211CROSSCOMPILE=1 212endif 213ifeq ($(findstring makefile,$(MAKECMDGOALS)),) 214ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),) 215$(error The Makefile doesn't support target $(FULL_TARGET), please run fpcmake first) 216endif 217endif 218ifneq ($(findstring $(OS_TARGET),$(BSDs)),) 219BSDhier=1 220endif 221ifeq ($(OS_TARGET),linux) 222linuxHier=1 223endif 224ifndef CROSSCOMPILE 225BUILDFULLNATIVE=1 226export BUILDFULLNATIVE 227endif 228ifdef BUILDFULLNATIVE 229BUILDNATIVE=1 230export BUILDNATIVE 231endif 232export OS_TARGET OS_SOURCE ARCH CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE 233ifdef FPCDIR 234override FPCDIR:=$(subst \,/,$(FPCDIR)) 235ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),) 236override FPCDIR=wrong 237endif 238else 239override FPCDIR=wrong 240endif 241ifdef DEFAULT_FPCDIR 242ifeq ($(FPCDIR),wrong) 243override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR)) 244ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),) 245override FPCDIR=wrong 246endif 247endif 248endif 249ifeq ($(FPCDIR),wrong) 250ifdef inUnix 251override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION) 252ifeq ($(wildcard $(FPCDIR)/units),) 253override FPCDIR=/usr/lib/fpc/$(FPC_VERSION) 254endif 255else 256override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH)))))) 257override FPCDIR:=$(FPCDIR)/.. 258ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),) 259override FPCDIR:=$(FPCDIR)/.. 260ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),) 261override FPCDIR:=$(BASEDIR) 262ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),) 263override FPCDIR=c:/pp 264endif 265endif 266endif 267endif 268endif 269ifndef CROSSBINDIR 270CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX)) 271endif 272ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),) 273ifneq ($(findstring $(OS_SOURCE),darwin ios),) 274DARWIN2DARWIN=1 275endif 276endif 277ifndef BINUTILSPREFIX 278ifndef CROSSBINDIR 279ifdef CROSSCOMPILE 280ifneq ($(OS_TARGET),msdos) 281ifndef DARWIN2DARWIN 282ifneq ($(CPU_TARGET),jvm) 283BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)- 284ifeq ($(OS_TARGET),android) 285ifeq ($(CPU_TARGET),arm) 286BINUTILSPREFIX=arm-linux-androideabi- 287else 288ifeq ($(CPU_TARGET),i386) 289BINUTILSPREFIX=i686-linux-android- 290else 291BINUTILSPREFIX=$(CPU_TARGET)-linux-android- 292endif 293endif 294endif 295endif 296endif 297else 298BINUTILSPREFIX=$(OS_TARGET)- 299endif 300endif 301endif 302endif 303UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX)) 304ifeq ($(UNITSDIR),) 305UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET)) 306endif 307PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages) 308ifndef FPCFPMAKE 309ifdef CROSSCOMPILE 310ifeq ($(strip $(wildcard $(addsuffix /compiler/ppc$(SRCEXEEXT),$(FPCDIR)))),) 311FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH)))) 312ifneq ($(FPCPROG),) 313FPCPROG:=$(firstword $(FPCPROG)) 314FPCFPMAKE:=$(shell $(FPCPROG) -PB) 315ifeq ($(strip $(wildcard $(FPCFPMAKE))),) 316FPCFPMAKE:=$(firstword $(FPCPROG)) 317endif 318else 319override FPCFPMAKE=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH))))) 320endif 321else 322FPCFPMAKE=$(strip $(wildcard $(addsuffix /compiler/ppc$(SRCEXEEXT),$(FPCDIR)))) 323FPMAKE_SKIP_CONFIG=-n 324export FPCFPMAKE 325export FPMAKE_SKIP_CONFIG 326endif 327else 328FPMAKE_SKIP_CONFIG=-n 329FPCFPMAKE=$(FPC) 330endif 331endif 332ifeq ($(FULL_TARGET),i386-linux) 333override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 334endif 335ifeq ($(FULL_TARGET),i386-go32v2) 336override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 337endif 338ifeq ($(FULL_TARGET),i386-win32) 339override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 340endif 341ifeq ($(FULL_TARGET),i386-os2) 342override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 343endif 344ifeq ($(FULL_TARGET),i386-freebsd) 345override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 346endif 347ifeq ($(FULL_TARGET),i386-beos) 348override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 349endif 350ifeq ($(FULL_TARGET),i386-haiku) 351override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 352endif 353ifeq ($(FULL_TARGET),i386-netbsd) 354override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 355endif 356ifeq ($(FULL_TARGET),i386-solaris) 357override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 358endif 359ifeq ($(FULL_TARGET),i386-netware) 360override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 361endif 362ifeq ($(FULL_TARGET),i386-openbsd) 363override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 364endif 365ifeq ($(FULL_TARGET),i386-wdosx) 366override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 367endif 368ifeq ($(FULL_TARGET),i386-darwin) 369override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 370endif 371ifeq ($(FULL_TARGET),i386-emx) 372override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 373endif 374ifeq ($(FULL_TARGET),i386-watcom) 375override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 376endif 377ifeq ($(FULL_TARGET),i386-netwlibc) 378override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 379endif 380ifeq ($(FULL_TARGET),i386-wince) 381override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 382endif 383ifeq ($(FULL_TARGET),i386-embedded) 384override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 385endif 386ifeq ($(FULL_TARGET),i386-symbian) 387override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 388endif 389ifeq ($(FULL_TARGET),i386-nativent) 390override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 391endif 392ifeq ($(FULL_TARGET),i386-iphonesim) 393override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 394endif 395ifeq ($(FULL_TARGET),i386-android) 396override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 397endif 398ifeq ($(FULL_TARGET),i386-aros) 399override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 400endif 401ifeq ($(FULL_TARGET),m68k-linux) 402override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 403endif 404ifeq ($(FULL_TARGET),m68k-netbsd) 405override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 406endif 407ifeq ($(FULL_TARGET),m68k-amiga) 408override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 409endif 410ifeq ($(FULL_TARGET),m68k-atari) 411override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 412endif 413ifeq ($(FULL_TARGET),m68k-palmos) 414override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 415endif 416ifeq ($(FULL_TARGET),m68k-macosclassic) 417override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 418endif 419ifeq ($(FULL_TARGET),m68k-embedded) 420override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 421endif 422ifeq ($(FULL_TARGET),powerpc-linux) 423override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 424endif 425ifeq ($(FULL_TARGET),powerpc-netbsd) 426override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 427endif 428ifeq ($(FULL_TARGET),powerpc-amiga) 429override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 430endif 431ifeq ($(FULL_TARGET),powerpc-macosclassic) 432override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 433endif 434ifeq ($(FULL_TARGET),powerpc-darwin) 435override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 436endif 437ifeq ($(FULL_TARGET),powerpc-morphos) 438override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 439endif 440ifeq ($(FULL_TARGET),powerpc-embedded) 441override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 442endif 443ifeq ($(FULL_TARGET),powerpc-wii) 444override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 445endif 446ifeq ($(FULL_TARGET),powerpc-aix) 447override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 448endif 449ifeq ($(FULL_TARGET),sparc-linux) 450override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 451endif 452ifeq ($(FULL_TARGET),sparc-netbsd) 453override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 454endif 455ifeq ($(FULL_TARGET),sparc-solaris) 456override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 457endif 458ifeq ($(FULL_TARGET),sparc-embedded) 459override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 460endif 461ifeq ($(FULL_TARGET),x86_64-linux) 462override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 463endif 464ifeq ($(FULL_TARGET),x86_64-freebsd) 465override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 466endif 467ifeq ($(FULL_TARGET),x86_64-haiku) 468override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 469endif 470ifeq ($(FULL_TARGET),x86_64-netbsd) 471override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 472endif 473ifeq ($(FULL_TARGET),x86_64-solaris) 474override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 475endif 476ifeq ($(FULL_TARGET),x86_64-openbsd) 477override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 478endif 479ifeq ($(FULL_TARGET),x86_64-darwin) 480override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 481endif 482ifeq ($(FULL_TARGET),x86_64-win64) 483override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 484endif 485ifeq ($(FULL_TARGET),x86_64-embedded) 486override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 487endif 488ifeq ($(FULL_TARGET),x86_64-iphonesim) 489override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 490endif 491ifeq ($(FULL_TARGET),x86_64-android) 492override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 493endif 494ifeq ($(FULL_TARGET),x86_64-aros) 495override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 496endif 497ifeq ($(FULL_TARGET),x86_64-dragonfly) 498override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 499endif 500ifeq ($(FULL_TARGET),arm-linux) 501override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 502endif 503ifeq ($(FULL_TARGET),arm-netbsd) 504override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 505endif 506ifeq ($(FULL_TARGET),arm-palmos) 507override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 508endif 509ifeq ($(FULL_TARGET),arm-wince) 510override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 511endif 512ifeq ($(FULL_TARGET),arm-gba) 513override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 514endif 515ifeq ($(FULL_TARGET),arm-nds) 516override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 517endif 518ifeq ($(FULL_TARGET),arm-embedded) 519override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 520endif 521ifeq ($(FULL_TARGET),arm-symbian) 522override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 523endif 524ifeq ($(FULL_TARGET),arm-android) 525override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 526endif 527ifeq ($(FULL_TARGET),arm-aros) 528override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 529endif 530ifeq ($(FULL_TARGET),arm-ios) 531override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 532endif 533ifeq ($(FULL_TARGET),powerpc64-linux) 534override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 535endif 536ifeq ($(FULL_TARGET),powerpc64-darwin) 537override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 538endif 539ifeq ($(FULL_TARGET),powerpc64-embedded) 540override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 541endif 542ifeq ($(FULL_TARGET),powerpc64-aix) 543override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 544endif 545ifeq ($(FULL_TARGET),avr-embedded) 546override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 547endif 548ifeq ($(FULL_TARGET),armeb-linux) 549override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 550endif 551ifeq ($(FULL_TARGET),armeb-embedded) 552override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 553endif 554ifeq ($(FULL_TARGET),mips-linux) 555override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 556endif 557ifeq ($(FULL_TARGET),mipsel-linux) 558override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 559endif 560ifeq ($(FULL_TARGET),mipsel-embedded) 561override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 562endif 563ifeq ($(FULL_TARGET),mipsel-android) 564override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 565endif 566ifeq ($(FULL_TARGET),jvm-java) 567override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 568endif 569ifeq ($(FULL_TARGET),jvm-android) 570override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 571endif 572ifeq ($(FULL_TARGET),i8086-embedded) 573override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 574endif 575ifeq ($(FULL_TARGET),i8086-msdos) 576override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 577endif 578ifeq ($(FULL_TARGET),i8086-win16) 579override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 580endif 581ifeq ($(FULL_TARGET),aarch64-linux) 582override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 583endif 584ifeq ($(FULL_TARGET),aarch64-darwin) 585override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 586endif 587ifeq ($(FULL_TARGET),aarch64-android) 588override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 589endif 590ifeq ($(FULL_TARGET),aarch64-ios) 591override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 592endif 593ifeq ($(FULL_TARGET),wasm-wasm) 594override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 595endif 596ifeq ($(FULL_TARGET),sparc64-linux) 597override TARGET_PROGRAMS+=fpc ppufiles ppudump ppumove mka64ins mkarmins mkx86ins 598endif 599ifeq ($(FULL_TARGET),i386-linux) 600override CLEAN_UNITS+=ppu crc 601endif 602ifeq ($(FULL_TARGET),i386-go32v2) 603override CLEAN_UNITS+=ppu crc 604endif 605ifeq ($(FULL_TARGET),i386-win32) 606override CLEAN_UNITS+=ppu crc 607endif 608ifeq ($(FULL_TARGET),i386-os2) 609override CLEAN_UNITS+=ppu crc 610endif 611ifeq ($(FULL_TARGET),i386-freebsd) 612override CLEAN_UNITS+=ppu crc 613endif 614ifeq ($(FULL_TARGET),i386-beos) 615override CLEAN_UNITS+=ppu crc 616endif 617ifeq ($(FULL_TARGET),i386-haiku) 618override CLEAN_UNITS+=ppu crc 619endif 620ifeq ($(FULL_TARGET),i386-netbsd) 621override CLEAN_UNITS+=ppu crc 622endif 623ifeq ($(FULL_TARGET),i386-solaris) 624override CLEAN_UNITS+=ppu crc 625endif 626ifeq ($(FULL_TARGET),i386-netware) 627override CLEAN_UNITS+=ppu crc 628endif 629ifeq ($(FULL_TARGET),i386-openbsd) 630override CLEAN_UNITS+=ppu crc 631endif 632ifeq ($(FULL_TARGET),i386-wdosx) 633override CLEAN_UNITS+=ppu crc 634endif 635ifeq ($(FULL_TARGET),i386-darwin) 636override CLEAN_UNITS+=ppu crc 637endif 638ifeq ($(FULL_TARGET),i386-emx) 639override CLEAN_UNITS+=ppu crc 640endif 641ifeq ($(FULL_TARGET),i386-watcom) 642override CLEAN_UNITS+=ppu crc 643endif 644ifeq ($(FULL_TARGET),i386-netwlibc) 645override CLEAN_UNITS+=ppu crc 646endif 647ifeq ($(FULL_TARGET),i386-wince) 648override CLEAN_UNITS+=ppu crc 649endif 650ifeq ($(FULL_TARGET),i386-embedded) 651override CLEAN_UNITS+=ppu crc 652endif 653ifeq ($(FULL_TARGET),i386-symbian) 654override CLEAN_UNITS+=ppu crc 655endif 656ifeq ($(FULL_TARGET),i386-nativent) 657override CLEAN_UNITS+=ppu crc 658endif 659ifeq ($(FULL_TARGET),i386-iphonesim) 660override CLEAN_UNITS+=ppu crc 661endif 662ifeq ($(FULL_TARGET),i386-android) 663override CLEAN_UNITS+=ppu crc 664endif 665ifeq ($(FULL_TARGET),i386-aros) 666override CLEAN_UNITS+=ppu crc 667endif 668ifeq ($(FULL_TARGET),m68k-linux) 669override CLEAN_UNITS+=ppu crc 670endif 671ifeq ($(FULL_TARGET),m68k-netbsd) 672override CLEAN_UNITS+=ppu crc 673endif 674ifeq ($(FULL_TARGET),m68k-amiga) 675override CLEAN_UNITS+=ppu crc 676endif 677ifeq ($(FULL_TARGET),m68k-atari) 678override CLEAN_UNITS+=ppu crc 679endif 680ifeq ($(FULL_TARGET),m68k-palmos) 681override CLEAN_UNITS+=ppu crc 682endif 683ifeq ($(FULL_TARGET),m68k-macosclassic) 684override CLEAN_UNITS+=ppu crc 685endif 686ifeq ($(FULL_TARGET),m68k-embedded) 687override CLEAN_UNITS+=ppu crc 688endif 689ifeq ($(FULL_TARGET),powerpc-linux) 690override CLEAN_UNITS+=ppu crc 691endif 692ifeq ($(FULL_TARGET),powerpc-netbsd) 693override CLEAN_UNITS+=ppu crc 694endif 695ifeq ($(FULL_TARGET),powerpc-amiga) 696override CLEAN_UNITS+=ppu crc 697endif 698ifeq ($(FULL_TARGET),powerpc-macosclassic) 699override CLEAN_UNITS+=ppu crc 700endif 701ifeq ($(FULL_TARGET),powerpc-darwin) 702override CLEAN_UNITS+=ppu crc 703endif 704ifeq ($(FULL_TARGET),powerpc-morphos) 705override CLEAN_UNITS+=ppu crc 706endif 707ifeq ($(FULL_TARGET),powerpc-embedded) 708override CLEAN_UNITS+=ppu crc 709endif 710ifeq ($(FULL_TARGET),powerpc-wii) 711override CLEAN_UNITS+=ppu crc 712endif 713ifeq ($(FULL_TARGET),powerpc-aix) 714override CLEAN_UNITS+=ppu crc 715endif 716ifeq ($(FULL_TARGET),sparc-linux) 717override CLEAN_UNITS+=ppu crc 718endif 719ifeq ($(FULL_TARGET),sparc-netbsd) 720override CLEAN_UNITS+=ppu crc 721endif 722ifeq ($(FULL_TARGET),sparc-solaris) 723override CLEAN_UNITS+=ppu crc 724endif 725ifeq ($(FULL_TARGET),sparc-embedded) 726override CLEAN_UNITS+=ppu crc 727endif 728ifeq ($(FULL_TARGET),x86_64-linux) 729override CLEAN_UNITS+=ppu crc 730endif 731ifeq ($(FULL_TARGET),x86_64-freebsd) 732override CLEAN_UNITS+=ppu crc 733endif 734ifeq ($(FULL_TARGET),x86_64-haiku) 735override CLEAN_UNITS+=ppu crc 736endif 737ifeq ($(FULL_TARGET),x86_64-netbsd) 738override CLEAN_UNITS+=ppu crc 739endif 740ifeq ($(FULL_TARGET),x86_64-solaris) 741override CLEAN_UNITS+=ppu crc 742endif 743ifeq ($(FULL_TARGET),x86_64-openbsd) 744override CLEAN_UNITS+=ppu crc 745endif 746ifeq ($(FULL_TARGET),x86_64-darwin) 747override CLEAN_UNITS+=ppu crc 748endif 749ifeq ($(FULL_TARGET),x86_64-win64) 750override CLEAN_UNITS+=ppu crc 751endif 752ifeq ($(FULL_TARGET),x86_64-embedded) 753override CLEAN_UNITS+=ppu crc 754endif 755ifeq ($(FULL_TARGET),x86_64-iphonesim) 756override CLEAN_UNITS+=ppu crc 757endif 758ifeq ($(FULL_TARGET),x86_64-android) 759override CLEAN_UNITS+=ppu crc 760endif 761ifeq ($(FULL_TARGET),x86_64-aros) 762override CLEAN_UNITS+=ppu crc 763endif 764ifeq ($(FULL_TARGET),x86_64-dragonfly) 765override CLEAN_UNITS+=ppu crc 766endif 767ifeq ($(FULL_TARGET),arm-linux) 768override CLEAN_UNITS+=ppu crc 769endif 770ifeq ($(FULL_TARGET),arm-netbsd) 771override CLEAN_UNITS+=ppu crc 772endif 773ifeq ($(FULL_TARGET),arm-palmos) 774override CLEAN_UNITS+=ppu crc 775endif 776ifeq ($(FULL_TARGET),arm-wince) 777override CLEAN_UNITS+=ppu crc 778endif 779ifeq ($(FULL_TARGET),arm-gba) 780override CLEAN_UNITS+=ppu crc 781endif 782ifeq ($(FULL_TARGET),arm-nds) 783override CLEAN_UNITS+=ppu crc 784endif 785ifeq ($(FULL_TARGET),arm-embedded) 786override CLEAN_UNITS+=ppu crc 787endif 788ifeq ($(FULL_TARGET),arm-symbian) 789override CLEAN_UNITS+=ppu crc 790endif 791ifeq ($(FULL_TARGET),arm-android) 792override CLEAN_UNITS+=ppu crc 793endif 794ifeq ($(FULL_TARGET),arm-aros) 795override CLEAN_UNITS+=ppu crc 796endif 797ifeq ($(FULL_TARGET),arm-ios) 798override CLEAN_UNITS+=ppu crc 799endif 800ifeq ($(FULL_TARGET),powerpc64-linux) 801override CLEAN_UNITS+=ppu crc 802endif 803ifeq ($(FULL_TARGET),powerpc64-darwin) 804override CLEAN_UNITS+=ppu crc 805endif 806ifeq ($(FULL_TARGET),powerpc64-embedded) 807override CLEAN_UNITS+=ppu crc 808endif 809ifeq ($(FULL_TARGET),powerpc64-aix) 810override CLEAN_UNITS+=ppu crc 811endif 812ifeq ($(FULL_TARGET),avr-embedded) 813override CLEAN_UNITS+=ppu crc 814endif 815ifeq ($(FULL_TARGET),armeb-linux) 816override CLEAN_UNITS+=ppu crc 817endif 818ifeq ($(FULL_TARGET),armeb-embedded) 819override CLEAN_UNITS+=ppu crc 820endif 821ifeq ($(FULL_TARGET),mips-linux) 822override CLEAN_UNITS+=ppu crc 823endif 824ifeq ($(FULL_TARGET),mipsel-linux) 825override CLEAN_UNITS+=ppu crc 826endif 827ifeq ($(FULL_TARGET),mipsel-embedded) 828override CLEAN_UNITS+=ppu crc 829endif 830ifeq ($(FULL_TARGET),mipsel-android) 831override CLEAN_UNITS+=ppu crc 832endif 833ifeq ($(FULL_TARGET),jvm-java) 834override CLEAN_UNITS+=ppu crc 835endif 836ifeq ($(FULL_TARGET),jvm-android) 837override CLEAN_UNITS+=ppu crc 838endif 839ifeq ($(FULL_TARGET),i8086-embedded) 840override CLEAN_UNITS+=ppu crc 841endif 842ifeq ($(FULL_TARGET),i8086-msdos) 843override CLEAN_UNITS+=ppu crc 844endif 845ifeq ($(FULL_TARGET),i8086-win16) 846override CLEAN_UNITS+=ppu crc 847endif 848ifeq ($(FULL_TARGET),aarch64-linux) 849override CLEAN_UNITS+=ppu crc 850endif 851ifeq ($(FULL_TARGET),aarch64-darwin) 852override CLEAN_UNITS+=ppu crc 853endif 854ifeq ($(FULL_TARGET),aarch64-android) 855override CLEAN_UNITS+=ppu crc 856endif 857ifeq ($(FULL_TARGET),aarch64-ios) 858override CLEAN_UNITS+=ppu crc 859endif 860ifeq ($(FULL_TARGET),wasm-wasm) 861override CLEAN_UNITS+=ppu crc 862endif 863ifeq ($(FULL_TARGET),sparc64-linux) 864override CLEAN_UNITS+=ppu crc 865endif 866override INSTALL_FPCPACKAGE=y 867ifeq ($(FULL_TARGET),i386-linux) 868override COMPILER_UNITDIR+=.. 869endif 870ifeq ($(FULL_TARGET),i386-go32v2) 871override COMPILER_UNITDIR+=.. 872endif 873ifeq ($(FULL_TARGET),i386-win32) 874override COMPILER_UNITDIR+=.. 875endif 876ifeq ($(FULL_TARGET),i386-os2) 877override COMPILER_UNITDIR+=.. 878endif 879ifeq ($(FULL_TARGET),i386-freebsd) 880override COMPILER_UNITDIR+=.. 881endif 882ifeq ($(FULL_TARGET),i386-beos) 883override COMPILER_UNITDIR+=.. 884endif 885ifeq ($(FULL_TARGET),i386-haiku) 886override COMPILER_UNITDIR+=.. 887endif 888ifeq ($(FULL_TARGET),i386-netbsd) 889override COMPILER_UNITDIR+=.. 890endif 891ifeq ($(FULL_TARGET),i386-solaris) 892override COMPILER_UNITDIR+=.. 893endif 894ifeq ($(FULL_TARGET),i386-netware) 895override COMPILER_UNITDIR+=.. 896endif 897ifeq ($(FULL_TARGET),i386-openbsd) 898override COMPILER_UNITDIR+=.. 899endif 900ifeq ($(FULL_TARGET),i386-wdosx) 901override COMPILER_UNITDIR+=.. 902endif 903ifeq ($(FULL_TARGET),i386-darwin) 904override COMPILER_UNITDIR+=.. 905endif 906ifeq ($(FULL_TARGET),i386-emx) 907override COMPILER_UNITDIR+=.. 908endif 909ifeq ($(FULL_TARGET),i386-watcom) 910override COMPILER_UNITDIR+=.. 911endif 912ifeq ($(FULL_TARGET),i386-netwlibc) 913override COMPILER_UNITDIR+=.. 914endif 915ifeq ($(FULL_TARGET),i386-wince) 916override COMPILER_UNITDIR+=.. 917endif 918ifeq ($(FULL_TARGET),i386-embedded) 919override COMPILER_UNITDIR+=.. 920endif 921ifeq ($(FULL_TARGET),i386-symbian) 922override COMPILER_UNITDIR+=.. 923endif 924ifeq ($(FULL_TARGET),i386-nativent) 925override COMPILER_UNITDIR+=.. 926endif 927ifeq ($(FULL_TARGET),i386-iphonesim) 928override COMPILER_UNITDIR+=.. 929endif 930ifeq ($(FULL_TARGET),i386-android) 931override COMPILER_UNITDIR+=.. 932endif 933ifeq ($(FULL_TARGET),i386-aros) 934override COMPILER_UNITDIR+=.. 935endif 936ifeq ($(FULL_TARGET),m68k-linux) 937override COMPILER_UNITDIR+=.. 938endif 939ifeq ($(FULL_TARGET),m68k-netbsd) 940override COMPILER_UNITDIR+=.. 941endif 942ifeq ($(FULL_TARGET),m68k-amiga) 943override COMPILER_UNITDIR+=.. 944endif 945ifeq ($(FULL_TARGET),m68k-atari) 946override COMPILER_UNITDIR+=.. 947endif 948ifeq ($(FULL_TARGET),m68k-palmos) 949override COMPILER_UNITDIR+=.. 950endif 951ifeq ($(FULL_TARGET),m68k-macosclassic) 952override COMPILER_UNITDIR+=.. 953endif 954ifeq ($(FULL_TARGET),m68k-embedded) 955override COMPILER_UNITDIR+=.. 956endif 957ifeq ($(FULL_TARGET),powerpc-linux) 958override COMPILER_UNITDIR+=.. 959endif 960ifeq ($(FULL_TARGET),powerpc-netbsd) 961override COMPILER_UNITDIR+=.. 962endif 963ifeq ($(FULL_TARGET),powerpc-amiga) 964override COMPILER_UNITDIR+=.. 965endif 966ifeq ($(FULL_TARGET),powerpc-macosclassic) 967override COMPILER_UNITDIR+=.. 968endif 969ifeq ($(FULL_TARGET),powerpc-darwin) 970override COMPILER_UNITDIR+=.. 971endif 972ifeq ($(FULL_TARGET),powerpc-morphos) 973override COMPILER_UNITDIR+=.. 974endif 975ifeq ($(FULL_TARGET),powerpc-embedded) 976override COMPILER_UNITDIR+=.. 977endif 978ifeq ($(FULL_TARGET),powerpc-wii) 979override COMPILER_UNITDIR+=.. 980endif 981ifeq ($(FULL_TARGET),powerpc-aix) 982override COMPILER_UNITDIR+=.. 983endif 984ifeq ($(FULL_TARGET),sparc-linux) 985override COMPILER_UNITDIR+=.. 986endif 987ifeq ($(FULL_TARGET),sparc-netbsd) 988override COMPILER_UNITDIR+=.. 989endif 990ifeq ($(FULL_TARGET),sparc-solaris) 991override COMPILER_UNITDIR+=.. 992endif 993ifeq ($(FULL_TARGET),sparc-embedded) 994override COMPILER_UNITDIR+=.. 995endif 996ifeq ($(FULL_TARGET),x86_64-linux) 997override COMPILER_UNITDIR+=.. 998endif 999ifeq ($(FULL_TARGET),x86_64-freebsd) 1000override COMPILER_UNITDIR+=.. 1001endif 1002ifeq ($(FULL_TARGET),x86_64-haiku) 1003override COMPILER_UNITDIR+=.. 1004endif 1005ifeq ($(FULL_TARGET),x86_64-netbsd) 1006override COMPILER_UNITDIR+=.. 1007endif 1008ifeq ($(FULL_TARGET),x86_64-solaris) 1009override COMPILER_UNITDIR+=.. 1010endif 1011ifeq ($(FULL_TARGET),x86_64-openbsd) 1012override COMPILER_UNITDIR+=.. 1013endif 1014ifeq ($(FULL_TARGET),x86_64-darwin) 1015override COMPILER_UNITDIR+=.. 1016endif 1017ifeq ($(FULL_TARGET),x86_64-win64) 1018override COMPILER_UNITDIR+=.. 1019endif 1020ifeq ($(FULL_TARGET),x86_64-embedded) 1021override COMPILER_UNITDIR+=.. 1022endif 1023ifeq ($(FULL_TARGET),x86_64-iphonesim) 1024override COMPILER_UNITDIR+=.. 1025endif 1026ifeq ($(FULL_TARGET),x86_64-android) 1027override COMPILER_UNITDIR+=.. 1028endif 1029ifeq ($(FULL_TARGET),x86_64-aros) 1030override COMPILER_UNITDIR+=.. 1031endif 1032ifeq ($(FULL_TARGET),x86_64-dragonfly) 1033override COMPILER_UNITDIR+=.. 1034endif 1035ifeq ($(FULL_TARGET),arm-linux) 1036override COMPILER_UNITDIR+=.. 1037endif 1038ifeq ($(FULL_TARGET),arm-netbsd) 1039override COMPILER_UNITDIR+=.. 1040endif 1041ifeq ($(FULL_TARGET),arm-palmos) 1042override COMPILER_UNITDIR+=.. 1043endif 1044ifeq ($(FULL_TARGET),arm-wince) 1045override COMPILER_UNITDIR+=.. 1046endif 1047ifeq ($(FULL_TARGET),arm-gba) 1048override COMPILER_UNITDIR+=.. 1049endif 1050ifeq ($(FULL_TARGET),arm-nds) 1051override COMPILER_UNITDIR+=.. 1052endif 1053ifeq ($(FULL_TARGET),arm-embedded) 1054override COMPILER_UNITDIR+=.. 1055endif 1056ifeq ($(FULL_TARGET),arm-symbian) 1057override COMPILER_UNITDIR+=.. 1058endif 1059ifeq ($(FULL_TARGET),arm-android) 1060override COMPILER_UNITDIR+=.. 1061endif 1062ifeq ($(FULL_TARGET),arm-aros) 1063override COMPILER_UNITDIR+=.. 1064endif 1065ifeq ($(FULL_TARGET),arm-ios) 1066override COMPILER_UNITDIR+=.. 1067endif 1068ifeq ($(FULL_TARGET),powerpc64-linux) 1069override COMPILER_UNITDIR+=.. 1070endif 1071ifeq ($(FULL_TARGET),powerpc64-darwin) 1072override COMPILER_UNITDIR+=.. 1073endif 1074ifeq ($(FULL_TARGET),powerpc64-embedded) 1075override COMPILER_UNITDIR+=.. 1076endif 1077ifeq ($(FULL_TARGET),powerpc64-aix) 1078override COMPILER_UNITDIR+=.. 1079endif 1080ifeq ($(FULL_TARGET),avr-embedded) 1081override COMPILER_UNITDIR+=.. 1082endif 1083ifeq ($(FULL_TARGET),armeb-linux) 1084override COMPILER_UNITDIR+=.. 1085endif 1086ifeq ($(FULL_TARGET),armeb-embedded) 1087override COMPILER_UNITDIR+=.. 1088endif 1089ifeq ($(FULL_TARGET),mips-linux) 1090override COMPILER_UNITDIR+=.. 1091endif 1092ifeq ($(FULL_TARGET),mipsel-linux) 1093override COMPILER_UNITDIR+=.. 1094endif 1095ifeq ($(FULL_TARGET),mipsel-embedded) 1096override COMPILER_UNITDIR+=.. 1097endif 1098ifeq ($(FULL_TARGET),mipsel-android) 1099override COMPILER_UNITDIR+=.. 1100endif 1101ifeq ($(FULL_TARGET),jvm-java) 1102override COMPILER_UNITDIR+=.. 1103endif 1104ifeq ($(FULL_TARGET),jvm-android) 1105override COMPILER_UNITDIR+=.. 1106endif 1107ifeq ($(FULL_TARGET),i8086-embedded) 1108override COMPILER_UNITDIR+=.. 1109endif 1110ifeq ($(FULL_TARGET),i8086-msdos) 1111override COMPILER_UNITDIR+=.. 1112endif 1113ifeq ($(FULL_TARGET),i8086-win16) 1114override COMPILER_UNITDIR+=.. 1115endif 1116ifeq ($(FULL_TARGET),aarch64-linux) 1117override COMPILER_UNITDIR+=.. 1118endif 1119ifeq ($(FULL_TARGET),aarch64-darwin) 1120override COMPILER_UNITDIR+=.. 1121endif 1122ifeq ($(FULL_TARGET),aarch64-android) 1123override COMPILER_UNITDIR+=.. 1124endif 1125ifeq ($(FULL_TARGET),aarch64-ios) 1126override COMPILER_UNITDIR+=.. 1127endif 1128ifeq ($(FULL_TARGET),wasm-wasm) 1129override COMPILER_UNITDIR+=.. 1130endif 1131ifeq ($(FULL_TARGET),sparc64-linux) 1132override COMPILER_UNITDIR+=.. 1133endif 1134ifeq ($(FULL_TARGET),i386-linux) 1135override COMPILER_SOURCEDIR+=.. 1136endif 1137ifeq ($(FULL_TARGET),i386-go32v2) 1138override COMPILER_SOURCEDIR+=.. 1139endif 1140ifeq ($(FULL_TARGET),i386-win32) 1141override COMPILER_SOURCEDIR+=.. 1142endif 1143ifeq ($(FULL_TARGET),i386-os2) 1144override COMPILER_SOURCEDIR+=.. 1145endif 1146ifeq ($(FULL_TARGET),i386-freebsd) 1147override COMPILER_SOURCEDIR+=.. 1148endif 1149ifeq ($(FULL_TARGET),i386-beos) 1150override COMPILER_SOURCEDIR+=.. 1151endif 1152ifeq ($(FULL_TARGET),i386-haiku) 1153override COMPILER_SOURCEDIR+=.. 1154endif 1155ifeq ($(FULL_TARGET),i386-netbsd) 1156override COMPILER_SOURCEDIR+=.. 1157endif 1158ifeq ($(FULL_TARGET),i386-solaris) 1159override COMPILER_SOURCEDIR+=.. 1160endif 1161ifeq ($(FULL_TARGET),i386-netware) 1162override COMPILER_SOURCEDIR+=.. 1163endif 1164ifeq ($(FULL_TARGET),i386-openbsd) 1165override COMPILER_SOURCEDIR+=.. 1166endif 1167ifeq ($(FULL_TARGET),i386-wdosx) 1168override COMPILER_SOURCEDIR+=.. 1169endif 1170ifeq ($(FULL_TARGET),i386-darwin) 1171override COMPILER_SOURCEDIR+=.. 1172endif 1173ifeq ($(FULL_TARGET),i386-emx) 1174override COMPILER_SOURCEDIR+=.. 1175endif 1176ifeq ($(FULL_TARGET),i386-watcom) 1177override COMPILER_SOURCEDIR+=.. 1178endif 1179ifeq ($(FULL_TARGET),i386-netwlibc) 1180override COMPILER_SOURCEDIR+=.. 1181endif 1182ifeq ($(FULL_TARGET),i386-wince) 1183override COMPILER_SOURCEDIR+=.. 1184endif 1185ifeq ($(FULL_TARGET),i386-embedded) 1186override COMPILER_SOURCEDIR+=.. 1187endif 1188ifeq ($(FULL_TARGET),i386-symbian) 1189override COMPILER_SOURCEDIR+=.. 1190endif 1191ifeq ($(FULL_TARGET),i386-nativent) 1192override COMPILER_SOURCEDIR+=.. 1193endif 1194ifeq ($(FULL_TARGET),i386-iphonesim) 1195override COMPILER_SOURCEDIR+=.. 1196endif 1197ifeq ($(FULL_TARGET),i386-android) 1198override COMPILER_SOURCEDIR+=.. 1199endif 1200ifeq ($(FULL_TARGET),i386-aros) 1201override COMPILER_SOURCEDIR+=.. 1202endif 1203ifeq ($(FULL_TARGET),m68k-linux) 1204override COMPILER_SOURCEDIR+=.. 1205endif 1206ifeq ($(FULL_TARGET),m68k-netbsd) 1207override COMPILER_SOURCEDIR+=.. 1208endif 1209ifeq ($(FULL_TARGET),m68k-amiga) 1210override COMPILER_SOURCEDIR+=.. 1211endif 1212ifeq ($(FULL_TARGET),m68k-atari) 1213override COMPILER_SOURCEDIR+=.. 1214endif 1215ifeq ($(FULL_TARGET),m68k-palmos) 1216override COMPILER_SOURCEDIR+=.. 1217endif 1218ifeq ($(FULL_TARGET),m68k-macosclassic) 1219override COMPILER_SOURCEDIR+=.. 1220endif 1221ifeq ($(FULL_TARGET),m68k-embedded) 1222override COMPILER_SOURCEDIR+=.. 1223endif 1224ifeq ($(FULL_TARGET),powerpc-linux) 1225override COMPILER_SOURCEDIR+=.. 1226endif 1227ifeq ($(FULL_TARGET),powerpc-netbsd) 1228override COMPILER_SOURCEDIR+=.. 1229endif 1230ifeq ($(FULL_TARGET),powerpc-amiga) 1231override COMPILER_SOURCEDIR+=.. 1232endif 1233ifeq ($(FULL_TARGET),powerpc-macosclassic) 1234override COMPILER_SOURCEDIR+=.. 1235endif 1236ifeq ($(FULL_TARGET),powerpc-darwin) 1237override COMPILER_SOURCEDIR+=.. 1238endif 1239ifeq ($(FULL_TARGET),powerpc-morphos) 1240override COMPILER_SOURCEDIR+=.. 1241endif 1242ifeq ($(FULL_TARGET),powerpc-embedded) 1243override COMPILER_SOURCEDIR+=.. 1244endif 1245ifeq ($(FULL_TARGET),powerpc-wii) 1246override COMPILER_SOURCEDIR+=.. 1247endif 1248ifeq ($(FULL_TARGET),powerpc-aix) 1249override COMPILER_SOURCEDIR+=.. 1250endif 1251ifeq ($(FULL_TARGET),sparc-linux) 1252override COMPILER_SOURCEDIR+=.. 1253endif 1254ifeq ($(FULL_TARGET),sparc-netbsd) 1255override COMPILER_SOURCEDIR+=.. 1256endif 1257ifeq ($(FULL_TARGET),sparc-solaris) 1258override COMPILER_SOURCEDIR+=.. 1259endif 1260ifeq ($(FULL_TARGET),sparc-embedded) 1261override COMPILER_SOURCEDIR+=.. 1262endif 1263ifeq ($(FULL_TARGET),x86_64-linux) 1264override COMPILER_SOURCEDIR+=.. 1265endif 1266ifeq ($(FULL_TARGET),x86_64-freebsd) 1267override COMPILER_SOURCEDIR+=.. 1268endif 1269ifeq ($(FULL_TARGET),x86_64-haiku) 1270override COMPILER_SOURCEDIR+=.. 1271endif 1272ifeq ($(FULL_TARGET),x86_64-netbsd) 1273override COMPILER_SOURCEDIR+=.. 1274endif 1275ifeq ($(FULL_TARGET),x86_64-solaris) 1276override COMPILER_SOURCEDIR+=.. 1277endif 1278ifeq ($(FULL_TARGET),x86_64-openbsd) 1279override COMPILER_SOURCEDIR+=.. 1280endif 1281ifeq ($(FULL_TARGET),x86_64-darwin) 1282override COMPILER_SOURCEDIR+=.. 1283endif 1284ifeq ($(FULL_TARGET),x86_64-win64) 1285override COMPILER_SOURCEDIR+=.. 1286endif 1287ifeq ($(FULL_TARGET),x86_64-embedded) 1288override COMPILER_SOURCEDIR+=.. 1289endif 1290ifeq ($(FULL_TARGET),x86_64-iphonesim) 1291override COMPILER_SOURCEDIR+=.. 1292endif 1293ifeq ($(FULL_TARGET),x86_64-android) 1294override COMPILER_SOURCEDIR+=.. 1295endif 1296ifeq ($(FULL_TARGET),x86_64-aros) 1297override COMPILER_SOURCEDIR+=.. 1298endif 1299ifeq ($(FULL_TARGET),x86_64-dragonfly) 1300override COMPILER_SOURCEDIR+=.. 1301endif 1302ifeq ($(FULL_TARGET),arm-linux) 1303override COMPILER_SOURCEDIR+=.. 1304endif 1305ifeq ($(FULL_TARGET),arm-netbsd) 1306override COMPILER_SOURCEDIR+=.. 1307endif 1308ifeq ($(FULL_TARGET),arm-palmos) 1309override COMPILER_SOURCEDIR+=.. 1310endif 1311ifeq ($(FULL_TARGET),arm-wince) 1312override COMPILER_SOURCEDIR+=.. 1313endif 1314ifeq ($(FULL_TARGET),arm-gba) 1315override COMPILER_SOURCEDIR+=.. 1316endif 1317ifeq ($(FULL_TARGET),arm-nds) 1318override COMPILER_SOURCEDIR+=.. 1319endif 1320ifeq ($(FULL_TARGET),arm-embedded) 1321override COMPILER_SOURCEDIR+=.. 1322endif 1323ifeq ($(FULL_TARGET),arm-symbian) 1324override COMPILER_SOURCEDIR+=.. 1325endif 1326ifeq ($(FULL_TARGET),arm-android) 1327override COMPILER_SOURCEDIR+=.. 1328endif 1329ifeq ($(FULL_TARGET),arm-aros) 1330override COMPILER_SOURCEDIR+=.. 1331endif 1332ifeq ($(FULL_TARGET),arm-ios) 1333override COMPILER_SOURCEDIR+=.. 1334endif 1335ifeq ($(FULL_TARGET),powerpc64-linux) 1336override COMPILER_SOURCEDIR+=.. 1337endif 1338ifeq ($(FULL_TARGET),powerpc64-darwin) 1339override COMPILER_SOURCEDIR+=.. 1340endif 1341ifeq ($(FULL_TARGET),powerpc64-embedded) 1342override COMPILER_SOURCEDIR+=.. 1343endif 1344ifeq ($(FULL_TARGET),powerpc64-aix) 1345override COMPILER_SOURCEDIR+=.. 1346endif 1347ifeq ($(FULL_TARGET),avr-embedded) 1348override COMPILER_SOURCEDIR+=.. 1349endif 1350ifeq ($(FULL_TARGET),armeb-linux) 1351override COMPILER_SOURCEDIR+=.. 1352endif 1353ifeq ($(FULL_TARGET),armeb-embedded) 1354override COMPILER_SOURCEDIR+=.. 1355endif 1356ifeq ($(FULL_TARGET),mips-linux) 1357override COMPILER_SOURCEDIR+=.. 1358endif 1359ifeq ($(FULL_TARGET),mipsel-linux) 1360override COMPILER_SOURCEDIR+=.. 1361endif 1362ifeq ($(FULL_TARGET),mipsel-embedded) 1363override COMPILER_SOURCEDIR+=.. 1364endif 1365ifeq ($(FULL_TARGET),mipsel-android) 1366override COMPILER_SOURCEDIR+=.. 1367endif 1368ifeq ($(FULL_TARGET),jvm-java) 1369override COMPILER_SOURCEDIR+=.. 1370endif 1371ifeq ($(FULL_TARGET),jvm-android) 1372override COMPILER_SOURCEDIR+=.. 1373endif 1374ifeq ($(FULL_TARGET),i8086-embedded) 1375override COMPILER_SOURCEDIR+=.. 1376endif 1377ifeq ($(FULL_TARGET),i8086-msdos) 1378override COMPILER_SOURCEDIR+=.. 1379endif 1380ifeq ($(FULL_TARGET),i8086-win16) 1381override COMPILER_SOURCEDIR+=.. 1382endif 1383ifeq ($(FULL_TARGET),aarch64-linux) 1384override COMPILER_SOURCEDIR+=.. 1385endif 1386ifeq ($(FULL_TARGET),aarch64-darwin) 1387override COMPILER_SOURCEDIR+=.. 1388endif 1389ifeq ($(FULL_TARGET),aarch64-android) 1390override COMPILER_SOURCEDIR+=.. 1391endif 1392ifeq ($(FULL_TARGET),aarch64-ios) 1393override COMPILER_SOURCEDIR+=.. 1394endif 1395ifeq ($(FULL_TARGET),wasm-wasm) 1396override COMPILER_SOURCEDIR+=.. 1397endif 1398ifeq ($(FULL_TARGET),sparc64-linux) 1399override COMPILER_SOURCEDIR+=.. 1400endif 1401override SHARED_BUILD=n 1402override SHARED_BUILD=n 1403ifdef REQUIRE_UNITSDIR 1404override UNITSDIR+=$(REQUIRE_UNITSDIR) 1405endif 1406ifdef REQUIRE_PACKAGESDIR 1407override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR) 1408endif 1409ifdef ZIPINSTALL 1410ifneq ($(findstring $(OS_TARGET),$(UNIXs)),) 1411UNIXHier=1 1412endif 1413else 1414ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),) 1415UNIXHier=1 1416endif 1417endif 1418ifndef INSTALL_PREFIX 1419ifdef PREFIX 1420INSTALL_PREFIX=$(PREFIX) 1421endif 1422endif 1423ifndef INSTALL_PREFIX 1424ifdef UNIXHier 1425INSTALL_PREFIX=/usr/local 1426else 1427ifdef INSTALL_FPCPACKAGE 1428INSTALL_BASEDIR:=/pp 1429else 1430INSTALL_BASEDIR:=/$(PACKAGE_NAME) 1431endif 1432endif 1433endif 1434export INSTALL_PREFIX 1435ifdef INSTALL_FPCSUBDIR 1436export INSTALL_FPCSUBDIR 1437endif 1438ifndef DIST_DESTDIR 1439DIST_DESTDIR:=$(BASEDIR) 1440endif 1441export DIST_DESTDIR 1442ifndef COMPILER_UNITTARGETDIR 1443ifdef PACKAGEDIR_MAIN 1444COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX) 1445else 1446COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX) 1447endif 1448endif 1449ifndef COMPILER_TARGETDIR 1450COMPILER_TARGETDIR=. 1451endif 1452ifndef INSTALL_BASEDIR 1453ifdef UNIXHier 1454ifdef INSTALL_FPCPACKAGE 1455INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION) 1456else 1457INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME) 1458endif 1459else 1460INSTALL_BASEDIR:=$(INSTALL_PREFIX) 1461endif 1462endif 1463ifndef INSTALL_BINDIR 1464ifdef UNIXHier 1465INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin 1466else 1467INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin 1468ifdef INSTALL_FPCPACKAGE 1469ifdef CROSSCOMPILE 1470ifdef CROSSINSTALL 1471INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX) 1472else 1473INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX) 1474endif 1475else 1476INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX) 1477endif 1478endif 1479endif 1480endif 1481ifndef INSTALL_UNITDIR 1482INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX) 1483ifdef INSTALL_FPCPACKAGE 1484ifdef PACKAGE_NAME 1485INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME) 1486endif 1487endif 1488endif 1489ifndef INSTALL_LIBDIR 1490ifdef UNIXHier 1491INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib 1492else 1493INSTALL_LIBDIR:=$(INSTALL_UNITDIR) 1494endif 1495endif 1496ifndef INSTALL_SOURCEDIR 1497ifdef UNIXHier 1498ifdef BSDhier 1499SRCPREFIXDIR=share/src 1500else 1501ifdef linuxHier 1502SRCPREFIXDIR=share/src 1503else 1504SRCPREFIXDIR=src 1505endif 1506endif 1507ifdef INSTALL_FPCPACKAGE 1508ifdef INSTALL_FPCSUBDIR 1509INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME) 1510else 1511INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME) 1512endif 1513else 1514INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 1515endif 1516else 1517ifdef INSTALL_FPCPACKAGE 1518ifdef INSTALL_FPCSUBDIR 1519INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME) 1520else 1521INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME) 1522endif 1523else 1524INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source 1525endif 1526endif 1527endif 1528ifndef INSTALL_DOCDIR 1529ifdef UNIXHier 1530ifdef BSDhier 1531DOCPREFIXDIR=share/doc 1532else 1533ifdef linuxHier 1534DOCPREFIXDIR=share/doc 1535else 1536DOCPREFIXDIR=doc 1537endif 1538endif 1539ifdef INSTALL_FPCPACKAGE 1540INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME) 1541else 1542INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 1543endif 1544else 1545ifdef INSTALL_FPCPACKAGE 1546INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME) 1547else 1548INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc 1549endif 1550endif 1551endif 1552ifndef INSTALL_EXAMPLEDIR 1553ifdef UNIXHier 1554ifdef INSTALL_FPCPACKAGE 1555ifdef BSDhier 1556INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME) 1557else 1558ifdef linuxHier 1559INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples 1560else 1561INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME) 1562endif 1563endif 1564else 1565ifdef BSDhier 1566INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 1567else 1568ifdef linuxHier 1569INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 1570else 1571INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 1572endif 1573endif 1574endif 1575else 1576ifdef INSTALL_FPCPACKAGE 1577INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME) 1578else 1579INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples 1580endif 1581endif 1582endif 1583ifndef INSTALL_DATADIR 1584INSTALL_DATADIR=$(INSTALL_BASEDIR) 1585endif 1586ifndef INSTALL_SHAREDDIR 1587INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib 1588endif 1589ifdef CROSSCOMPILE 1590ifndef CROSSBINDIR 1591CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX)) 1592ifeq ($(CROSSBINDIR),) 1593CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE)) 1594endif 1595endif 1596else 1597CROSSBINDIR= 1598endif 1599BATCHEXT=.bat 1600LOADEREXT=.as 1601EXEEXT=.exe 1602PPLEXT=.ppl 1603PPUEXT=.ppu 1604OEXT=.o 1605ASMEXT=.s 1606SMARTEXT=.sl 1607STATICLIBEXT=.a 1608SHAREDLIBEXT=.so 1609SHAREDLIBPREFIX=libfp 1610STATICLIBPREFIX=libp 1611IMPORTLIBPREFIX=libimp 1612RSTEXT=.rst 1613EXEDBGEXT=.dbg 1614ifeq ($(OS_TARGET),go32v1) 1615STATICLIBPREFIX= 1616SHORTSUFFIX=v1 1617endif 1618ifeq ($(OS_TARGET),go32v2) 1619STATICLIBPREFIX= 1620SHORTSUFFIX=dos 1621IMPORTLIBPREFIX= 1622endif 1623ifeq ($(OS_TARGET),watcom) 1624STATICLIBPREFIX= 1625OEXT=.obj 1626ASMEXT=.asm 1627SHAREDLIBEXT=.dll 1628SHORTSUFFIX=wat 1629IMPORTLIBPREFIX= 1630endif 1631ifneq ($(CPU_TARGET),jvm) 1632ifeq ($(OS_TARGET),android) 1633BATCHEXT=.sh 1634EXEEXT= 1635HASSHAREDLIB=1 1636SHORTSUFFIX=lnx 1637endif 1638endif 1639ifeq ($(OS_TARGET),linux) 1640BATCHEXT=.sh 1641EXEEXT= 1642HASSHAREDLIB=1 1643SHORTSUFFIX=lnx 1644endif 1645ifeq ($(OS_TARGET),dragonfly) 1646BATCHEXT=.sh 1647EXEEXT= 1648HASSHAREDLIB=1 1649SHORTSUFFIX=df 1650endif 1651ifeq ($(OS_TARGET),freebsd) 1652BATCHEXT=.sh 1653EXEEXT= 1654HASSHAREDLIB=1 1655SHORTSUFFIX=fbs 1656endif 1657ifeq ($(OS_TARGET),netbsd) 1658BATCHEXT=.sh 1659EXEEXT= 1660HASSHAREDLIB=1 1661SHORTSUFFIX=nbs 1662endif 1663ifeq ($(OS_TARGET),openbsd) 1664BATCHEXT=.sh 1665EXEEXT= 1666HASSHAREDLIB=1 1667SHORTSUFFIX=obs 1668endif 1669ifeq ($(OS_TARGET),win32) 1670SHAREDLIBEXT=.dll 1671SHORTSUFFIX=w32 1672endif 1673ifeq ($(OS_TARGET),os2) 1674BATCHEXT=.cmd 1675AOUTEXT=.out 1676STATICLIBPREFIX= 1677SHAREDLIBEXT=.dll 1678SHORTSUFFIX=os2 1679ECHO=echo 1680IMPORTLIBPREFIX= 1681endif 1682ifeq ($(OS_TARGET),emx) 1683BATCHEXT=.cmd 1684AOUTEXT=.out 1685STATICLIBPREFIX= 1686SHAREDLIBEXT=.dll 1687SHORTSUFFIX=emx 1688ECHO=echo 1689IMPORTLIBPREFIX= 1690endif 1691ifeq ($(OS_TARGET),amiga) 1692EXEEXT= 1693SHAREDLIBEXT=.library 1694SHORTSUFFIX=amg 1695endif 1696ifeq ($(OS_TARGET),aros) 1697EXEEXT= 1698SHAREDLIBEXT=.library 1699SHORTSUFFIX=aros 1700endif 1701ifeq ($(OS_TARGET),morphos) 1702EXEEXT= 1703SHAREDLIBEXT=.library 1704SHORTSUFFIX=mos 1705endif 1706ifeq ($(OS_TARGET),atari) 1707EXEEXT=.ttp 1708SHORTSUFFIX=ata 1709endif 1710ifeq ($(OS_TARGET),beos) 1711BATCHEXT=.sh 1712EXEEXT= 1713SHORTSUFFIX=be 1714endif 1715ifeq ($(OS_TARGET),haiku) 1716BATCHEXT=.sh 1717EXEEXT= 1718SHORTSUFFIX=hai 1719endif 1720ifeq ($(OS_TARGET),solaris) 1721BATCHEXT=.sh 1722EXEEXT= 1723SHORTSUFFIX=sun 1724endif 1725ifeq ($(OS_TARGET),qnx) 1726BATCHEXT=.sh 1727EXEEXT= 1728SHORTSUFFIX=qnx 1729endif 1730ifeq ($(OS_TARGET),netware) 1731EXEEXT=.nlm 1732STATICLIBPREFIX= 1733SHORTSUFFIX=nw 1734IMPORTLIBPREFIX=imp 1735endif 1736ifeq ($(OS_TARGET),netwlibc) 1737EXEEXT=.nlm 1738STATICLIBPREFIX= 1739SHORTSUFFIX=nwl 1740IMPORTLIBPREFIX=imp 1741endif 1742ifeq ($(OS_TARGET),macosclassic) 1743BATCHEXT= 1744EXEEXT= 1745DEBUGSYMEXT=.xcoff 1746SHORTSUFFIX=mac 1747IMPORTLIBPREFIX=imp 1748endif 1749ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),) 1750BATCHEXT=.sh 1751EXEEXT= 1752HASSHAREDLIB=1 1753SHORTSUFFIX=dwn 1754EXEDBGEXT=.dSYM 1755endif 1756ifeq ($(OS_TARGET),gba) 1757EXEEXT=.gba 1758SHAREDLIBEXT=.so 1759SHORTSUFFIX=gba 1760endif 1761ifeq ($(OS_TARGET),symbian) 1762SHAREDLIBEXT=.dll 1763SHORTSUFFIX=symbian 1764endif 1765ifeq ($(OS_TARGET),NativeNT) 1766SHAREDLIBEXT=.dll 1767SHORTSUFFIX=nativent 1768endif 1769ifeq ($(OS_TARGET),wii) 1770EXEEXT=.dol 1771SHAREDLIBEXT=.so 1772SHORTSUFFIX=wii 1773endif 1774ifeq ($(OS_TARGET),aix) 1775BATCHEXT=.sh 1776EXEEXT= 1777SHAREDLIBEXT=.a 1778SHORTSUFFIX=aix 1779endif 1780ifeq ($(OS_TARGET),java) 1781OEXT=.class 1782ASMEXT=.j 1783SHAREDLIBEXT=.jar 1784SHORTSUFFIX=java 1785endif 1786ifeq ($(CPU_TARGET),jvm) 1787ifeq ($(OS_TARGET),android) 1788OEXT=.class 1789ASMEXT=.j 1790SHAREDLIBEXT=.jar 1791SHORTSUFFIX=android 1792endif 1793endif 1794ifeq ($(OS_TARGET),msdos) 1795STATICLIBPREFIX= 1796STATICLIBEXT=.a 1797SHORTSUFFIX=d16 1798endif 1799ifeq ($(OS_TARGET),embedded) 1800ifeq ($(CPU_TARGET),i8086) 1801STATICLIBPREFIX= 1802STATICLIBEXT=.a 1803else 1804EXEEXT=.bin 1805endif 1806SHORTSUFFIX=emb 1807endif 1808ifeq ($(OS_TARGET),win16) 1809STATICLIBPREFIX= 1810STATICLIBEXT=.a 1811SHAREDLIBEXT=.dll 1812SHORTSUFFIX=w16 1813endif 1814ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) 1815FPCMADE=fpcmade.$(SHORTSUFFIX) 1816ZIPSUFFIX=$(SHORTSUFFIX) 1817ZIPCROSSPREFIX= 1818ZIPSOURCESUFFIX=src 1819ZIPEXAMPLESUFFIX=exm 1820else 1821FPCMADE=fpcmade.$(TARGETSUFFIX) 1822ZIPSOURCESUFFIX=.source 1823ZIPEXAMPLESUFFIX=.examples 1824ifdef CROSSCOMPILE 1825ZIPSUFFIX=.$(SOURCESUFFIX) 1826ZIPCROSSPREFIX=$(TARGETSUFFIX)- 1827else 1828ZIPSUFFIX=.$(TARGETSUFFIX) 1829ZIPCROSSPREFIX= 1830endif 1831endif 1832ifndef ECHO 1833ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH)))) 1834ifeq ($(ECHO),) 1835ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH)))) 1836ifeq ($(ECHO),) 1837ECHO= __missing_command_ECHO 1838else 1839ECHO:=$(firstword $(ECHO)) 1840endif 1841else 1842ECHO:=$(firstword $(ECHO)) 1843endif 1844endif 1845export ECHO 1846ifndef DATE 1847DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH)))) 1848ifeq ($(DATE),) 1849DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH)))) 1850ifeq ($(DATE),) 1851DATE= __missing_command_DATE 1852else 1853DATE:=$(firstword $(DATE)) 1854endif 1855else 1856DATE:=$(firstword $(DATE)) 1857endif 1858endif 1859export DATE 1860ifndef GINSTALL 1861GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH)))) 1862ifeq ($(GINSTALL),) 1863GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH)))) 1864ifeq ($(GINSTALL),) 1865GINSTALL= __missing_command_GINSTALL 1866else 1867GINSTALL:=$(firstword $(GINSTALL)) 1868endif 1869else 1870GINSTALL:=$(firstword $(GINSTALL)) 1871endif 1872endif 1873export GINSTALL 1874ifndef CPPROG 1875CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH)))) 1876ifeq ($(CPPROG),) 1877CPPROG= __missing_command_CPPROG 1878else 1879CPPROG:=$(firstword $(CPPROG)) 1880endif 1881endif 1882export CPPROG 1883ifndef RMPROG 1884RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH)))) 1885ifeq ($(RMPROG),) 1886RMPROG= __missing_command_RMPROG 1887else 1888RMPROG:=$(firstword $(RMPROG)) 1889endif 1890endif 1891export RMPROG 1892ifndef MVPROG 1893MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH)))) 1894ifeq ($(MVPROG),) 1895MVPROG= __missing_command_MVPROG 1896else 1897MVPROG:=$(firstword $(MVPROG)) 1898endif 1899endif 1900export MVPROG 1901ifndef MKDIRPROG 1902MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH)))) 1903ifeq ($(MKDIRPROG),) 1904MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH)))) 1905ifeq ($(MKDIRPROG),) 1906MKDIRPROG= __missing_command_MKDIRPROG 1907else 1908MKDIRPROG:=$(firstword $(MKDIRPROG)) 1909endif 1910else 1911MKDIRPROG:=$(firstword $(MKDIRPROG)) 1912endif 1913endif 1914export MKDIRPROG 1915ifndef ECHOREDIR 1916ifndef inUnix 1917ECHOREDIR=echo 1918else 1919ECHOREDIR=$(ECHO) 1920endif 1921endif 1922ifndef COPY 1923COPY:=$(CPPROG) -fp 1924endif 1925ifndef COPYTREE 1926COPYTREE:=$(CPPROG) -Rfp 1927endif 1928ifndef MKDIRTREE 1929MKDIRTREE:=$(MKDIRPROG) -p 1930endif 1931ifndef MOVE 1932MOVE:=$(MVPROG) -f 1933endif 1934ifndef DEL 1935DEL:=$(RMPROG) -f 1936endif 1937ifndef DELTREE 1938DELTREE:=$(RMPROG) -rf 1939endif 1940ifndef INSTALL 1941ifdef inUnix 1942INSTALL:=$(GINSTALL) -c -m 644 1943else 1944INSTALL:=$(COPY) 1945endif 1946endif 1947ifndef INSTALLEXE 1948ifdef inUnix 1949INSTALLEXE:=$(GINSTALL) -c -m 755 1950else 1951INSTALLEXE:=$(COPY) 1952endif 1953endif 1954ifndef MKDIR 1955MKDIR:=$(GINSTALL) -m 755 -d 1956endif 1957export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR 1958ifndef PPUMOVE 1959PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH)))) 1960ifeq ($(PPUMOVE),) 1961PPUMOVE= __missing_command_PPUMOVE 1962else 1963PPUMOVE:=$(firstword $(PPUMOVE)) 1964endif 1965endif 1966export PPUMOVE 1967ifndef FPCMAKE 1968FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH)))) 1969ifeq ($(FPCMAKE),) 1970FPCMAKE= __missing_command_FPCMAKE 1971else 1972FPCMAKE:=$(firstword $(FPCMAKE)) 1973endif 1974endif 1975export FPCMAKE 1976ifndef ZIPPROG 1977ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH)))) 1978ifeq ($(ZIPPROG),) 1979ZIPPROG= __missing_command_ZIPPROG 1980else 1981ZIPPROG:=$(firstword $(ZIPPROG)) 1982endif 1983endif 1984export ZIPPROG 1985ifndef TARPROG 1986TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH)))) 1987ifeq ($(TARPROG),) 1988TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH)))) 1989ifeq ($(TARPROG),) 1990TARPROG= __missing_command_TARPROG 1991else 1992TARPROG:=$(firstword $(TARPROG)) 1993endif 1994else 1995TARPROG:=$(firstword $(TARPROG)) 1996endif 1997endif 1998export TARPROG 1999ASNAME=$(BINUTILSPREFIX)as 2000LDNAME=$(BINUTILSPREFIX)ld 2001ARNAME=$(BINUTILSPREFIX)ar 2002RCNAME=$(BINUTILSPREFIX)rc 2003NASMNAME=$(BINUTILSPREFIX)nasm 2004ifndef ASPROG 2005ifdef CROSSBINDIR 2006ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT) 2007else 2008ASPROG=$(ASNAME) 2009endif 2010endif 2011ifndef LDPROG 2012ifdef CROSSBINDIR 2013LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT) 2014else 2015LDPROG=$(LDNAME) 2016endif 2017endif 2018ifndef RCPROG 2019ifdef CROSSBINDIR 2020RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT) 2021else 2022RCPROG=$(RCNAME) 2023endif 2024endif 2025ifndef ARPROG 2026ifdef CROSSBINDIR 2027ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT) 2028else 2029ARPROG=$(ARNAME) 2030endif 2031endif 2032ifndef NASMPROG 2033ifdef CROSSBINDIR 2034NASMPROG=$(CROSSBINDIR)/$(NASMNAME)$(SRCEXEEXT) 2035else 2036NASMPROG=$(NASMNAME) 2037endif 2038endif 2039AS=$(ASPROG) 2040LD=$(LDPROG) 2041RC=$(RCPROG) 2042AR=$(ARPROG) 2043NASM=$(NASMPROG) 2044ifdef inUnix 2045PPAS=./ppas$(SRCBATCHEXT) 2046else 2047PPAS=ppas$(SRCBATCHEXT) 2048endif 2049ifdef inUnix 2050LDCONFIG=ldconfig 2051else 2052LDCONFIG= 2053endif 2054ifdef DATE 2055DATESTR:=$(shell $(DATE) +%Y%m%d) 2056else 2057DATESTR= 2058endif 2059ZIPOPT=-9 2060ZIPEXT=.zip 2061ifeq ($(USETAR),bz2) 2062TAROPT=vj 2063TAREXT=.tar.bz2 2064else 2065TAROPT=vz 2066TAREXT=.tar.gz 2067endif 2068override REQUIRE_PACKAGES=rtl 2069ifeq ($(FULL_TARGET),i386-linux) 2070REQUIRE_PACKAGES_RTL=1 2071endif 2072ifeq ($(FULL_TARGET),i386-go32v2) 2073REQUIRE_PACKAGES_RTL=1 2074endif 2075ifeq ($(FULL_TARGET),i386-win32) 2076REQUIRE_PACKAGES_RTL=1 2077endif 2078ifeq ($(FULL_TARGET),i386-os2) 2079REQUIRE_PACKAGES_RTL=1 2080endif 2081ifeq ($(FULL_TARGET),i386-freebsd) 2082REQUIRE_PACKAGES_RTL=1 2083endif 2084ifeq ($(FULL_TARGET),i386-beos) 2085REQUIRE_PACKAGES_RTL=1 2086endif 2087ifeq ($(FULL_TARGET),i386-haiku) 2088REQUIRE_PACKAGES_RTL=1 2089endif 2090ifeq ($(FULL_TARGET),i386-netbsd) 2091REQUIRE_PACKAGES_RTL=1 2092endif 2093ifeq ($(FULL_TARGET),i386-solaris) 2094REQUIRE_PACKAGES_RTL=1 2095endif 2096ifeq ($(FULL_TARGET),i386-netware) 2097REQUIRE_PACKAGES_RTL=1 2098endif 2099ifeq ($(FULL_TARGET),i386-openbsd) 2100REQUIRE_PACKAGES_RTL=1 2101endif 2102ifeq ($(FULL_TARGET),i386-wdosx) 2103REQUIRE_PACKAGES_RTL=1 2104endif 2105ifeq ($(FULL_TARGET),i386-darwin) 2106REQUIRE_PACKAGES_RTL=1 2107endif 2108ifeq ($(FULL_TARGET),i386-emx) 2109REQUIRE_PACKAGES_RTL=1 2110endif 2111ifeq ($(FULL_TARGET),i386-watcom) 2112REQUIRE_PACKAGES_RTL=1 2113endif 2114ifeq ($(FULL_TARGET),i386-netwlibc) 2115REQUIRE_PACKAGES_RTL=1 2116endif 2117ifeq ($(FULL_TARGET),i386-wince) 2118REQUIRE_PACKAGES_RTL=1 2119endif 2120ifeq ($(FULL_TARGET),i386-embedded) 2121REQUIRE_PACKAGES_RTL=1 2122endif 2123ifeq ($(FULL_TARGET),i386-symbian) 2124REQUIRE_PACKAGES_RTL=1 2125endif 2126ifeq ($(FULL_TARGET),i386-nativent) 2127REQUIRE_PACKAGES_RTL=1 2128endif 2129ifeq ($(FULL_TARGET),i386-iphonesim) 2130REQUIRE_PACKAGES_RTL=1 2131endif 2132ifeq ($(FULL_TARGET),i386-android) 2133REQUIRE_PACKAGES_RTL=1 2134endif 2135ifeq ($(FULL_TARGET),i386-aros) 2136REQUIRE_PACKAGES_RTL=1 2137endif 2138ifeq ($(FULL_TARGET),m68k-linux) 2139REQUIRE_PACKAGES_RTL=1 2140endif 2141ifeq ($(FULL_TARGET),m68k-netbsd) 2142REQUIRE_PACKAGES_RTL=1 2143endif 2144ifeq ($(FULL_TARGET),m68k-amiga) 2145REQUIRE_PACKAGES_RTL=1 2146endif 2147ifeq ($(FULL_TARGET),m68k-atari) 2148REQUIRE_PACKAGES_RTL=1 2149endif 2150ifeq ($(FULL_TARGET),m68k-palmos) 2151REQUIRE_PACKAGES_RTL=1 2152endif 2153ifeq ($(FULL_TARGET),m68k-macosclassic) 2154REQUIRE_PACKAGES_RTL=1 2155endif 2156ifeq ($(FULL_TARGET),m68k-embedded) 2157REQUIRE_PACKAGES_RTL=1 2158endif 2159ifeq ($(FULL_TARGET),powerpc-linux) 2160REQUIRE_PACKAGES_RTL=1 2161endif 2162ifeq ($(FULL_TARGET),powerpc-netbsd) 2163REQUIRE_PACKAGES_RTL=1 2164endif 2165ifeq ($(FULL_TARGET),powerpc-amiga) 2166REQUIRE_PACKAGES_RTL=1 2167endif 2168ifeq ($(FULL_TARGET),powerpc-macosclassic) 2169REQUIRE_PACKAGES_RTL=1 2170endif 2171ifeq ($(FULL_TARGET),powerpc-darwin) 2172REQUIRE_PACKAGES_RTL=1 2173endif 2174ifeq ($(FULL_TARGET),powerpc-morphos) 2175REQUIRE_PACKAGES_RTL=1 2176endif 2177ifeq ($(FULL_TARGET),powerpc-embedded) 2178REQUIRE_PACKAGES_RTL=1 2179endif 2180ifeq ($(FULL_TARGET),powerpc-wii) 2181REQUIRE_PACKAGES_RTL=1 2182endif 2183ifeq ($(FULL_TARGET),powerpc-aix) 2184REQUIRE_PACKAGES_RTL=1 2185endif 2186ifeq ($(FULL_TARGET),sparc-linux) 2187REQUIRE_PACKAGES_RTL=1 2188endif 2189ifeq ($(FULL_TARGET),sparc-netbsd) 2190REQUIRE_PACKAGES_RTL=1 2191endif 2192ifeq ($(FULL_TARGET),sparc-solaris) 2193REQUIRE_PACKAGES_RTL=1 2194endif 2195ifeq ($(FULL_TARGET),sparc-embedded) 2196REQUIRE_PACKAGES_RTL=1 2197endif 2198ifeq ($(FULL_TARGET),x86_64-linux) 2199REQUIRE_PACKAGES_RTL=1 2200endif 2201ifeq ($(FULL_TARGET),x86_64-freebsd) 2202REQUIRE_PACKAGES_RTL=1 2203endif 2204ifeq ($(FULL_TARGET),x86_64-haiku) 2205REQUIRE_PACKAGES_RTL=1 2206endif 2207ifeq ($(FULL_TARGET),x86_64-netbsd) 2208REQUIRE_PACKAGES_RTL=1 2209endif 2210ifeq ($(FULL_TARGET),x86_64-solaris) 2211REQUIRE_PACKAGES_RTL=1 2212endif 2213ifeq ($(FULL_TARGET),x86_64-openbsd) 2214REQUIRE_PACKAGES_RTL=1 2215endif 2216ifeq ($(FULL_TARGET),x86_64-darwin) 2217REQUIRE_PACKAGES_RTL=1 2218endif 2219ifeq ($(FULL_TARGET),x86_64-win64) 2220REQUIRE_PACKAGES_RTL=1 2221endif 2222ifeq ($(FULL_TARGET),x86_64-embedded) 2223REQUIRE_PACKAGES_RTL=1 2224endif 2225ifeq ($(FULL_TARGET),x86_64-iphonesim) 2226REQUIRE_PACKAGES_RTL=1 2227endif 2228ifeq ($(FULL_TARGET),x86_64-android) 2229REQUIRE_PACKAGES_RTL=1 2230endif 2231ifeq ($(FULL_TARGET),x86_64-aros) 2232REQUIRE_PACKAGES_RTL=1 2233endif 2234ifeq ($(FULL_TARGET),x86_64-dragonfly) 2235REQUIRE_PACKAGES_RTL=1 2236endif 2237ifeq ($(FULL_TARGET),arm-linux) 2238REQUIRE_PACKAGES_RTL=1 2239endif 2240ifeq ($(FULL_TARGET),arm-netbsd) 2241REQUIRE_PACKAGES_RTL=1 2242endif 2243ifeq ($(FULL_TARGET),arm-palmos) 2244REQUIRE_PACKAGES_RTL=1 2245endif 2246ifeq ($(FULL_TARGET),arm-wince) 2247REQUIRE_PACKAGES_RTL=1 2248endif 2249ifeq ($(FULL_TARGET),arm-gba) 2250REQUIRE_PACKAGES_RTL=1 2251endif 2252ifeq ($(FULL_TARGET),arm-nds) 2253REQUIRE_PACKAGES_RTL=1 2254endif 2255ifeq ($(FULL_TARGET),arm-embedded) 2256REQUIRE_PACKAGES_RTL=1 2257endif 2258ifeq ($(FULL_TARGET),arm-symbian) 2259REQUIRE_PACKAGES_RTL=1 2260endif 2261ifeq ($(FULL_TARGET),arm-android) 2262REQUIRE_PACKAGES_RTL=1 2263endif 2264ifeq ($(FULL_TARGET),arm-aros) 2265REQUIRE_PACKAGES_RTL=1 2266endif 2267ifeq ($(FULL_TARGET),arm-ios) 2268REQUIRE_PACKAGES_RTL=1 2269endif 2270ifeq ($(FULL_TARGET),powerpc64-linux) 2271REQUIRE_PACKAGES_RTL=1 2272endif 2273ifeq ($(FULL_TARGET),powerpc64-darwin) 2274REQUIRE_PACKAGES_RTL=1 2275endif 2276ifeq ($(FULL_TARGET),powerpc64-embedded) 2277REQUIRE_PACKAGES_RTL=1 2278endif 2279ifeq ($(FULL_TARGET),powerpc64-aix) 2280REQUIRE_PACKAGES_RTL=1 2281endif 2282ifeq ($(FULL_TARGET),avr-embedded) 2283REQUIRE_PACKAGES_RTL=1 2284endif 2285ifeq ($(FULL_TARGET),armeb-linux) 2286REQUIRE_PACKAGES_RTL=1 2287endif 2288ifeq ($(FULL_TARGET),armeb-embedded) 2289REQUIRE_PACKAGES_RTL=1 2290endif 2291ifeq ($(FULL_TARGET),mips-linux) 2292REQUIRE_PACKAGES_RTL=1 2293endif 2294ifeq ($(FULL_TARGET),mipsel-linux) 2295REQUIRE_PACKAGES_RTL=1 2296endif 2297ifeq ($(FULL_TARGET),mipsel-embedded) 2298REQUIRE_PACKAGES_RTL=1 2299endif 2300ifeq ($(FULL_TARGET),mipsel-android) 2301REQUIRE_PACKAGES_RTL=1 2302endif 2303ifeq ($(FULL_TARGET),jvm-java) 2304REQUIRE_PACKAGES_RTL=1 2305endif 2306ifeq ($(FULL_TARGET),jvm-android) 2307REQUIRE_PACKAGES_RTL=1 2308endif 2309ifeq ($(FULL_TARGET),i8086-embedded) 2310REQUIRE_PACKAGES_RTL=1 2311endif 2312ifeq ($(FULL_TARGET),i8086-msdos) 2313REQUIRE_PACKAGES_RTL=1 2314endif 2315ifeq ($(FULL_TARGET),i8086-win16) 2316REQUIRE_PACKAGES_RTL=1 2317endif 2318ifeq ($(FULL_TARGET),aarch64-linux) 2319REQUIRE_PACKAGES_RTL=1 2320endif 2321ifeq ($(FULL_TARGET),aarch64-darwin) 2322REQUIRE_PACKAGES_RTL=1 2323endif 2324ifeq ($(FULL_TARGET),aarch64-android) 2325REQUIRE_PACKAGES_RTL=1 2326endif 2327ifeq ($(FULL_TARGET),aarch64-ios) 2328REQUIRE_PACKAGES_RTL=1 2329endif 2330ifeq ($(FULL_TARGET),wasm-wasm) 2331REQUIRE_PACKAGES_RTL=1 2332endif 2333ifeq ($(FULL_TARGET),sparc64-linux) 2334REQUIRE_PACKAGES_RTL=1 2335endif 2336ifdef REQUIRE_PACKAGES_RTL 2337PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) 2338ifneq ($(PACKAGEDIR_RTL),) 2339ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)),) 2340UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX) 2341else 2342UNITDIR_RTL=$(PACKAGEDIR_RTL) 2343endif 2344ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX)),) 2345UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX) 2346else 2347ifneq ($(wildcard $(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX)),) 2348UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX) 2349else 2350UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL) 2351endif 2352endif 2353ifdef CHECKDEPEND 2354$(PACKAGEDIR_RTL)/$(OS_TARGET)/$(FPCMADE): 2355 $(MAKE) -C $(PACKAGEDIR_RTL)/$(OS_TARGET) $(FPCMADE) 2356override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(OS_TARGET)/$(FPCMADE) 2357endif 2358else 2359PACKAGEDIR_RTL= 2360UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR))))) 2361ifneq ($(UNITDIR_RTL),) 2362UNITDIR_RTL:=$(firstword $(UNITDIR_RTL)) 2363else 2364UNITDIR_RTL= 2365endif 2366endif 2367ifdef UNITDIR_RTL 2368override COMPILER_UNITDIR+=$(UNITDIR_RTL) 2369endif 2370ifdef UNITDIR_FPMAKE_RTL 2371override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_RTL) 2372endif 2373endif 2374ifndef NOCPUDEF 2375override FPCOPTDEF=$(ARCH) 2376endif 2377ifneq ($(OS_TARGET),$(OS_SOURCE)) 2378override FPCOPT+=-T$(OS_TARGET) 2379endif 2380ifneq ($(CPU_TARGET),$(CPU_SOURCE)) 2381override FPCOPT+=-P$(ARCH) 2382endif 2383ifeq ($(OS_SOURCE),openbsd) 2384override FPCOPT+=-FD$(NEW_BINUTILS_PATH) 2385override FPCMAKEOPT+=-FD$(NEW_BINUTILS_PATH) 2386override FPMAKE_BUILD_OPT+=-FD$(NEW_BINUTILS_PATH) 2387endif 2388ifndef CROSSBOOTSTRAP 2389ifneq ($(BINUTILSPREFIX),) 2390override FPCOPT+=-XP$(BINUTILSPREFIX) 2391endif 2392ifneq ($(BINUTILSPREFIX),) 2393override FPCOPT+=-Xr$(RLINKPATH) 2394endif 2395endif 2396ifndef CROSSCOMPILE 2397ifneq ($(BINUTILSPREFIX),) 2398override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) 2399override FPMAKE_BUILD_OPT+=-XP$(BINUTILSPREFIX) 2400endif 2401endif 2402ifdef UNITDIR 2403override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) 2404endif 2405ifdef LIBDIR 2406override FPCOPT+=$(addprefix -Fl,$(LIBDIR)) 2407endif 2408ifdef OBJDIR 2409override FPCOPT+=$(addprefix -Fo,$(OBJDIR)) 2410endif 2411ifdef INCDIR 2412override FPCOPT+=$(addprefix -Fi,$(INCDIR)) 2413endif 2414ifdef LINKSMART 2415override FPCOPT+=-XX 2416endif 2417ifdef CREATESMART 2418override FPCOPT+=-CX 2419endif 2420ifdef DEBUG 2421override FPCOPT+=-gl 2422override FPCOPTDEF+=DEBUG 2423endif 2424ifdef RELEASE 2425FPCCPUOPT:=-O2 2426override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n 2427override FPCOPTDEF+=RELEASE 2428endif 2429ifdef STRIP 2430override FPCOPT+=-Xs 2431endif 2432ifdef OPTIMIZE 2433override FPCOPT+=-O2 2434endif 2435ifdef VERBOSE 2436override FPCOPT+=-vwni 2437endif 2438ifdef COMPILER_OPTIONS 2439override FPCOPT+=$(COMPILER_OPTIONS) 2440endif 2441ifdef COMPILER_UNITDIR 2442override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR)) 2443endif 2444ifdef COMPILER_LIBRARYDIR 2445override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR)) 2446endif 2447ifdef COMPILER_OBJECTDIR 2448override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR)) 2449endif 2450ifdef COMPILER_INCLUDEDIR 2451override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR)) 2452endif 2453ifdef CROSSBINDIR 2454override FPCOPT+=-FD$(CROSSBINDIR) 2455endif 2456ifdef COMPILER_TARGETDIR 2457override FPCOPT+=-FE$(COMPILER_TARGETDIR) 2458ifeq ($(COMPILER_TARGETDIR),.) 2459override TARGETDIRPREFIX= 2460else 2461override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/ 2462endif 2463endif 2464ifdef COMPILER_UNITTARGETDIR 2465override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR) 2466ifeq ($(COMPILER_UNITTARGETDIR),.) 2467override UNITTARGETDIRPREFIX= 2468else 2469override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/ 2470endif 2471else 2472ifdef COMPILER_TARGETDIR 2473override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR) 2474override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX) 2475endif 2476endif 2477ifdef CREATESHARED 2478override FPCOPT+=-Cg 2479endif 2480ifneq ($(findstring $(OS_TARGET),dragonfly freebsd openbsd netbsd linux solaris),) 2481ifneq ($(findstring $(CPU_TARGET),x86_64 mips mipsel),) 2482override FPCOPT+=-Cg 2483endif 2484endif 2485ifdef LINKSHARED 2486endif 2487ifdef OPT 2488override FPCOPT+=$(OPT) 2489endif 2490ifdef FPMAKEBUILDOPT 2491override FPMAKE_BUILD_OPT+=$(FPMAKEBUILDOPT) 2492endif 2493ifdef FPCOPTDEF 2494override FPCOPT+=$(addprefix -d,$(FPCOPTDEF)) 2495endif 2496ifdef CFGFILE 2497override FPCOPT+=@$(CFGFILE) 2498endif 2499ifdef USEENV 2500override FPCEXTCMD:=$(FPCOPT) 2501override FPCOPT:=!FPCEXTCMD 2502export FPCEXTCMD 2503endif 2504override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET) 2505override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) 2506ifneq ($(AFULL_TARGET),$(AFULL_SOURCE)) 2507override ACROSSCOMPILE=1 2508endif 2509ifdef ACROSSCOMPILE 2510override FPCOPT+=$(CROSSOPT) 2511endif 2512override COMPILER:=$(strip $(FPC) $(FPCOPT)) 2513ifneq (,$(findstring -sh ,$(COMPILER))) 2514UseEXECPPAS=1 2515endif 2516ifneq (,$(findstring -s ,$(COMPILER))) 2517ifeq ($(FULL_SOURCE),$(FULL_TARGET)) 2518UseEXECPPAS=1 2519endif 2520endif 2521ifneq ($(UseEXECPPAS),1) 2522EXECPPAS= 2523else 2524ifdef RUNBATCH 2525EXECPPAS:=@$(RUNBATCH) $(PPAS) 2526else 2527EXECPPAS:=@$(PPAS) 2528endif 2529endif 2530.PHONY: fpc_exes 2531ifndef CROSSINSTALL 2532ifneq ($(TARGET_PROGRAMS),) 2533override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS)) 2534override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) 2535override EXEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_PROGRAMS)) 2536override ALLTARGET+=fpc_exes 2537override INSTALLEXEFILES+=$(EXEFILES) 2538override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES) 2539override CLEANEXEDBGFILES+=$(EXEDBGFILES) 2540ifeq ($(OS_TARGET),os2) 2541override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_PROGRAMS)) 2542endif 2543ifeq ($(OS_TARGET),emx) 2544override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_PROGRAMS)) 2545endif 2546endif 2547endif 2548fpc_exes: $(COMPILER_TARGETDIR) $(COMPILER_UNITTARGETDIR) $(EXEFILES) 2549ifdef TARGET_RSTS 2550override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) 2551override CLEANRSTFILES+=$(RSTFILES) 2552endif 2553.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared 2554$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET) 2555 @$(ECHOREDIR) Compiled > $(FPCMADE) 2556fpc_all: $(FPCMADE) 2557fpc_smart: 2558 $(MAKE) all LINKSMART=1 CREATESMART=1 2559fpc_debug: 2560 $(MAKE) all DEBUG=1 2561fpc_release: 2562 $(MAKE) all RELEASE=1 2563.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res 2564$(COMPILER_UNITTARGETDIR): 2565 $(MKDIRTREE) $(COMPILER_UNITTARGETDIR) 2566$(COMPILER_TARGETDIR): 2567 $(MKDIRTREE) $(COMPILER_TARGETDIR) 2568%$(PPUEXT): %.pp 2569 $(COMPILER) $< 2570 $(EXECPPAS) 2571%$(PPUEXT): %.pas 2572 $(COMPILER) $< 2573 $(EXECPPAS) 2574%$(EXEEXT): %.pp 2575 $(COMPILER) $< 2576 $(EXECPPAS) 2577%$(EXEEXT): %.pas 2578 $(COMPILER) $< 2579 $(EXECPPAS) 2580%$(EXEEXT): %.lpr 2581 $(COMPILER) $< 2582 $(EXECPPAS) 2583%$(EXEEXT): %.dpr 2584 $(COMPILER) $< 2585 $(EXECPPAS) 2586%.res: %.rc 2587 windres -i $< -o $@ 2588vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) 2589vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) 2590vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) 2591vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR) 2592vpath %.inc $(COMPILER_INCLUDEDIR) 2593vpath %$(OEXT) $(COMPILER_UNITTARGETDIR) 2594vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR) 2595.PHONY: fpc_shared 2596override INSTALLTARGET+=fpc_shared_install 2597ifndef SHARED_LIBVERSION 2598SHARED_LIBVERSION=$(FPC_VERSION) 2599endif 2600ifndef SHARED_LIBNAME 2601SHARED_LIBNAME=$(PACKAGE_NAME) 2602endif 2603ifndef SHARED_FULLNAME 2604SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT) 2605endif 2606ifndef SHARED_LIBUNITS 2607SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS) 2608override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS)) 2609endif 2610fpc_shared: 2611ifdef HASSHAREDLIB 2612 $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1 2613ifneq ($(SHARED_BUILD),n) 2614 $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR) 2615endif 2616else 2617 @$(ECHO) Shared Libraries not supported 2618endif 2619fpc_shared_install: 2620ifneq ($(SHARED_BUILD),n) 2621ifneq ($(SHARED_LIBUNITS),) 2622ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),) 2623 $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR) 2624endif 2625endif 2626endif 2627.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall 2628ifdef INSTALL_UNITS 2629override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) 2630endif 2631ifdef INSTALL_BUILDUNIT 2632override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES)) 2633endif 2634ifdef INSTALLPPUFILES 2635ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT)) 2636override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) 2637else 2638override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) 2639endif 2640ifneq ($(UNITTARGETDIRPREFIX),) 2641override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES))) 2642override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES)))) 2643endif 2644override INSTALL_CREATEPACKAGEFPC=1 2645endif 2646ifdef INSTALLEXEFILES 2647ifneq ($(TARGETDIRPREFIX),) 2648override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES))) 2649endif 2650endif 2651fpc_install: all $(INSTALLTARGET) 2652ifdef INSTALLEXEFILES 2653 $(MKDIR) $(INSTALL_BINDIR) 2654 $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) 2655endif 2656ifdef INSTALL_CREATEPACKAGEFPC 2657ifdef FPCMAKE 2658ifdef PACKAGE_VERSION 2659ifneq ($(wildcard Makefile.fpc),) 2660 $(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc 2661 $(MKDIR) $(INSTALL_UNITDIR) 2662 $(INSTALL) Package.fpc $(INSTALL_UNITDIR) 2663endif 2664endif 2665endif 2666endif 2667ifdef INSTALLPPUFILES 2668 $(MKDIR) $(INSTALL_UNITDIR) 2669 $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR) 2670ifneq ($(INSTALLPPULINKFILES),) 2671 $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR) 2672endif 2673ifneq ($(wildcard $(LIB_FULLNAME)),) 2674 $(MKDIR) $(INSTALL_LIBDIR) 2675 $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR) 2676ifdef inUnix 2677 ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME) 2678endif 2679endif 2680endif 2681ifdef INSTALL_FILES 2682 $(MKDIR) $(INSTALL_DATADIR) 2683 $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR) 2684endif 2685fpc_sourceinstall: distclean 2686 $(MKDIR) $(INSTALL_SOURCEDIR) 2687 $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR) 2688fpc_exampleinstall: $(EXAMPLEINSTALLTARGET) $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS)) 2689ifdef HASEXAMPLES 2690 $(MKDIR) $(INSTALL_EXAMPLEDIR) 2691endif 2692ifdef EXAMPLESOURCEFILES 2693 $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR) 2694endif 2695ifdef TARGET_EXAMPLEDIRS 2696 $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR) 2697endif 2698.PHONY: fpc_clean fpc_cleanall fpc_distclean 2699ifdef EXEFILES 2700override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES)) 2701override CLEANEXEDBGFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEDBGFILES)) 2702endif 2703ifdef CLEAN_PROGRAMS 2704override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEEXT), $(CLEAN_PROGRAMS))) 2705override CLEANEXEDBGFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEDBGEXT), $(CLEAN_PROGRAMS))) 2706endif 2707ifdef CLEAN_UNITS 2708override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS)) 2709endif 2710ifdef CLEANPPUFILES 2711override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) 2712ifdef DEBUGSYMEXT 2713override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 2714endif 2715override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES)) 2716override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES))) 2717endif 2718fpc_clean: $(CLEANTARGET) 2719ifdef CLEANEXEFILES 2720 -$(DEL) $(CLEANEXEFILES) 2721endif 2722ifdef CLEANEXEDBGFILES 2723 -$(DELTREE) $(CLEANEXEDBGFILES) 2724endif 2725ifdef CLEANPPUFILES 2726 -$(DEL) $(CLEANPPUFILES) 2727endif 2728ifneq ($(CLEANPPULINKFILES),) 2729 -$(DEL) $(CLEANPPULINKFILES) 2730endif 2731ifdef CLEANRSTFILES 2732 -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES)) 2733endif 2734ifdef CLEAN_FILES 2735 -$(DEL) $(CLEAN_FILES) 2736endif 2737ifdef LIB_NAME 2738 -$(DEL) $(LIB_NAME) $(LIB_FULLNAME) 2739endif 2740 -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE) 2741 -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT) 2742fpc_cleanall: $(CLEANTARGET) 2743ifdef CLEANEXEFILES 2744 -$(DEL) $(CLEANEXEFILES) 2745endif 2746ifdef COMPILER_UNITTARGETDIR 2747ifdef CLEANPPUFILES 2748 -$(DEL) $(CLEANPPUFILES) 2749endif 2750ifneq ($(CLEANPPULINKFILES),) 2751 -$(DEL) $(CLEANPPULINKFILES) 2752endif 2753ifdef CLEANRSTFILES 2754 -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES)) 2755endif 2756endif 2757ifdef CLEAN_FILES 2758 -$(DEL) $(CLEAN_FILES) 2759endif 2760 -$(DELTREE) units 2761 -$(DELTREE) bin 2762 -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT) 2763ifneq ($(PPUEXT),.ppu) 2764 -$(DEL) *.o *.ppu *.a 2765endif 2766 -$(DELTREE) *$(SMARTEXT) 2767 -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE) 2768 -$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT) 2769ifdef AOUTEXT 2770 -$(DEL) *$(AOUTEXT) 2771endif 2772ifdef DEBUGSYMEXT 2773 -$(DEL) *$(DEBUGSYMEXT) 2774endif 2775ifdef LOCALFPMAKEBIN 2776 -$(DEL) $(LOCALFPMAKEBIN) 2777 -$(DEL) $(FPMAKEBINOBJ) 2778endif 2779fpc_distclean: cleanall 2780.PHONY: fpc_baseinfo 2781override INFORULES+=fpc_baseinfo 2782fpc_baseinfo: 2783 @$(ECHO) 2784 @$(ECHO) == Package info == 2785 @$(ECHO) Package Name..... $(PACKAGE_NAME) 2786 @$(ECHO) Package Version.. $(PACKAGE_VERSION) 2787 @$(ECHO) 2788 @$(ECHO) == Configuration info == 2789 @$(ECHO) 2790 @$(ECHO) FPC.......... $(FPC) 2791 @$(ECHO) FPC Version.. $(FPC_VERSION) 2792 @$(ECHO) Source CPU... $(CPU_SOURCE) 2793 @$(ECHO) Target CPU... $(CPU_TARGET) 2794 @$(ECHO) Source OS.... $(OS_SOURCE) 2795 @$(ECHO) Target OS.... $(OS_TARGET) 2796 @$(ECHO) Full Source.. $(FULL_SOURCE) 2797 @$(ECHO) Full Target.. $(FULL_TARGET) 2798 @$(ECHO) SourceSuffix. $(SOURCESUFFIX) 2799 @$(ECHO) TargetSuffix. $(TARGETSUFFIX) 2800 @$(ECHO) FPC fpmake... $(FPCFPMAKE) 2801 @$(ECHO) 2802 @$(ECHO) == Directory info == 2803 @$(ECHO) 2804 @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES) 2805 @$(ECHO) 2806 @$(ECHO) Basedir......... $(BASEDIR) 2807 @$(ECHO) FPCDir.......... $(FPCDIR) 2808 @$(ECHO) CrossBinDir..... $(CROSSBINDIR) 2809 @$(ECHO) UnitsDir........ $(UNITSDIR) 2810 @$(ECHO) PackagesDir..... $(PACKAGESDIR) 2811 @$(ECHO) 2812 @$(ECHO) GCC library..... $(GCCLIBDIR) 2813 @$(ECHO) Other library... $(OTHERLIBDIR) 2814 @$(ECHO) 2815 @$(ECHO) == Tools info == 2816 @$(ECHO) 2817 @$(ECHO) As........ $(AS) 2818 @$(ECHO) Ld........ $(LD) 2819 @$(ECHO) Ar........ $(AR) 2820 @$(ECHO) Rc........ $(RC) 2821 @$(ECHO) 2822 @$(ECHO) Mv........ $(MVPROG) 2823 @$(ECHO) Cp........ $(CPPROG) 2824 @$(ECHO) Rm........ $(RMPROG) 2825 @$(ECHO) GInstall.. $(GINSTALL) 2826 @$(ECHO) Echo...... $(ECHO) 2827 @$(ECHO) Shell..... $(SHELL) 2828 @$(ECHO) Date...... $(DATE) 2829 @$(ECHO) FPCMake... $(FPCMAKE) 2830 @$(ECHO) PPUMove... $(PPUMOVE) 2831 @$(ECHO) Zip....... $(ZIPPROG) 2832 @$(ECHO) 2833 @$(ECHO) == Object info == 2834 @$(ECHO) 2835 @$(ECHO) Target Loaders........ $(TARGET_LOADERS) 2836 @$(ECHO) Target Units.......... $(TARGET_UNITS) 2837 @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS) 2838 @$(ECHO) Target Programs....... $(TARGET_PROGRAMS) 2839 @$(ECHO) Target Dirs........... $(TARGET_DIRS) 2840 @$(ECHO) Target Examples....... $(TARGET_EXAMPLES) 2841 @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS) 2842 @$(ECHO) 2843 @$(ECHO) Clean Units......... $(CLEAN_UNITS) 2844 @$(ECHO) Clean Files......... $(CLEAN_FILES) 2845 @$(ECHO) 2846 @$(ECHO) Install Units....... $(INSTALL_UNITS) 2847 @$(ECHO) Install Files....... $(INSTALL_FILES) 2848 @$(ECHO) 2849 @$(ECHO) == Install info == 2850 @$(ECHO) 2851 @$(ECHO) DateStr.............. $(DATESTR) 2852 @$(ECHO) ZipName.............. $(ZIPNAME) 2853 @$(ECHO) ZipPrefix............ $(ZIPPREFIX) 2854 @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX) 2855 @$(ECHO) ZipSuffix............ $(ZIPSUFFIX) 2856 @$(ECHO) FullZipName.......... $(FULLZIPNAME) 2857 @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE) 2858 @$(ECHO) 2859 @$(ECHO) Install base dir..... $(INSTALL_BASEDIR) 2860 @$(ECHO) Install binary dir... $(INSTALL_BINDIR) 2861 @$(ECHO) Install library dir.. $(INSTALL_LIBDIR) 2862 @$(ECHO) Install units dir.... $(INSTALL_UNITDIR) 2863 @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR) 2864 @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR) 2865 @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR) 2866 @$(ECHO) Install data dir..... $(INSTALL_DATADIR) 2867 @$(ECHO) 2868 @$(ECHO) Dist destination dir. $(DIST_DESTDIR) 2869 @$(ECHO) Dist zip name........ $(DIST_ZIPNAME) 2870 @$(ECHO) 2871.PHONY: fpc_info 2872fpc_info: $(INFORULES) 2873.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \ 2874 fpc_makefile_dirs 2875fpc_makefile: 2876 $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc 2877fpc_makefile_sub1: 2878ifdef TARGET_DIRS 2879 $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS)) 2880endif 2881ifdef TARGET_EXAMPLEDIRS 2882 $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS)) 2883endif 2884fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS)) 2885fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2 2886fpc_makefiles: fpc_makefile fpc_makefile_dirs 2887ifndef DATA2INC 2888DATA2INC:=$(strip $(wildcard $(addsuffix /data2inc$(SRCEXEEXT),$(SEARCHPATH)))) 2889ifeq ($(DATA2INC),) 2890DATA2INC= __missing_command_DATA2INC 2891else 2892DATA2INC:=$(firstword $(DATA2INC)) 2893endif 2894endif 2895export DATA2INC 2896all: fpc_all 2897debug: fpc_debug 2898smart: fpc_smart 2899release: fpc_release 2900units: fpc_units 2901examples: 2902shared: fpc_shared 2903install: fpc_install 2904sourceinstall: fpc_sourceinstall 2905exampleinstall: fpc_exampleinstall 2906distinstall: 2907zipinstall: 2908zipsourceinstall: 2909zipexampleinstall: 2910zipdistinstall: 2911clean: fpc_clean 2912distclean: fpc_distclean 2913cleanall: fpc_cleanall 2914info: fpc_info 2915makefiles: fpc_makefiles 2916.PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles 2917ifneq ($(wildcard fpcmake.loc),) 2918include fpcmake.loc 2919endif 2920.NOTPARALLEL: 2921REG_SOURCES=$(wildcard *reg.pp) 2922REG_EXES=$(subst .pp,$(EXEEXT),$(REG_SOURCES)) 2923ifndef NOCPUDEF 2924ppu$(PPUEXT): ../ppu.pas 2925 $(MAKE) ppu$(PPUEXT) NOCPUDEF=1 2926ppudump$(EXEEXT): ppuutils/ppudump.pp ppu$(PPUEXT) 2927 $(MAKE) ppudump$(EXEEXT) NOCPUDEF=1 2928ppufiles$(EXEEXT): ppufiles.pp ppu$(PPUEXT) 2929 $(MAKE) ppufiles$(EXEEXT) NOCPUDEF=1 2930ppumove$(EXEEXT): ppumove.pp ppu$(PPUEXT) 2931 $(MAKE) ppumove$(EXEEXT) NOCPUDEF=1 2932else 2933ppu$(PPUEXT): ../ppu.pas 2934 $(COMPILER) ../ppu.pas -Fu../generic -dGENERIC_CPU -Fi.. 2935ppudump$(EXEEXT): ppuutils/ppudump.pp ppu$(PPUEXT) 2936 $(COMPILER) ppuutils/ppudump.pp -Fu../generic -dGENERIC_CPU -Fi.. 2937ppufiles$(EXEEXT): ppufiles.pp ppu$(PPUEXT) 2938 $(COMPILER) ppufiles.pp -Fu../generic -dGENERIC_CPU -Fi.. 2939ppumove$(EXEEXT): ppumove.pp ppu$(PPUEXT) 2940 $(COMPILER) ppumove.pp -Fu../generic -dGENERIC_CPU -Fi.. 2941endif 2942msg2inc$(EXEEXT): $(COMPILER_UNITTARGETDIR) msg2inc.pp 2943gppc386$(EXEEXT): $(COMPILER_UNITTARGETDIR) gppc386.pp 2944fpcsubst$(EXEEXT): fpcsubst.pp usubst.pp 2945fpcmkcfg$(EXEEXT): fpcmkcfg.pp usubst.pp fpccfg.inc fpcfg.inc fpini.inc 2946ifneq ($(DATA2INC),) 2947fpccfg.inc: fpc.cft 2948 $(DATA2INC) -b -s fpc.cft fpccfg.inc DefaultConfig 2949fpcfg.inc : fpinc.cfg 2950 $(DATA2INC) -b -s fpinc.cfg fpcfg.inc fpcfg 2951fpini.inc : fpinc.ini 2952 $(DATA2INC) -b -s fpinc.ini fpini.inc fpini 2953endif 2954reg_exes: $(COMPILER_UNITTARGETDIR) 2955 $(MAKE) $(REG_EXES) 2956unexport PPUFILES PPUMOVE 2957