/packages/matroska/Makefile
Makefile | 2239 lines | 2236 code | 0 blank | 3 comment | 9 complexity | 045f0740a99254c9b6a7a41d672d867c MD5 | raw file
Possible License(s): LGPL-2.0, LGPL-2.1, LGPL-3.0
Large files files are truncated, but you can click here to view the full file
1# 2# Don't edit, this file is generated by FPCMake Version 2.0.0 [2012/08/17] 3# 4default: all 5MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-haiku i386-netbsd i386-solaris i386-qnx i386-netware i386-openbsd i386-wdosx i386-darwin i386-emx i386-watcom i386-netwlibc i386-wince i386-embedded i386-symbian i386-nativent i386-iphonesim m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos m68k-embedded powerpc-linux powerpc-netbsd powerpc-amiga powerpc-macos 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-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux jvm-java jvm-android 6BSDs = freebsd netbsd openbsd darwin 7UNIXs = linux $(BSDs) solaris qnx haiku aix 8LIMIT83fs = go32v2 os2 emx watcom 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 187ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) 188TARGETSUFFIX=$(OS_TARGET) 189SOURCESUFFIX=$(OS_SOURCE) 190else 191ifneq ($(findstring $(OS_TARGET),$(LIMIT83fs)),) 192TARGETSUFFIX=$(OS_TARGET) 193else 194TARGETSUFFIX=$(FULL_TARGET) 195endif 196SOURCESUFFIX=$(FULL_SOURCE) 197endif 198ifneq ($(FULL_TARGET),$(FULL_SOURCE)) 199CROSSCOMPILE=1 200endif 201ifeq ($(findstring makefile,$(MAKECMDGOALS)),) 202ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),) 203$(error The Makefile doesn't support target $(FULL_TARGET), please run fpcmake first) 204endif 205endif 206ifneq ($(findstring $(OS_TARGET),$(BSDs)),) 207BSDhier=1 208endif 209ifeq ($(OS_TARGET),linux) 210linuxHier=1 211endif 212export OS_TARGET OS_SOURCE ARCH CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE 213ifdef FPCDIR 214override FPCDIR:=$(subst \,/,$(FPCDIR)) 215ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) 216override FPCDIR=wrong 217endif 218else 219override FPCDIR=wrong 220endif 221ifdef DEFAULT_FPCDIR 222ifeq ($(FPCDIR),wrong) 223override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR)) 224ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) 225override FPCDIR=wrong 226endif 227endif 228endif 229ifeq ($(FPCDIR),wrong) 230ifdef inUnix 231override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION) 232ifeq ($(wildcard $(FPCDIR)/units),) 233override FPCDIR=/usr/lib/fpc/$(FPC_VERSION) 234endif 235else 236override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH)))))) 237override FPCDIR:=$(FPCDIR)/.. 238ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) 239override FPCDIR:=$(FPCDIR)/.. 240ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) 241override FPCDIR:=$(BASEDIR) 242ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),) 243override FPCDIR=c:/pp 244endif 245endif 246endif 247endif 248endif 249ifndef CROSSBINDIR 250CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX)) 251endif 252ifneq ($(findstring $(OS_TARGET),darwin iphonesim),) 253ifeq ($(OS_SOURCE),darwin) 254DARWIN2DARWIN=1 255endif 256endif 257ifndef BINUTILSPREFIX 258ifndef CROSSBINDIR 259ifdef CROSSCOMPILE 260ifndef DARWIN2DARWIN 261ifneq ($(CPU_TARGET),jvm) 262BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)- 263endif 264endif 265endif 266endif 267endif 268UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX)) 269ifeq ($(UNITSDIR),) 270UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET)) 271endif 272PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra) 273ifndef FPCFPMAKE 274ifdef CROSSCOMPILE 275ifeq ($(strip $(wildcard $(addsuffix /compiler/ppc$(SRCEXEEXT),$(FPCDIR)))),) 276FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH)))) 277ifneq ($(FPCPROG),) 278FPCPROG:=$(firstword $(FPCPROG)) 279FPCFPMAKE:=$(shell $(FPCPROG) -PB) 280ifeq ($(strip $(wildcard $(FPCFPMAKE))),) 281FPCFPMAKE:=$(firstword $(FPCPROG)) 282endif 283else 284override FPCFPMAKE=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH))))) 285endif 286else 287FPCFPMAKE=$(strip $(wildcard $(addsuffix /compiler/ppc$(SRCEXEEXT),$(FPCDIR)))) 288FPMAKE_SKIP_CONFIG=-n 289export FPCFPMAKE 290export FPMAKE_SKIP_CONFIG 291endif 292else 293FPMAKE_SKIP_CONFIG=-n 294FPCFPMAKE=$(FPC) 295endif 296endif 297override PACKAGE_NAME=matroska 298override PACKAGE_VERSION=2.7.1 299FPMAKE_BIN_CLEAN=$(wildcard .$(PATHSEP)fpmake$(SRCEXEEXT)) 300ifdef OS_TARGET 301FPC_TARGETOPT+=--os=$(OS_TARGET) 302endif 303ifdef CPU_TARGET 304FPC_TARGETOPT+=--cpu=$(CPU_TARGET) 305endif 306LOCALFPMAKE=.$(PATHSEP)fpmake$(SRCEXEEXT) 307override INSTALL_FPCPACKAGE=y 308ifdef REQUIRE_UNITSDIR 309override UNITSDIR+=$(REQUIRE_UNITSDIR) 310endif 311ifdef REQUIRE_PACKAGESDIR 312override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR) 313endif 314ifdef ZIPINSTALL 315ifneq ($(findstring $(OS_TARGET),$(UNIXs)),) 316UNIXHier=1 317endif 318else 319ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),) 320UNIXHier=1 321endif 322endif 323ifndef INSTALL_PREFIX 324ifdef PREFIX 325INSTALL_PREFIX=$(PREFIX) 326endif 327endif 328ifndef INSTALL_PREFIX 329ifdef UNIXHier 330INSTALL_PREFIX=/usr/local 331else 332ifdef INSTALL_FPCPACKAGE 333INSTALL_BASEDIR:=/pp 334else 335INSTALL_BASEDIR:=/$(PACKAGE_NAME) 336endif 337endif 338endif 339export INSTALL_PREFIX 340ifdef INSTALL_FPCSUBDIR 341export INSTALL_FPCSUBDIR 342endif 343ifndef DIST_DESTDIR 344DIST_DESTDIR:=$(BASEDIR) 345endif 346export DIST_DESTDIR 347ifndef COMPILER_UNITTARGETDIR 348ifdef PACKAGEDIR_MAIN 349COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX) 350else 351COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX) 352endif 353endif 354ifndef COMPILER_TARGETDIR 355COMPILER_TARGETDIR=. 356endif 357ifndef INSTALL_BASEDIR 358ifdef UNIXHier 359ifdef INSTALL_FPCPACKAGE 360INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION) 361else 362INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME) 363endif 364else 365INSTALL_BASEDIR:=$(INSTALL_PREFIX) 366endif 367endif 368ifndef INSTALL_BINDIR 369ifdef UNIXHier 370INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin 371else 372INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin 373ifdef INSTALL_FPCPACKAGE 374ifdef CROSSCOMPILE 375ifdef CROSSINSTALL 376INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX) 377else 378INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX) 379endif 380else 381INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX) 382endif 383endif 384endif 385endif 386ifndef INSTALL_UNITDIR 387INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX) 388ifdef INSTALL_FPCPACKAGE 389ifdef PACKAGE_NAME 390INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME) 391endif 392endif 393endif 394ifndef INSTALL_LIBDIR 395ifdef UNIXHier 396INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib 397else 398INSTALL_LIBDIR:=$(INSTALL_UNITDIR) 399endif 400endif 401ifndef INSTALL_SOURCEDIR 402ifdef UNIXHier 403ifdef BSDhier 404SRCPREFIXDIR=share/src 405else 406ifdef linuxHier 407SRCPREFIXDIR=share/src 408else 409SRCPREFIXDIR=src 410endif 411endif 412ifdef INSTALL_FPCPACKAGE 413ifdef INSTALL_FPCSUBDIR 414INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME) 415else 416INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME) 417endif 418else 419INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 420endif 421else 422ifdef INSTALL_FPCPACKAGE 423ifdef INSTALL_FPCSUBDIR 424INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME) 425else 426INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME) 427endif 428else 429INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source 430endif 431endif 432endif 433ifndef INSTALL_DOCDIR 434ifdef UNIXHier 435ifdef BSDhier 436DOCPREFIXDIR=share/doc 437else 438ifdef linuxHier 439DOCPREFIXDIR=share/doc 440else 441DOCPREFIXDIR=doc 442endif 443endif 444ifdef INSTALL_FPCPACKAGE 445INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME) 446else 447INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 448endif 449else 450ifdef INSTALL_FPCPACKAGE 451INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME) 452else 453INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc 454endif 455endif 456endif 457ifndef INSTALL_EXAMPLEDIR 458ifdef UNIXHier 459ifdef INSTALL_FPCPACKAGE 460ifdef BSDhier 461INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME) 462else 463ifdef linuxHier 464INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples 465else 466INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME) 467endif 468endif 469else 470ifdef BSDhier 471INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 472else 473ifdef linuxHier 474INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 475else 476INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION) 477endif 478endif 479endif 480else 481ifdef INSTALL_FPCPACKAGE 482INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME) 483else 484INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples 485endif 486endif 487endif 488ifndef INSTALL_DATADIR 489INSTALL_DATADIR=$(INSTALL_BASEDIR) 490endif 491ifndef INSTALL_SHAREDDIR 492INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib 493endif 494ifdef CROSSCOMPILE 495ifndef CROSSBINDIR 496CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX)) 497ifeq ($(CROSSBINDIR),) 498CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE)) 499endif 500endif 501else 502CROSSBINDIR= 503endif 504BATCHEXT=.bat 505LOADEREXT=.as 506EXEEXT=.exe 507PPLEXT=.ppl 508PPUEXT=.ppu 509OEXT=.o 510ASMEXT=.s 511SMARTEXT=.sl 512STATICLIBEXT=.a 513SHAREDLIBEXT=.so 514SHAREDLIBPREFIX=libfp 515STATICLIBPREFIX=libp 516IMPORTLIBPREFIX=libimp 517RSTEXT=.rst 518EXEDBGEXT=.dbg 519ifeq ($(OS_TARGET),go32v1) 520STATICLIBPREFIX= 521SHORTSUFFIX=v1 522endif 523ifeq ($(OS_TARGET),go32v2) 524STATICLIBPREFIX= 525SHORTSUFFIX=dos 526IMPORTLIBPREFIX= 527endif 528ifeq ($(OS_TARGET),watcom) 529STATICLIBPREFIX= 530OEXT=.obj 531ASMEXT=.asm 532SHAREDLIBEXT=.dll 533SHORTSUFFIX=wat 534IMPORTLIBPREFIX= 535endif 536ifeq ($(OS_TARGET),linux) 537BATCHEXT=.sh 538EXEEXT= 539HASSHAREDLIB=1 540SHORTSUFFIX=lnx 541endif 542ifeq ($(OS_TARGET),freebsd) 543BATCHEXT=.sh 544EXEEXT= 545HASSHAREDLIB=1 546SHORTSUFFIX=fbs 547endif 548ifeq ($(OS_TARGET),netbsd) 549BATCHEXT=.sh 550EXEEXT= 551HASSHAREDLIB=1 552SHORTSUFFIX=nbs 553endif 554ifeq ($(OS_TARGET),openbsd) 555BATCHEXT=.sh 556EXEEXT= 557HASSHAREDLIB=1 558SHORTSUFFIX=obs 559endif 560ifeq ($(OS_TARGET),win32) 561SHAREDLIBEXT=.dll 562SHORTSUFFIX=w32 563endif 564ifeq ($(OS_TARGET),os2) 565BATCHEXT=.cmd 566AOUTEXT=.out 567STATICLIBPREFIX= 568SHAREDLIBEXT=.dll 569SHORTSUFFIX=os2 570ECHO=echo 571IMPORTLIBPREFIX= 572endif 573ifeq ($(OS_TARGET),emx) 574BATCHEXT=.cmd 575AOUTEXT=.out 576STATICLIBPREFIX= 577SHAREDLIBEXT=.dll 578SHORTSUFFIX=emx 579ECHO=echo 580IMPORTLIBPREFIX= 581endif 582ifeq ($(OS_TARGET),amiga) 583EXEEXT= 584SHAREDLIBEXT=.library 585SHORTSUFFIX=amg 586endif 587ifeq ($(OS_TARGET),morphos) 588EXEEXT= 589SHAREDLIBEXT=.library 590SHORTSUFFIX=mos 591endif 592ifeq ($(OS_TARGET),atari) 593EXEEXT=.ttp 594SHORTSUFFIX=ata 595endif 596ifeq ($(OS_TARGET),beos) 597BATCHEXT=.sh 598EXEEXT= 599SHORTSUFFIX=be 600endif 601ifeq ($(OS_TARGET),haiku) 602BATCHEXT=.sh 603EXEEXT= 604SHORTSUFFIX=hai 605endif 606ifeq ($(OS_TARGET),solaris) 607BATCHEXT=.sh 608EXEEXT= 609SHORTSUFFIX=sun 610endif 611ifeq ($(OS_TARGET),qnx) 612BATCHEXT=.sh 613EXEEXT= 614SHORTSUFFIX=qnx 615endif 616ifeq ($(OS_TARGET),netware) 617EXEEXT=.nlm 618STATICLIBPREFIX= 619SHORTSUFFIX=nw 620IMPORTLIBPREFIX=imp 621endif 622ifeq ($(OS_TARGET),netwlibc) 623EXEEXT=.nlm 624STATICLIBPREFIX= 625SHORTSUFFIX=nwl 626IMPORTLIBPREFIX=imp 627endif 628ifeq ($(OS_TARGET),macos) 629BATCHEXT= 630EXEEXT= 631DEBUGSYMEXT=.xcoff 632SHORTSUFFIX=mac 633IMPORTLIBPREFIX=imp 634endif 635ifneq ($(findstring $(OS_TARGET),darwin iphonesim),) 636BATCHEXT=.sh 637EXEEXT= 638HASSHAREDLIB=1 639SHORTSUFFIX=dwn 640EXEDBGEXT=.dSYM 641endif 642ifeq ($(OS_TARGET),gba) 643EXEEXT=.gba 644SHAREDLIBEXT=.so 645SHORTSUFFIX=gba 646endif 647ifeq ($(OS_TARGET),symbian) 648SHAREDLIBEXT=.dll 649SHORTSUFFIX=symbian 650endif 651ifeq ($(OS_TARGET),NativeNT) 652SHAREDLIBEXT=.dll 653SHORTSUFFIX=nativent 654endif 655ifeq ($(OS_TARGET),wii) 656EXEEXT=.dol 657SHAREDLIBEXT=.so 658SHORTSUFFIX=wii 659endif 660ifeq ($(OS_TARGET),aix) 661BATCHEXT=.sh 662EXEEXT= 663SHORTSUFFIX=aix 664endif 665ifeq ($(OS_TARGET),java) 666OEXT=.class 667ASMEXT=.j 668SHAREDLIBEXT=.jar 669SHORTSUFFIX=java 670endif 671ifeq ($(OS_TARGET),android) 672OEXT=.class 673ASMEXT=.j 674SHAREDLIBEXT=.jar 675SHORTSUFFIX=android 676endif 677ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),) 678FPCMADE=fpcmade.$(SHORTSUFFIX) 679ZIPSUFFIX=$(SHORTSUFFIX) 680ZIPCROSSPREFIX= 681ZIPSOURCESUFFIX=src 682ZIPEXAMPLESUFFIX=exm 683else 684FPCMADE=fpcmade.$(TARGETSUFFIX) 685ZIPSOURCESUFFIX=.source 686ZIPEXAMPLESUFFIX=.examples 687ifdef CROSSCOMPILE 688ZIPSUFFIX=.$(SOURCESUFFIX) 689ZIPCROSSPREFIX=$(TARGETSUFFIX)- 690else 691ZIPSUFFIX=.$(TARGETSUFFIX) 692ZIPCROSSPREFIX= 693endif 694endif 695ifndef ECHO 696ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH)))) 697ifeq ($(ECHO),) 698ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH)))) 699ifeq ($(ECHO),) 700ECHO= __missing_command_ECHO 701else 702ECHO:=$(firstword $(ECHO)) 703endif 704else 705ECHO:=$(firstword $(ECHO)) 706endif 707endif 708export ECHO 709ifndef DATE 710DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH)))) 711ifeq ($(DATE),) 712DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH)))) 713ifeq ($(DATE),) 714DATE= __missing_command_DATE 715else 716DATE:=$(firstword $(DATE)) 717endif 718else 719DATE:=$(firstword $(DATE)) 720endif 721endif 722export DATE 723ifndef GINSTALL 724GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH)))) 725ifeq ($(GINSTALL),) 726GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH)))) 727ifeq ($(GINSTALL),) 728GINSTALL= __missing_command_GINSTALL 729else 730GINSTALL:=$(firstword $(GINSTALL)) 731endif 732else 733GINSTALL:=$(firstword $(GINSTALL)) 734endif 735endif 736export GINSTALL 737ifndef CPPROG 738CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH)))) 739ifeq ($(CPPROG),) 740CPPROG= __missing_command_CPPROG 741else 742CPPROG:=$(firstword $(CPPROG)) 743endif 744endif 745export CPPROG 746ifndef RMPROG 747RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH)))) 748ifeq ($(RMPROG),) 749RMPROG= __missing_command_RMPROG 750else 751RMPROG:=$(firstword $(RMPROG)) 752endif 753endif 754export RMPROG 755ifndef MVPROG 756MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH)))) 757ifeq ($(MVPROG),) 758MVPROG= __missing_command_MVPROG 759else 760MVPROG:=$(firstword $(MVPROG)) 761endif 762endif 763export MVPROG 764ifndef MKDIRPROG 765MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH)))) 766ifeq ($(MKDIRPROG),) 767MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH)))) 768ifeq ($(MKDIRPROG),) 769MKDIRPROG= __missing_command_MKDIRPROG 770else 771MKDIRPROG:=$(firstword $(MKDIRPROG)) 772endif 773else 774MKDIRPROG:=$(firstword $(MKDIRPROG)) 775endif 776endif 777export MKDIRPROG 778ifndef ECHOREDIR 779ifndef inUnix 780ECHOREDIR=echo 781else 782ECHOREDIR=$(ECHO) 783endif 784endif 785ifndef COPY 786COPY:=$(CPPROG) -fp 787endif 788ifndef COPYTREE 789COPYTREE:=$(CPPROG) -Rfp 790endif 791ifndef MKDIRTREE 792MKDIRTREE:=$(MKDIRPROG) -p 793endif 794ifndef MOVE 795MOVE:=$(MVPROG) -f 796endif 797ifndef DEL 798DEL:=$(RMPROG) -f 799endif 800ifndef DELTREE 801DELTREE:=$(RMPROG) -rf 802endif 803ifndef INSTALL 804ifdef inUnix 805INSTALL:=$(GINSTALL) -c -m 644 806else 807INSTALL:=$(COPY) 808endif 809endif 810ifndef INSTALLEXE 811ifdef inUnix 812INSTALLEXE:=$(GINSTALL) -c -m 755 813else 814INSTALLEXE:=$(COPY) 815endif 816endif 817ifndef MKDIR 818MKDIR:=$(GINSTALL) -m 755 -d 819endif 820export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR 821ifndef PPUMOVE 822PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH)))) 823ifeq ($(PPUMOVE),) 824PPUMOVE= __missing_command_PPUMOVE 825else 826PPUMOVE:=$(firstword $(PPUMOVE)) 827endif 828endif 829export PPUMOVE 830ifndef FPCMAKE 831FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH)))) 832ifeq ($(FPCMAKE),) 833FPCMAKE= __missing_command_FPCMAKE 834else 835FPCMAKE:=$(firstword $(FPCMAKE)) 836endif 837endif 838export FPCMAKE 839ifndef ZIPPROG 840ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH)))) 841ifeq ($(ZIPPROG),) 842ZIPPROG= __missing_command_ZIPPROG 843else 844ZIPPROG:=$(firstword $(ZIPPROG)) 845endif 846endif 847export ZIPPROG 848ifndef TARPROG 849TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH)))) 850ifeq ($(TARPROG),) 851TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH)))) 852ifeq ($(TARPROG),) 853TARPROG= __missing_command_TARPROG 854else 855TARPROG:=$(firstword $(TARPROG)) 856endif 857else 858TARPROG:=$(firstword $(TARPROG)) 859endif 860endif 861export TARPROG 862ASNAME=$(BINUTILSPREFIX)as 863LDNAME=$(BINUTILSPREFIX)ld 864ARNAME=$(BINUTILSPREFIX)ar 865RCNAME=$(BINUTILSPREFIX)rc 866ifndef ASPROG 867ifdef CROSSBINDIR 868ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT) 869else 870ASPROG=$(ASNAME) 871endif 872endif 873ifndef LDPROG 874ifdef CROSSBINDIR 875LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT) 876else 877LDPROG=$(LDNAME) 878endif 879endif 880ifndef RCPROG 881ifdef CROSSBINDIR 882RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT) 883else 884RCPROG=$(RCNAME) 885endif 886endif 887ifndef ARPROG 888ifdef CROSSBINDIR 889ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT) 890else 891ARPROG=$(ARNAME) 892endif 893endif 894AS=$(ASPROG) 895LD=$(LDPROG) 896RC=$(RCPROG) 897AR=$(ARPROG) 898PPAS=ppas$(SRCBATCHEXT) 899ifdef inUnix 900LDCONFIG=ldconfig 901else 902LDCONFIG= 903endif 904ifdef DATE 905DATESTR:=$(shell $(DATE) +%Y%m%d) 906else 907DATESTR= 908endif 909ZIPOPT=-9 910ZIPEXT=.zip 911ifeq ($(USETAR),bz2) 912TAROPT=vj 913TAREXT=.tar.bz2 914else 915TAROPT=vz 916TAREXT=.tar.gz 917endif 918override REQUIRE_PACKAGES=rtl fpmkunit 919ifeq ($(FULL_TARGET),i386-linux) 920REQUIRE_PACKAGES_RTL=1 921REQUIRE_PACKAGES_PASZLIB=1 922REQUIRE_PACKAGES_FCL-PROCESS=1 923REQUIRE_PACKAGES_HASH=1 924REQUIRE_PACKAGES_FPMKUNIT=1 925endif 926ifeq ($(FULL_TARGET),i386-go32v2) 927REQUIRE_PACKAGES_RTL=1 928REQUIRE_PACKAGES_PASZLIB=1 929REQUIRE_PACKAGES_FCL-PROCESS=1 930REQUIRE_PACKAGES_HASH=1 931REQUIRE_PACKAGES_FPMKUNIT=1 932endif 933ifeq ($(FULL_TARGET),i386-win32) 934REQUIRE_PACKAGES_RTL=1 935REQUIRE_PACKAGES_PASZLIB=1 936REQUIRE_PACKAGES_FCL-PROCESS=1 937REQUIRE_PACKAGES_HASH=1 938REQUIRE_PACKAGES_FPMKUNIT=1 939endif 940ifeq ($(FULL_TARGET),i386-os2) 941REQUIRE_PACKAGES_RTL=1 942REQUIRE_PACKAGES_PASZLIB=1 943REQUIRE_PACKAGES_FCL-PROCESS=1 944REQUIRE_PACKAGES_HASH=1 945REQUIRE_PACKAGES_FPMKUNIT=1 946endif 947ifeq ($(FULL_TARGET),i386-freebsd) 948REQUIRE_PACKAGES_RTL=1 949REQUIRE_PACKAGES_PASZLIB=1 950REQUIRE_PACKAGES_FCL-PROCESS=1 951REQUIRE_PACKAGES_HASH=1 952REQUIRE_PACKAGES_FPMKUNIT=1 953endif 954ifeq ($(FULL_TARGET),i386-beos) 955REQUIRE_PACKAGES_RTL=1 956REQUIRE_PACKAGES_PASZLIB=1 957REQUIRE_PACKAGES_FCL-PROCESS=1 958REQUIRE_PACKAGES_HASH=1 959REQUIRE_PACKAGES_FPMKUNIT=1 960endif 961ifeq ($(FULL_TARGET),i386-haiku) 962REQUIRE_PACKAGES_RTL=1 963REQUIRE_PACKAGES_PASZLIB=1 964REQUIRE_PACKAGES_FCL-PROCESS=1 965REQUIRE_PACKAGES_HASH=1 966REQUIRE_PACKAGES_FPMKUNIT=1 967endif 968ifeq ($(FULL_TARGET),i386-netbsd) 969REQUIRE_PACKAGES_RTL=1 970REQUIRE_PACKAGES_PASZLIB=1 971REQUIRE_PACKAGES_FCL-PROCESS=1 972REQUIRE_PACKAGES_HASH=1 973REQUIRE_PACKAGES_FPMKUNIT=1 974endif 975ifeq ($(FULL_TARGET),i386-solaris) 976REQUIRE_PACKAGES_RTL=1 977REQUIRE_PACKAGES_PASZLIB=1 978REQUIRE_PACKAGES_FCL-PROCESS=1 979REQUIRE_PACKAGES_HASH=1 980REQUIRE_PACKAGES_FPMKUNIT=1 981endif 982ifeq ($(FULL_TARGET),i386-qnx) 983REQUIRE_PACKAGES_RTL=1 984REQUIRE_PACKAGES_PASZLIB=1 985REQUIRE_PACKAGES_FCL-PROCESS=1 986REQUIRE_PACKAGES_HASH=1 987REQUIRE_PACKAGES_FPMKUNIT=1 988endif 989ifeq ($(FULL_TARGET),i386-netware) 990REQUIRE_PACKAGES_RTL=1 991REQUIRE_PACKAGES_PASZLIB=1 992REQUIRE_PACKAGES_FCL-PROCESS=1 993REQUIRE_PACKAGES_HASH=1 994REQUIRE_PACKAGES_FPMKUNIT=1 995endif 996ifeq ($(FULL_TARGET),i386-openbsd) 997REQUIRE_PACKAGES_RTL=1 998REQUIRE_PACKAGES_PASZLIB=1 999REQUIRE_PACKAGES_FCL-PROCESS=1 1000REQUIRE_PACKAGES_HASH=1 1001REQUIRE_PACKAGES_FPMKUNIT=1 1002endif 1003ifeq ($(FULL_TARGET),i386-wdosx) 1004REQUIRE_PACKAGES_RTL=1 1005REQUIRE_PACKAGES_PASZLIB=1 1006REQUIRE_PACKAGES_FCL-PROCESS=1 1007REQUIRE_PACKAGES_HASH=1 1008REQUIRE_PACKAGES_FPMKUNIT=1 1009endif 1010ifeq ($(FULL_TARGET),i386-darwin) 1011REQUIRE_PACKAGES_RTL=1 1012REQUIRE_PACKAGES_PASZLIB=1 1013REQUIRE_PACKAGES_FCL-PROCESS=1 1014REQUIRE_PACKAGES_HASH=1 1015REQUIRE_PACKAGES_FPMKUNIT=1 1016endif 1017ifeq ($(FULL_TARGET),i386-emx) 1018REQUIRE_PACKAGES_RTL=1 1019REQUIRE_PACKAGES_PASZLIB=1 1020REQUIRE_PACKAGES_FCL-PROCESS=1 1021REQUIRE_PACKAGES_HASH=1 1022REQUIRE_PACKAGES_FPMKUNIT=1 1023endif 1024ifeq ($(FULL_TARGET),i386-watcom) 1025REQUIRE_PACKAGES_RTL=1 1026REQUIRE_PACKAGES_PASZLIB=1 1027REQUIRE_PACKAGES_FCL-PROCESS=1 1028REQUIRE_PACKAGES_HASH=1 1029REQUIRE_PACKAGES_FPMKUNIT=1 1030endif 1031ifeq ($(FULL_TARGET),i386-netwlibc) 1032REQUIRE_PACKAGES_RTL=1 1033REQUIRE_PACKAGES_PASZLIB=1 1034REQUIRE_PACKAGES_FCL-PROCESS=1 1035REQUIRE_PACKAGES_HASH=1 1036REQUIRE_PACKAGES_FPMKUNIT=1 1037endif 1038ifeq ($(FULL_TARGET),i386-wince) 1039REQUIRE_PACKAGES_RTL=1 1040REQUIRE_PACKAGES_PASZLIB=1 1041REQUIRE_PACKAGES_FCL-PROCESS=1 1042REQUIRE_PACKAGES_HASH=1 1043REQUIRE_PACKAGES_FPMKUNIT=1 1044endif 1045ifeq ($(FULL_TARGET),i386-embedded) 1046REQUIRE_PACKAGES_RTL=1 1047REQUIRE_PACKAGES_PASZLIB=1 1048REQUIRE_PACKAGES_FCL-PROCESS=1 1049REQUIRE_PACKAGES_HASH=1 1050REQUIRE_PACKAGES_FPMKUNIT=1 1051endif 1052ifeq ($(FULL_TARGET),i386-symbian) 1053REQUIRE_PACKAGES_RTL=1 1054REQUIRE_PACKAGES_PASZLIB=1 1055REQUIRE_PACKAGES_FCL-PROCESS=1 1056REQUIRE_PACKAGES_HASH=1 1057REQUIRE_PACKAGES_FPMKUNIT=1 1058endif 1059ifeq ($(FULL_TARGET),i386-nativent) 1060REQUIRE_PACKAGES_RTL=1 1061REQUIRE_PACKAGES_PASZLIB=1 1062REQUIRE_PACKAGES_FCL-PROCESS=1 1063REQUIRE_PACKAGES_HASH=1 1064REQUIRE_PACKAGES_FPMKUNIT=1 1065endif 1066ifeq ($(FULL_TARGET),i386-iphonesim) 1067REQUIRE_PACKAGES_RTL=1 1068REQUIRE_PACKAGES_PASZLIB=1 1069REQUIRE_PACKAGES_FCL-PROCESS=1 1070REQUIRE_PACKAGES_HASH=1 1071REQUIRE_PACKAGES_FPMKUNIT=1 1072endif 1073ifeq ($(FULL_TARGET),m68k-linux) 1074REQUIRE_PACKAGES_RTL=1 1075REQUIRE_PACKAGES_PASZLIB=1 1076REQUIRE_PACKAGES_FCL-PROCESS=1 1077REQUIRE_PACKAGES_HASH=1 1078REQUIRE_PACKAGES_FPMKUNIT=1 1079endif 1080ifeq ($(FULL_TARGET),m68k-freebsd) 1081REQUIRE_PACKAGES_RTL=1 1082REQUIRE_PACKAGES_PASZLIB=1 1083REQUIRE_PACKAGES_FCL-PROCESS=1 1084REQUIRE_PACKAGES_HASH=1 1085REQUIRE_PACKAGES_FPMKUNIT=1 1086endif 1087ifeq ($(FULL_TARGET),m68k-netbsd) 1088REQUIRE_PACKAGES_RTL=1 1089REQUIRE_PACKAGES_PASZLIB=1 1090REQUIRE_PACKAGES_FCL-PROCESS=1 1091REQUIRE_PACKAGES_HASH=1 1092REQUIRE_PACKAGES_FPMKUNIT=1 1093endif 1094ifeq ($(FULL_TARGET),m68k-amiga) 1095REQUIRE_PACKAGES_RTL=1 1096REQUIRE_PACKAGES_PASZLIB=1 1097REQUIRE_PACKAGES_FCL-PROCESS=1 1098REQUIRE_PACKAGES_HASH=1 1099REQUIRE_PACKAGES_FPMKUNIT=1 1100endif 1101ifeq ($(FULL_TARGET),m68k-atari) 1102REQUIRE_PACKAGES_RTL=1 1103REQUIRE_PACKAGES_PASZLIB=1 1104REQUIRE_PACKAGES_FCL-PROCESS=1 1105REQUIRE_PACKAGES_HASH=1 1106REQUIRE_PACKAGES_FPMKUNIT=1 1107endif 1108ifeq ($(FULL_TARGET),m68k-openbsd) 1109REQUIRE_PACKAGES_RTL=1 1110REQUIRE_PACKAGES_PASZLIB=1 1111REQUIRE_PACKAGES_FCL-PROCESS=1 1112REQUIRE_PACKAGES_HASH=1 1113REQUIRE_PACKAGES_FPMKUNIT=1 1114endif 1115ifeq ($(FULL_TARGET),m68k-palmos) 1116REQUIRE_PACKAGES_RTL=1 1117REQUIRE_PACKAGES_PASZLIB=1 1118REQUIRE_PACKAGES_FCL-PROCESS=1 1119REQUIRE_PACKAGES_HASH=1 1120REQUIRE_PACKAGES_FPMKUNIT=1 1121endif 1122ifeq ($(FULL_TARGET),m68k-embedded) 1123REQUIRE_PACKAGES_RTL=1 1124REQUIRE_PACKAGES_PASZLIB=1 1125REQUIRE_PACKAGES_FCL-PROCESS=1 1126REQUIRE_PACKAGES_HASH=1 1127REQUIRE_PACKAGES_FPMKUNIT=1 1128endif 1129ifeq ($(FULL_TARGET),powerpc-linux) 1130REQUIRE_PACKAGES_RTL=1 1131REQUIRE_PACKAGES_PASZLIB=1 1132REQUIRE_PACKAGES_FCL-PROCESS=1 1133REQUIRE_PACKAGES_HASH=1 1134REQUIRE_PACKAGES_FPMKUNIT=1 1135endif 1136ifeq ($(FULL_TARGET),powerpc-netbsd) 1137REQUIRE_PACKAGES_RTL=1 1138REQUIRE_PACKAGES_PASZLIB=1 1139REQUIRE_PACKAGES_FCL-PROCESS=1 1140REQUIRE_PACKAGES_HASH=1 1141REQUIRE_PACKAGES_FPMKUNIT=1 1142endif 1143ifeq ($(FULL_TARGET),powerpc-amiga) 1144REQUIRE_PACKAGES_RTL=1 1145REQUIRE_PACKAGES_PASZLIB=1 1146REQUIRE_PACKAGES_FCL-PROCESS=1 1147REQUIRE_PACKAGES_HASH=1 1148REQUIRE_PACKAGES_FPMKUNIT=1 1149endif 1150ifeq ($(FULL_TARGET),powerpc-macos) 1151REQUIRE_PACKAGES_RTL=1 1152REQUIRE_PACKAGES_PASZLIB=1 1153REQUIRE_PACKAGES_FCL-PROCESS=1 1154REQUIRE_PACKAGES_HASH=1 1155REQUIRE_PACKAGES_FPMKUNIT=1 1156endif 1157ifeq ($(FULL_TARGET),powerpc-darwin) 1158REQUIRE_PACKAGES_RTL=1 1159REQUIRE_PACKAGES_PASZLIB=1 1160REQUIRE_PACKAGES_FCL-PROCESS=1 1161REQUIRE_PACKAGES_HASH=1 1162REQUIRE_PACKAGES_FPMKUNIT=1 1163endif 1164ifeq ($(FULL_TARGET),powerpc-morphos) 1165REQUIRE_PACKAGES_RTL=1 1166REQUIRE_PACKAGES_PASZLIB=1 1167REQUIRE_PACKAGES_FCL-PROCESS=1 1168REQUIRE_PACKAGES_HASH=1 1169REQUIRE_PACKAGES_FPMKUNIT=1 1170endif 1171ifeq ($(FULL_TARGET),powerpc-embedded) 1172REQUIRE_PACKAGES_RTL=1 1173REQUIRE_PACKAGES_PASZLIB=1 1174REQUIRE_PACKAGES_FCL-PROCESS=1 1175REQUIRE_PACKAGES_HASH=1 1176REQUIRE_PACKAGES_FPMKUNIT=1 1177endif 1178ifeq ($(FULL_TARGET),powerpc-wii) 1179REQUIRE_PACKAGES_RTL=1 1180REQUIRE_PACKAGES_PASZLIB=1 1181REQUIRE_PACKAGES_FCL-PROCESS=1 1182REQUIRE_PACKAGES_HASH=1 1183REQUIRE_PACKAGES_FPMKUNIT=1 1184endif 1185ifeq ($(FULL_TARGET),powerpc-aix) 1186REQUIRE_PACKAGES_RTL=1 1187REQUIRE_PACKAGES_PASZLIB=1 1188REQUIRE_PACKAGES_FCL-PROCESS=1 1189REQUIRE_PACKAGES_HASH=1 1190REQUIRE_PACKAGES_FPMKUNIT=1 1191endif 1192ifeq ($(FULL_TARGET),sparc-linux) 1193REQUIRE_PACKAGES_RTL=1 1194REQUIRE_PACKAGES_PASZLIB=1 1195REQUIRE_PACKAGES_FCL-PROCESS=1 1196REQUIRE_PACKAGES_HASH=1 1197REQUIRE_PACKAGES_FPMKUNIT=1 1198endif 1199ifeq ($(FULL_TARGET),sparc-netbsd) 1200REQUIRE_PACKAGES_RTL=1 1201REQUIRE_PACKAGES_PASZLIB=1 1202REQUIRE_PACKAGES_FCL-PROCESS=1 1203REQUIRE_PACKAGES_HASH=1 1204REQUIRE_PACKAGES_FPMKUNIT=1 1205endif 1206ifeq ($(FULL_TARGET),sparc-solaris) 1207REQUIRE_PACKAGES_RTL=1 1208REQUIRE_PACKAGES_PASZLIB=1 1209REQUIRE_PACKAGES_FCL-PROCESS=1 1210REQUIRE_PACKAGES_HASH=1 1211REQUIRE_PACKAGES_FPMKUNIT=1 1212endif 1213ifeq ($(FULL_TARGET),sparc-embedded) 1214REQUIRE_PACKAGES_RTL=1 1215REQUIRE_PACKAGES_PASZLIB=1 1216REQUIRE_PACKAGES_FCL-PROCESS=1 1217REQUIRE_PACKAGES_HASH=1 1218REQUIRE_PACKAGES_FPMKUNIT=1 1219endif 1220ifeq ($(FULL_TARGET),x86_64-linux) 1221REQUIRE_PACKAGES_RTL=1 1222REQUIRE_PACKAGES_PASZLIB=1 1223REQUIRE_PACKAGES_FCL-PROCESS=1 1224REQUIRE_PACKAGES_HASH=1 1225REQUIRE_PACKAGES_FPMKUNIT=1 1226endif 1227ifeq ($(FULL_TARGET),x86_64-freebsd) 1228REQUIRE_PACKAGES_RTL=1 1229REQUIRE_PACKAGES_PASZLIB=1 1230REQUIRE_PACKAGES_FCL-PROCESS=1 1231REQUIRE_PACKAGES_HASH=1 1232REQUIRE_PACKAGES_FPMKUNIT=1 1233endif 1234ifeq ($(FULL_TARGET),x86_64-netbsd) 1235REQUIRE_PACKAGES_RTL=1 1236REQUIRE_PACKAGES_PASZLIB=1 1237REQUIRE_PACKAGES_FCL-PROCESS=1 1238REQUIRE_PACKAGES_HASH=1 1239REQUIRE_PACKAGES_FPMKUNIT=1 1240endif 1241ifeq ($(FULL_TARGET),x86_64-solaris) 1242REQUIRE_PACKAGES_RTL=1 1243REQUIRE_PACKAGES_PASZLIB=1 1244REQUIRE_PACKAGES_FCL-PROCESS=1 1245REQUIRE_PACKAGES_HASH=1 1246REQUIRE_PACKAGES_FPMKUNIT=1 1247endif 1248ifeq ($(FULL_TARGET),x86_64-openbsd) 1249REQUIRE_PACKAGES_RTL=1 1250REQUIRE_PACKAGES_PASZLIB=1 1251REQUIRE_PACKAGES_FCL-PROCESS=1 1252REQUIRE_PACKAGES_HASH=1 1253REQUIRE_PACKAGES_FPMKUNIT=1 1254endif 1255ifeq ($(FULL_TARGET),x86_64-darwin) 1256REQUIRE_PACKAGES_RTL=1 1257REQUIRE_PACKAGES_PASZLIB=1 1258REQUIRE_PACKAGES_FCL-PROCESS=1 1259REQUIRE_PACKAGES_HASH=1 1260REQUIRE_PACKAGES_FPMKUNIT=1 1261endif 1262ifeq ($(FULL_TARGET),x86_64-win64) 1263REQUIRE_PACKAGES_RTL=1 1264REQUIRE_PACKAGES_PASZLIB=1 1265REQUIRE_PACKAGES_FCL-PROCESS=1 1266REQUIRE_PACKAGES_HASH=1 1267REQUIRE_PACKAGES_FPMKUNIT=1 1268endif 1269ifeq ($(FULL_TARGET),x86_64-embedded) 1270REQUIRE_PACKAGES_RTL=1 1271REQUIRE_PACKAGES_PASZLIB=1 1272REQUIRE_PACKAGES_FCL-PROCESS=1 1273REQUIRE_PACKAGES_HASH=1 1274REQUIRE_PACKAGES_FPMKUNIT=1 1275endif 1276ifeq ($(FULL_TARGET),arm-linux) 1277REQUIRE_PACKAGES_RTL=1 1278REQUIRE_PACKAGES_PASZLIB=1 1279REQUIRE_PACKAGES_FCL-PROCESS=1 1280REQUIRE_PACKAGES_HASH=1 1281REQUIRE_PACKAGES_FPMKUNIT=1 1282endif 1283ifeq ($(FULL_TARGET),arm-palmos) 1284REQUIRE_PACKAGES_RTL=1 1285REQUIRE_PACKAGES_PASZLIB=1 1286REQUIRE_PACKAGES_FCL-PROCESS=1 1287REQUIRE_PACKAGES_HASH=1 1288REQUIRE_PACKAGES_FPMKUNIT=1 1289endif 1290ifeq ($(FULL_TARGET),arm-darwin) 1291REQUIRE_PACKAGES_RTL=1 1292REQUIRE_PACKAGES_PASZLIB=1 1293REQUIRE_PACKAGES_FCL-PROCESS=1 1294REQUIRE_PACKAGES_HASH=1 1295REQUIRE_PACKAGES_FPMKUNIT=1 1296endif 1297ifeq ($(FULL_TARGET),arm-wince) 1298REQUIRE_PACKAGES_RTL=1 1299REQUIRE_PACKAGES_PASZLIB=1 1300REQUIRE_PACKAGES_FCL-PROCESS=1 1301REQUIRE_PACKAGES_HASH=1 1302REQUIRE_PACKAGES_FPMKUNIT=1 1303endif 1304ifeq ($(FULL_TARGET),arm-gba) 1305REQUIRE_PACKAGES_RTL=1 1306REQUIRE_PACKAGES_PASZLIB=1 1307REQUIRE_PACKAGES_FCL-PROCESS=1 1308REQUIRE_PACKAGES_HASH=1 1309REQUIRE_PACKAGES_FPMKUNIT=1 1310endif 1311ifeq ($(FULL_TARGET),arm-nds) 1312REQUIRE_PACKAGES_RTL=1 1313REQUIRE_PACKAGES_PASZLIB=1 1314REQUIRE_PACKAGES_FCL-PROCESS=1 1315REQUIRE_PACKAGES_HASH=1 1316REQUIRE_PACKAGES_FPMKUNIT=1 1317endif 1318ifeq ($(FULL_TARGET),arm-embedded) 1319REQUIRE_PACKAGES_RTL=1 1320REQUIRE_PACKAGES_PASZLIB=1 1321REQUIRE_PACKAGES_FCL-PROCESS=1 1322REQUIRE_PACKAGES_HASH=1 1323REQUIRE_PACKAGES_FPMKUNIT=1 1324endif 1325ifeq ($(FULL_TARGET),arm-symbian) 1326REQUIRE_PACKAGES_RTL=1 1327REQUIRE_PACKAGES_PASZLIB=1 1328REQUIRE_PACKAGES_FCL-PROCESS=1 1329REQUIRE_PACKAGES_HASH=1 1330REQUIRE_PACKAGES_FPMKUNIT=1 1331endif 1332ifeq ($(FULL_TARGET),powerpc64-linux) 1333REQUIRE_PACKAGES_RTL=1 1334REQUIRE_PACKAGES_PASZLIB=1 1335REQUIRE_PACKAGES_FCL-PROCESS=1 1336REQUIRE_PACKAGES_HASH=1 1337REQUIRE_PACKAGES_FPMKUNIT=1 1338endif 1339ifeq ($(FULL_TARGET),powerpc64-darwin) 1340REQUIRE_PACKAGES_RTL=1 1341REQUIRE_PACKAGES_PASZLIB=1 1342REQUIRE_PACKAGES_FCL-PROCESS=1 1343REQUIRE_PACKAGES_HASH=1 1344REQUIRE_PACKAGES_FPMKUNIT=1 1345endif 1346ifeq ($(FULL_TARGET),powerpc64-embedded) 1347REQUIRE_PACKAGES_RTL=1 1348REQUIRE_PACKAGES_PASZLIB=1 1349REQUIRE_PACKAGES_FCL-PROCESS=1 1350REQUIRE_PACKAGES_HASH=1 1351REQUIRE_PACKAGES_FPMKUNIT=1 1352endif 1353ifeq ($(FULL_TARGET),powerpc64-aix) 1354REQUIRE_PACKAGES_RTL=1 1355REQUIRE_PACKAGES_PASZLIB=1 1356REQUIRE_PACKAGES_FCL-PROCESS=1 1357REQUIRE_PACKAGES_HASH=1 1358REQUIRE_PACKAGES_FPMKUNIT=1 1359endif 1360ifeq ($(FULL_TARGET),avr-embedded) 1361REQUIRE_PACKAGES_RTL=1 1362REQUIRE_PACKAGES_PASZLIB=1 1363REQUIRE_PACKAGES_FCL-PROCESS=1 1364REQUIRE_PACKAGES_HASH=1 1365REQUIRE_PACKAGES_FPMKUNIT=1 1366endif 1367ifeq ($(FULL_TARGET),armeb-linux) 1368REQUIRE_PACKAGES_RTL=1 1369REQUIRE_PACKAGES_PASZLIB=1 1370REQUIRE_PACKAGES_FCL-PROCESS=1 1371REQUIRE_PACKAGES_HASH=1 1372REQUIRE_PACKAGES_FPMKUNIT=1 1373endif 1374ifeq ($(FULL_TARGET),armeb-embedded) 1375REQUIRE_PACKAGES_RTL=1 1376REQUIRE_PACKAGES_PASZLIB=1 1377REQUIRE_PACKAGES_FCL-PROCESS=1 1378REQUIRE_PACKAGES_HASH=1 1379REQUIRE_PACKAGES_FPMKUNIT=1 1380endif 1381ifeq ($(FULL_TARGET),mips-linux) 1382REQUIRE_PACKAGES_RTL=1 1383REQUIRE_PACKAGES_PASZLIB=1 1384REQUIRE_PACKAGES_FCL-PROCESS=1 1385REQUIRE_PACKAGES_HASH=1 1386REQUIRE_PACKAGES_FPMKUNIT=1 1387endif 1388ifeq ($(FULL_TARGET),mipsel-linux) 1389REQUIRE_PACKAGES_RTL=1 1390REQUIRE_PACKAGES_PASZLIB=1 1391REQUIRE_PACKAGES_FCL-PROCESS=1 1392REQUIRE_PACKAGES_HASH=1 1393REQUIRE_PACKAGES_FPMKUNIT=1 1394endif 1395ifeq ($(FULL_TARGET),jvm-java) 1396REQUIRE_PACKAGES_RTL=1 1397REQUIRE_PACKAGES_PASZLIB=1 1398REQUIRE_PACKAGES_FCL-PROCESS=1 1399REQUIRE_PACKAGES_HASH=1 1400REQUIRE_PACKAGES_FPMKUNIT=1 1401endif 1402ifeq ($(FULL_TARGET),jvm-android) 1403REQUIRE_PACKAGES_RTL=1 1404REQUIRE_PACKAGES_PASZLIB=1 1405REQUIRE_PACKAGES_FCL-PROCESS=1 1406REQUIRE_PACKAGES_HASH=1 1407REQUIRE_PACKAGES_FPMKUNIT=1 1408endif 1409ifdef REQUIRE_PACKAGES_RTL 1410PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR)))))) 1411ifneq ($(PACKAGEDIR_RTL),) 1412ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)),) 1413UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX) 1414else 1415UNITDIR_RTL=$(PACKAGEDIR_RTL) 1416endif 1417ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX)),) 1418UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX) 1419else 1420ifneq ($(wildcard $(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX)),) 1421UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX) 1422else 1423UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL) 1424endif 1425endif 1426ifdef CHECKDEPEND 1427$(PACKAGEDIR_RTL)/$(OS_TARGET)/$(FPCMADE): 1428 $(MAKE) -C $(PACKAGEDIR_RTL)/$(OS_TARGET) $(FPCMADE) 1429override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(OS_TARGET)/$(FPCMADE) 1430endif 1431else 1432PACKAGEDIR_RTL= 1433UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR))))) 1434ifneq ($(UNITDIR_RTL),) 1435UNITDIR_RTL:=$(firstword $(UNITDIR_RTL)) 1436else 1437UNITDIR_RTL= 1438endif 1439endif 1440ifdef UNITDIR_RTL 1441override COMPILER_UNITDIR+=$(UNITDIR_RTL) 1442endif 1443ifdef UNITDIR_FPMAKE_RTL 1444override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_RTL) 1445endif 1446endif 1447ifdef REQUIRE_PACKAGES_PASZLIB 1448PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR)))))) 1449ifneq ($(PACKAGEDIR_PASZLIB),) 1450ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),) 1451UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX) 1452else 1453UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB) 1454endif 1455ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(SOURCESUFFIX)),) 1456UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(SOURCESUFFIX) 1457else 1458ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units_bs/$(SOURCESUFFIX)),) 1459UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)/units_bs/$(SOURCESUFFIX) 1460else 1461UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB) 1462endif 1463endif 1464ifdef CHECKDEPEND 1465$(PACKAGEDIR_PASZLIB)/$(FPCMADE): 1466 $(MAKE) -C $(PACKAGEDIR_PASZLIB) $(FPCMADE) 1467override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE) 1468endif 1469else 1470PACKAGEDIR_PASZLIB= 1471UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR))))) 1472ifneq ($(UNITDIR_PASZLIB),) 1473UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB)) 1474else 1475UNITDIR_PASZLIB= 1476endif 1477endif 1478ifdef UNITDIR_PASZLIB 1479override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB) 1480endif 1481ifdef UNITDIR_FPMAKE_PASZLIB 1482override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_PASZLIB) 1483endif 1484endif 1485ifdef REQUIRE_PACKAGES_FCL-PROCESS 1486PACKAGEDIR_FCL-PROCESS:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Makefile.fpc,$(PACKAGESDIR)))))) 1487ifneq ($(PACKAGEDIR_FCL-PROCESS),) 1488ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),) 1489UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX) 1490else 1491UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS) 1492endif 1493ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(SOURCESUFFIX)),) 1494UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units/$(SOURCESUFFIX) 1495else 1496ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX)),) 1497UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX) 1498else 1499UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS) 1500endif 1501endif 1502ifdef CHECKDEPEND 1503$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE): 1504 $(MAKE) -C $(PACKAGEDIR_FCL-PROCESS) $(FPCMADE) 1505override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE) 1506endif 1507else 1508PACKAGEDIR_FCL-PROCESS= 1509UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR))))) 1510ifneq ($(UNITDIR_FCL-PROCESS),) 1511UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS)) 1512else 1513UNITDIR_FCL-PROCESS= 1514endif 1515endif 1516ifdef UNITDIR_FCL-PROCESS 1517override COMPILER_UNITDIR+=$(UNITDIR_FCL-PROCESS) 1518endif 1519ifdef UNITDIR_FPMAKE_FCL-PROCESS 1520override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FCL-PROCESS) 1521endif 1522endif 1523ifdef REQUIRE_PACKAGES_HASH 1524PACKAGEDIR_HASH:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /hash/Makefile.fpc,$(PACKAGESDIR)))))) 1525ifneq ($(PACKAGEDIR_HASH),) 1526ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),) 1527UNITDIR_HASH=$(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX) 1528else 1529UNITDIR_HASH=$(PACKAGEDIR_HASH) 1530endif 1531ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(SOURCESUFFIX)),) 1532UNITDIR_FPMAKE_HASH=$(PACKAGEDIR_HASH)/units/$(SOURCESUFFIX) 1533else 1534ifneq ($(wildcard $(PACKAGEDIR_HASH)/units_bs/$(SOURCESUFFIX)),) 1535UNITDIR_FPMAKE_HASH=$(PACKAGEDIR_HASH)/units_bs/$(SOURCESUFFIX) 1536else 1537UNITDIR_FPMAKE_HASH=$(PACKAGEDIR_HASH) 1538endif 1539endif 1540ifdef CHECKDEPEND 1541$(PACKAGEDIR_HASH)/$(FPCMADE): 1542 $(MAKE) -C $(PACKAGEDIR_HASH) $(FPCMADE) 1543override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE) 1544endif 1545else 1546PACKAGEDIR_HASH= 1547UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR))))) 1548ifneq ($(UNITDIR_HASH),) 1549UNITDIR_HASH:=$(firstword $(UNITDIR_HASH)) 1550else 1551UNITDIR_HASH= 1552endif 1553endif 1554ifdef UNITDIR_HASH 1555override COMPILER_UNITDIR+=$(UNITDIR_HASH) 1556endif 1557ifdef UNITDIR_FPMAKE_HASH 1558override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_HASH) 1559endif 1560endif 1561ifdef REQUIRE_PACKAGES_FPMKUNIT 1562PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR)))))) 1563ifneq ($(PACKAGEDIR_FPMKUNIT),) 1564ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),) 1565UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX) 1566else 1567UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) 1568endif 1569ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),) 1570UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX) 1571else 1572ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),) 1573UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX) 1574else 1575UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT) 1576endif 1577endif 1578ifdef CHECKDEPEND 1579$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE): 1580 $(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE) 1581override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE) 1582endif 1583else 1584PACKAGEDIR_FPMKUNIT= 1585UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR))))) 1586ifneq ($(UNITDIR_FPMKUNIT),) 1587UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT)) 1588else 1589UNITDIR_FPMKUNIT= 1590endif 1591endif 1592ifdef UNITDIR_FPMKUNIT 1593override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT) 1594endif 1595ifdef UNITDIR_FPMAKE_FPMKUNIT 1596override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT) 1597endif 1598endif 1599ifndef NOCPUDEF 1600override FPCOPTDEF=$(ARCH) 1601endif 1602ifneq ($(OS_TARGET),$(OS_SOURCE)) 1603override FPCOPT+=-T$(OS_TARGET) 1604endif 1605ifneq ($(CPU_TARGET),$(CPU_SOURCE)) 1606override FPCOPT+=-P$(ARCH) 1607endif 1608ifeq ($(OS_SOURCE),openbsd) 1609override FPCOPT+=-FD$(NEW_BINUTILS_PATH) 1610override FPCMAKEOPT+=-FD$(NEW_BINUTILS_PATH) 1611endif 1612ifndef CROSSBOOTSTRAP 1613ifneq ($(BINUTILSPREFIX),) 1614override FPCOPT+=-XP$(BINUTILSPREFIX) 1615endif 1616ifneq ($(BINUTILSPREFIX),) 1617override FPCOPT+=-Xr$(RLINKPATH) 1618endif 1619endif 1620ifndef CROSSCOMPILE 1621ifneq ($(BINUTILSPREFIX),) 1622override FPCMAKEOPT+=-XP$(BINUTILSPREFIX) 1623endif 1624endif 1625ifdef UNITDIR 1626override FPCOPT+=$(addprefix -Fu,$(UNITDIR)) 1627endif 1628ifdef LIBDIR 1629override FPCOPT+=$(addprefix -Fl,$(LIBDIR)) 1630endif 1631ifdef OBJDIR 1632override FPCOPT+=$(addprefix -Fo,$(OBJDIR)) 1633endif 1634ifdef INCDIR 1635override FPCOPT+=$(addprefix -Fi,$(INCDIR)) 1636endif 1637ifdef LINKSMART 1638override FPCOPT+=-XX 1639endif 1640ifdef CREATESMART 1641override FPCOPT+=-CX 1642endif 1643ifdef DEBUG 1644override FPCOPT+=-gl 1645override FPCOPTDEF+=DEBUG 1646endif 1647ifdef RELEASE 1648ifneq ($(findstring 2.0.,$(FPC_VERSION)),) 1649ifeq ($(CPU_TARGET),i386) 1650FPCCPUOPT:=-OG2p3 1651endif 1652ifeq ($(CPU_TARGET),powerpc) 1653FPCCPUOPT:=-O1r 1654endif 1655else 1656FPCCPUOPT:=-O2 1657endif 1658override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n 1659override FPCOPTDEF+=RELEASE 1660endif 1661ifdef STRIP 1662override FPCOPT+=-Xs 1663endif 1664ifdef OPTIMIZE 1665override FPCOPT+=-O2 1666endif 1667ifdef VERBOSE 1668override FPCOPT+=-vwni 1669endif 1670ifdef COMPILER_OPTIONS 1671override FPCOPT+=$(COMPILER_OPTIONS) 1672endif 1673ifdef COMPILER_UNITDIR 1674override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR)) 1675endif 1676ifdef COMPILER_LIBRARYDIR 1677override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR)) 1678endif 1679ifdef COMPILER_OBJECTDIR 1680override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR)) 1681endif 1682ifdef COMPILER_INCLUDEDIR 1683override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR)) 1684endif 1685ifdef CROSSBINDIR 1686override FPCOPT+=-FD$(CROSSBINDIR) 1687endif 1688ifdef COMPILER_TARGETDIR 1689override FPCOPT+=-FE$(COMPILER_TARGETDIR) 1690ifeq ($(COMPILER_TARGETDIR),.) 1691override TARGETDIRPREFIX= 1692else 1693override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/ 1694endif 1695endif 1696ifdef COMPILER_UNITTARGETDIR 1697override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR) 1698ifeq ($(COMPILER_UNITTARGETDIR),.) 1699override UNITTARGETDIRPREFIX= 1700else 1701override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/ 1702endif 1703else 1704ifdef COMPILER_TARGETDIR 1705override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR) 1706override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX) 1707endif 1708endif 1709ifdef CREATESHARED 1710override FPCOPT+=-Cg 1711endif 1712ifneq ($(findstring $(OS_TARGET),freebsd openbsd netbsd linux solaris),) 1713ifeq ($(CPU_TARGET),x86_64) 1714override FPCOPT+=-Cg 1715endif 1716endif 1717ifdef LINKSHARED 1718endif 1719ifdef OPT 1720override FPCOPT+=$(OPT) 1721endif 1722ifdef FPCOPTDEF 1723override FPCOPT+=$(addprefix -d,$(FPCOPTDEF)) 1724endif 1725ifdef CFGFILE 1726override FPCOPT+=@$(CFGFILE) 1727endif 1728ifdef USEENV 1729override FPCEXTCMD:=$(FPCOPT) 1730override FPCOPT:=!FPCEXTCMD 1731export FPCEXTCMD 1732endif 1733override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET) 1734override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE) 1735ifneq ($(AFULL_TARGET),$(AFULL_SOURCE)) 1736override ACROSSCOMPILE=1 1737endif 1738ifdef ACROSSCOMPILE 1739override FPCOPT+=$(CROSSOPT) 1740endif 1741override COMPILER:=$(FPC) $(FPCOPT) 1742ifeq (,$(findstring -s ,$(COMPILER))) 1743EXECPPAS= 1744else 1745ifeq ($(FULL_SOURCE),$(FULL_TARGET)) 1746ifdef RUNBATCH 1747EXECPPAS:=@$(RUNBATCH) $(PPAS) 1748else 1749EXECPPAS:=@$(PPAS) 1750endif 1751endif 1752endif 1753ifdef TARGET_RSTS 1754override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS)) 1755override CLEANRSTFILES+=$(RSTFILES) 1756endif 1757.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall 1758ifdef INSTALL_UNITS 1759override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS)) 1760endif 1761ifdef INSTALL_BUILDUNIT 1762override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES)) 1763endif 1764ifdef INSTALLPPUFILES 1765override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) 1766ifneq ($(UNITTARGETDIRPREFIX),) 1767override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES))) 1768override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES)))) 1769endif 1770override INSTALL_CREATEPACKAGEFPC=1 1771endif 1772ifdef INSTALLEXEFILES 1773ifneq ($(TARGETDIRPREFIX),) 1774override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES))) 1775endif 1776endif 1777fpc_install: all $(INSTALLTARGET) 1778ifdef INSTALLEXEFILES 1779 $(MKDIR) $(INSTALL_BINDIR) 1780 $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR) 1781endif 1782ifdef INSTALL_CREATEPACKAGEFPC 1783ifdef FPCMAKE 1784ifdef PACKAGE_VERSION 1785ifneq ($(wildcard Makefile.fpc),) 1786 $(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc 1787 $(MKDIR) $(INSTALL_UNITDIR) 1788 $(INSTALL) Package.fpc $(INSTALL_UNITDIR) 1789endif 1790endif 1791endif 1792endif 1793ifdef INSTALLPPUFILES 1794 $(MKDIR) $(INSTALL_UNITDIR) 1795 $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR) 1796ifneq ($(INSTALLPPULINKFILES),) 1797 $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR) 1798endif 1799ifneq ($(wildcard $(LIB_FULLNAME)),) 1800 $(MKDIR) $(INSTALL_LIBDIR) 1801 $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR) 1802ifdef inUnix 1803 ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME) 1804endif 1805endif 1806endif 1807ifdef INSTALL_FILES 1808 $(MKDIR) $(INSTALL_DATADIR) 1809 $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR) 1810endif 1811fpc_sourceinstall: distclean 1812 $(MKDIR) $(INSTALL_SOURCEDIR) 1813 $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR) 1814fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS)) 1815ifdef HASEXAMPLES 1816 $(MKDIR) $(INSTALL_EXAMPLEDIR) 1817endif 1818ifdef EXAMPLESOURCEFILES 1819 $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR) 1820endif 1821ifdef TARGET_EXAMPLEDIRS 1822 $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR) 1823endif 1824.PHONY: fpc_distinstall 1825fpc_distinstall: install exampleinstall 1826.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall 1827ifndef PACKDIR 1828ifndef inUnix 1829PACKDIR=$(BASEDIR)/../fpc-pack 1830else 1831PACKDIR=/tmp/fpc-pack 1832endif 1833endif 1834ifndef ZIPNAME 1835ifdef DIST_ZIPNAME 1836ZIPNAME=$(DIST_ZIPNAME) 1837else 1838ZIPNAME=$(PACKAGE_NAME) 1839endif 1840endif 1841ifndef FULLZIPNAME 1842FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX) 1843endif 1844ifndef ZIPTARGET 1845ifdef DIST_ZIPTARGET 1846ZIPTARGET=DIST_ZIPTARGET 1847else 1848ZIPTARGET=install 1849endif 1850endif 1851ifndef USEZIP 1852ifdef inUnix 1853USETAR=1 1854endif 1855endif 1856ifndef inUnix 1857USEZIPWRAPPER=1 1858endif 1859ifdef USEZIPWRAPPER 1860ZIPPATHSEP=$(PATHSEP) 1861ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT)) 1862else 1863ZIPPATHSEP=/ 1864endif 1865ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR)) 1866ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR)) 1867ifdef USETAR 1868ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT) 1869ZIPCMD_ZIP:=$(TARPROG) c$(TAROPT)f $(ZIPDESTFILE) * 1870else 1871ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT) 1872ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) * 1873endif 1874fpc_zipinstall: 1875 $(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1 1876 $(MKDIR) $(DIST_DESTDIR) 1877 $(DEL) $(ZIPDESTFILE) 1878ifdef USEZIPWRAPPER 1879ifneq ($(ECHOREDIR),echo) 1880 $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER) 1881 $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER) 1882 $(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER) 1883else 1884 echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER) 1885 echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER) 1886 echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER) 1887endif 1888ifdef inUnix 1889 /bin/sh $(ZIPWRAPPER) 1890else 1891ifdef RUNBATCH 1892 $(RUNBATCH) $(ZIPWRAPPER) 1893else 1894 $(ZIPWRAPPER) 1895endif 1896endif 1897 $(DEL) $(ZIPWRAPPER) 1898else 1899 $(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE) 1900endif 1901 $(DELTREE) $(PACKDIR) 1902fpc_zipsourceinstall: 1903 $(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX) 1904fpc_zipexampleinstall: 1905ifdef HASEXAMPLES 1906 $(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX) 1907endif 1908fpc_zipdistinstall: 1909 $(MAKE) fpc_zipinstall ZIPTARGET=distinstall 1910.PHONY: fpc_clean fpc_cleanall fpc_distclean 1911ifdef EXEFILES 1912override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES)) 1913override CLEANEXEDBGFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEDBGFILES)) 1914endif 1915ifdef CLEAN_PROGRAMS 1916override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEEXT), $(CLEAN_PROGRAMS))) 1917override CLEANEXEDBGFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEDBGEXT), $(CLEAN_PROGRAMS))) 1918endif 1919ifdef CLEAN_UNITS 1920override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS)) 1921endif 1922ifdef CLEANPPUFILES 1923override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) 1924ifdef DEBUGSYMEXT 1925override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 1926endif 1927override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES)) 1928override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES))) 1929endif 1930fpc_clean: $(CLEANTARGET) 1931ifdef CLEANEXEFILES 1932 -$(DEL) $(CLEANEXEFILES) 1933endif 1934ifdef CLEANEXEDBGFILES 1935 -$(DELTREE) $(CLEANEXEDBGFILES) 1936endif 1937ifdef CLEANPPUFILES 1938 -$(DEL) $(CLEANPPUFILES) 1939endif 1940ifneq ($(CLEANPPULINKFILES),) 1941 -$(DEL) $(CLEANPPULINKFILES) 1942endif 1943ifdef CLEANRSTFILES 1944 -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES)) 1945endif 1946ifdef CLEAN_FILES 1947 -$(DEL) $(CLEAN_FILES) 1948endif 1949ifdef LIB_NAME 1950 -$(DEL) $(LIB_NAME) $(LIB_FULLNAME) 1951endif 1952 -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE) 1953 -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) 1954fpc_cleanall: $(CLEANTARGET) 1955ifdef CLEANEXEFILES 1956 -$(DEL) $(CLEANEXEFILES) 1957endif 1958ifdef COMPILER_UNITTARGETDIR 1959ifdef CLEANPPUFILES 1960 -$(DEL) $(CLEANPPUFILES) 1961endif 1962ifneq ($(CLEANPPULINKFILES),) 1963 -$(DEL) $(CLEANPPULINKFILES) 1964endif 1965ifdef CLEANRSTFILES 1966 -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES)) 1967endif 1968endif 1969ifdef CLEAN_FILES 1970 -$(DEL) $(CLEAN_FILES) 1971endif 1972 -$(DELTREE) units 1973 -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT) 1974ifneq ($(PPUEXT),.ppu) 1975 -$(DEL) *.o *.ppu *.a 1976endif 1977 -$(DELTREE) *$(SMARTEXT) 1978 -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE) 1979 -$(DEL) *_ppas$(BATCHEXT) 1980ifdef AOUTEXT 1981 -$(DEL) *$(AOUTEXT) 1982endif 1983ifdef DEBUGSYMEXT 1984 -$(DEL) *$(DEBUGSYMEXT) 1985endif 1986fpc_distclean: cleanall 1987.PHONY: fpc_baseinfo 1988override INFORULES+=fpc_baseinfo 1989fpc_baseinfo: 1990 @$(ECHO) 1991 @$(ECHO) == Package info == 1992 @$(ECHO) Package Name..... $(PACKAGE_NAME) 1993 @$(ECHO) Package Version.. $(PACKAGE_VERSION) 1994 @$(ECHO) 1995 @$(ECHO) == Configuration info == 1996 @$(ECHO) 1997 @$(ECHO) FPC.......... $(FPC) 1998 @$(ECHO) FPC Version.. $(FPC_VERSION) 1999 @$(ECHO) Source CPU... $(CPU_SOURCE) 2000 @$(ECHO) Target CPU... $(CPU_TARGET) 2001 @$(ECHO) Source OS.... $(OS_SOURCE) 2002 @$(ECHO) Target OS.... $(OS_TARGET) 2003 @$(ECHO) Full Source.. $(FULL_SOURCE) 2004 @$(ECHO) Full Target.. $(FULL_TARGET) 2005 @$(ECHO) SourceSuffix. $(SOURCESUFFIX) 2006 @$(ECHO) TargetSuffix. $(TARGETSUFFIX) 2007 @$(ECHO) FPC fpmake... $(FPCFPMAKE) 2008 @$(ECHO) 2009 @$(ECHO) == Directory info == 2010 @$(ECHO) 2011 @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES) 2012 @$(ECHO) 2013 @$(ECHO) Basedir......... $(BASEDIR) 2014 @$(ECHO) FPCDir.......... $(FPCDIR) 2015 @$(ECHO) CrossBinDir..... $(CROSSBINDIR) 2016 @$(ECHO) UnitsDir........ $(UNITSDIR) 2017 @$(ECHO) PackagesDir..... $(PACKAGESDIR) 2018 @$(ECHO) 2019 @$(ECHO) GCC library..... $(GCCLIBDIR) 2020 @$(ECHO) Other library... $(OTHERLIBDIR) 2021 @$(ECHO) 2022 @$(ECHO) == Tools info == 2023 @$(ECHO) 2024 @$(ECHO) As........ $(AS) 2025 @$(ECHO) …
Large files files are truncated, but you can click here to view the full file