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
332override PACKAGE_NAME=fcl-db
333PACKAGEDIR_MAIN:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-db/Makefile.fpc,$(PACKAGESDIR))))))
334ifeq ($(FULL_TARGET),i386-linux)
335override TARGET_UNITS+=memds
336endif
337ifeq ($(FULL_TARGET),i386-go32v2)
338override TARGET_UNITS+=memds
339endif
340ifeq ($(FULL_TARGET),i386-win32)
341override TARGET_UNITS+=memds
342endif
343ifeq ($(FULL_TARGET),i386-os2)
344override TARGET_UNITS+=memds
345endif
346ifeq ($(FULL_TARGET),i386-freebsd)
347override TARGET_UNITS+=memds
348endif
349ifeq ($(FULL_TARGET),i386-beos)
350override TARGET_UNITS+=memds
351endif
352ifeq ($(FULL_TARGET),i386-haiku)
353override TARGET_UNITS+=memds
354endif
355ifeq ($(FULL_TARGET),i386-netbsd)
356override TARGET_UNITS+=memds
357endif
358ifeq ($(FULL_TARGET),i386-solaris)
359override TARGET_UNITS+=memds
360endif
361ifeq ($(FULL_TARGET),i386-netware)
362override TARGET_UNITS+=memds
363endif
364ifeq ($(FULL_TARGET),i386-openbsd)
365override TARGET_UNITS+=memds
366endif
367ifeq ($(FULL_TARGET),i386-wdosx)
368override TARGET_UNITS+=memds
369endif
370ifeq ($(FULL_TARGET),i386-darwin)
371override TARGET_UNITS+=memds
372endif
373ifeq ($(FULL_TARGET),i386-emx)
374override TARGET_UNITS+=memds
375endif
376ifeq ($(FULL_TARGET),i386-watcom)
377override TARGET_UNITS+=memds
378endif
379ifeq ($(FULL_TARGET),i386-netwlibc)
380override TARGET_UNITS+=memds
381endif
382ifeq ($(FULL_TARGET),i386-wince)
383override TARGET_UNITS+=memds
384endif
385ifeq ($(FULL_TARGET),i386-embedded)
386override TARGET_UNITS+=memds
387endif
388ifeq ($(FULL_TARGET),i386-symbian)
389override TARGET_UNITS+=memds
390endif
391ifeq ($(FULL_TARGET),i386-nativent)
392override TARGET_UNITS+=memds
393endif
394ifeq ($(FULL_TARGET),i386-iphonesim)
395override TARGET_UNITS+=memds
396endif
397ifeq ($(FULL_TARGET),i386-android)
398override TARGET_UNITS+=memds
399endif
400ifeq ($(FULL_TARGET),i386-aros)
401override TARGET_UNITS+=memds
402endif
403ifeq ($(FULL_TARGET),m68k-linux)
404override TARGET_UNITS+=memds
405endif
406ifeq ($(FULL_TARGET),m68k-netbsd)
407override TARGET_UNITS+=memds
408endif
409ifeq ($(FULL_TARGET),m68k-amiga)
410override TARGET_UNITS+=memds
411endif
412ifeq ($(FULL_TARGET),m68k-atari)
413override TARGET_UNITS+=memds
414endif
415ifeq ($(FULL_TARGET),m68k-palmos)
416override TARGET_UNITS+=memds
417endif
418ifeq ($(FULL_TARGET),m68k-macosclassic)
419override TARGET_UNITS+=memds
420endif
421ifeq ($(FULL_TARGET),m68k-embedded)
422override TARGET_UNITS+=memds
423endif
424ifeq ($(FULL_TARGET),powerpc-linux)
425override TARGET_UNITS+=memds
426endif
427ifeq ($(FULL_TARGET),powerpc-netbsd)
428override TARGET_UNITS+=memds
429endif
430ifeq ($(FULL_TARGET),powerpc-amiga)
431override TARGET_UNITS+=memds
432endif
433ifeq ($(FULL_TARGET),powerpc-macosclassic)
434override TARGET_UNITS+=memds
435endif
436ifeq ($(FULL_TARGET),powerpc-darwin)
437override TARGET_UNITS+=memds
438endif
439ifeq ($(FULL_TARGET),powerpc-morphos)
440override TARGET_UNITS+=memds
441endif
442ifeq ($(FULL_TARGET),powerpc-embedded)
443override TARGET_UNITS+=memds
444endif
445ifeq ($(FULL_TARGET),powerpc-wii)
446override TARGET_UNITS+=memds
447endif
448ifeq ($(FULL_TARGET),powerpc-aix)
449override TARGET_UNITS+=memds
450endif
451ifeq ($(FULL_TARGET),sparc-linux)
452override TARGET_UNITS+=memds
453endif
454ifeq ($(FULL_TARGET),sparc-netbsd)
455override TARGET_UNITS+=memds
456endif
457ifeq ($(FULL_TARGET),sparc-solaris)
458override TARGET_UNITS+=memds
459endif
460ifeq ($(FULL_TARGET),sparc-embedded)
461override TARGET_UNITS+=memds
462endif
463ifeq ($(FULL_TARGET),x86_64-linux)
464override TARGET_UNITS+=memds
465endif
466ifeq ($(FULL_TARGET),x86_64-freebsd)
467override TARGET_UNITS+=memds
468endif
469ifeq ($(FULL_TARGET),x86_64-haiku)
470override TARGET_UNITS+=memds
471endif
472ifeq ($(FULL_TARGET),x86_64-netbsd)
473override TARGET_UNITS+=memds
474endif
475ifeq ($(FULL_TARGET),x86_64-solaris)
476override TARGET_UNITS+=memds
477endif
478ifeq ($(FULL_TARGET),x86_64-openbsd)
479override TARGET_UNITS+=memds
480endif
481ifeq ($(FULL_TARGET),x86_64-darwin)
482override TARGET_UNITS+=memds
483endif
484ifeq ($(FULL_TARGET),x86_64-win64)
485override TARGET_UNITS+=memds
486endif
487ifeq ($(FULL_TARGET),x86_64-embedded)
488override TARGET_UNITS+=memds
489endif
490ifeq ($(FULL_TARGET),x86_64-iphonesim)
491override TARGET_UNITS+=memds
492endif
493ifeq ($(FULL_TARGET),x86_64-android)
494override TARGET_UNITS+=memds
495endif
496ifeq ($(FULL_TARGET),x86_64-aros)
497override TARGET_UNITS+=memds
498endif
499ifeq ($(FULL_TARGET),x86_64-dragonfly)
500override TARGET_UNITS+=memds
501endif
502ifeq ($(FULL_TARGET),arm-linux)
503override TARGET_UNITS+=memds
504endif
505ifeq ($(FULL_TARGET),arm-netbsd)
506override TARGET_UNITS+=memds
507endif
508ifeq ($(FULL_TARGET),arm-palmos)
509override TARGET_UNITS+=memds
510endif
511ifeq ($(FULL_TARGET),arm-wince)
512override TARGET_UNITS+=memds
513endif
514ifeq ($(FULL_TARGET),arm-gba)
515override TARGET_UNITS+=memds
516endif
517ifeq ($(FULL_TARGET),arm-nds)
518override TARGET_UNITS+=memds
519endif
520ifeq ($(FULL_TARGET),arm-embedded)
521override TARGET_UNITS+=memds
522endif
523ifeq ($(FULL_TARGET),arm-symbian)
524override TARGET_UNITS+=memds
525endif
526ifeq ($(FULL_TARGET),arm-android)
527override TARGET_UNITS+=memds
528endif
529ifeq ($(FULL_TARGET),arm-aros)
530override TARGET_UNITS+=memds
531endif
532ifeq ($(FULL_TARGET),arm-ios)
533override TARGET_UNITS+=memds
534endif
535ifeq ($(FULL_TARGET),powerpc64-linux)
536override TARGET_UNITS+=memds
537endif
538ifeq ($(FULL_TARGET),powerpc64-darwin)
539override TARGET_UNITS+=memds
540endif
541ifeq ($(FULL_TARGET),powerpc64-embedded)
542override TARGET_UNITS+=memds
543endif
544ifeq ($(FULL_TARGET),powerpc64-aix)
545override TARGET_UNITS+=memds
546endif
547ifeq ($(FULL_TARGET),avr-embedded)
548override TARGET_UNITS+=memds
549endif
550ifeq ($(FULL_TARGET),armeb-linux)
551override TARGET_UNITS+=memds
552endif
553ifeq ($(FULL_TARGET),armeb-embedded)
554override TARGET_UNITS+=memds
555endif
556ifeq ($(FULL_TARGET),mips-linux)
557override TARGET_UNITS+=memds
558endif
559ifeq ($(FULL_TARGET),mipsel-linux)
560override TARGET_UNITS+=memds
561endif
562ifeq ($(FULL_TARGET),mipsel-embedded)
563override TARGET_UNITS+=memds
564endif
565ifeq ($(FULL_TARGET),mipsel-android)
566override TARGET_UNITS+=memds
567endif
568ifeq ($(FULL_TARGET),jvm-java)
569override TARGET_UNITS+=memds
570endif
571ifeq ($(FULL_TARGET),jvm-android)
572override TARGET_UNITS+=memds
573endif
574ifeq ($(FULL_TARGET),i8086-embedded)
575override TARGET_UNITS+=memds
576endif
577ifeq ($(FULL_TARGET),i8086-msdos)
578override TARGET_UNITS+=memds
579endif
580ifeq ($(FULL_TARGET),i8086-win16)
581override TARGET_UNITS+=memds
582endif
583ifeq ($(FULL_TARGET),aarch64-linux)
584override TARGET_UNITS+=memds
585endif
586ifeq ($(FULL_TARGET),aarch64-darwin)
587override TARGET_UNITS+=memds
588endif
589ifeq ($(FULL_TARGET),aarch64-android)
590override TARGET_UNITS+=memds
591endif
592ifeq ($(FULL_TARGET),aarch64-ios)
593override TARGET_UNITS+=memds
594endif
595ifeq ($(FULL_TARGET),wasm-wasm)
596override TARGET_UNITS+=memds
597endif
598ifeq ($(FULL_TARGET),sparc64-linux)
599override TARGET_UNITS+=memds
600endif
601ifeq ($(FULL_TARGET),i386-linux)
602override TARGET_RSTS+=memds
603endif
604ifeq ($(FULL_TARGET),i386-go32v2)
605override TARGET_RSTS+=memds
606endif
607ifeq ($(FULL_TARGET),i386-win32)
608override TARGET_RSTS+=memds
609endif
610ifeq ($(FULL_TARGET),i386-os2)
611override TARGET_RSTS+=memds
612endif
613ifeq ($(FULL_TARGET),i386-freebsd)
614override TARGET_RSTS+=memds
615endif
616ifeq ($(FULL_TARGET),i386-beos)
617override TARGET_RSTS+=memds
618endif
619ifeq ($(FULL_TARGET),i386-haiku)
620override TARGET_RSTS+=memds
621endif
622ifeq ($(FULL_TARGET),i386-netbsd)
623override TARGET_RSTS+=memds
624endif
625ifeq ($(FULL_TARGET),i386-solaris)
626override TARGET_RSTS+=memds
627endif
628ifeq ($(FULL_TARGET),i386-netware)
629override TARGET_RSTS+=memds
630endif
631ifeq ($(FULL_TARGET),i386-openbsd)
632override TARGET_RSTS+=memds
633endif
634ifeq ($(FULL_TARGET),i386-wdosx)
635override TARGET_RSTS+=memds
636endif
637ifeq ($(FULL_TARGET),i386-darwin)
638override TARGET_RSTS+=memds
639endif
640ifeq ($(FULL_TARGET),i386-emx)
641override TARGET_RSTS+=memds
642endif
643ifeq ($(FULL_TARGET),i386-watcom)
644override TARGET_RSTS+=memds
645endif
646ifeq ($(FULL_TARGET),i386-netwlibc)
647override TARGET_RSTS+=memds
648endif
649ifeq ($(FULL_TARGET),i386-wince)
650override TARGET_RSTS+=memds
651endif
652ifeq ($(FULL_TARGET),i386-embedded)
653override TARGET_RSTS+=memds
654endif
655ifeq ($(FULL_TARGET),i386-symbian)
656override TARGET_RSTS+=memds
657endif
658ifeq ($(FULL_TARGET),i386-nativent)
659override TARGET_RSTS+=memds
660endif
661ifeq ($(FULL_TARGET),i386-iphonesim)
662override TARGET_RSTS+=memds
663endif
664ifeq ($(FULL_TARGET),i386-android)
665override TARGET_RSTS+=memds
666endif
667ifeq ($(FULL_TARGET),i386-aros)
668override TARGET_RSTS+=memds
669endif
670ifeq ($(FULL_TARGET),m68k-linux)
671override TARGET_RSTS+=memds
672endif
673ifeq ($(FULL_TARGET),m68k-netbsd)
674override TARGET_RSTS+=memds
675endif
676ifeq ($(FULL_TARGET),m68k-amiga)
677override TARGET_RSTS+=memds
678endif
679ifeq ($(FULL_TARGET),m68k-atari)
680override TARGET_RSTS+=memds
681endif
682ifeq ($(FULL_TARGET),m68k-palmos)
683override TARGET_RSTS+=memds
684endif
685ifeq ($(FULL_TARGET),m68k-macosclassic)
686override TARGET_RSTS+=memds
687endif
688ifeq ($(FULL_TARGET),m68k-embedded)
689override TARGET_RSTS+=memds
690endif
691ifeq ($(FULL_TARGET),powerpc-linux)
692override TARGET_RSTS+=memds
693endif
694ifeq ($(FULL_TARGET),powerpc-netbsd)
695override TARGET_RSTS+=memds
696endif
697ifeq ($(FULL_TARGET),powerpc-amiga)
698override TARGET_RSTS+=memds
699endif
700ifeq ($(FULL_TARGET),powerpc-macosclassic)
701override TARGET_RSTS+=memds
702endif
703ifeq ($(FULL_TARGET),powerpc-darwin)
704override TARGET_RSTS+=memds
705endif
706ifeq ($(FULL_TARGET),powerpc-morphos)
707override TARGET_RSTS+=memds
708endif
709ifeq ($(FULL_TARGET),powerpc-embedded)
710override TARGET_RSTS+=memds
711endif
712ifeq ($(FULL_TARGET),powerpc-wii)
713override TARGET_RSTS+=memds
714endif
715ifeq ($(FULL_TARGET),powerpc-aix)
716override TARGET_RSTS+=memds
717endif
718ifeq ($(FULL_TARGET),sparc-linux)
719override TARGET_RSTS+=memds
720endif
721ifeq ($(FULL_TARGET),sparc-netbsd)
722override TARGET_RSTS+=memds
723endif
724ifeq ($(FULL_TARGET),sparc-solaris)
725override TARGET_RSTS+=memds
726endif
727ifeq ($(FULL_TARGET),sparc-embedded)
728override TARGET_RSTS+=memds
729endif
730ifeq ($(FULL_TARGET),x86_64-linux)
731override TARGET_RSTS+=memds
732endif
733ifeq ($(FULL_TARGET),x86_64-freebsd)
734override TARGET_RSTS+=memds
735endif
736ifeq ($(FULL_TARGET),x86_64-haiku)
737override TARGET_RSTS+=memds
738endif
739ifeq ($(FULL_TARGET),x86_64-netbsd)
740override TARGET_RSTS+=memds
741endif
742ifeq ($(FULL_TARGET),x86_64-solaris)
743override TARGET_RSTS+=memds
744endif
745ifeq ($(FULL_TARGET),x86_64-openbsd)
746override TARGET_RSTS+=memds
747endif
748ifeq ($(FULL_TARGET),x86_64-darwin)
749override TARGET_RSTS+=memds
750endif
751ifeq ($(FULL_TARGET),x86_64-win64)
752override TARGET_RSTS+=memds
753endif
754ifeq ($(FULL_TARGET),x86_64-embedded)
755override TARGET_RSTS+=memds
756endif
757ifeq ($(FULL_TARGET),x86_64-iphonesim)
758override TARGET_RSTS+=memds
759endif
760ifeq ($(FULL_TARGET),x86_64-android)
761override TARGET_RSTS+=memds
762endif
763ifeq ($(FULL_TARGET),x86_64-aros)
764override TARGET_RSTS+=memds
765endif
766ifeq ($(FULL_TARGET),x86_64-dragonfly)
767override TARGET_RSTS+=memds
768endif
769ifeq ($(FULL_TARGET),arm-linux)
770override TARGET_RSTS+=memds
771endif
772ifeq ($(FULL_TARGET),arm-netbsd)
773override TARGET_RSTS+=memds
774endif
775ifeq ($(FULL_TARGET),arm-palmos)
776override TARGET_RSTS+=memds
777endif
778ifeq ($(FULL_TARGET),arm-wince)
779override TARGET_RSTS+=memds
780endif
781ifeq ($(FULL_TARGET),arm-gba)
782override TARGET_RSTS+=memds
783endif
784ifeq ($(FULL_TARGET),arm-nds)
785override TARGET_RSTS+=memds
786endif
787ifeq ($(FULL_TARGET),arm-embedded)
788override TARGET_RSTS+=memds
789endif
790ifeq ($(FULL_TARGET),arm-symbian)
791override TARGET_RSTS+=memds
792endif
793ifeq ($(FULL_TARGET),arm-android)
794override TARGET_RSTS+=memds
795endif
796ifeq ($(FULL_TARGET),arm-aros)
797override TARGET_RSTS+=memds
798endif
799ifeq ($(FULL_TARGET),arm-ios)
800override TARGET_RSTS+=memds
801endif
802ifeq ($(FULL_TARGET),powerpc64-linux)
803override TARGET_RSTS+=memds
804endif
805ifeq ($(FULL_TARGET),powerpc64-darwin)
806override TARGET_RSTS+=memds
807endif
808ifeq ($(FULL_TARGET),powerpc64-embedded)
809override TARGET_RSTS+=memds
810endif
811ifeq ($(FULL_TARGET),powerpc64-aix)
812override TARGET_RSTS+=memds
813endif
814ifeq ($(FULL_TARGET),avr-embedded)
815override TARGET_RSTS+=memds
816endif
817ifeq ($(FULL_TARGET),armeb-linux)
818override TARGET_RSTS+=memds
819endif
820ifeq ($(FULL_TARGET),armeb-embedded)
821override TARGET_RSTS+=memds
822endif
823ifeq ($(FULL_TARGET),mips-linux)
824override TARGET_RSTS+=memds
825endif
826ifeq ($(FULL_TARGET),mipsel-linux)
827override TARGET_RSTS+=memds
828endif
829ifeq ($(FULL_TARGET),mipsel-embedded)
830override TARGET_RSTS+=memds
831endif
832ifeq ($(FULL_TARGET),mipsel-android)
833override TARGET_RSTS+=memds
834endif
835ifeq ($(FULL_TARGET),jvm-java)
836override TARGET_RSTS+=memds
837endif
838ifeq ($(FULL_TARGET),jvm-android)
839override TARGET_RSTS+=memds
840endif
841ifeq ($(FULL_TARGET),i8086-embedded)
842override TARGET_RSTS+=memds
843endif
844ifeq ($(FULL_TARGET),i8086-msdos)
845override TARGET_RSTS+=memds
846endif
847ifeq ($(FULL_TARGET),i8086-win16)
848override TARGET_RSTS+=memds
849endif
850ifeq ($(FULL_TARGET),aarch64-linux)
851override TARGET_RSTS+=memds
852endif
853ifeq ($(FULL_TARGET),aarch64-darwin)
854override TARGET_RSTS+=memds
855endif
856ifeq ($(FULL_TARGET),aarch64-android)
857override TARGET_RSTS+=memds
858endif
859ifeq ($(FULL_TARGET),aarch64-ios)
860override TARGET_RSTS+=memds
861endif
862ifeq ($(FULL_TARGET),wasm-wasm)
863override TARGET_RSTS+=memds
864endif
865ifeq ($(FULL_TARGET),sparc64-linux)
866override TARGET_RSTS+=memds
867endif
868ifeq ($(FULL_TARGET),i386-linux)
869override TARGET_EXAMPLES+=testpop testopen testld testcp
870endif
871ifeq ($(FULL_TARGET),i386-go32v2)
872override TARGET_EXAMPLES+=testpop testopen testld testcp
873endif
874ifeq ($(FULL_TARGET),i386-win32)
875override TARGET_EXAMPLES+=testpop testopen testld testcp
876endif
877ifeq ($(FULL_TARGET),i386-os2)
878override TARGET_EXAMPLES+=testpop testopen testld testcp
879endif
880ifeq ($(FULL_TARGET),i386-freebsd)
881override TARGET_EXAMPLES+=testpop testopen testld testcp
882endif
883ifeq ($(FULL_TARGET),i386-beos)
884override TARGET_EXAMPLES+=testpop testopen testld testcp
885endif
886ifeq ($(FULL_TARGET),i386-haiku)
887override TARGET_EXAMPLES+=testpop testopen testld testcp
888endif
889ifeq ($(FULL_TARGET),i386-netbsd)
890override TARGET_EXAMPLES+=testpop testopen testld testcp
891endif
892ifeq ($(FULL_TARGET),i386-solaris)
893override TARGET_EXAMPLES+=testpop testopen testld testcp
894endif
895ifeq ($(FULL_TARGET),i386-netware)
896override TARGET_EXAMPLES+=testpop testopen testld testcp
897endif
898ifeq ($(FULL_TARGET),i386-openbsd)
899override TARGET_EXAMPLES+=testpop testopen testld testcp
900endif
901ifeq ($(FULL_TARGET),i386-wdosx)
902override TARGET_EXAMPLES+=testpop testopen testld testcp
903endif
904ifeq ($(FULL_TARGET),i386-darwin)
905override TARGET_EXAMPLES+=testpop testopen testld testcp
906endif
907ifeq ($(FULL_TARGET),i386-emx)
908override TARGET_EXAMPLES+=testpop testopen testld testcp
909endif
910ifeq ($(FULL_TARGET),i386-watcom)
911override TARGET_EXAMPLES+=testpop testopen testld testcp
912endif
913ifeq ($(FULL_TARGET),i386-netwlibc)
914override TARGET_EXAMPLES+=testpop testopen testld testcp
915endif
916ifeq ($(FULL_TARGET),i386-wince)
917override TARGET_EXAMPLES+=testpop testopen testld testcp
918endif
919ifeq ($(FULL_TARGET),i386-embedded)
920override TARGET_EXAMPLES+=testpop testopen testld testcp
921endif
922ifeq ($(FULL_TARGET),i386-symbian)
923override TARGET_EXAMPLES+=testpop testopen testld testcp
924endif
925ifeq ($(FULL_TARGET),i386-nativent)
926override TARGET_EXAMPLES+=testpop testopen testld testcp
927endif
928ifeq ($(FULL_TARGET),i386-iphonesim)
929override TARGET_EXAMPLES+=testpop testopen testld testcp
930endif
931ifeq ($(FULL_TARGET),i386-android)
932override TARGET_EXAMPLES+=testpop testopen testld testcp
933endif
934ifeq ($(FULL_TARGET),i386-aros)
935override TARGET_EXAMPLES+=testpop testopen testld testcp
936endif
937ifeq ($(FULL_TARGET),m68k-linux)
938override TARGET_EXAMPLES+=testpop testopen testld testcp
939endif
940ifeq ($(FULL_TARGET),m68k-netbsd)
941override TARGET_EXAMPLES+=testpop testopen testld testcp
942endif
943ifeq ($(FULL_TARGET),m68k-amiga)
944override TARGET_EXAMPLES+=testpop testopen testld testcp
945endif
946ifeq ($(FULL_TARGET),m68k-atari)
947override TARGET_EXAMPLES+=testpop testopen testld testcp
948endif
949ifeq ($(FULL_TARGET),m68k-palmos)
950override TARGET_EXAMPLES+=testpop testopen testld testcp
951endif
952ifeq ($(FULL_TARGET),m68k-macosclassic)
953override TARGET_EXAMPLES+=testpop testopen testld testcp
954endif
955ifeq ($(FULL_TARGET),m68k-embedded)
956override TARGET_EXAMPLES+=testpop testopen testld testcp
957endif
958ifeq ($(FULL_TARGET),powerpc-linux)
959override TARGET_EXAMPLES+=testpop testopen testld testcp
960endif
961ifeq ($(FULL_TARGET),powerpc-netbsd)
962override TARGET_EXAMPLES+=testpop testopen testld testcp
963endif
964ifeq ($(FULL_TARGET),powerpc-amiga)
965override TARGET_EXAMPLES+=testpop testopen testld testcp
966endif
967ifeq ($(FULL_TARGET),powerpc-macosclassic)
968override TARGET_EXAMPLES+=testpop testopen testld testcp
969endif
970ifeq ($(FULL_TARGET),powerpc-darwin)
971override TARGET_EXAMPLES+=testpop testopen testld testcp
972endif
973ifeq ($(FULL_TARGET),powerpc-morphos)
974override TARGET_EXAMPLES+=testpop testopen testld testcp
975endif
976ifeq ($(FULL_TARGET),powerpc-embedded)
977override TARGET_EXAMPLES+=testpop testopen testld testcp
978endif
979ifeq ($(FULL_TARGET),powerpc-wii)
980override TARGET_EXAMPLES+=testpop testopen testld testcp
981endif
982ifeq ($(FULL_TARGET),powerpc-aix)
983override TARGET_EXAMPLES+=testpop testopen testld testcp
984endif
985ifeq ($(FULL_TARGET),sparc-linux)
986override TARGET_EXAMPLES+=testpop testopen testld testcp
987endif
988ifeq ($(FULL_TARGET),sparc-netbsd)
989override TARGET_EXAMPLES+=testpop testopen testld testcp
990endif
991ifeq ($(FULL_TARGET),sparc-solaris)
992override TARGET_EXAMPLES+=testpop testopen testld testcp
993endif
994ifeq ($(FULL_TARGET),sparc-embedded)
995override TARGET_EXAMPLES+=testpop testopen testld testcp
996endif
997ifeq ($(FULL_TARGET),x86_64-linux)
998override TARGET_EXAMPLES+=testpop testopen testld testcp
999endif
1000ifeq ($(FULL_TARGET),x86_64-freebsd)
1001override TARGET_EXAMPLES+=testpop testopen testld testcp
1002endif
1003ifeq ($(FULL_TARGET),x86_64-haiku)
1004override TARGET_EXAMPLES+=testpop testopen testld testcp
1005endif
1006ifeq ($(FULL_TARGET),x86_64-netbsd)
1007override TARGET_EXAMPLES+=testpop testopen testld testcp
1008endif
1009ifeq ($(FULL_TARGET),x86_64-solaris)
1010override TARGET_EXAMPLES+=testpop testopen testld testcp
1011endif
1012ifeq ($(FULL_TARGET),x86_64-openbsd)
1013override TARGET_EXAMPLES+=testpop testopen testld testcp
1014endif
1015ifeq ($(FULL_TARGET),x86_64-darwin)
1016override TARGET_EXAMPLES+=testpop testopen testld testcp
1017endif
1018ifeq ($(FULL_TARGET),x86_64-win64)
1019override TARGET_EXAMPLES+=testpop testopen testld testcp
1020endif
1021ifeq ($(FULL_TARGET),x86_64-embedded)
1022override TARGET_EXAMPLES+=testpop testopen testld testcp
1023endif
1024ifeq ($(FULL_TARGET),x86_64-iphonesim)
1025override TARGET_EXAMPLES+=testpop testopen testld testcp
1026endif
1027ifeq ($(FULL_TARGET),x86_64-android)
1028override TARGET_EXAMPLES+=testpop testopen testld testcp
1029endif
1030ifeq ($(FULL_TARGET),x86_64-aros)
1031override TARGET_EXAMPLES+=testpop testopen testld testcp
1032endif
1033ifeq ($(FULL_TARGET),x86_64-dragonfly)
1034override TARGET_EXAMPLES+=testpop testopen testld testcp
1035endif
1036ifeq ($(FULL_TARGET),arm-linux)
1037override TARGET_EXAMPLES+=testpop testopen testld testcp
1038endif
1039ifeq ($(FULL_TARGET),arm-netbsd)
1040override TARGET_EXAMPLES+=testpop testopen testld testcp
1041endif
1042ifeq ($(FULL_TARGET),arm-palmos)
1043override TARGET_EXAMPLES+=testpop testopen testld testcp
1044endif
1045ifeq ($(FULL_TARGET),arm-wince)
1046override TARGET_EXAMPLES+=testpop testopen testld testcp
1047endif
1048ifeq ($(FULL_TARGET),arm-gba)
1049override TARGET_EXAMPLES+=testpop testopen testld testcp
1050endif
1051ifeq ($(FULL_TARGET),arm-nds)
1052override TARGET_EXAMPLES+=testpop testopen testld testcp
1053endif
1054ifeq ($(FULL_TARGET),arm-embedded)
1055override TARGET_EXAMPLES+=testpop testopen testld testcp
1056endif
1057ifeq ($(FULL_TARGET),arm-symbian)
1058override TARGET_EXAMPLES+=testpop testopen testld testcp
1059endif
1060ifeq ($(FULL_TARGET),arm-android)
1061override TARGET_EXAMPLES+=testpop testopen testld testcp
1062endif
1063ifeq ($(FULL_TARGET),arm-aros)
1064override TARGET_EXAMPLES+=testpop testopen testld testcp
1065endif
1066ifeq ($(FULL_TARGET),arm-ios)
1067override TARGET_EXAMPLES+=testpop testopen testld testcp
1068endif
1069ifeq ($(FULL_TARGET),powerpc64-linux)
1070override TARGET_EXAMPLES+=testpop testopen testld testcp
1071endif
1072ifeq ($(FULL_TARGET),powerpc64-darwin)
1073override TARGET_EXAMPLES+=testpop testopen testld testcp
1074endif
1075ifeq ($(FULL_TARGET),powerpc64-embedded)
1076override TARGET_EXAMPLES+=testpop testopen testld testcp
1077endif
1078ifeq ($(FULL_TARGET),powerpc64-aix)
1079override TARGET_EXAMPLES+=testpop testopen testld testcp
1080endif
1081ifeq ($(FULL_TARGET),avr-embedded)
1082override TARGET_EXAMPLES+=testpop testopen testld testcp
1083endif
1084ifeq ($(FULL_TARGET),armeb-linux)
1085override TARGET_EXAMPLES+=testpop testopen testld testcp
1086endif
1087ifeq ($(FULL_TARGET),armeb-embedded)
1088override TARGET_EXAMPLES+=testpop testopen testld testcp
1089endif
1090ifeq ($(FULL_TARGET),mips-linux)
1091override TARGET_EXAMPLES+=testpop testopen testld testcp
1092endif
1093ifeq ($(FULL_TARGET),mipsel-linux)
1094override TARGET_EXAMPLES+=testpop testopen testld testcp
1095endif
1096ifeq ($(FULL_TARGET),mipsel-embedded)
1097override TARGET_EXAMPLES+=testpop testopen testld testcp
1098endif
1099ifeq ($(FULL_TARGET),mipsel-android)
1100override TARGET_EXAMPLES+=testpop testopen testld testcp
1101endif
1102ifeq ($(FULL_TARGET),jvm-java)
1103override TARGET_EXAMPLES+=testpop testopen testld testcp
1104endif
1105ifeq ($(FULL_TARGET),jvm-android)
1106override TARGET_EXAMPLES+=testpop testopen testld testcp
1107endif
1108ifeq ($(FULL_TARGET),i8086-embedded)
1109override TARGET_EXAMPLES+=testpop testopen testld testcp
1110endif
1111ifeq ($(FULL_TARGET),i8086-msdos)
1112override TARGET_EXAMPLES+=testpop testopen testld testcp
1113endif
1114ifeq ($(FULL_TARGET),i8086-win16)
1115override TARGET_EXAMPLES+=testpop testopen testld testcp
1116endif
1117ifeq ($(FULL_TARGET),aarch64-linux)
1118override TARGET_EXAMPLES+=testpop testopen testld testcp
1119endif
1120ifeq ($(FULL_TARGET),aarch64-darwin)
1121override TARGET_EXAMPLES+=testpop testopen testld testcp
1122endif
1123ifeq ($(FULL_TARGET),aarch64-android)
1124override TARGET_EXAMPLES+=testpop testopen testld testcp
1125endif
1126ifeq ($(FULL_TARGET),aarch64-ios)
1127override TARGET_EXAMPLES+=testpop testopen testld testcp
1128endif
1129ifeq ($(FULL_TARGET),wasm-wasm)
1130override TARGET_EXAMPLES+=testpop testopen testld testcp
1131endif
1132ifeq ($(FULL_TARGET),sparc64-linux)
1133override TARGET_EXAMPLES+=testpop testopen testld testcp
1134endif
1135override INSTALL_FPCPACKAGE=y
1136ifdef REQUIRE_UNITSDIR
1137override UNITSDIR+=$(REQUIRE_UNITSDIR)
1138endif
1139ifdef REQUIRE_PACKAGESDIR
1140override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
1141endif
1142ifdef ZIPINSTALL
1143ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
1144UNIXHier=1
1145endif
1146else
1147ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
1148UNIXHier=1
1149endif
1150endif
1151ifndef INSTALL_PREFIX
1152ifdef PREFIX
1153INSTALL_PREFIX=$(PREFIX)
1154endif
1155endif
1156ifndef INSTALL_PREFIX
1157ifdef UNIXHier
1158INSTALL_PREFIX=/usr/local
1159else
1160ifdef INSTALL_FPCPACKAGE
1161INSTALL_BASEDIR:=/pp
1162else
1163INSTALL_BASEDIR:=/$(PACKAGE_NAME)
1164endif
1165endif
1166endif
1167export INSTALL_PREFIX
1168ifdef INSTALL_FPCSUBDIR
1169export INSTALL_FPCSUBDIR
1170endif
1171ifndef DIST_DESTDIR
1172DIST_DESTDIR:=$(BASEDIR)
1173endif
1174export DIST_DESTDIR
1175ifndef COMPILER_UNITTARGETDIR
1176ifdef PACKAGEDIR_MAIN
1177COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
1178else
1179COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
1180endif
1181endif
1182ifndef COMPILER_TARGETDIR
1183COMPILER_TARGETDIR=.
1184endif
1185ifndef INSTALL_BASEDIR
1186ifdef UNIXHier
1187ifdef INSTALL_FPCPACKAGE
1188INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
1189else
1190INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
1191endif
1192else
1193INSTALL_BASEDIR:=$(INSTALL_PREFIX)
1194endif
1195endif
1196ifndef INSTALL_BINDIR
1197ifdef UNIXHier
1198INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
1199else
1200INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
1201ifdef INSTALL_FPCPACKAGE
1202ifdef CROSSCOMPILE
1203ifdef CROSSINSTALL
1204INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
1205else
1206INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
1207endif
1208else
1209INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
1210endif
1211endif
1212endif
1213endif
1214ifndef INSTALL_UNITDIR
1215INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
1216ifdef INSTALL_FPCPACKAGE
1217ifdef PACKAGE_NAME
1218INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
1219endif
1220endif
1221endif
1222ifndef INSTALL_LIBDIR
1223ifdef UNIXHier
1224INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
1225else
1226INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
1227endif
1228endif
1229ifndef INSTALL_SOURCEDIR
1230ifdef UNIXHier
1231ifdef BSDhier
1232SRCPREFIXDIR=share/src
1233else
1234ifdef linuxHier
1235SRCPREFIXDIR=share/src
1236else
1237SRCPREFIXDIR=src
1238endif
1239endif
1240ifdef INSTALL_FPCPACKAGE
1241ifdef INSTALL_FPCSUBDIR
1242INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
1243else
1244INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
1245endif
1246else
1247INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
1248endif
1249else
1250ifdef INSTALL_FPCPACKAGE
1251ifdef INSTALL_FPCSUBDIR
1252INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
1253else
1254INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
1255endif
1256else
1257INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
1258endif
1259endif
1260endif
1261ifndef INSTALL_DOCDIR
1262ifdef UNIXHier
1263ifdef BSDhier
1264DOCPREFIXDIR=share/doc
1265else
1266ifdef linuxHier
1267DOCPREFIXDIR=share/doc
1268else
1269DOCPREFIXDIR=doc
1270endif
1271endif
1272ifdef INSTALL_FPCPACKAGE
1273INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
1274else
1275INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
1276endif
1277else
1278ifdef INSTALL_FPCPACKAGE
1279INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
1280else
1281INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
1282endif
1283endif
1284endif
1285ifndef INSTALL_EXAMPLEDIR
1286ifdef UNIXHier
1287ifdef INSTALL_FPCPACKAGE
1288ifdef BSDhier
1289INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
1290else
1291ifdef linuxHier
1292INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
1293else
1294INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
1295endif
1296endif
1297else
1298ifdef BSDhier
1299INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
1300else
1301ifdef linuxHier
1302INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
1303else
1304INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
1305endif
1306endif
1307endif
1308else
1309ifdef INSTALL_FPCPACKAGE
1310INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
1311else
1312INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
1313endif
1314endif
1315endif
1316ifndef INSTALL_DATADIR
1317INSTALL_DATADIR=$(INSTALL_BASEDIR)
1318endif
1319ifndef INSTALL_SHAREDDIR
1320INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib
1321endif
1322ifdef CROSSCOMPILE
1323ifndef CROSSBINDIR
1324CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
1325ifeq ($(CROSSBINDIR),)
1326CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
1327endif
1328endif
1329else
1330CROSSBINDIR=
1331endif
1332BATCHEXT=.bat
1333LOADEREXT=.as
1334EXEEXT=.exe
1335PPLEXT=.ppl
1336PPUEXT=.ppu
1337OEXT=.o
1338ASMEXT=.s
1339SMARTEXT=.sl
1340STATICLIBEXT=.a
1341SHAREDLIBEXT=.so
1342SHAREDLIBPREFIX=libfp
1343STATICLIBPREFIX=libp
1344IMPORTLIBPREFIX=libimp
1345RSTEXT=.rst
1346EXEDBGEXT=.dbg
1347ifeq ($(OS_TARGET),go32v1)
1348STATICLIBPREFIX=
1349SHORTSUFFIX=v1
1350endif
1351ifeq ($(OS_TARGET),go32v2)
1352STATICLIBPREFIX=
1353SHORTSUFFIX=dos
1354IMPORTLIBPREFIX=
1355endif
1356ifeq ($(OS_TARGET),watcom)
1357STATICLIBPREFIX=
1358OEXT=.obj
1359ASMEXT=.asm
1360SHAREDLIBEXT=.dll
1361SHORTSUFFIX=wat
1362IMPORTLIBPREFIX=
1363endif
1364ifneq ($(CPU_TARGET),jvm)
1365ifeq ($(OS_TARGET),android)
1366BATCHEXT=.sh
1367EXEEXT=
1368HASSHAREDLIB=1
1369SHORTSUFFIX=lnx
1370endif
1371endif
1372ifeq ($(OS_TARGET),linux)
1373BATCHEXT=.sh
1374EXEEXT=
1375HASSHAREDLIB=1
1376SHORTSUFFIX=lnx
1377endif
1378ifeq ($(OS_TARGET),dragonfly)
1379BATCHEXT=.sh
1380EXEEXT=
1381HASSHAREDLIB=1
1382SHORTSUFFIX=df
1383endif
1384ifeq ($(OS_TARGET),freebsd)
1385BATCHEXT=.sh
1386EXEEXT=
1387HASSHAREDLIB=1
1388SHORTSUFFIX=fbs
1389endif
1390ifeq ($(OS_TARGET),netbsd)
1391BATCHEXT=.sh
1392EXEEXT=
1393HASSHAREDLIB=1
1394SHORTSUFFIX=nbs
1395endif
1396ifeq ($(OS_TARGET),openbsd)
1397BATCHEXT=.sh
1398EXEEXT=
1399HASSHAREDLIB=1
1400SHORTSUFFIX=obs
1401endif
1402ifeq ($(OS_TARGET),win32)
1403SHAREDLIBEXT=.dll
1404SHORTSUFFIX=w32
1405endif
1406ifeq ($(OS_TARGET),os2)
1407BATCHEXT=.cmd
1408AOUTEXT=.out
1409STATICLIBPREFIX=
1410SHAREDLIBEXT=.dll
1411SHORTSUFFIX=os2
1412ECHO=echo
1413IMPORTLIBPREFIX=
1414endif
1415ifeq ($(OS_TARGET),emx)
1416BATCHEXT=.cmd
1417AOUTEXT=.out
1418STATICLIBPREFIX=
1419SHAREDLIBEXT=.dll
1420SHORTSUFFIX=emx
1421ECHO=echo
1422IMPORTLIBPREFIX=
1423endif
1424ifeq ($(OS_TARGET),amiga)
1425EXEEXT=
1426SHAREDLIBEXT=.library
1427SHORTSUFFIX=amg
1428endif
1429ifeq ($(OS_TARGET),aros)
1430EXEEXT=
1431SHAREDLIBEXT=.library
1432SHORTSUFFIX=aros
1433endif
1434ifeq ($(OS_TARGET),morphos)
1435EXEEXT=
1436SHAREDLIBEXT=.library
1437SHORTSUFFIX=mos
1438endif
1439ifeq ($(OS_TARGET),atari)
1440EXEEXT=.ttp
1441SHORTSUFFIX=ata
1442endif
1443ifeq ($(OS_TARGET),beos)
1444BATCHEXT=.sh
1445EXEEXT=
1446SHORTSUFFIX=be
1447endif
1448ifeq ($(OS_TARGET),haiku)
1449BATCHEXT=.sh
1450EXEEXT=
1451SHORTSUFFIX=hai
1452endif
1453ifeq ($(OS_TARGET),solaris)
1454BATCHEXT=.sh
1455EXEEXT=
1456SHORTSUFFIX=sun
1457endif
1458ifeq ($(OS_TARGET),qnx)
1459BATCHEXT=.sh
1460EXEEXT=
1461SHORTSUFFIX=qnx
1462endif
1463ifeq ($(OS_TARGET),netware)
1464EXEEXT=.nlm
1465STATICLIBPREFIX=
1466SHORTSUFFIX=nw
1467IMPORTLIBPREFIX=imp
1468endif
1469ifeq ($(OS_TARGET),netwlibc)
1470EXEEXT=.nlm
1471STATICLIBPREFIX=
1472SHORTSUFFIX=nwl
1473IMPORTLIBPREFIX=imp
1474endif
1475ifeq ($(OS_TARGET),macosclassic)
1476BATCHEXT=
1477EXEEXT=
1478DEBUGSYMEXT=.xcoff
1479SHORTSUFFIX=mac
1480IMPORTLIBPREFIX=imp
1481endif
1482ifneq ($(findstring $(OS_TARGET),darwin iphonesim ios),)
1483BATCHEXT=.sh
1484EXEEXT=
1485HASSHAREDLIB=1
1486SHORTSUFFIX=dwn
1487EXEDBGEXT=.dSYM
1488endif
1489ifeq ($(OS_TARGET),gba)
1490EXEEXT=.gba
1491SHAREDLIBEXT=.so
1492SHORTSUFFIX=gba
1493endif
1494ifeq ($(OS_TARGET),symbian)
1495SHAREDLIBEXT=.dll
1496SHORTSUFFIX=symbian
1497endif
1498ifeq ($(OS_TARGET),NativeNT)
1499SHAREDLIBEXT=.dll
1500SHORTSUFFIX=nativent
1501endif
1502ifeq ($(OS_TARGET),wii)
1503EXEEXT=.dol
1504SHAREDLIBEXT=.so
1505SHORTSUFFIX=wii
1506endif
1507ifeq ($(OS_TARGET),aix)
1508BATCHEXT=.sh
1509EXEEXT=
1510SHAREDLIBEXT=.a
1511SHORTSUFFIX=aix
1512endif
1513ifeq ($(OS_TARGET),java)
1514OEXT=.class
1515ASMEXT=.j
1516SHAREDLIBEXT=.jar
1517SHORTSUFFIX=java
1518endif
1519ifeq ($(CPU_TARGET),jvm)
1520ifeq ($(OS_TARGET),android)
1521OEXT=.class
1522ASMEXT=.j
1523SHAREDLIBEXT=.jar
1524SHORTSUFFIX=android
1525endif
1526endif
1527ifeq ($(OS_TARGET),msdos)
1528STATICLIBPREFIX=
1529STATICLIBEXT=.a
1530SHORTSUFFIX=d16
1531endif
1532ifeq ($(OS_TARGET),embedded)
1533ifeq ($(CPU_TARGET),i8086)
1534STATICLIBPREFIX=
1535STATICLIBEXT=.a
1536else
1537EXEEXT=.bin
1538endif
1539SHORTSUFFIX=emb
1540endif
1541ifeq ($(OS_TARGET),win16)
1542STATICLIBPREFIX=
1543STATICLIBEXT=.a
1544SHAREDLIBEXT=.dll
1545SHORTSUFFIX=w16
1546endif
1547ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
1548FPCMADE=fpcmade.$(SHORTSUFFIX)
1549ZIPSUFFIX=$(SHORTSUFFIX)
1550ZIPCROSSPREFIX=
1551ZIPSOURCESUFFIX=src
1552ZIPEXAMPLESUFFIX=exm
1553else
1554FPCMADE=fpcmade.$(TARGETSUFFIX)
1555ZIPSOURCESUFFIX=.source
1556ZIPEXAMPLESUFFIX=.examples
1557ifdef CROSSCOMPILE
1558ZIPSUFFIX=.$(SOURCESUFFIX)
1559ZIPCROSSPREFIX=$(TARGETSUFFIX)-
1560else
1561ZIPSUFFIX=.$(TARGETSUFFIX)
1562ZIPCROSSPREFIX=
1563endif
1564endif
1565ifndef ECHO
1566ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
1567ifeq ($(ECHO),)
1568ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
1569ifeq ($(ECHO),)
1570ECHO= __missing_command_ECHO
1571else
1572ECHO:=$(firstword $(ECHO))
1573endif
1574else
1575ECHO:=$(firstword $(ECHO))
1576endif
1577endif
1578export ECHO
1579ifndef DATE
1580DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
1581ifeq ($(DATE),)
1582DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
1583ifeq ($(DATE),)
1584DATE= __missing_command_DATE
1585else
1586DATE:=$(firstword $(DATE))
1587endif
1588else
1589DATE:=$(firstword $(DATE))
1590endif
1591endif
1592export DATE
1593ifndef GINSTALL
1594GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
1595ifeq ($(GINSTALL),)
1596GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
1597ifeq ($(GINSTALL),)
1598GINSTALL= __missing_command_GINSTALL
1599else
1600GINSTALL:=$(firstword $(GINSTALL))
1601endif
1602else
1603GINSTALL:=$(firstword $(GINSTALL))
1604endif
1605endif
1606export GINSTALL
1607ifndef CPPROG
1608CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
1609ifeq ($(CPPROG),)
1610CPPROG= __missing_command_CPPROG
1611else
1612CPPROG:=$(firstword $(CPPROG))
1613endif
1614endif
1615export CPPROG
1616ifndef RMPROG
1617RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
1618ifeq ($(RMPROG),)
1619RMPROG= __missing_command_RMPROG
1620else
1621RMPROG:=$(firstword $(RMPROG))
1622endif
1623endif
1624export RMPROG
1625ifndef MVPROG
1626MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
1627ifeq ($(MVPROG),)
1628MVPROG= __missing_command_MVPROG
1629else
1630MVPROG:=$(firstword $(MVPROG))
1631endif
1632endif
1633export MVPROG
1634ifndef MKDIRPROG
1635MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
1636ifeq ($(MKDIRPROG),)
1637MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
1638ifeq ($(MKDIRPROG),)
1639MKDIRPROG= __missing_command_MKDIRPROG
1640else
1641MKDIRPROG:=$(firstword $(MKDIRPROG))
1642endif
1643else
1644MKDIRPROG:=$(firstword $(MKDIRPROG))
1645endif
1646endif
1647export MKDIRPROG
1648ifndef ECHOREDIR
1649ifndef inUnix
1650ECHOREDIR=echo
1651else
1652ECHOREDIR=$(ECHO)
1653endif
1654endif
1655ifndef COPY
1656COPY:=$(CPPROG) -fp
1657endif
1658ifndef COPYTREE
1659COPYTREE:=$(CPPROG) -Rfp
1660endif
1661ifndef MKDIRTREE
1662MKDIRTREE:=$(MKDIRPROG) -p
1663endif
1664ifndef MOVE
1665MOVE:=$(MVPROG) -f
1666endif
1667ifndef DEL
1668DEL:=$(RMPROG) -f
1669endif
1670ifndef DELTREE
1671DELTREE:=$(RMPROG) -rf
1672endif
1673ifndef INSTALL
1674ifdef inUnix
1675INSTALL:=$(GINSTALL) -c -m 644
1676else
1677INSTALL:=$(COPY)
1678endif
1679endif
1680ifndef INSTALLEXE
1681ifdef inUnix
1682INSTALLEXE:=$(GINSTALL) -c -m 755
1683else
1684INSTALLEXE:=$(COPY)
1685endif
1686endif
1687ifndef MKDIR
1688MKDIR:=$(GINSTALL) -m 755 -d
1689endif
1690export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
1691ifndef PPUMOVE
1692PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
1693ifeq ($(PPUMOVE),)
1694PPUMOVE= __missing_command_PPUMOVE
1695else
1696PPUMOVE:=$(firstword $(PPUMOVE))
1697endif
1698endif
1699export PPUMOVE
1700ifndef FPCMAKE
1701FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
1702ifeq ($(FPCMAKE),)
1703FPCMAKE= __missing_command_FPCMAKE
1704else
1705FPCMAKE:=$(firstword $(FPCMAKE))
1706endif
1707endif
1708export FPCMAKE
1709ifndef ZIPPROG
1710ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
1711ifeq ($(ZIPPROG),)
1712ZIPPROG= __missing_command_ZIPPROG
1713else
1714ZIPPROG:=$(firstword $(ZIPPROG))
1715endif
1716endif
1717export ZIPPROG
1718ifndef TARPROG
1719TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH))))
1720ifeq ($(TARPROG),)
1721TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
1722ifeq ($(TARPROG),)
1723TARPROG= __missing_command_TARPROG
1724else
1725TARPROG:=$(firstword $(TARPROG))
1726endif
1727else
1728TARPROG:=$(firstword $(TARPROG))
1729endif
1730endif
1731export TARPROG
1732ASNAME=$(BINUTILSPREFIX)as
1733LDNAME=$(BINUTILSPREFIX)ld
1734ARNAME=$(BINUTILSPREFIX)ar
1735RCNAME=$(BINUTILSPREFIX)rc
1736NASMNAME=$(BINUTILSPREFIX)nasm
1737ifndef ASPROG
1738ifdef CROSSBINDIR
1739ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
1740else
1741ASPROG=$(ASNAME)
1742endif
1743endif
1744ifndef LDPROG
1745ifdef CROSSBINDIR
1746LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
1747else
1748LDPROG=$(LDNAME)
1749endif
1750endif
1751ifndef RCPROG
1752ifdef CROSSBINDIR
1753RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
1754else
1755RCPROG=$(RCNAME)
1756endif
1757endif
1758ifndef ARPROG
1759ifdef CROSSBINDIR
1760ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
1761else
1762ARPROG=$(ARNAME)
1763endif
1764endif
1765ifndef NASMPROG
1766ifdef CROSSBINDIR
1767NASMPROG=$(CROSSBINDIR)/$(NASMNAME)$(SRCEXEEXT)
1768else
1769NASMPROG=$(NASMNAME)
1770endif
1771endif
1772AS=$(ASPROG)
1773LD=$(LDPROG)
1774RC=$(RCPROG)
1775AR=$(ARPROG)
1776NASM=$(NASMPROG)
1777ifdef inUnix
1778PPAS=./ppas$(SRCBATCHEXT)
1779else
1780PPAS=ppas$(SRCBATCHEXT)
1781endif
1782ifdef inUnix
1783LDCONFIG=ldconfig
1784else
1785LDCONFIG=
1786endif
1787ifdef DATE
1788DATESTR:=$(shell $(DATE) +%Y%m%d)
1789else
1790DATESTR=
1791endif
1792ZIPOPT=-9
1793ZIPEXT=.zip
1794ifeq ($(USETAR),bz2)
1795TAROPT=vj
1796TAREXT=.tar.bz2
1797else
1798TAROPT=vz
1799TAREXT=.tar.gz
1800endif
1801override REQUIRE_PACKAGES=rtl fcl-base
1802ifeq ($(FULL_TARGET),i386-linux)
1803REQUIRE_PACKAGES_RTL=1
1804REQUIRE_PACKAGES_PASZLIB=1
1805REQUIRE_PACKAGES_FCL-PROCESS=1
1806REQUIRE_PACKAGES_HASH=1
1807REQUIRE_PACKAGES_LIBTAR=1
1808REQUIRE_PACKAGES_FPMKUNIT=1
1809REQUIRE_PACKAGES_FCL-BASE=1
1810endif
1811ifeq ($(FULL_TARGET),i386-go32v2)
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
1819endif
1820ifeq ($(FULL_TARGET),i386-win32)
1821REQUIRE_PACKAGES_RTL=1
1822REQUIRE_PACKAGES_PASZLIB=1
1823REQUIRE_PACKAGES_FCL-PROCESS=1
1824REQUIRE_PACKAGES_HASH=1
1825REQUIRE_PACKAGES_LIBTAR=1
1826REQUIRE_PACKAGES_FPMKUNIT=1
1827REQUIRE_PACKAGES_FCL-BASE=1
1828endif
1829ifeq ($(FULL_TARGET),i386-os2)
1830REQUIRE_PACKAGES_RTL=1
1831REQUIRE_PACKAGES_PASZLIB=1
1832REQUIRE_PACKAGES_FCL-PROCESS=1
1833REQUIRE_PACKAGES_HASH=1
1834REQUIRE_PACKAGES_LIBTAR=1
1835REQUIRE_PACKAGES_FPMKUNIT=1
1836REQUIRE_PACKAGES_FCL-BASE=1
1837endif
1838ifeq ($(FULL_TARGET),i386-freebsd)
1839REQUIRE_PACKAGES_RTL=1
1840REQUIRE_PACKAGES_PASZLIB=1
1841REQUIRE_PACKAGES_FCL-PROCESS=1
1842REQUIRE_PACKAGES_HASH=1
1843REQUIRE_PACKAGES_LIBTAR=1
1844REQUIRE_PACKAGES_FPMKUNIT=1
1845REQUIRE_PACKAGES_FCL-BASE=1
1846endif
1847ifeq ($(FULL_TARGET),i386-beos)
1848REQUIRE_PACKAGES_RTL=1
1849REQUIRE_PACKAGES_PASZLIB=1
1850REQUIRE_PACKAGES_FCL-PROCESS=1
1851REQUIRE_PACKAGES_HASH=1
1852REQUIRE_PACKAGES_LIBTAR=1
1853REQUIRE_PACKAGES_FPMKUNIT=1
1854REQUIRE_PACKAGES_FCL-BASE=1
1855endif
1856ifeq ($(FULL_TARGET),i386-haiku)
1857REQUIRE_PACKAGES_RTL=1
1858REQUIRE_PACKAGES_PASZLIB=1
1859REQUIRE_PACKAGES_FCL-PROCESS=1
1860REQUIRE_PACKAGES_HASH=1
1861REQUIRE_PACKAGES_LIBTAR=1
1862REQUIRE_PACKAGES_FPMKUNIT=1
1863REQUIRE_PACKAGES_FCL-BASE=1
1864endif
1865ifeq ($(FULL_TARGET),i386-netbsd)
1866REQUIRE_PACKAGES_RTL=1
1867REQUIRE_PACKAGES_PASZLIB=1
1868REQUIRE_PACKAGES_FCL-PROCESS=1
1869REQUIRE_PACKAGES_HASH=1
1870REQUIRE_PACKAGES_LIBTAR=1
1871REQUIRE_PACKAGES_FPMKUNIT=1
1872REQUIRE_PACKAGES_FCL-BASE=1
1873endif
1874ifeq ($(FULL_TARGET),i386-solaris)
1875REQUIRE_PACKAGES_RTL=1
1876REQUIRE_PACKAGES_PASZLIB=1
1877REQUIRE_PACKAGES_FCL-PROCESS=1
1878REQUIRE_PACKAGES_HASH=1
1879REQUIRE_PACKAGES_LIBTAR=1
1880REQUIRE_PACKAGES_FPMKUNIT=1
1881REQUIRE_PACKAGES_FCL-BASE=1
1882endif
1883ifeq ($(FULL_TARGET),i386-netware)
1884REQUIRE_PACKAGES_RTL=1
1885REQUIRE_PACKAGES_PASZLIB=1
1886REQUIRE_PACKAGES_FCL-PROCESS=1
1887REQUIRE_PACKAGES_HASH=1
1888REQUIRE_PACKAGES_LIBTAR=1
1889REQUIRE_PACKAGES_FPMKUNIT=1
1890REQUIRE_PACKAGES_FCL-BASE=1
1891endif
1892ifeq ($(FULL_TARGET),i386-openbsd)
1893REQUIRE_PACKAGES_RTL=1
1894REQUIRE_PACKAGES_PASZLIB=1
1895REQUIRE_PACKAGES_FCL-PROCESS=1
1896REQUIRE_PACKAGES_HASH=1
1897REQUIRE_PACKAGES_LIBTAR=1
1898REQUIRE_PACKAGES_FPMKUNIT=1
1899REQUIRE_PACKAGES_FCL-BASE=1
1900endif
1901ifeq ($(FULL_TARGET),i386-wdosx)
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
1909endif
1910ifeq ($(FULL_TARGET),i386-darwin)
1911REQUIRE_PACKAGES_RTL=1
1912REQUIRE_PACKAGES_PASZLIB=1
1913REQUIRE_PACKAGES_FCL-PROCESS=1
1914REQUIRE_PACKAGES_HASH=1
1915REQUIRE_PACKAGES_LIBTAR=1
1916REQUIRE_PACKAGES_FPMKUNIT=1
1917REQUIRE_PACKAGES_FCL-BASE=1
1918endif
1919ifeq ($(FULL_TARGET),i386-emx)
1920REQUIRE_PACKAGES_RTL=1
1921REQUIRE_PACKAGES_PASZLIB=1
1922REQUIRE_PACKAGES_FCL-PROCESS=1
1923REQUIRE_PACKAGES_HASH=1
1924REQUIRE_PACKAGES_LIBTAR=1
1925REQUIRE_PACKAGES_FPMKUNIT=1
1926REQUIRE_PACKAGES_FCL-BASE=1
1927endif
1928ifeq ($(FULL_TARGET),i386-watcom)
1929REQUIRE_PACKAGES_RTL=1
1930REQUIRE_PACKAGES_PASZLIB=1
1931REQUIRE_PACKAGES_FCL-PROCESS=1
1932REQUIRE_PACKAGES_HASH=1
1933REQUIRE_PACKAGES_LIBTAR=1
1934REQUIRE_PACKAGES_FPMKUNIT=1
1935REQUIRE_PACKAGES_FCL-BASE=1
1936endif
1937ifeq ($(FULL_TARGET),i386-netwlibc)
1938REQUIRE_PACKAGES_RTL=1
1939REQUIRE_PACKAGES_PASZLIB=1
1940REQUIRE_PACKAGES_FCL-PROCESS=1
1941REQUIRE_PACKAGES_HASH=1
1942REQUIRE_PACKAGES_LIBTAR=1
1943REQUIRE_PACKAGES_FPMKUNIT=1
1944REQUIRE_PACKAGES_FCL-BASE=1
1945endif
1946ifeq ($(FULL_TARGET),i386-wince)
1947REQUIRE_PACKAGES_RTL=1
1948REQUIRE_PACKAGES_PASZLIB=1
1949REQUIRE_PACKAGES_FCL-PROCESS=1
1950REQUIRE_PACKAGES_HASH=1
1951REQUIRE_PACKAGES_LIBTAR=1
1952REQUIRE_PACKAGES_FPMKUNIT=1
1953REQUIRE_PACKAGES_FCL-BASE=1
1954endif
1955ifeq ($(FULL_TARGET),i386-embedded)
1956REQUIRE_PACKAGES_RTL=1
1957REQUIRE_PACKAGES_PASZLIB=1
1958REQUIRE_PACKAGES_FCL-PROCESS=1
1959REQUIRE_PACKAGES_HASH=1
1960REQUIRE_PACKAGES_LIBTAR=1
1961REQUIRE_PACKAGES_FPMKUNIT=1
1962REQUIRE_PACKAGES_FCL-BASE=1
1963endif
1964ifeq ($(FULL_TARGET),i386-symbian)
1965REQUIRE_PACKAGES_RTL=1
1966REQUIRE_PACKAGES_PASZLIB=1
1967REQUIRE_PACKAGES_FCL-PROCESS=1
1968REQUIRE_PACKAGES_HASH=1
1969REQUIRE_PACKAGES_LIBTAR=1
1970REQUIRE_PACKAGES_FPMKUNIT=1
1971REQUIRE_PACKAGES_FCL-BASE=1
1972endif
1973ifeq ($(FULL_TARGET),i386-nativent)
1974REQUIRE_PACKAGES_RTL=1
1975REQUIRE_PACKAGES_PASZLIB=1
1976REQUIRE_PACKAGES_FCL-PROCESS=1
1977REQUIRE_PACKAGES_HASH=1
1978REQUIRE_PACKAGES_LIBTAR=1
1979REQUIRE_PACKAGES_FPMKUNIT=1
1980REQUIRE_PACKAGES_FCL-BASE=1
1981endif
1982ifeq ($(FULL_TARGET),i386-iphonesim)
1983REQUIRE_PACKAGES_RTL=1
1984REQUIRE_PACKAGES_PASZLIB=1
1985REQUIRE_PACKAGES_FCL-PROCESS=1
1986REQUIRE_PACKAGES_HASH=1
1987REQUIRE_PACKAGES_LIBTAR=1
1988REQUIRE_PACKAGES_FPMKUNIT=1
1989REQUIRE_PACKAGES_FCL-BASE=1
1990endif
1991ifeq ($(FULL_TARGET),i386-android)
1992REQUIRE_PACKAGES_RTL=1
1993REQUIRE_PACKAGES_PASZLIB=1
1994REQUIRE_PACKAGES_FCL-PROCESS=1
1995REQUIRE_PACKAGES_HASH=1
1996REQUIRE_PACKAGES_LIBTAR=1
1997REQUIRE_PACKAGES_FPMKUNIT=1
1998REQUIRE_PACKAGES_FCL-BASE=1
1999endif
2000ifeq ($(FULL_TARGET),i386-aros)
2001REQUIRE_PACKAGES_RTL=1
2002REQUIRE_PACKAGES_PASZLIB=1
2003REQUIRE_PACKAGES_FCL-PROCESS=1
2004REQUIRE_PACKAGES_HASH=1
2005REQUIRE_PACKAGES_LIBTAR=1
2006REQUIRE_PACKAGES_FPMKUNIT=1
2007REQUIRE_PACKAGES_FCL-BASE=1
2008endif
2009ifeq ($(FULL_TARGET),m68k-linux)
2010REQUIRE_PACKAGES_RTL=1
2011REQUIRE_PACKAGES_PASZLIB=1
2012REQUIRE_PACKAGES_FCL-PROCESS=1
2013REQUIRE_PACKAGES_HASH=1
2014REQUIRE_PACKAGES_LIBTAR=1
2015REQUIRE_PACKAGES_FPMKUNIT=1
2016REQUIRE_PACKAGES_FCL-BASE=1
2017endif
2018ifeq ($(FULL_TARGET),m68k-netbsd)
2019REQUIRE_PACKAGES_RTL=1
2020REQUIRE_PACKAGES_PASZLIB=1
2021REQUIRE_PACKAGES_FCL-PROCESS=1
2022REQUIRE_PACKAGES_HASH=1
2023REQUIRE_PACKAGES_LIBTAR=1
2024REQUIRE_PACKAGES_FPMKUNIT=1
2025REQUIRE_PACKAGES_FCL-BASE=1
2026endif
2027ifeq ($(FULL_TARGET),m68k-amiga)
2028REQUIRE_PACKAGES_RTL=1
2029REQUIRE_PACKAGES_PASZLIB=1
2030REQUIRE_PACKAGES_FCL-PROCESS=1
2031REQUIRE_PACKAGES_HASH=1
2032REQUIRE_PACKAGES_LIBTAR=1
2033REQUIRE_PACKAGES_FPMKUNIT=1
2034REQUIRE_PACKAGES_FCL-BASE=1
2035endif
2036ifeq ($(FULL_TARGET),m68k-atari)
2037REQUIRE_PACKAGES_RTL=1
2038REQUIRE_PACKAGES_PASZLIB=1
2039REQUIRE_PACKAGES_FCL-PROCESS=1
2040REQUIRE_PACKAGES_HASH=1
2041REQUIRE_PACKAGES_LIBTAR=1
2042REQUIRE_PACKAGES_FPMKUNIT=1
2043REQUIRE_PACKAGES_FCL-BASE=1
2044endif
2045ifeq ($(FULL_TARGET),m68k-palmos)
2046REQUIRE_PACKAGES_RTL=1
2047REQUIRE_PACKAGES_PASZLIB=1
2048REQUIRE_PACKAGES_FCL-PROCESS=1
2049REQUIRE_PACKAGES_HASH=1
2050REQUIRE_PACKAGES_LIBTAR=1
2051REQUIRE_PACKAGES_FPMKUNIT=1
2052REQUIRE_PACKAGES_FCL-BASE=1
2053endif
2054ifeq ($(FULL_TARGET),m68k-macosclassic)
2055REQUIRE_PACKAGES_RTL=1
2056REQUIRE_PACKAGES_PASZLIB=1
2057REQUIRE_PACKAGES_FCL-PROCESS=1
2058REQUIRE_PACKAGES_HASH=1
2059REQUIRE_PACKAGES_LIBTAR=1
2060REQUIRE_PACKAGES_FPMKUNIT=1
2061REQUIRE_PACKAGES_FCL-BASE=1
2062endif
2063ifeq ($(FULL_TARGET),m68k-embedded)
2064REQUIRE_PACKAGES_RTL=1
2065REQUIRE_PACKAGES_PASZLIB=1
2066REQUIRE_PACKAGES_FCL-PROCESS=1
2067REQUIRE_PACKAGES_HASH=1
2068REQUIRE_PACKAGES_LIBTAR=1
2069REQUIRE_PACKAGES_FPMKUNIT=1
2070REQUIRE_PACKAGES_FCL-BASE=1
2071endif
2072ifeq ($(FULL_TARGET),powerpc-linux)
2073REQUIRE_PACKAGES_RTL=1
2074REQUIRE_PACKAGES_PASZLIB=1
2075REQUIRE_PACKAGES_FCL-PROCESS=1
2076REQUIRE_PACKAGES_HASH=1
2077REQUIRE_PACKAGES_LIBTAR=1
2078REQUIRE_PACKAGES_FPMKUNIT=1
2079REQUIRE_PACKAGES_FCL-BASE=1
2080endif
2081ifeq ($(FULL_TARGET),powerpc-netbsd)
2082REQUIRE_PACKAGES_RTL=1
2083REQUIRE_PACKAGES_PASZLIB=1
2084REQUIRE_PACKAGES_FCL-PROCESS=1
2085REQUIRE_PACKAGES_HASH=1
2086REQUIRE_PACKAGES_LIBTAR=1
2087REQUIRE_PACKAGES_FPMKUNIT=1
2088REQUIRE_PACKAGES_FCL-BASE=1
2089endif
2090ifeq ($(FULL_TARGET),powerpc-amiga)
2091REQUIRE_PACKAGES_RTL=1
2092REQUIRE_PACKAGES_PASZLIB=1
2093REQUIRE_PACKAGES_FCL-PROCESS=1
2094REQUIRE_PACKAGES_HASH=1
2095REQUIRE_PACKAGES_LIBTAR=1
2096REQUIRE_PACKAGES_FPMKUNIT=1
2097REQUIRE_PACKAGES_FCL-BASE=1
2098endif
2099ifeq ($(FULL_TARGET),powerpc-macosclassic)
2100REQUIRE_PACKAGES_RTL=1
2101REQUIRE_PACKAGES_PASZLIB=1
2102REQUIRE_PACKAGES_FCL-PROCESS=1
2103REQUIRE_PACKAGES_HASH=1
2104REQUIRE_PACKAGES_LIBTAR=1
2105REQUIRE_PACKAGES_FPMKUNIT=1
2106REQUIRE_PACKAGES_FCL-BASE=1
2107endif
2108ifeq ($(FULL_TARGET),powerpc-darwin)
2109REQUIRE_PACKAGES_RTL=1
2110REQUIRE_PACKAGES_PASZLIB=1
2111REQUIRE_PACKAGES_FCL-PROCESS=1
2112REQUIRE_PACKAGES_HASH=1
2113REQUIRE_PACKAGES_LIBTAR=1
2114REQUIRE_PACKAGES_FPMKUNIT=1
2115REQUIRE_PACKAGES_FCL-BASE=1
2116endif
2117ifeq ($(FULL_TARGET),powerpc-morphos)
2118REQUIRE_PACKAGES_RTL=1
2119REQUIRE_PACKAGES_PASZLIB=1
2120REQUIRE_PACKAGES_FCL-PROCESS=1
2121REQUIRE_PACKAGES_HASH=1
2122REQUIRE_PACKAGES_LIBTAR=1
2123REQUIRE_PACKAGES_FPMKUNIT=1
2124REQUIRE_PACKAGES_FCL-BASE=1
2125endif
2126ifeq ($(FULL_TARGET),powerpc-embedded)
2127REQUIRE_PACKAGES_RTL=1
2128REQUIRE_PACKAGES_PASZLIB=1
2129REQUIRE_PACKAGES_FCL-PROCESS=1
2130REQUIRE_PACKAGES_HASH=1
2131REQUIRE_PACKAGES_LIBTAR=1
2132REQUIRE_PACKAGES_FPMKUNIT=1
2133REQUIRE_PACKAGES_FCL-BASE=1
2134endif
2135ifeq ($(FULL_TARGET),powerpc-wii)
2136REQUIRE_PACKAGES_RTL=1
2137REQUIRE_PACKAGES_PASZLIB=1
2138REQUIRE_PACKAGES_FCL-PROCESS=1
2139REQUIRE_PACKAGES_HASH=1
2140REQUIRE_PACKAGES_LIBTAR=1
2141REQUIRE_PACKAGES_FPMKUNIT=1
2142REQUIRE_PACKAGES_FCL-BASE=1
2143endif
2144ifeq ($(FULL_TARGET),powerpc-aix)
2145REQUIRE_PACKAGES_RTL=1
2146REQUIRE_PACKAGES_PASZLIB=1
2147REQUIRE_PACKAGES_FCL-PROCESS=1
2148REQUIRE_PACKAGES_HASH=1
2149REQUIRE_PACKAGES_LIBTAR=1
2150REQUIRE_PACKAGES_FPMKUNIT=1
2151REQUIRE_PACKAGES_FCL-BASE=1
2152endif
2153ifeq ($(FULL_TARGET),sparc-linux)
2154REQUIRE_PACKAGES_RTL=1
2155REQUIRE_PACKAGES_PASZLIB=1
2156REQUIRE_PACKAGES_FCL-PROCESS=1
2157REQUIRE_PACKAGES_HASH=1
2158REQUIRE_PACKAGES_LIBTAR=1
2159REQUIRE_PACKAGES_FPMKUNIT=1
2160REQUIRE_PACKAGES_FCL-BASE=1
2161endif
2162ifeq ($(FULL_TARGET),sparc-netbsd)
2163REQUIRE_PACKAGES_RTL=1
2164REQUIRE_PACKAGES_PASZLIB=1
2165REQUIRE_PACKAGES_FCL-PROCESS=1
2166REQUIRE_PACKAGES_HASH=1
2167REQUIRE_PACKAGES_LIBTAR=1
2168REQUIRE_PACKAGES_FPMKUNIT=1
2169REQUIRE_PACKAGES_FCL-BASE=1
2170endif
2171ifeq ($(FULL_TARGET),sparc-solaris)
2172REQUIRE_PACKAGES_RTL=1
2173REQUIRE_PACKAGES_PASZLIB=1
2174REQUIRE_PACKAGES_FCL-PROCESS=1
2175REQUIRE_PACKAGES_HASH=1
2176REQUIRE_PACKAGES_LIBTAR=1
2177REQUIRE_PACKAGES_FPMKUNIT=1
2178REQUIRE_PACKAGES_FCL-BASE=1
2179endif
2180ifeq ($(FULL_TARGET),sparc-embedded)
2181REQUIRE_PACKAGES_RTL=1
2182REQUIRE_PACKAGES_PASZLIB=1
2183REQUIRE_PACKAGES_FCL-PROCESS=1
2184REQUIRE_PACKAGES_HASH=1
2185REQUIRE_PACKAGES_LIBTAR=1
2186REQUIRE_PACKAGES_FPMKUNIT=1
2187REQUIRE_PACKAGES_FCL-BASE=1
2188endif
2189ifeq ($(FULL_TARGET),x86_64-linux)
2190REQUIRE_PACKAGES_RTL=1
2191REQUIRE_PACKAGES_PASZLIB=1
2192REQUIRE_PACKAGES_FCL-PROCESS=1
2193REQUIRE_PACKAGES_HASH=1
2194REQUIRE_PACKAGES_LIBTAR=1
2195REQUIRE_PACKAGES_FPMKUNIT=1
2196REQUIRE_PACKAGES_FCL-BASE=1
2197endif
2198ifeq ($(FULL_TARGET),x86_64-freebsd)
2199REQUIRE_PACKAGES_RTL=1
2200REQUIRE_PACKAGES_PASZLIB=1
2201REQUIRE_PACKAGES_FCL-PROCESS=1
2202REQUIRE_PACKAGES_HASH=1
2203REQUIRE_PACKAGES_LIBTAR=1
2204REQUIRE_PACKAGES_FPMKUNIT=1
2205REQUIRE_PACKAGES_FCL-BASE=1
2206endif
2207ifeq ($(FULL_TARGET),x86_64-haiku)
2208REQUIRE_PACKAGES_RTL=1
2209REQUIRE_PACKAGES_PASZLIB=1
2210REQUIRE_PACKAGES_FCL-PROCESS=1
2211REQUIRE_PACKAGES_HASH=1
2212REQUIRE_PACKAGES_LIBTAR=1
2213REQUIRE_PACKAGES_FPMKUNIT=1
2214REQUIRE_PACKAGES_FCL-BASE=1
2215endif
2216ifeq ($(FULL_TARGET),x86_64-netbsd)
2217REQUIRE_PACKAGES_RTL=1
2218REQUIRE_PACKAGES_PASZLIB=1
2219REQUIRE_PACKAGES_FCL-PROCESS=1
2220REQUIRE_PACKAGES_HASH=1
2221REQUIRE_PACKAGES_LIBTAR=1
2222REQUIRE_PACKAGES_FPMKUNIT=1
2223REQUIRE_PACKAGES_FCL-BASE=1
2224endif
2225ifeq ($(FULL_TARGET),x86_64-solaris)
2226REQUIRE_PACKAGES_RTL=1
2227REQUIRE_PACKAGES_PASZLIB=1
2228REQUIRE_PACKAGES_FCL-PROCESS=1
2229REQUIRE_PACKAGES_HASH=1
2230REQUIRE_PACKAGES_LIBTAR=1
2231REQUIRE_PACKAGES_FPMKUNIT=1
2232REQUIRE_PACKAGES_FCL-BASE=1
2233endif
2234ifeq ($(FULL_TARGET),x86_64-openbsd)
2235REQUIRE_PACKAGES_RTL=1
2236REQUIRE_PACKAGES_PASZLIB=1
2237REQUIRE_PACKAGES_FCL-PROCESS=1
2238REQUIRE_PACKAGES_HASH=1
2239REQUIRE_PACKAGES_LIBTAR=1
2240REQUIRE_PACKAGES_FPMKUNIT=1
2241REQUIRE_PACKAGES_FCL-BASE=1
2242endif
2243ifeq ($(FULL_TARGET),x86_64-darwin)
2244REQUIRE_PACKAGES_RTL=1
2245REQUIRE_PACKAGES_PASZLIB=1
2246REQUIRE_PACKAGES_FCL-PROCESS=1
2247REQUIRE_PACKAGES_HASH=1
2248REQUIRE_PACKAGES_LIBTAR=1
2249REQUIRE_PACKAGES_FPMKUNIT=1
2250REQUIRE_PACKAGES_FCL-BASE=1
2251endif
2252ifeq ($(FULL_TARGET),x86_64-win64)
2253REQUIRE_PACKAGES_RTL=1
2254REQUIRE_PACKAGES_PASZLIB=1
2255REQUIRE_PACKAGES_FCL-PROCESS=1
2256REQUIRE_PACKAGES_HASH=1
2257REQUIRE_PACKAGES_LIBTAR=1
2258REQUIRE_PACKAGES_FPMKUNIT=1
2259REQUIRE_PACKAGES_FCL-BASE=1
2260endif
2261ifeq ($(FULL_TARGET),x86_64-embedded)
2262REQUIRE_PACKAGES_RTL=1
2263REQUIRE_PACKAGES_PASZLIB=1
2264REQUIRE_PACKAGES_FCL-PROCESS=1
2265REQUIRE_PACKAGES_HASH=1
2266REQUIRE_PACKAGES_LIBTAR=1
2267REQUIRE_PACKAGES_FPMKUNIT=1
2268REQUIRE_PACKAGES_FCL-BASE=1
2269endif
2270ifeq ($(FULL_TARGET),x86_64-iphonesim)
2271REQUIRE_PACKAGES_RTL=1
2272REQUIRE_PACKAGES_PASZLIB=1
2273REQUIRE_PACKAGES_FCL-PROCESS=1
2274REQUIRE_PACKAGES_HASH=1
2275REQUIRE_PACKAGES_LIBTAR=1
2276REQUIRE_PACKAGES_FPMKUNIT=1
2277REQUIRE_PACKAGES_FCL-BASE=1
2278endif
2279ifeq ($(FULL_TARGET),x86_64-android)
2280REQUIRE_PACKAGES_RTL=1
2281REQUIRE_PACKAGES_PASZLIB=1
2282REQUIRE_PACKAGES_FCL-PROCESS=1
2283REQUIRE_PACKAGES_HASH=1
2284REQUIRE_PACKAGES_LIBTAR=1
2285REQUIRE_PACKAGES_FPMKUNIT=1
2286REQUIRE_PACKAGES_FCL-BASE=1
2287endif
2288ifeq ($(FULL_TARGET),x86_64-aros)
2289REQUIRE_PACKAGES_RTL=1
2290REQUIRE_PACKAGES_PASZLIB=1
2291REQUIRE_PACKAGES_FCL-PROCESS=1
2292REQUIRE_PACKAGES_HASH=1
2293REQUIRE_PACKAGES_LIBTAR=1
2294REQUIRE_PACKAGES_FPMKUNIT=1
2295REQUIRE_PACKAGES_FCL-BASE=1
2296endif
2297ifeq ($(FULL_TARGET),x86_64-dragonfly)
2298REQUIRE_PACKAGES_RTL=1
2299REQUIRE_PACKAGES_PASZLIB=1
2300REQUIRE_PACKAGES_FCL-PROCESS=1
2301REQUIRE_PACKAGES_HASH=1
2302REQUIRE_PACKAGES_LIBTAR=1
2303REQUIRE_PACKAGES_FPMKUNIT=1
2304REQUIRE_PACKAGES_FCL-BASE=1
2305endif
2306ifeq ($(FULL_TARGET),arm-linux)
2307REQUIRE_PACKAGES_RTL=1
2308REQUIRE_PACKAGES_PASZLIB=1
2309REQUIRE_PACKAGES_FCL-PROCESS=1
2310REQUIRE_PACKAGES_HASH=1
2311REQUIRE_PACKAGES_LIBTAR=1
2312REQUIRE_PACKAGES_FPMKUNIT=1
2313REQUIRE_PACKAGES_FCL-BASE=1
2314endif
2315ifeq ($(FULL_TARGET),arm-netbsd)
2316REQUIRE_PACKAGES_RTL=1
2317REQUIRE_PACKAGES_PASZLIB=1
2318REQUIRE_PACKAGES_FCL-PROCESS=1
2319REQUIRE_PACKAGES_HASH=1
2320REQUIRE_PACKAGES_LIBTAR=1
2321REQUIRE_PACKAGES_FPMKUNIT=1
2322REQUIRE_PACKAGES_FCL-BASE=1
2323endif
2324ifeq ($(FULL_TARGET),arm-palmos)
2325REQUIRE_PACKAGES_RTL=1
2326REQUIRE_PACKAGES_PASZLIB=1
2327REQUIRE_PACKAGES_FCL-PROCESS=1
2328REQUIRE_PACKAGES_HASH=1
2329REQUIRE_PACKAGES_LIBTAR=1
2330REQUIRE_PACKAGES_FPMKUNIT=1
2331REQUIRE_PACKAGES_FCL-BASE=1
2332endif
2333ifeq ($(FULL_TARGET),arm-wince)
2334REQUIRE_PACKAGES_RTL=1
2335REQUIRE_PACKAGES_PASZLIB=1
2336REQUIRE_PACKAGES_FCL-PROCESS=1
2337REQUIRE_PACKAGES_HASH=1
2338REQUIRE_PACKAGES_LIBTAR=1
2339REQUIRE_PACKAGES_FPMKUNIT=1
2340REQUIRE_PACKAGES_FCL-BASE=1
2341endif
2342ifeq ($(FULL_TARGET),arm-gba)
2343REQUIRE_PACKAGES_RTL=1
2344REQUIRE_PACKAGES_PASZLIB=1
2345REQUIRE_PACKAGES_FCL-PROCESS=1
2346REQUIRE_PACKAGES_HASH=1
2347REQUIRE_PACKAGES_LIBTAR=1
2348REQUIRE_PACKAGES_FPMKUNIT=1
2349REQUIRE_PACKAGES_FCL-BASE=1
2350endif
2351ifeq ($(FULL_TARGET),arm-nds)
2352REQUIRE_PACKAGES_RTL=1
2353REQUIRE_PACKAGES_PASZLIB=1
2354REQUIRE_PACKAGES_FCL-PROCESS=1
2355REQUIRE_PACKAGES_HASH=1
2356REQUIRE_PACKAGES_LIBTAR=1
2357REQUIRE_PACKAGES_FPMKUNIT=1
2358REQUIRE_PACKAGES_FCL-BASE=1
2359endif
2360ifeq ($(FULL_TARGET),arm-embedded)
2361REQUIRE_PACKAGES_RTL=1
2362REQUIRE_PACKAGES_PASZLIB=1
2363REQUIRE_PACKAGES_FCL-PROCESS=1
2364REQUIRE_PACKAGES_HASH=1
2365REQUIRE_PACKAGES_LIBTAR=1
2366REQUIRE_PACKAGES_FPMKUNIT=1
2367REQUIRE_PACKAGES_FCL-BASE=1
2368endif
2369ifeq ($(FULL_TARGET),arm-symbian)
2370REQUIRE_PACKAGES_RTL=1
2371REQUIRE_PACKAGES_PASZLIB=1
2372REQUIRE_PACKAGES_FCL-PROCESS=1
2373REQUIRE_PACKAGES_HASH=1
2374REQUIRE_PACKAGES_LIBTAR=1
2375REQUIRE_PACKAGES_FPMKUNIT=1
2376REQUIRE_PACKAGES_FCL-BASE=1
2377endif
2378ifeq ($(FULL_TARGET),arm-android)
2379REQUIRE_PACKAGES_RTL=1
2380REQUIRE_PACKAGES_PASZLIB=1
2381REQUIRE_PACKAGES_FCL-PROCESS=1
2382REQUIRE_PACKAGES_HASH=1
2383REQUIRE_PACKAGES_LIBTAR=1
2384REQUIRE_PACKAGES_FPMKUNIT=1
2385REQUIRE_PACKAGES_FCL-BASE=1
2386endif
2387ifeq ($(FULL_TARGET),arm-aros)
2388REQUIRE_PACKAGES_RTL=1
2389REQUIRE_PACKAGES_PASZLIB=1
2390REQUIRE_PACKAGES_FCL-PROCESS=1
2391REQUIRE_PACKAGES_HASH=1
2392REQUIRE_PACKAGES_LIBTAR=1
2393REQUIRE_PACKAGES_FPMKUNIT=1
2394REQUIRE_PACKAGES_FCL-BASE=1
2395endif
2396ifeq ($(FULL_TARGET),arm-ios)
2397REQUIRE_PACKAGES_RTL=1
2398REQUIRE_PACKAGES_PASZLIB=1
2399REQUIRE_PACKAGES_FCL-PROCESS=1
2400REQUIRE_PACKAGES_HASH=1
2401REQUIRE_PACKAGES_LIBTAR=1
2402REQUIRE_PACKAGES_FPMKUNIT=1
2403REQUIRE_PACKAGES_FCL-BASE=1
2404endif
2405ifeq ($(FULL_TARGET),powerpc64-linux)
2406REQUIRE_PACKAGES_RTL=1
2407REQUIRE_PACKAGES_PASZLIB=1
2408REQUIRE_PACKAGES_FCL-PROCESS=1
2409REQUIRE_PACKAGES_HASH=1
2410REQUIRE_PACKAGES_LIBTAR=1
2411REQUIRE_PACKAGES_FPMKUNIT=1
2412REQUIRE_PACKAGES_FCL-BASE=1
2413endif
2414ifeq ($(FULL_TARGET),powerpc64-darwin)
2415REQUIRE_PACKAGES_RTL=1
2416REQUIRE_PACKAGES_PASZLIB=1
2417REQUIRE_PACKAGES_FCL-PROCESS=1
2418REQUIRE_PACKAGES_HASH=1
2419REQUIRE_PACKAGES_LIBTAR=1
2420REQUIRE_PACKAGES_FPMKUNIT=1
2421REQUIRE_PACKAGES_FCL-BASE=1
2422endif
2423ifeq ($(FULL_TARGET),powerpc64-embedded)
2424REQUIRE_PACKAGES_RTL=1
2425REQUIRE_PACKAGES_PASZLIB=1
2426REQUIRE_PACKAGES_FCL-PROCESS=1
2427REQUIRE_PACKAGES_HASH=1
2428REQUIRE_PACKAGES_LIBTAR=1
2429REQUIRE_PACKAGES_FPMKUNIT=1
2430REQUIRE_PACKAGES_FCL-BASE=1
2431endif
2432ifeq ($(FULL_TARGET),powerpc64-aix)
2433REQUIRE_PACKAGES_RTL=1
2434REQUIRE_PACKAGES_PASZLIB=1
2435REQUIRE_PACKAGES_FCL-PROCESS=1
2436REQUIRE_PACKAGES_HASH=1
2437REQUIRE_PACKAGES_LIBTAR=1
2438REQUIRE_PACKAGES_FPMKUNIT=1
2439REQUIRE_PACKAGES_FCL-BASE=1
2440endif
2441ifeq ($(FULL_TARGET),avr-embedded)
2442REQUIRE_PACKAGES_RTL=1
2443REQUIRE_PACKAGES_PASZLIB=1
2444REQUIRE_PACKAGES_FCL-PROCESS=1
2445REQUIRE_PACKAGES_HASH=1
2446REQUIRE_PACKAGES_LIBTAR=1
2447REQUIRE_PACKAGES_FPMKUNIT=1
2448REQUIRE_PACKAGES_FCL-BASE=1
2449endif
2450ifeq ($(FULL_TARGET),armeb-linux)
2451REQUIRE_PACKAGES_RTL=1
2452REQUIRE_PACKAGES_PASZLIB=1
2453REQUIRE_PACKAGES_FCL-PROCESS=1
2454REQUIRE_PACKAGES_HASH=1
2455REQUIRE_PACKAGES_LIBTAR=1
2456REQUIRE_PACKAGES_FPMKUNIT=1
2457REQUIRE_PACKAGES_FCL-BASE=1
2458endif
2459ifeq ($(FULL_TARGET),armeb-embedded)
2460REQUIRE_PACKAGES_RTL=1
2461REQUIRE_PACKAGES_PASZLIB=1
2462REQUIRE_PACKAGES_FCL-PROCESS=1
2463REQUIRE_PACKAGES_HASH=1
2464REQUIRE_PACKAGES_LIBTAR=1
2465REQUIRE_PACKAGES_FPMKUNIT=1
2466REQUIRE_PACKAGES_FCL-BASE=1
2467endif
2468ifeq ($(FULL_TARGET),mips-linux)
2469REQUIRE_PACKAGES_RTL=1
2470REQUIRE_PACKAGES_PASZLIB=1
2471REQUIRE_PACKAGES_FCL-PROCESS=1
2472REQUIRE_PACKAGES_HASH=1
2473REQUIRE_PACKAGES_LIBTAR=1
2474REQUIRE_PACKAGES_FPMKUNIT=1
2475REQUIRE_PACKAGES_FCL-BASE=1
2476endif
2477ifeq ($(FULL_TARGET),mipsel-linux)
2478REQUIRE_PACKAGES_RTL=1
2479REQUIRE_PACKAGES_PASZLIB=1
2480REQUIRE_PACKAGES_FCL-PROCESS=1
2481REQUIRE_PACKAGES_HASH=1
2482REQUIRE_PACKAGES_LIBTAR=1
2483REQUIRE_PACKAGES_FPMKUNIT=1
2484REQUIRE_PACKAGES_FCL-BASE=1
2485endif
2486ifeq ($(FULL_TARGET),mipsel-embedded)
2487REQUIRE_PACKAGES_RTL=1
2488REQUIRE_PACKAGES_PASZLIB=1
2489REQUIRE_PACKAGES_FCL-PROCESS=1
2490REQUIRE_PACKAGES_HASH=1
2491REQUIRE_PACKAGES_LIBTAR=1
2492REQUIRE_PACKAGES_FPMKUNIT=1
2493REQUIRE_PACKAGES_FCL-BASE=1
2494endif
2495ifeq ($(FULL_TARGET),mipsel-android)
2496REQUIRE_PACKAGES_RTL=1
2497REQUIRE_PACKAGES_PASZLIB=1
2498REQUIRE_PACKAGES_FCL-PROCESS=1
2499REQUIRE_PACKAGES_HASH=1
2500REQUIRE_PACKAGES_LIBTAR=1
2501REQUIRE_PACKAGES_FPMKUNIT=1
2502REQUIRE_PACKAGES_FCL-BASE=1
2503endif
2504ifeq ($(FULL_TARGET),jvm-java)
2505REQUIRE_PACKAGES_RTL=1
2506REQUIRE_PACKAGES_PASZLIB=1
2507REQUIRE_PACKAGES_FCL-PROCESS=1
2508REQUIRE_PACKAGES_HASH=1
2509REQUIRE_PACKAGES_LIBTAR=1
2510REQUIRE_PACKAGES_FPMKUNIT=1
2511REQUIRE_PACKAGES_FCL-BASE=1
2512endif
2513ifeq ($(FULL_TARGET),jvm-android)
2514REQUIRE_PACKAGES_RTL=1
2515REQUIRE_PACKAGES_PASZLIB=1
2516REQUIRE_PACKAGES_FCL-PROCESS=1
2517REQUIRE_PACKAGES_HASH=1
2518REQUIRE_PACKAGES_LIBTAR=1
2519REQUIRE_PACKAGES_FPMKUNIT=1
2520REQUIRE_PACKAGES_FCL-BASE=1
2521endif
2522ifeq ($(FULL_TARGET),i8086-embedded)
2523REQUIRE_PACKAGES_RTL=1
2524REQUIRE_PACKAGES_PASZLIB=1
2525REQUIRE_PACKAGES_FCL-PROCESS=1
2526REQUIRE_PACKAGES_HASH=1
2527REQUIRE_PACKAGES_LIBTAR=1
2528REQUIRE_PACKAGES_FPMKUNIT=1
2529REQUIRE_PACKAGES_FCL-BASE=1
2530endif
2531ifeq ($(FULL_TARGET),i8086-msdos)
2532REQUIRE_PACKAGES_RTL=1
2533REQUIRE_PACKAGES_PASZLIB=1
2534REQUIRE_PACKAGES_FCL-PROCESS=1
2535REQUIRE_PACKAGES_HASH=1
2536REQUIRE_PACKAGES_LIBTAR=1
2537REQUIRE_PACKAGES_FPMKUNIT=1
2538REQUIRE_PACKAGES_FCL-BASE=1
2539endif
2540ifeq ($(FULL_TARGET),i8086-win16)
2541REQUIRE_PACKAGES_RTL=1
2542REQUIRE_PACKAGES_PASZLIB=1
2543REQUIRE_PACKAGES_FCL-PROCESS=1
2544REQUIRE_PACKAGES_HASH=1
2545REQUIRE_PACKAGES_LIBTAR=1
2546REQUIRE_PACKAGES_FPMKUNIT=1
2547REQUIRE_PACKAGES_FCL-BASE=1
2548endif
2549ifeq ($(FULL_TARGET),aarch64-linux)
2550REQUIRE_PACKAGES_RTL=1
2551REQUIRE_PACKAGES_PASZLIB=1
2552REQUIRE_PACKAGES_FCL-PROCESS=1
2553REQUIRE_PACKAGES_HASH=1
2554REQUIRE_PACKAGES_LIBTAR=1
2555REQUIRE_PACKAGES_FPMKUNIT=1
2556REQUIRE_PACKAGES_FCL-BASE=1
2557endif
2558ifeq ($(FULL_TARGET),aarch64-darwin)
2559REQUIRE_PACKAGES_RTL=1
2560REQUIRE_PACKAGES_PASZLIB=1
2561REQUIRE_PACKAGES_FCL-PROCESS=1
2562REQUIRE_PACKAGES_HASH=1
2563REQUIRE_PACKAGES_LIBTAR=1
2564REQUIRE_PACKAGES_FPMKUNIT=1
2565REQUIRE_PACKAGES_FCL-BASE=1
2566endif
2567ifeq ($(FULL_TARGET),aarch64-android)
2568REQUIRE_PACKAGES_RTL=1
2569REQUIRE_PACKAGES_PASZLIB=1
2570REQUIRE_PACKAGES_FCL-PROCESS=1
2571REQUIRE_PACKAGES_HASH=1
2572REQUIRE_PACKAGES_LIBTAR=1
2573REQUIRE_PACKAGES_FPMKUNIT=1
2574REQUIRE_PACKAGES_FCL-BASE=1
2575endif
2576ifeq ($(FULL_TARGET),aarch64-ios)
2577REQUIRE_PACKAGES_RTL=1
2578REQUIRE_PACKAGES_PASZLIB=1
2579REQUIRE_PACKAGES_FCL-PROCESS=1
2580REQUIRE_PACKAGES_HASH=1
2581REQUIRE_PACKAGES_LIBTAR=1
2582REQUIRE_PACKAGES_FPMKUNIT=1
2583REQUIRE_PACKAGES_FCL-BASE=1
2584endif
2585ifeq ($(FULL_TARGET),wasm-wasm)
2586REQUIRE_PACKAGES_RTL=1
2587REQUIRE_PACKAGES_PASZLIB=1
2588REQUIRE_PACKAGES_FCL-PROCESS=1
2589REQUIRE_PACKAGES_HASH=1
2590REQUIRE_PACKAGES_LIBTAR=1
2591REQUIRE_PACKAGES_FPMKUNIT=1
2592REQUIRE_PACKAGES_FCL-BASE=1
2593endif
2594ifeq ($(FULL_TARGET),sparc64-linux)
2595REQUIRE_PACKAGES_RTL=1
2596REQUIRE_PACKAGES_PASZLIB=1
2597REQUIRE_PACKAGES_FCL-PROCESS=1
2598REQUIRE_PACKAGES_HASH=1
2599REQUIRE_PACKAGES_LIBTAR=1
2600REQUIRE_PACKAGES_FPMKUNIT=1
2601REQUIRE_PACKAGES_FCL-BASE=1
2602endif
2603ifdef REQUIRE_PACKAGES_RTL
2604PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
2605ifneq ($(PACKAGEDIR_RTL),)
2606ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)),)
2607UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)
2608else
2609UNITDIR_RTL=$(PACKAGEDIR_RTL)
2610endif
2611ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX)),)
2612UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units/$(SOURCESUFFIX)
2613else
2614ifneq ($(wildcard $(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX)),)
2615UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)/units_bs/$(SOURCESUFFIX)
2616else
2617UNITDIR_FPMAKE_RTL=$(PACKAGEDIR_RTL)
2618endif
2619endif
2620ifdef CHECKDEPEND
2621$(PACKAGEDIR_RTL)/$(OS_TARGET)/$(FPCMADE):
2622	$(MAKE) -C $(PACKAGEDIR_RTL)/$(OS_TARGET) $(FPCMADE)
2623override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(OS_TARGET)/$(FPCMADE)
2624endif
2625else
2626PACKAGEDIR_RTL=
2627UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR)))))
2628ifneq ($(UNITDIR_RTL),)
2629UNITDIR_RTL:=$(firstword $(UNITDIR_RTL))
2630else
2631UNITDIR_RTL=
2632endif
2633endif
2634ifdef UNITDIR_RTL
2635override COMPILER_UNITDIR+=$(UNITDIR_RTL)
2636endif
2637ifdef UNITDIR_FPMAKE_RTL
2638override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_RTL)
2639endif
2640endif
2641ifdef REQUIRE_PACKAGES_PASZLIB
2642PACKAGEDIR_PASZLIB:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Makefile.fpc,$(PACKAGESDIR))))))
2643ifneq ($(PACKAGEDIR_PASZLIB),)
2644ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)),)
2645UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(TARGETSUFFIX)
2646else
2647UNITDIR_PASZLIB=$(PACKAGEDIR_PASZLIB)
2648endif
2649ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units/$(SOURCESUFFIX)),)
2650UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)/units/$(SOURCESUFFIX)
2651else
2652ifneq ($(wildcard $(PACKAGEDIR_PASZLIB)/units_bs/$(SOURCESUFFIX)),)
2653UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)/units_bs/$(SOURCESUFFIX)
2654else
2655UNITDIR_FPMAKE_PASZLIB=$(PACKAGEDIR_PASZLIB)
2656endif
2657endif
2658ifdef CHECKDEPEND
2659$(PACKAGEDIR_PASZLIB)/$(FPCMADE):
2660	$(MAKE) -C $(PACKAGEDIR_PASZLIB) $(FPCMADE)
2661override ALLDEPENDENCIES+=$(PACKAGEDIR_PASZLIB)/$(FPCMADE)
2662endif
2663else
2664PACKAGEDIR_PASZLIB=
2665UNITDIR_PASZLIB:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /paszlib/Package.fpc,$(UNITSDIR)))))
2666ifneq ($(UNITDIR_PASZLIB),)
2667UNITDIR_PASZLIB:=$(firstword $(UNITDIR_PASZLIB))
2668else
2669UNITDIR_PASZLIB=
2670endif
2671endif
2672ifdef UNITDIR_PASZLIB
2673override COMPILER_UNITDIR+=$(UNITDIR_PASZLIB)
2674endif
2675ifdef UNITDIR_FPMAKE_PASZLIB
2676override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_PASZLIB)
2677endif
2678endif
2679ifdef REQUIRE_PACKAGES_FCL-PROCESS
2680PACKAGEDIR_FCL-PROCESS:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Makefile.fpc,$(PACKAGESDIR))))))
2681ifneq ($(PACKAGEDIR_FCL-PROCESS),)
2682ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)),)
2683UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units/$(TARGETSUFFIX)
2684else
2685UNITDIR_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)
2686endif
2687ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units/$(SOURCESUFFIX)),)
2688UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units/$(SOURCESUFFIX)
2689else
2690ifneq ($(wildcard $(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX)),)
2691UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)/units_bs/$(SOURCESUFFIX)
2692else
2693UNITDIR_FPMAKE_FCL-PROCESS=$(PACKAGEDIR_FCL-PROCESS)
2694endif
2695endif
2696ifdef CHECKDEPEND
2697$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE):
2698	$(MAKE) -C $(PACKAGEDIR_FCL-PROCESS) $(FPCMADE)
2699override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-PROCESS)/$(FPCMADE)
2700endif
2701else
2702PACKAGEDIR_FCL-PROCESS=
2703UNITDIR_FCL-PROCESS:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-process/Package.fpc,$(UNITSDIR)))))
2704ifneq ($(UNITDIR_FCL-PROCESS),)
2705UNITDIR_FCL-PROCESS:=$(firstword $(UNITDIR_FCL-PROCESS))
2706else
2707UNITDIR_FCL-PROCESS=
2708endif
2709endif
2710ifdef UNITDIR_FCL-PROCESS
2711override COMPILER_UNITDIR+=$(UNITDIR_FCL-PROCESS)
2712endif
2713ifdef UNITDIR_FPMAKE_FCL-PROCESS
2714override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FCL-PROCESS)
2715endif
2716endif
2717ifdef REQUIRE_PACKAGES_HASH
2718PACKAGEDIR_HASH:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /hash/Makefile.fpc,$(PACKAGESDIR))))))
2719ifneq ($(PACKAGEDIR_HASH),)
2720ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)),)
2721UNITDIR_HASH=$(PACKAGEDIR_HASH)/units/$(TARGETSUFFIX)
2722else
2723UNITDIR_HASH=$(PACKAGEDIR_HASH)
2724endif
2725ifneq ($(wildcard $(PACKAGEDIR_HASH)/units/$(SOURCESUFFIX)),)
2726UNITDIR_FPMAKE_HASH=$(PACKAGEDIR_HASH)/units/$(SOURCESUFFIX)
2727else
2728ifneq ($(wildcard $(PACKAGEDIR_HASH)/units_bs/$(SOURCESUFFIX)),)
2729UNITDIR_FPMAKE_HASH=$(PACKAGEDIR_HASH)/units_bs/$(SOURCESUFFIX)
2730else
2731UNITDIR_FPMAKE_HASH=$(PACKAGEDIR_HASH)
2732endif
2733endif
2734ifdef CHECKDEPEND
2735$(PACKAGEDIR_HASH)/$(FPCMADE):
2736	$(MAKE) -C $(PACKAGEDIR_HASH) $(FPCMADE)
2737override ALLDEPENDENCIES+=$(PACKAGEDIR_HASH)/$(FPCMADE)
2738endif
2739else
2740PACKAGEDIR_HASH=
2741UNITDIR_HASH:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /hash/Package.fpc,$(UNITSDIR)))))
2742ifneq ($(UNITDIR_HASH),)
2743UNITDIR_HASH:=$(firstword $(UNITDIR_HASH))
2744else
2745UNITDIR_HASH=
2746endif
2747endif
2748ifdef UNITDIR_HASH
2749override COMPILER_UNITDIR+=$(UNITDIR_HASH)
2750endif
2751ifdef UNITDIR_FPMAKE_HASH
2752override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_HASH)
2753endif
2754endif
2755ifdef REQUIRE_PACKAGES_LIBTAR
2756PACKAGEDIR_LIBTAR:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /libtar/Makefile.fpc,$(PACKAGESDIR))))))
2757ifneq ($(PACKAGEDIR_LIBTAR),)
2758ifneq ($(wildcard $(PACKAGEDIR_LIBTAR)/units/$(TARGETSUFFIX)),)
2759UNITDIR_LIBTAR=$(PACKAGEDIR_LIBTAR)/units/$(TARGETSUFFIX)
2760else
2761UNITDIR_LIBTAR=$(PACKAGEDIR_LIBTAR)
2762endif
2763ifneq ($(wildcard $(PACKAGEDIR_LIBTAR)/units/$(SOURCESUFFIX)),)
2764UNITDIR_FPMAKE_LIBTAR=$(PACKAGEDIR_LIBTAR)/units/$(SOURCESUFFIX)
2765else
2766ifneq ($(wildcard $(PACKAGEDIR_LIBTAR)/units_bs/$(SOURCESUFFIX)),)
2767UNITDIR_FPMAKE_LIBTAR=$(PACKAGEDIR_LIBTAR)/units_bs/$(SOURCESUFFIX)
2768else
2769UNITDIR_FPMAKE_LIBTAR=$(PACKAGEDIR_LIBTAR)
2770endif
2771endif
2772ifdef CHECKDEPEND
2773$(PACKAGEDIR_LIBTAR)/$(FPCMADE):
2774	$(MAKE) -C $(PACKAGEDIR_LIBTAR) $(FPCMADE)
2775override ALLDEPENDENCIES+=$(PACKAGEDIR_LIBTAR)/$(FPCMADE)
2776endif
2777else
2778PACKAGEDIR_LIBTAR=
2779UNITDIR_LIBTAR:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /libtar/Package.fpc,$(UNITSDIR)))))
2780ifneq ($(UNITDIR_LIBTAR),)
2781UNITDIR_LIBTAR:=$(firstword $(UNITDIR_LIBTAR))
2782else
2783UNITDIR_LIBTAR=
2784endif
2785endif
2786ifdef UNITDIR_LIBTAR
2787override COMPILER_UNITDIR+=$(UNITDIR_LIBTAR)
2788endif
2789ifdef UNITDIR_FPMAKE_LIBTAR
2790override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_LIBTAR)
2791endif
2792endif
2793ifdef REQUIRE_PACKAGES_FPMKUNIT
2794PACKAGEDIR_FPMKUNIT:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Makefile.fpc,$(PACKAGESDIR))))))
2795ifneq ($(PACKAGEDIR_FPMKUNIT),)
2796ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)),)
2797UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(TARGETSUFFIX)
2798else
2799UNITDIR_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)
2800endif
2801ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)),)
2802UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units/$(SOURCESUFFIX)
2803else
2804ifneq ($(wildcard $(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)),)
2805UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)/units_bs/$(SOURCESUFFIX)
2806else
2807UNITDIR_FPMAKE_FPMKUNIT=$(PACKAGEDIR_FPMKUNIT)
2808endif
2809endif
2810ifdef CHECKDEPEND
2811$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE):
2812	$(MAKE) -C $(PACKAGEDIR_FPMKUNIT) $(FPCMADE)
2813override ALLDEPENDENCIES+=$(PACKAGEDIR_FPMKUNIT)/$(FPCMADE)
2814endif
2815else
2816PACKAGEDIR_FPMKUNIT=
2817UNITDIR_FPMKUNIT:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fpmkunit/Package.fpc,$(UNITSDIR)))))
2818ifneq ($(UNITDIR_FPMKUNIT),)
2819UNITDIR_FPMKUNIT:=$(firstword $(UNITDIR_FPMKUNIT))
2820else
2821UNITDIR_FPMKUNIT=
2822endif
2823endif
2824ifdef UNITDIR_FPMKUNIT
2825override COMPILER_UNITDIR+=$(UNITDIR_FPMKUNIT)
2826endif
2827ifdef UNITDIR_FPMAKE_FPMKUNIT
2828override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FPMKUNIT)
2829endif
2830endif
2831ifdef REQUIRE_PACKAGES_FCL-BASE
2832PACKAGEDIR_FCL-BASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /fcl-base/Makefile.fpc,$(PACKAGESDIR))))))
2833ifneq ($(PACKAGEDIR_FCL-BASE),)
2834ifneq ($(wildcard $(PACKAGEDIR_FCL-BASE)/units/$(TARGETSUFFIX)),)
2835UNITDIR_FCL-BASE=$(PACKAGEDIR_FCL-BASE)/units/$(TARGETSUFFIX)
2836else
2837UNITDIR_FCL-BASE=$(PACKAGEDIR_FCL-BASE)
2838endif
2839ifneq ($(wildcard $(PACKAGEDIR_FCL-BASE)/units/$(SOURCESUFFIX)),)
2840UNITDIR_FPMAKE_FCL-BASE=$(PACKAGEDIR_FCL-BASE)/units/$(SOURCESUFFIX)
2841else
2842ifneq ($(wildcard $(PACKAGEDIR_FCL-BASE)/units_bs/$(SOURCESUFFIX)),)
2843UNITDIR_FPMAKE_FCL-BASE=$(PACKAGEDIR_FCL-BASE)/units_bs/$(SOURCESUFFIX)
2844else
2845UNITDIR_FPMAKE_FCL-BASE=$(PACKAGEDIR_FCL-BASE)
2846endif
2847endif
2848ifdef CHECKDEPEND
2849$(PACKAGEDIR_FCL-BASE)/$(FPCMADE):
2850	$(MAKE) -C $(PACKAGEDIR_FCL-BASE) $(FPCMADE)
2851override ALLDEPENDENCIES+=$(PACKAGEDIR_FCL-BASE)/$(FPCMADE)
2852endif
2853else
2854PACKAGEDIR_FCL-BASE=
2855UNITDIR_FCL-BASE:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /fcl-base/Package.fpc,$(UNITSDIR)))))
2856ifneq ($(UNITDIR_FCL-BASE),)
2857UNITDIR_FCL-BASE:=$(firstword $(UNITDIR_FCL-BASE))
2858else
2859UNITDIR_FCL-BASE=
2860endif
2861endif
2862ifdef UNITDIR_FCL-BASE
2863override COMPILER_UNITDIR+=$(UNITDIR_FCL-BASE)
2864endif
2865ifdef UNITDIR_FPMAKE_FCL-BASE
2866override COMPILER_FPMAKE_UNITDIR+=$(UNITDIR_FPMAKE_FCL-BASE)
2867endif
2868endif
2869ifndef NOCPUDEF
2870override FPCOPTDEF=$(ARCH)
2871endif
2872ifneq ($(OS_TARGET),$(OS_SOURCE))
2873override FPCOPT+=-T$(OS_TARGET)
2874endif
2875ifneq ($(CPU_TARGET),$(CPU_SOURCE))
2876override FPCOPT+=-P$(ARCH)
2877endif
2878ifeq ($(OS_SOURCE),openbsd)
2879override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
2880override FPCMAKEOPT+=-FD$(NEW_BINUTILS_PATH)
2881override FPMAKE_BUILD_OPT+=-FD$(NEW_BINUTILS_PATH)
2882endif
2883ifndef CROSSBOOTSTRAP
2884ifneq ($(BINUTILSPREFIX),)
2885override FPCOPT+=-XP$(BINUTILSPREFIX)
2886endif
2887ifneq ($(BINUTILSPREFIX),)
2888override FPCOPT+=-Xr$(RLINKPATH)
2889endif
2890endif
2891ifndef CROSSCOMPILE
2892ifneq ($(BINUTILSPREFIX),)
2893override FPCMAKEOPT+=-XP$(BINUTILSPREFIX)
2894override FPMAKE_BUILD_OPT+=-XP$(BINUTILSPREFIX)
2895endif
2896endif
2897ifdef UNITDIR
2898override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
2899endif
2900ifdef LIBDIR
2901override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
2902endif
2903ifdef OBJDIR
2904override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
2905endif
2906ifdef INCDIR
2907override FPCOPT+=$(addprefix -Fi,$(INCDIR))
2908endif
2909ifdef LINKSMART
2910override FPCOPT+=-XX
2911endif
2912ifdef CREATESMART
2913override FPCOPT+=-CX
2914endif
2915ifdef DEBUG
2916override FPCOPT+=-gl
2917override FPCOPTDEF+=DEBUG
2918endif
2919ifdef RELEASE
2920FPCCPUOPT:=-O2
2921override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
2922override FPCOPTDEF+=RELEASE
2923endif
2924ifdef STRIP
2925override FPCOPT+=-Xs
2926endif
2927ifdef OPTIMIZE
2928override FPCOPT+=-O2
2929endif
2930ifdef VERBOSE
2931override FPCOPT+=-vwni
2932endif
2933ifdef COMPILER_OPTIONS
2934override FPCOPT+=$(COMPILER_OPTIONS)
2935endif
2936ifdef COMPILER_UNITDIR
2937override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
2938endif
2939ifdef COMPILER_LIBRARYDIR
2940override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
2941endif
2942ifdef COMPILER_OBJECTDIR
2943override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
2944endif
2945ifdef COMPILER_INCLUDEDIR
2946override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
2947endif
2948ifdef CROSSBINDIR
2949override FPCOPT+=-FD$(CROSSBINDIR)
2950endif
2951ifdef COMPILER_TARGETDIR
2952override FPCOPT+=-FE$(COMPILER_TARGETDIR)
2953ifeq ($(COMPILER_TARGETDIR),.)
2954override TARGETDIRPREFIX=
2955else
2956override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
2957endif
2958endif
2959ifdef COMPILER_UNITTARGETDIR
2960override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
2961ifeq ($(COMPILER_UNITTARGETDIR),.)
2962override UNITTARGETDIRPREFIX=
2963else
2964override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
2965endif
2966else
2967ifdef COMPILER_TARGETDIR
2968override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
2969override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
2970endif
2971endif
2972ifdef CREATESHARED
2973override FPCOPT+=-Cg
2974endif
2975ifneq ($(findstring $(OS_TARGET),dragonfly freebsd openbsd netbsd linux solaris),)
2976ifneq ($(findstring $(CPU_TARGET),x86_64 mips mipsel),)
2977override FPCOPT+=-Cg
2978endif
2979endif
2980ifdef LINKSHARED
2981endif
2982ifdef OPT
2983override FPCOPT+=$(OPT)
2984endif
2985ifdef FPMAKEBUILDOPT
2986override FPMAKE_BUILD_OPT+=$(FPMAKEBUILDOPT)
2987endif
2988ifdef FPCOPTDEF
2989override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
2990endif
2991ifdef CFGFILE
2992override FPCOPT+=@$(CFGFILE)
2993endif
2994ifdef USEENV
2995override FPCEXTCMD:=$(FPCOPT)
2996override FPCOPT:=!FPCEXTCMD
2997export FPCEXTCMD
2998endif
2999override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
3000override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
3001ifneq ($(AFULL_TARGET),$(AFULL_SOURCE))
3002override ACROSSCOMPILE=1
3003endif
3004ifdef ACROSSCOMPILE
3005override FPCOPT+=$(CROSSOPT)
3006endif
3007override COMPILER:=$(strip $(FPC) $(FPCOPT))
3008ifneq (,$(findstring -sh ,$(COMPILER)))
3009UseEXECPPAS=1
3010endif
3011ifneq (,$(findstring -s ,$(COMPILER)))
3012ifeq ($(FULL_SOURCE),$(FULL_TARGET))
3013UseEXECPPAS=1
3014endif
3015endif
3016ifneq ($(UseEXECPPAS),1)
3017EXECPPAS=
3018else
3019ifdef RUNBATCH
3020EXECPPAS:=@$(RUNBATCH) $(PPAS)
3021else
3022EXECPPAS:=@$(PPAS)
3023endif
3024endif
3025.PHONY: fpc_units
3026ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),)
3027override ALLTARGET+=fpc_units
3028override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
3029override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
3030override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
3031override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
3032endif
3033fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
3034ifdef TARGET_RSTS
3035override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
3036override CLEANRSTFILES+=$(RSTFILES)
3037endif
3038.PHONY: fpc_examples
3039ifneq ($(TARGET_EXAMPLES),)
3040HASEXAMPLES=1
3041override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .lpr,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES)))
3042override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES))
3043override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))
3044override EXAMPLEDBGFILES:=$(addsuffix $(EXEDBGEXT),$(TARGET_EXAMPLES))
3045override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
3046override CLEANEXEDBGFILES+=$(EXAMPLEDBGFILES)
3047ifeq ($(OS_TARGET),os2)
3048override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))
3049endif
3050ifeq ($(OS_TARGET),emx)
3051override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))
3052endif
3053endif
3054ifneq ($(TARGET_EXAMPLEDIRS),)
3055HASEXAMPLES=1
3056endif
3057fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS))
3058.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared
3059$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
3060	@$(ECHOREDIR) Compiled > $(FPCMADE)
3061fpc_all: $(FPCMADE)
3062fpc_smart:
3063	$(MAKE) all LINKSMART=1 CREATESMART=1
3064fpc_debug:
3065	$(MAKE) all DEBUG=1
3066fpc_release:
3067	$(MAKE) all RELEASE=1
3068.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
3069$(COMPILER_UNITTARGETDIR):
3070	$(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
3071$(COMPILER_TARGETDIR):
3072	$(MKDIRTREE) $(COMPILER_TARGETDIR)
3073%$(PPUEXT): %.pp
3074	$(COMPILER) $<
3075	$(EXECPPAS)
3076%$(PPUEXT): %.pas
3077	$(COMPILER) $<
3078	$(EXECPPAS)
3079%$(EXEEXT): %.pp
3080	$(COMPILER) $<
3081	$(EXECPPAS)
3082%$(EXEEXT): %.pas
3083	$(COMPILER) $<
3084	$(EXECPPAS)
3085%$(EXEEXT): %.lpr
3086	$(COMPILER) $<
3087	$(EXECPPAS)
3088%$(EXEEXT): %.dpr
3089	$(COMPILER) $<
3090	$(EXECPPAS)
3091%.res: %.rc
3092	windres -i $< -o $@
3093vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
3094vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
3095vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
3096vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
3097vpath %.inc $(COMPILER_INCLUDEDIR)
3098vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
3099vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
3100.PHONY: fpc_shared
3101override INSTALLTARGET+=fpc_shared_install
3102ifndef SHARED_LIBVERSION
3103SHARED_LIBVERSION=$(FPC_VERSION)
3104endif
3105ifndef SHARED_LIBNAME
3106SHARED_LIBNAME=$(PACKAGE_NAME)
3107endif
3108ifndef SHARED_FULLNAME
3109SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT)
3110endif
3111ifndef SHARED_LIBUNITS
3112SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
3113override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
3114endif
3115fpc_shared:
3116ifdef HASSHAREDLIB
3117	$(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1
3118ifneq ($(SHARED_BUILD),n)
3119	$(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)
3120endif
3121else
3122	@$(ECHO) Shared Libraries not supported
3123endif
3124fpc_shared_install:
3125ifneq ($(SHARED_BUILD),n)
3126ifneq ($(SHARED_LIBUNITS),)
3127ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)
3128	$(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR)
3129endif
3130endif
3131endif
3132.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
3133ifdef INSTALL_UNITS
3134override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
3135endif
3136ifdef INSTALL_BUILDUNIT
3137override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
3138endif
3139ifdef INSTALLPPUFILES
3140ifneq ($(IMPORTLIBPREFIX)-$(STATICLIBEXT),$(STATICLIBPREFIX)-$(STATICLIBEXT))
3141override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
3142else
3143override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
3144endif
3145ifneq ($(UNITTARGETDIRPREFIX),)
3146override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
3147override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
3148endif
3149override INSTALL_CREATEPACKAGEFPC=1
3150endif
3151ifdef INSTALLEXEFILES
3152ifneq ($(TARGETDIRPREFIX),)
3153override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
3154endif
3155endif
3156fpc_install: all $(INSTALLTARGET)
3157ifdef INSTALLEXEFILES
3158	$(MKDIR) $(INSTALL_BINDIR)
3159	$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
3160endif
3161ifdef INSTALL_CREATEPACKAGEFPC
3162ifdef FPCMAKE
3163ifdef PACKAGE_VERSION
3164ifneq ($(wildcard Makefile.fpc),)
3165	$(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
3166	$(MKDIR) $(INSTALL_UNITDIR)
3167	$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
3168endif
3169endif
3170endif
3171endif
3172ifdef INSTALLPPUFILES
3173	$(MKDIR) $(INSTALL_UNITDIR)
3174	$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
3175ifneq ($(INSTALLPPULINKFILES),)
3176	$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
3177endif
3178ifneq ($(wildcard $(LIB_FULLNAME)),)
3179	$(MKDIR) $(INSTALL_LIBDIR)
3180	$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
3181ifdef inUnix
3182	ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
3183endif
3184endif
3185endif
3186ifdef INSTALL_FILES
3187	$(MKDIR) $(INSTALL_DATADIR)
3188	$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
3189endif
3190fpc_sourceinstall: distclean
3191	$(MKDIR) $(INSTALL_SOURCEDIR)
3192	$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
3193fpc_exampleinstall: $(EXAMPLEINSTALLTARGET) $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
3194ifdef HASEXAMPLES
3195	$(MKDIR) $(INSTALL_EXAMPLEDIR)
3196endif
3197ifdef EXAMPLESOURCEFILES
3198	$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
3199endif
3200ifdef TARGET_EXAMPLEDIRS
3201	$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
3202endif
3203.PHONY: fpc_clean fpc_cleanall fpc_distclean
3204ifdef EXEFILES
3205override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
3206override CLEANEXEDBGFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEDBGFILES))
3207endif
3208ifdef CLEAN_PROGRAMS
3209override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEEXT), $(CLEAN_PROGRAMS)))
3210override CLEANEXEDBGFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEDBGEXT), $(CLEAN_PROGRAMS)))
3211endif
3212ifdef CLEAN_UNITS
3213override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
3214endif
3215ifdef CLEANPPUFILES
3216override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
3217ifdef DEBUGSYMEXT
3218override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
3219endif
3220override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
3221override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
3222endif
3223fpc_clean: $(CLEANTARGET)
3224ifdef CLEANEXEFILES
3225	-$(DEL) $(CLEANEXEFILES)
3226endif
3227ifdef CLEANEXEDBGFILES
3228	-$(DELTREE) $(CLEANEXEDBGFILES)
3229endif
3230ifdef CLEANPPUFILES
3231	-$(DEL) $(CLEANPPUFILES)
3232endif
3233ifneq ($(CLEANPPULINKFILES),)
3234	-$(DEL) $(CLEANPPULINKFILES)
3235endif
3236ifdef CLEANRSTFILES
3237	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
3238endif
3239ifdef CLEAN_FILES
3240	-$(DEL) $(CLEAN_FILES)
3241endif
3242ifdef LIB_NAME
3243	-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
3244endif
3245	-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
3246	-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
3247fpc_cleanall: $(CLEANTARGET)
3248ifdef CLEANEXEFILES
3249	-$(DEL) $(CLEANEXEFILES)
3250endif
3251ifdef COMPILER_UNITTARGETDIR
3252ifdef CLEANPPUFILES
3253	-$(DEL) $(CLEANPPUFILES)
3254endif
3255ifneq ($(CLEANPPULINKFILES),)
3256	-$(DEL) $(CLEANPPULINKFILES)
3257endif
3258ifdef CLEANRSTFILES
3259	-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
3260endif
3261endif
3262ifdef CLEAN_FILES
3263	-$(DEL) $(CLEAN_FILES)
3264endif
3265	-$(DELTREE) units
3266	-$(DELTREE) bin
3267	-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
3268ifneq ($(PPUEXT),.ppu)
3269	-$(DEL) *.o *.ppu *.a
3270endif
3271	-$(DELTREE) *$(SMARTEXT)
3272	-$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
3273	-$(DEL) *_ppas$(BATCHEXT) ppas$(BATCHEXT) ppaslink$(BATCHEXT)
3274ifdef AOUTEXT
3275	-$(DEL) *$(AOUTEXT)
3276endif
3277ifdef DEBUGSYMEXT
3278	-$(DEL) *$(DEBUGSYMEXT)
3279endif
3280ifdef LOCALFPMAKEBIN
3281	-$(DEL) $(LOCALFPMAKEBIN)
3282	-$(DEL) $(FPMAKEBINOBJ)
3283endif
3284fpc_distclean: cleanall
3285.PHONY: fpc_baseinfo
3286override INFORULES+=fpc_baseinfo
3287fpc_baseinfo:
3288	@$(ECHO)
3289	@$(ECHO)  == Package info ==
3290	@$(ECHO)  Package Name..... $(PACKAGE_NAME)
3291	@$(ECHO)  Package Version.. $(PACKAGE_VERSION)
3292	@$(ECHO)
3293	@$(ECHO)  == Configuration info ==
3294	@$(ECHO)
3295	@$(ECHO)  FPC.......... $(FPC)
3296	@$(ECHO)  FPC Version.. $(FPC_VERSION)
3297	@$(ECHO)  Source CPU... $(CPU_SOURCE)
3298	@$(ECHO)  Target CPU... $(CPU_TARGET)
3299	@$(ECHO)  Source OS.... $(OS_SOURCE)
3300	@$(ECHO)  Target OS.... $(OS_TARGET)
3301	@$(ECHO)  Full Source.. $(FULL_SOURCE)
3302	@$(ECHO)  Full Target.. $(FULL_TARGET)
3303	@$(ECHO)  SourceSuffix. $(SOURCESUFFIX)
3304	@$(ECHO)  TargetSuffix. $(TARGETSUFFIX)
3305	@$(ECHO)  FPC fpmake... $(FPCFPMAKE)
3306	@$(ECHO)
3307	@$(ECHO)  == Directory info ==
3308	@$(ECHO)
3309	@$(ECHO)  Required pkgs... $(REQUIRE_PACKAGES)
3310	@$(ECHO)
3311	@$(ECHO)  Basedir......... $(BASEDIR)
3312	@$(ECHO)  FPCDir.......... $(FPCDIR)
3313	@$(ECHO)  CrossBinDir..... $(CROSSBINDIR)
3314	@$(ECHO)  UnitsDir........ $(UNITSDIR)
3315	@$(ECHO)  PackagesDir..... $(PACKAGESDIR)
3316	@$(ECHO)
3317	@$(ECHO)  GCC library..... $(GCCLIBDIR)
3318	@$(ECHO)  Other library... $(OTHERLIBDIR)
3319	@$(ECHO)
3320	@$(ECHO)  == Tools info ==
3321	@$(ECHO)
3322	@$(ECHO)  As........ $(AS)
3323	@$(ECHO)  Ld........ $(LD)
3324	@$(ECHO)  Ar........ $(AR)
3325	@$(ECHO)  Rc........ $(RC)
3326	@$(ECHO)
3327	@$(ECHO)  Mv........ $(MVPROG)
3328	@$(ECHO)  Cp........ $(CPPROG)
3329	@$(ECHO)  Rm........ $(RMPROG)
3330	@$(ECHO)  GInstall.. $(GINSTALL)
3331	@$(ECHO)  Echo...... $(ECHO)
3332	@$(ECHO)  Shell..... $(SHELL)
3333	@$(ECHO)  Date...... $(DATE)
3334	@$(ECHO)  FPCMake... $(FPCMAKE)
3335	@$(ECHO)  PPUMove... $(PPUMOVE)
3336	@$(ECHO)  Zip....... $(ZIPPROG)
3337	@$(ECHO)
3338	@$(ECHO)  == Object info ==
3339	@$(ECHO)
3340	@$(ECHO)  Target Loaders........ $(TARGET_LOADERS)
3341	@$(ECHO)  Target Units.......... $(TARGET_UNITS)
3342	@$(ECHO)  Target Implicit Units. $(TARGET_IMPLICITUNITS)
3343	@$(ECHO)  Target Programs....... $(TARGET_PROGRAMS)
3344	@$(ECHO)  Target Dirs........... $(TARGET_DIRS)
3345	@$(ECHO)  Target Examples....... $(TARGET_EXAMPLES)
3346	@$(ECHO)  Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
3347	@$(ECHO)
3348	@$(ECHO)  Clean Units......... $(CLEAN_UNITS)
3349	@$(ECHO)  Clean Files......... $(CLEAN_FILES)
3350	@$(ECHO)
3351	@$(ECHO)  Install Units....... $(INSTALL_UNITS)
3352	@$(ECHO)  Install Files....... $(INSTALL_FILES)
3353	@$(ECHO)
3354	@$(ECHO)  == Install info ==
3355	@$(ECHO)
3356	@$(ECHO)  DateStr.............. $(DATESTR)
3357	@$(ECHO)  ZipName.............. $(ZIPNAME)
3358	@$(ECHO)  ZipPrefix............ $(ZIPPREFIX)
3359	@$(ECHO)  ZipCrossPrefix....... $(ZIPCROSSPREFIX)
3360	@$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
3361	@$(ECHO)  FullZipName.......... $(FULLZIPNAME)
3362	@$(ECHO)  Install FPC Package.. $(INSTALL_FPCPACKAGE)
3363	@$(ECHO)
3364	@$(ECHO)  Install base dir..... $(INSTALL_BASEDIR)
3365	@$(ECHO)  Install binary dir... $(INSTALL_BINDIR)
3366	@$(ECHO)  Install library dir.. $(INSTALL_LIBDIR)
3367	@$(ECHO)  Install units dir.... $(INSTALL_UNITDIR)
3368	@$(ECHO)  Install source dir... $(INSTALL_SOURCEDIR)
3369	@$(ECHO)  Install doc dir...... $(INSTALL_DOCDIR)
3370	@$(ECHO)  Install example dir.. $(INSTALL_EXAMPLEDIR)
3371	@$(ECHO)  Install data dir..... $(INSTALL_DATADIR)
3372	@$(ECHO)
3373	@$(ECHO)  Dist destination dir. $(DIST_DESTDIR)
3374	@$(ECHO)  Dist zip name........ $(DIST_ZIPNAME)
3375	@$(ECHO)
3376.PHONY: fpc_info
3377fpc_info: $(INFORULES)
3378.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
3379	fpc_makefile_dirs
3380fpc_makefile:
3381	$(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
3382fpc_makefile_sub1:
3383ifdef TARGET_DIRS
3384	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
3385endif
3386ifdef TARGET_EXAMPLEDIRS
3387	$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
3388endif
3389fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
3390fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
3391fpc_makefiles: fpc_makefile fpc_makefile_dirs
3392all: fpc_all
3393debug: fpc_debug
3394smart: fpc_smart
3395release: fpc_release
3396units: fpc_units
3397examples: fpc_examples
3398shared: fpc_shared
3399install: fpc_install
3400sourceinstall: fpc_sourceinstall
3401exampleinstall: fpc_exampleinstall
3402distinstall:
3403zipinstall:
3404zipsourceinstall:
3405zipexampleinstall:
3406zipdistinstall:
3407clean: fpc_clean
3408distclean: fpc_distclean
3409cleanall: fpc_cleanall
3410info: fpc_info
3411makefiles: fpc_makefiles
3412.PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
3413ifneq ($(wildcard fpcmake.loc),)
3414include fpcmake.loc
3415endif
3416.NOTPARALLEL:
3417