~ubuntu-branches/debian/lenny/fpc/lenny

« back to all changes in this revision

Viewing changes to fpcsrc/compiler/utils/Makefile

  • Committer: Bazaar Package Importer
  • Author(s): Mazen Neifer, Torsten Werner, Mazen Neifer
  • Date: 2008-05-17 17:12:11 UTC
  • mfrom: (3.1.9 intrepid)
  • Revision ID: james.westby@ubuntu.com-20080517171211-9qi33xhd9evfa0kg
Tags: 2.2.0-dfsg1-9
[ Torsten Werner ]
* Add Mazen Neifer to Uploaders field.

[ Mazen Neifer ]
* Moved FPC sources into a version dependent directory from /usr/share/fpcsrc
  to /usr/share/fpcsrc/${FPCVERSION}. This allow installing more than on FPC
  release.
* Fixed far call issue in compiler preventing building huge binearies.
  (closes: #477743)
* Updated building dependencies, recomennded and suggested packages.
* Moved fppkg to fp-utils as it is just a helper tool and is not required by
  compiler.

Show diffs side-by-side

added added

removed removed

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