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