/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
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) Ld........ $(LD)
2026 @$(ECHO) Ar........ $(AR)
2027 @$(ECHO) Rc........ $(RC)
2028 @$(ECHO)
2029 @$(ECHO) Mv........ $(MVPROG)
2030 @$(ECHO) Cp........ $(CPPROG)
2031 @$(ECHO) Rm........ $(RMPROG)
2032 @$(ECHO) GInstall.. $(GINSTALL)
2033 @$(ECHO) Echo...... $(ECHO)
2034 @$(ECHO) Shell..... $(SHELL)
2035 @$(ECHO) Date...... $(DATE)
2036 @$(ECHO) FPCMake... $(FPCMAKE)
2037 @$(ECHO) PPUMove... $(PPUMOVE)
2038 @$(ECHO) Zip....... $(ZIPPROG)
2039 @$(ECHO)
2040 @$(ECHO) == Object info ==
2041 @$(ECHO)
2042 @$(ECHO) Target Loaders........ $(TARGET_LOADERS)
2043 @$(ECHO) Target Units.......... $(TARGET_UNITS)
2044 @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
2045 @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
2046 @$(ECHO) Target Dirs........... $(TARGET_DIRS)
2047 @$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
2048 @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
2049 @$(ECHO)
2050 @$(ECHO) Clean Units......... $(CLEAN_UNITS)
2051 @$(ECHO) Clean Files......... $(CLEAN_FILES)
2052 @$(ECHO)
2053 @$(ECHO) Install Units....... $(INSTALL_UNITS)
2054 @$(ECHO) Install Files....... $(INSTALL_FILES)
2055 @$(ECHO)
2056 @$(ECHO) == Install info ==
2057 @$(ECHO)
2058 @$(ECHO) DateStr.............. $(DATESTR)
2059 @$(ECHO) ZipName.............. $(ZIPNAME)
2060 @$(ECHO) ZipPrefix............ $(ZIPPREFIX)
2061 @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX)
2062 @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
2063 @$(ECHO) FullZipName.......... $(FULLZIPNAME)
2064 @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
2065 @$(ECHO)
2066 @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
2067 @$(ECHO) Install binary dir... $(INSTALL_BINDIR)
2068 @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
2069 @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
2070 @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
2071 @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
2072 @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
2073 @$(ECHO) Install data dir..... $(INSTALL_DATADIR)
2074 @$(ECHO)
2075 @$(ECHO) Dist destination dir. $(DIST_DESTDIR)
2076 @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
2077 @$(ECHO)
2078.PHONY: fpc_info
2079fpc_info: $(INFORULES)
2080.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
2081 fpc_makefile_dirs
2082fpc_makefile:
2083 $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
2084fpc_makefile_sub1:
2085ifdef TARGET_DIRS
2086 $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
2087endif
2088ifdef TARGET_EXAMPLEDIRS
2089 $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
2090endif
2091fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
2092fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
2093fpc_makefiles: fpc_makefile fpc_makefile_dirs
2094ifdef TARGET_DIRS_TARGET_DIRS
2095TARGET_DIRS_all:
2096 $(MAKE) -C TARGET_DIRS all
2097TARGET_DIRS_debug:
2098 $(MAKE) -C TARGET_DIRS debug
2099TARGET_DIRS_smart:
2100 $(MAKE) -C TARGET_DIRS smart
2101TARGET_DIRS_release:
2102 $(MAKE) -C TARGET_DIRS release
2103TARGET_DIRS_units:
2104 $(MAKE) -C TARGET_DIRS units
2105TARGET_DIRS_examples:
2106 $(MAKE) -C TARGET_DIRS examples
2107TARGET_DIRS_shared:
2108 $(MAKE) -C TARGET_DIRS shared
2109TARGET_DIRS_install:
2110 $(MAKE) -C TARGET_DIRS install
2111TARGET_DIRS_sourceinstall:
2112 $(MAKE) -C TARGET_DIRS sourceinstall
2113TARGET_DIRS_exampleinstall:
2114 $(MAKE) -C TARGET_DIRS exampleinstall
2115TARGET_DIRS_distinstall:
2116 $(MAKE) -C TARGET_DIRS distinstall
2117TARGET_DIRS_zipinstall:
2118 $(MAKE) -C TARGET_DIRS zipinstall
2119TARGET_DIRS_zipsourceinstall:
2120 $(MAKE) -C TARGET_DIRS zipsourceinstall
2121TARGET_DIRS_zipexampleinstall:
2122 $(MAKE) -C TARGET_DIRS zipexampleinstall
2123TARGET_DIRS_zipdistinstall:
2124 $(MAKE) -C TARGET_DIRS zipdistinstall
2125TARGET_DIRS_clean:
2126 $(MAKE) -C TARGET_DIRS clean
2127TARGET_DIRS_distclean:
2128 $(MAKE) -C TARGET_DIRS distclean
2129TARGET_DIRS_cleanall:
2130 $(MAKE) -C TARGET_DIRS cleanall
2131TARGET_DIRS_info:
2132 $(MAKE) -C TARGET_DIRS info
2133TARGET_DIRS_makefiles:
2134 $(MAKE) -C TARGET_DIRS makefiles
2135TARGET_DIRS:
2136 $(MAKE) -C TARGET_DIRS all
2137.PHONY: TARGET_DIRS_all TARGET_DIRS_debug TARGET_DIRS_smart TARGET_DIRS_release TARGET_DIRS_units TARGET_DIRS_examples TARGET_DIRS_shared TARGET_DIRS_install TARGET_DIRS_sourceinstall TARGET_DIRS_exampleinstall TARGET_DIRS_distinstall TARGET_DIRS_zipinstall TARGET_DIRS_zipsourceinstall TARGET_DIRS_zipexampleinstall TARGET_DIRS_zipdistinstall TARGET_DIRS_clean TARGET_DIRS_distclean TARGET_DIRS_cleanall TARGET_DIRS_info TARGET_DIRS_makefiles TARGET_DIRS
2138endif
2139ifdef TARGET_EXAMPLEDIRS_TARGET_EXAMPLEDIRS
2140TARGET_EXAMPLEDIRS_all:
2141 $(MAKE) -C TARGET_EXAMPLEDIRS all
2142TARGET_EXAMPLEDIRS_debug:
2143 $(MAKE) -C TARGET_EXAMPLEDIRS debug
2144TARGET_EXAMPLEDIRS_smart:
2145 $(MAKE) -C TARGET_EXAMPLEDIRS smart
2146TARGET_EXAMPLEDIRS_release:
2147 $(MAKE) -C TARGET_EXAMPLEDIRS release
2148TARGET_EXAMPLEDIRS_units:
2149 $(MAKE) -C TARGET_EXAMPLEDIRS units
2150TARGET_EXAMPLEDIRS_examples:
2151 $(MAKE) -C TARGET_EXAMPLEDIRS examples
2152TARGET_EXAMPLEDIRS_shared:
2153 $(MAKE) -C TARGET_EXAMPLEDIRS shared
2154TARGET_EXAMPLEDIRS_install:
2155 $(MAKE) -C TARGET_EXAMPLEDIRS install
2156TARGET_EXAMPLEDIRS_sourceinstall:
2157 $(MAKE) -C TARGET_EXAMPLEDIRS sourceinstall
2158TARGET_EXAMPLEDIRS_exampleinstall:
2159 $(MAKE) -C TARGET_EXAMPLEDIRS exampleinstall
2160TARGET_EXAMPLEDIRS_distinstall:
2161 $(MAKE) -C TARGET_EXAMPLEDIRS distinstall
2162TARGET_EXAMPLEDIRS_zipinstall:
2163 $(MAKE) -C TARGET_EXAMPLEDIRS zipinstall
2164TARGET_EXAMPLEDIRS_zipsourceinstall:
2165 $(MAKE) -C TARGET_EXAMPLEDIRS zipsourceinstall
2166TARGET_EXAMPLEDIRS_zipexampleinstall:
2167 $(MAKE) -C TARGET_EXAMPLEDIRS zipexampleinstall
2168TARGET_EXAMPLEDIRS_zipdistinstall:
2169 $(MAKE) -C TARGET_EXAMPLEDIRS zipdistinstall
2170TARGET_EXAMPLEDIRS_clean:
2171 $(MAKE) -C TARGET_EXAMPLEDIRS clean
2172TARGET_EXAMPLEDIRS_distclean:
2173 $(MAKE) -C TARGET_EXAMPLEDIRS distclean
2174TARGET_EXAMPLEDIRS_cleanall:
2175 $(MAKE) -C TARGET_EXAMPLEDIRS cleanall
2176TARGET_EXAMPLEDIRS_info:
2177 $(MAKE) -C TARGET_EXAMPLEDIRS info
2178TARGET_EXAMPLEDIRS_makefiles:
2179 $(MAKE) -C TARGET_EXAMPLEDIRS makefiles
2180TARGET_EXAMPLEDIRS:
2181 $(MAKE) -C TARGET_EXAMPLEDIRS all
2182.PHONY: TARGET_EXAMPLEDIRS_all TARGET_EXAMPLEDIRS_debug TARGET_EXAMPLEDIRS_smart TARGET_EXAMPLEDIRS_release TARGET_EXAMPLEDIRS_units TARGET_EXAMPLEDIRS_examples TARGET_EXAMPLEDIRS_shared TARGET_EXAMPLEDIRS_install TARGET_EXAMPLEDIRS_sourceinstall TARGET_EXAMPLEDIRS_exampleinstall TARGET_EXAMPLEDIRS_distinstall TARGET_EXAMPLEDIRS_zipinstall TARGET_EXAMPLEDIRS_zipsourceinstall TARGET_EXAMPLEDIRS_zipexampleinstall TARGET_EXAMPLEDIRS_zipdistinstall TARGET_EXAMPLEDIRS_clean TARGET_EXAMPLEDIRS_distclean TARGET_EXAMPLEDIRS_cleanall TARGET_EXAMPLEDIRS_info TARGET_EXAMPLEDIRS_makefiles TARGET_EXAMPLEDIRS
2183endif
2184units:
2185examples:
2186shared:
2187sourceinstall: fpc_sourceinstall
2188exampleinstall: fpc_exampleinstall
2189zipinstall: fpc_zipinstall
2190zipsourceinstall: fpc_zipsourceinstall
2191zipexampleinstall: fpc_zipexampleinstall
2192zipdistinstall: fpc_zipdistinstall
2193cleanall:
2194info: fpc_info
2195makefiles: fpc_makefiles
2196.PHONY: units examples shared sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles
2197ifneq ($(wildcard fpcmake.loc),)
2198include fpcmake.loc
2199endif
2200.NOTPARALLEL:
2201fpmake: fpmake.pp
2202 $(FPCFPMAKE) fpmake.pp $(FPMAKE_SKIP_CONFIG) $(addprefix -Fu,$(COMPILER_FPMAKE_UNITDIR)) $(FPCMAKEOPT) $(OPT)
2203all: fpmake
2204 $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu
2205smart: fpmake
2206 $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -XX -o -CX
2207release: fpmake
2208 $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dRELEASE
2209debug: fpmake
2210 $(LOCALFPMAKE) compile --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) -bu -o -dDEBUG
2211ifeq ($(FPMAKE_BIN_CLEAN),)
2212clean:
2213else
2214clean:
2215 $(FPMAKE_BIN_CLEAN) clean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
2216endif
2217ifeq ($(FPMAKE_BIN_CLEAN),)
2218distclean: $(addsuffix _distclean,$(TARGET_DIRS)) fpc_cleanall
2219else
2220distclean:
2221ifdef inUnix
2222 { $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC); if [ $$? != "0" ]; then { echo Something wrong with fpmake exectable. Remove the executable and call make recursively to recover.; $(DEL) $(FPMAKE_BIN_CLEAN); $(MAKE) fpc_cleanall; }; fi; }
2223else
2224 $(FPMAKE_BIN_CLEAN) distclean --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC)
2225endif
2226 -$(DEL) $(LOCALFPMAKE)
2227endif
2228install: fpmake
2229ifdef UNIXHier
2230 $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR)
2231else
2232 $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR)
2233endif
2234distinstall: fpmake
2235ifdef UNIXHier
2236 $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_PREFIX) --baseinstalldir=$(INSTALL_LIBDIR)/fpc/$(FPC_VERSION) --unitinstalldir=$(INSTALL_UNITDIR) -ie
2237else
2238 $(LOCALFPMAKE) install --localunitdir=../.. --globalunitdir=.. $(FPC_TARGETOPT) $(addprefix -o ,$(FPCOPT)) --compiler=$(FPC) --prefix=$(INSTALL_BASEDIR) --unitinstalldir=$(INSTALL_UNITDIR) -ie
2239endif