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

« back to all changes in this revision

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