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