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

« back to all changes in this revision

Viewing changes to demo/modex/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
1
#
2
 
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
 
2
# Don't edit, this file is generated by FPCMake Version 2.0.0 [2007/08/29]
3
3
#
4
4
default: all
5
 
MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
 
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
6
BSDs = freebsd netbsd openbsd darwin
7
 
UNIXs = linux $(BSDs) sunos qnx
 
7
UNIXs = linux $(BSDs) solaris qnx
 
8
LIMIT83fs = go32v2 os2 emx watcom
8
9
FORCE:
9
10
.PHONY: FORCE
10
11
override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
103
104
FPCPROG:=$(firstword $(FPCPROG))
104
105
FPC:=$(shell $(FPCPROG) -PB)
105
106
ifneq ($(findstring Error,$(FPC)),)
106
 
override FPC=ppc386
 
107
override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
107
108
endif
108
109
else
109
 
override FPC=ppc386
 
110
override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
110
111
endif
111
112
endif
112
113
override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
113
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
114
125
ifndef FPC_VERSION
115
 
FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
116
126
FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
117
127
endif
118
128
export FPC FPC_VERSION FPC_COMPILERINFO
147
157
endif
148
158
FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
149
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
150
167
ifneq ($(FULL_TARGET),$(FULL_SOURCE))
151
168
CROSSCOMPILE=1
152
169
endif
153
170
ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
154
 
ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
155
 
$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
 
171
ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),)
 
172
$(error The Makefile doesn't support target $(FULL_TARGET), please run fpcmake first)
156
173
endif
157
174
endif
158
175
ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
161
178
ifeq ($(OS_TARGET),linux)
162
179
linuxHier=1
163
180
endif
164
 
export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
 
181
export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE
165
182
ifdef FPCDIR
166
183
override FPCDIR:=$(subst \,/,$(FPCDIR))
167
184
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
198
215
endif
199
216
endif
200
217
endif
201
 
ifndef CROSSDIR
202
 
CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
203
 
endif
204
 
ifndef CROSSTARGETDIR
205
 
CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
206
 
endif
 
218
ifndef CROSSBINDIR
 
219
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
 
220
endif
 
221
ifndef BINUTILSPREFIX
 
222
ifndef CROSSBINDIR
207
223
ifdef CROSSCOMPILE
208
 
UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
 
224
BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
 
225
endif
 
226
endif
 
227
endif
 
228
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX))
209
229
ifeq ($(UNITSDIR),)
210
230
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
211
231
endif
212
 
else
213
 
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
214
 
endif
215
 
PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
216
 
ifeq ($(OS_TARGET),go32v2)
 
232
PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
 
233
ifeq ($(FULL_TARGET),i386-go32v2)
217
234
override TARGET_PROGRAMS+=voxel
218
235
endif
219
236
ifdef REQUIRE_UNITSDIR
255
272
DIST_DESTDIR:=$(BASEDIR)
256
273
endif
257
274
export DIST_DESTDIR
 
275
ifndef COMPILER_UNITTARGETDIR
 
276
ifdef PACKAGEDIR_MAIN
 
277
COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
 
278
else
 
279
COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
 
280
endif
 
281
endif
 
282
ifndef COMPILER_TARGETDIR
 
283
COMPILER_TARGETDIR=.
 
284
endif
258
285
ifndef INSTALL_BASEDIR
259
286
ifdef UNIXHier
260
287
ifdef INSTALL_FPCPACKAGE
268
295
endif
269
296
ifndef INSTALL_BINDIR
270
297
ifdef UNIXHier
271
 
ifdef CROSSCOMPILE
272
 
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
273
 
else
274
298
INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
275
 
endif
276
 
else
277
 
ifdef CROSSCOMPILE
278
 
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
279
299
else
280
300
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
281
 
endif
282
301
ifdef INSTALL_FPCPACKAGE
283
 
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
 
302
ifdef CROSSCOMPILE
 
303
ifdef CROSSINSTALL
 
304
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
 
305
else
 
306
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
 
307
endif
 
308
else
 
309
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
 
310
endif
284
311
endif
285
312
endif
286
313
endif
287
314
ifndef INSTALL_UNITDIR
288
 
ifdef CROSSCOMPILE
289
 
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
290
 
else
291
 
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
292
 
endif
 
315
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
293
316
ifdef INSTALL_FPCPACKAGE
294
317
ifdef PACKAGE_NAME
295
318
INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
393
416
ifndef INSTALL_DATADIR
394
417
INSTALL_DATADIR=$(INSTALL_BASEDIR)
395
418
endif
 
419
ifndef INSTALL_SHAREDDIR
 
420
INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib
 
421
endif
396
422
ifdef CROSSCOMPILE
397
423
ifndef CROSSBINDIR
398
 
CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
 
424
CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
399
425
ifeq ($(CROSSBINDIR),)
400
 
CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
 
426
CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
401
427
endif
402
428
endif
403
429
else
413
439
SMARTEXT=.sl
414
440
STATICLIBEXT=.a
415
441
SHAREDLIBEXT=.so
 
442
SHAREDLIBPREFIX=libfp
416
443
STATICLIBPREFIX=libp
 
444
IMPORTLIBPREFIX=libimp
417
445
RSTEXT=.rst
418
 
FPCMADE=fpcmade
419
446
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
420
447
ifeq ($(OS_TARGET),go32v1)
421
448
STATICLIBPREFIX=
422
 
FPCMADE=fpcmade.v1
423
 
PACKAGESUFFIX=v1
 
449
SHORTSUFFIX=v1
424
450
endif
425
451
ifeq ($(OS_TARGET),go32v2)
426
452
STATICLIBPREFIX=
427
 
FPCMADE=fpcmade.dos
428
 
ZIPSUFFIX=go32
 
453
SHORTSUFFIX=dos
429
454
endif
430
455
ifeq ($(OS_TARGET),watcom)
431
456
STATICLIBPREFIX=
432
 
FPCMADE=fpcmade.wat
433
 
ZIPSUFFIX=watc
434
457
OEXT=.obj
435
458
ASMEXT=.asm
436
459
SHAREDLIBEXT=.dll
 
460
SHORTSUFFIX=wat
437
461
endif
438
462
ifeq ($(OS_TARGET),linux)
439
463
BATCHEXT=.sh
440
464
EXEEXT=
441
465
HASSHAREDLIB=1
442
 
FPCMADE=fpcmade.lnx
443
 
ZIPSUFFIX=linux
 
466
SHORTSUFFIX=lnx
444
467
endif
445
468
ifeq ($(OS_TARGET),freebsd)
446
469
BATCHEXT=.sh
447
470
EXEEXT=
448
471
HASSHAREDLIB=1
449
 
FPCMADE=fpcmade.freebsd
450
 
ZIPSUFFIX=freebsd
 
472
SHORTSUFFIX=fbs
451
473
endif
452
474
ifeq ($(OS_TARGET),netbsd)
453
475
BATCHEXT=.sh
454
476
EXEEXT=
455
477
HASSHAREDLIB=1
456
 
FPCMADE=fpcmade.netbsd
457
 
ZIPSUFFIX=netbsd
 
478
SHORTSUFFIX=nbs
458
479
endif
459
480
ifeq ($(OS_TARGET),openbsd)
460
481
BATCHEXT=.sh
461
482
EXEEXT=
462
483
HASSHAREDLIB=1
463
 
FPCMADE=fpcmade.openbsd
464
 
ZIPSUFFIX=openbsd
 
484
SHORTSUFFIX=obs
465
485
endif
466
486
ifeq ($(OS_TARGET),win32)
467
487
SHAREDLIBEXT=.dll
468
 
FPCMADE=fpcmade.w32
469
 
ZIPSUFFIX=w32
 
488
SHORTSUFFIX=w32
470
489
endif
471
490
ifeq ($(OS_TARGET),os2)
472
491
BATCHEXT=.cmd
473
492
AOUTEXT=.out
474
493
STATICLIBPREFIX=
475
494
SHAREDLIBEXT=.dll
476
 
FPCMADE=fpcmade.os2
477
 
ZIPSUFFIX=os2
 
495
SHORTSUFFIX=os2
478
496
ECHO=echo
479
497
endif
480
498
ifeq ($(OS_TARGET),emx)
482
500
AOUTEXT=.out
483
501
STATICLIBPREFIX=
484
502
SHAREDLIBEXT=.dll
485
 
FPCMADE=fpcmade.emx
486
 
ZIPSUFFIX=emx
 
503
SHORTSUFFIX=emx
487
504
ECHO=echo
488
505
endif
489
506
ifeq ($(OS_TARGET),amiga)
490
507
EXEEXT=
491
508
SHAREDLIBEXT=.library
492
 
FPCMADE=fpcmade.amg
 
509
SHORTSUFFIX=amg
 
510
endif
 
511
ifeq ($(OS_TARGET),morphos)
 
512
EXEEXT=
 
513
SHAREDLIBEXT=.library
 
514
SHORTSUFFIX=mos
493
515
endif
494
516
ifeq ($(OS_TARGET),atari)
495
517
EXEEXT=.ttp
496
 
FPCMADE=fpcmade.ata
 
518
SHORTSUFFIX=ata
497
519
endif
498
520
ifeq ($(OS_TARGET),beos)
499
521
BATCHEXT=.sh
500
522
EXEEXT=
501
 
FPCMADE=fpcmade.be
502
 
ZIPSUFFIX=be
 
523
SHORTSUFFIX=be
503
524
endif
504
 
ifeq ($(OS_TARGET),sunos)
 
525
ifeq ($(OS_TARGET),solaris)
505
526
BATCHEXT=.sh
506
527
EXEEXT=
507
 
FPCMADE=fpcmade.sun
508
 
ZIPSUFFIX=sun
 
528
SHORTSUFFIX=sun
509
529
endif
510
530
ifeq ($(OS_TARGET),qnx)
511
531
BATCHEXT=.sh
512
532
EXEEXT=
513
 
FPCMADE=fpcmade.qnx
514
 
ZIPSUFFIX=qnx
 
533
SHORTSUFFIX=qnx
515
534
endif
516
535
ifeq ($(OS_TARGET),netware)
517
536
EXEEXT=.nlm
518
537
STATICLIBPREFIX=
519
 
FPCMADE=fpcmade.nw
520
 
ZIPSUFFIX=nw
 
538
SHORTSUFFIX=nw
 
539
endif
 
540
ifeq ($(OS_TARGET),netwlibc)
 
541
EXEEXT=.nlm
 
542
STATICLIBPREFIX=
 
543
SHORTSUFFIX=nwl
521
544
endif
522
545
ifeq ($(OS_TARGET),macos)
523
546
BATCHEXT=
524
547
EXEEXT=
525
 
FPCMADE=fpcmade.macos
526
 
ZIPSUFFIX=macos
527
548
DEBUGSYMEXT=.xcoff
 
549
SHORTSUFFIX=mac
528
550
endif
529
551
ifeq ($(OS_TARGET),darwin)
530
552
BATCHEXT=.sh
531
553
EXEEXT=
532
554
HASSHAREDLIB=1
533
 
FPCMADE=fpcmade.darwin
534
 
ZIPSUFFIX=darwin
 
555
SHORTSUFFIX=dwn
 
556
endif
 
557
ifeq ($(OS_TARGET),gba)
 
558
EXEEXT=.gba
 
559
SHAREDLIBEXT=.so
 
560
SHORTSUFFIX=gba
 
561
endif
 
562
ifeq ($(OS_TARGET),symbian)
 
563
SHAREDLIBEXT=.dll
 
564
SHORTSUFFIX=symbian
535
565
endif
536
566
else
537
567
ifeq ($(OS_TARGET),go32v1)
542
572
STATICLIBEXT=.a1
543
573
SHAREDLIBEXT=.so1
544
574
STATICLIBPREFIX=
545
 
FPCMADE=fpcmade.v1
546
 
PACKAGESUFFIX=v1
 
575
SHORTSUFFIX=v1
547
576
endif
548
577
ifeq ($(OS_TARGET),go32v2)
549
578
STATICLIBPREFIX=
550
 
FPCMADE=fpcmade.dos
551
 
ZIPSUFFIX=go32
 
579
SHORTSUFFIX=dos
552
580
endif
553
581
ifeq ($(OS_TARGET),watcom)
554
582
STATICLIBPREFIX=
555
 
FPCMADE=fpcmade.dos
556
 
ZIPSUFFIX=watcom
 
583
SHORTSUFFIX=wat
557
584
endif
558
585
ifeq ($(OS_TARGET),linux)
559
586
BATCHEXT=.sh
560
587
EXEEXT=
561
588
HASSHAREDLIB=1
562
 
FPCMADE=fpcmade.lnx
563
 
ZIPSUFFIX=linux
 
589
SHORTSUFFIX=lnx
564
590
endif
565
591
ifeq ($(OS_TARGET),freebsd)
566
592
BATCHEXT=.sh
567
593
EXEEXT=
568
594
HASSHAREDLIB=1
569
 
FPCMADE=fpcmade.freebsd
570
 
ZIPSUFFIX=freebsd
 
595
SHORTSUFFIX=fbs
571
596
endif
572
597
ifeq ($(OS_TARGET),netbsd)
573
598
BATCHEXT=.sh
574
599
EXEEXT=
575
600
HASSHAREDLIB=1
576
 
FPCMADE=fpcmade.netbsd
577
 
ZIPSUFFIX=netbsd
 
601
SHORTSUFFIX=nbs
578
602
endif
579
603
ifeq ($(OS_TARGET),openbsd)
580
604
BATCHEXT=.sh
581
605
EXEEXT=
582
606
HASSHAREDLIB=1
583
 
FPCMADE=fpcmade.openbsd
584
 
ZIPSUFFIX=openbsd
 
607
SHORTSUFFIX=obs
585
608
endif
586
609
ifeq ($(OS_TARGET),win32)
587
610
PPUEXT=.ppw
590
613
SMARTEXT=.slw
591
614
STATICLIBEXT=.aw
592
615
SHAREDLIBEXT=.dll
593
 
FPCMADE=fpcmade.w32
594
 
ZIPSUFFIX=w32
 
616
SHORTSUFFIX=w32
595
617
endif
596
618
ifeq ($(OS_TARGET),os2)
597
619
BATCHEXT=.cmd
603
625
STATICLIBPREFIX=
604
626
STATICLIBEXT=.ao2
605
627
SHAREDLIBEXT=.dll
606
 
FPCMADE=fpcmade.os2
607
 
ZIPSUFFIX=emx
 
628
SHORTSUFFIX=os2
608
629
ECHO=echo
609
630
endif
610
631
ifeq ($(OS_TARGET),amiga)
611
632
EXEEXT=
612
633
PPUEXT=.ppu
613
 
ASMEXT=.asm
 
634
ASMEXT=.s
614
635
OEXT=.o
615
636
SMARTEXT=.sl
616
637
STATICLIBEXT=.a
617
638
SHAREDLIBEXT=.library
618
 
FPCMADE=fpcmade.amg
 
639
SHORTSUFFIX=amg
619
640
endif
620
641
ifeq ($(OS_TARGET),atari)
621
642
PPUEXT=.ppu
624
645
SMARTEXT=.sl
625
646
STATICLIBEXT=.a
626
647
EXEEXT=.ttp
627
 
FPCMADE=fpcmade.ata
 
648
SHORTSUFFIX=ata
628
649
endif
629
650
ifeq ($(OS_TARGET),beos)
630
651
BATCHEXT=.sh
634
655
SMARTEXT=.sl
635
656
STATICLIBEXT=.a
636
657
EXEEXT=
637
 
FPCMADE=fpcmade.be
638
 
ZIPSUFFIX=be
 
658
SHORTSUFFIX=be
639
659
endif
640
 
ifeq ($(OS_TARGET),sunos)
 
660
ifeq ($(OS_TARGET),solaris)
641
661
BATCHEXT=.sh
642
662
PPUEXT=.ppu
643
663
ASMEXT=.s
645
665
SMARTEXT=.sl
646
666
STATICLIBEXT=.a
647
667
EXEEXT=
648
 
FPCMADE=fpcmade.sun
649
 
ZIPSUFFIX=sun
 
668
SHORTSUFFIX=sun
650
669
endif
651
670
ifeq ($(OS_TARGET),qnx)
652
671
BATCHEXT=.sh
656
675
SMARTEXT=.sl
657
676
STATICLIBEXT=.a
658
677
EXEEXT=
659
 
FPCMADE=fpcmade.qnx
660
 
ZIPSUFFIX=qnx
 
678
SHORTSUFFIX=qnx
661
679
endif
662
680
ifeq ($(OS_TARGET),netware)
663
681
STATICLIBPREFIX=
667
685
SMARTEXT=.sl
668
686
STATICLIBEXT=.a
669
687
SHAREDLIBEXT=.nlm
670
 
FPCMADE=fpcmade.nw
671
 
ZIPSUFFIX=nw
672
 
EXEEXT=.nlm
 
688
EXEEXT=.nlm
 
689
SHORTSUFFIX=nw
 
690
endif
 
691
ifeq ($(OS_TARGET),netwlibc)
 
692
STATICLIBPREFIX=
 
693
PPUEXT=.ppu
 
694
OEXT=.o
 
695
ASMEXT=.s
 
696
SMARTEXT=.sl
 
697
STATICLIBEXT=.a
 
698
SHAREDLIBEXT=.nlm
 
699
EXEEXT=.nlm
 
700
SHORTSUFFIX=nwl
673
701
endif
674
702
ifeq ($(OS_TARGET),macos)
675
703
BATCHEXT=
680
708
STATICLIBEXT=.a
681
709
EXEEXT=
682
710
DEBUGSYMEXT=.xcoff
683
 
FPCMADE=fpcmade.macos
 
711
SHORTSUFFIX=mac
 
712
endif
 
713
endif
 
714
ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
 
715
FPCMADE=fpcmade.$(SHORTSUFFIX)
 
716
ZIPSUFFIX=$(SHORTSUFFIX)
 
717
ZIPCROSSPREFIX=
 
718
ZIPSOURCESUFFIX=src
 
719
ZIPEXAMPLESUFFIX=exm
 
720
else
 
721
FPCMADE=fpcmade.$(TARGETSUFFIX)
 
722
ZIPSOURCESUFFIX=.source
 
723
ZIPEXAMPLESUFFIX=.examples
 
724
ifdef CROSSCOMPILE
 
725
ZIPSUFFIX=.$(SOURCESUFFIX)
 
726
ZIPCROSSPREFIX=$(TARGETSUFFIX)-
 
727
else
 
728
ZIPSUFFIX=.$(TARGETSUFFIX)
 
729
ZIPCROSSPREFIX=
684
730
endif
685
731
endif
686
732
ifndef ECHO
688
734
ifeq ($(ECHO),)
689
735
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
690
736
ifeq ($(ECHO),)
691
 
ECHO= __missing_command__
 
737
ECHO= __missing_command_ECHO
692
738
else
693
739
ECHO:=$(firstword $(ECHO))
694
740
endif
702
748
ifeq ($(DATE),)
703
749
DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
704
750
ifeq ($(DATE),)
705
 
DATE= __missing_command__
 
751
DATE= __missing_command_DATE
706
752
else
707
753
DATE:=$(firstword $(DATE))
708
754
endif
716
762
ifeq ($(GINSTALL),)
717
763
GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
718
764
ifeq ($(GINSTALL),)
719
 
GINSTALL= __missing_command__
 
765
GINSTALL= __missing_command_GINSTALL
720
766
else
721
767
GINSTALL:=$(firstword $(GINSTALL))
722
768
endif
728
774
ifndef CPPROG
729
775
CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
730
776
ifeq ($(CPPROG),)
731
 
CPPROG= __missing_command__
 
777
CPPROG= __missing_command_CPPROG
732
778
else
733
779
CPPROG:=$(firstword $(CPPROG))
734
780
endif
737
783
ifndef RMPROG
738
784
RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
739
785
ifeq ($(RMPROG),)
740
 
RMPROG= __missing_command__
 
786
RMPROG= __missing_command_RMPROG
741
787
else
742
788
RMPROG:=$(firstword $(RMPROG))
743
789
endif
746
792
ifndef MVPROG
747
793
MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
748
794
ifeq ($(MVPROG),)
749
 
MVPROG= __missing_command__
 
795
MVPROG= __missing_command_MVPROG
750
796
else
751
797
MVPROG:=$(firstword $(MVPROG))
752
798
endif
753
799
endif
754
800
export MVPROG
 
801
ifndef MKDIRPROG
 
802
MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
 
803
ifeq ($(MKDIRPROG),)
 
804
MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
 
805
ifeq ($(MKDIRPROG),)
 
806
MKDIRPROG= __missing_command_MKDIRPROG
 
807
else
 
808
MKDIRPROG:=$(firstword $(MKDIRPROG))
 
809
endif
 
810
else
 
811
MKDIRPROG:=$(firstword $(MKDIRPROG))
 
812
endif
 
813
endif
 
814
export MKDIRPROG
755
815
ifndef ECHOREDIR
756
816
ifndef inUnix
757
817
ECHOREDIR=echo
763
823
COPY:=$(CPPROG) -fp
764
824
endif
765
825
ifndef COPYTREE
766
 
COPYTREE:=$(CPPROG) -rfp
 
826
COPYTREE:=$(CPPROG) -Rfp
 
827
endif
 
828
ifndef MKDIRTREE
 
829
MKDIRTREE:=$(MKDIRPROG) -p
767
830
endif
768
831
ifndef MOVE
769
832
MOVE:=$(MVPROG) -f
795
858
ifndef PPUMOVE
796
859
PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
797
860
ifeq ($(PPUMOVE),)
798
 
PPUMOVE= __missing_command__
 
861
PPUMOVE= __missing_command_PPUMOVE
799
862
else
800
863
PPUMOVE:=$(firstword $(PPUMOVE))
801
864
endif
804
867
ifndef FPCMAKE
805
868
FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
806
869
ifeq ($(FPCMAKE),)
807
 
FPCMAKE= __missing_command__
 
870
FPCMAKE= __missing_command_FPCMAKE
808
871
else
809
872
FPCMAKE:=$(firstword $(FPCMAKE))
810
873
endif
813
876
ifndef ZIPPROG
814
877
ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
815
878
ifeq ($(ZIPPROG),)
816
 
ZIPPROG= __missing_command__
 
879
ZIPPROG= __missing_command_ZIPPROG
817
880
else
818
881
ZIPPROG:=$(firstword $(ZIPPROG))
819
882
endif
820
883
endif
821
884
export ZIPPROG
822
885
ifndef TARPROG
 
886
TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH))))
 
887
ifeq ($(TARPROG),)
823
888
TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
824
889
ifeq ($(TARPROG),)
825
 
TARPROG= __missing_command__
 
890
TARPROG= __missing_command_TARPROG
 
891
else
 
892
TARPROG:=$(firstword $(TARPROG))
 
893
endif
826
894
else
827
895
TARPROG:=$(firstword $(TARPROG))
828
896
endif
906
974
ZIPOPT=-9
907
975
ZIPEXT=.zip
908
976
ifeq ($(USETAR),bz2)
909
 
TAROPT=vI
 
977
TAROPT=vj
910
978
TAREXT=.tar.bz2
911
979
else
912
980
TAROPT=vz
913
981
TAREXT=.tar.gz
914
982
endif
915
983
override REQUIRE_PACKAGES=rtl 
916
 
ifeq ($(OS_TARGET),linux)
917
 
ifeq ($(CPU_TARGET),i386)
918
 
REQUIRE_PACKAGES_RTL=1
919
 
endif
920
 
endif
921
 
ifeq ($(OS_TARGET),linux)
922
 
ifeq ($(CPU_TARGET),m68k)
923
 
REQUIRE_PACKAGES_RTL=1
924
 
endif
925
 
endif
926
 
ifeq ($(OS_TARGET),linux)
927
 
ifeq ($(CPU_TARGET),powerpc)
928
 
REQUIRE_PACKAGES_RTL=1
929
 
endif
930
 
endif
931
 
ifeq ($(OS_TARGET),linux)
932
 
ifeq ($(CPU_TARGET),sparc)
933
 
REQUIRE_PACKAGES_RTL=1
934
 
endif
935
 
endif
936
 
ifeq ($(OS_TARGET),linux)
937
 
ifeq ($(CPU_TARGET),x86_64)
938
 
REQUIRE_PACKAGES_RTL=1
939
 
endif
940
 
endif
941
 
ifeq ($(OS_TARGET),linux)
942
 
ifeq ($(CPU_TARGET),arm)
943
 
REQUIRE_PACKAGES_RTL=1
944
 
endif
945
 
endif
946
 
ifeq ($(OS_TARGET),go32v2)
947
 
ifeq ($(CPU_TARGET),i386)
948
 
REQUIRE_PACKAGES_RTL=1
949
 
endif
950
 
endif
951
 
ifeq ($(OS_TARGET),win32)
952
 
ifeq ($(CPU_TARGET),i386)
953
 
REQUIRE_PACKAGES_RTL=1
954
 
endif
955
 
endif
956
 
ifeq ($(OS_TARGET),os2)
957
 
ifeq ($(CPU_TARGET),i386)
958
 
REQUIRE_PACKAGES_RTL=1
959
 
endif
960
 
endif
961
 
ifeq ($(OS_TARGET),freebsd)
962
 
ifeq ($(CPU_TARGET),i386)
963
 
REQUIRE_PACKAGES_RTL=1
964
 
endif
965
 
endif
966
 
ifeq ($(OS_TARGET),freebsd)
967
 
ifeq ($(CPU_TARGET),m68k)
968
 
REQUIRE_PACKAGES_RTL=1
969
 
endif
970
 
endif
971
 
ifeq ($(OS_TARGET),freebsd)
972
 
ifeq ($(CPU_TARGET),x86_64)
973
 
REQUIRE_PACKAGES_RTL=1
974
 
endif
975
 
endif
976
 
ifeq ($(OS_TARGET),beos)
977
 
ifeq ($(CPU_TARGET),i386)
978
 
REQUIRE_PACKAGES_RTL=1
979
 
endif
980
 
endif
981
 
ifeq ($(OS_TARGET),netbsd)
982
 
ifeq ($(CPU_TARGET),i386)
983
 
REQUIRE_PACKAGES_RTL=1
984
 
endif
985
 
endif
986
 
ifeq ($(OS_TARGET),netbsd)
987
 
ifeq ($(CPU_TARGET),m68k)
988
 
REQUIRE_PACKAGES_RTL=1
989
 
endif
990
 
endif
991
 
ifeq ($(OS_TARGET),netbsd)
992
 
ifeq ($(CPU_TARGET),powerpc)
993
 
REQUIRE_PACKAGES_RTL=1
994
 
endif
995
 
endif
996
 
ifeq ($(OS_TARGET),netbsd)
997
 
ifeq ($(CPU_TARGET),sparc)
998
 
REQUIRE_PACKAGES_RTL=1
999
 
endif
1000
 
endif
1001
 
ifeq ($(OS_TARGET),amiga)
1002
 
ifeq ($(CPU_TARGET),m68k)
1003
 
REQUIRE_PACKAGES_RTL=1
1004
 
endif
1005
 
endif
1006
 
ifeq ($(OS_TARGET),atari)
1007
 
ifeq ($(CPU_TARGET),m68k)
1008
 
REQUIRE_PACKAGES_RTL=1
1009
 
endif
1010
 
endif
1011
 
ifeq ($(OS_TARGET),sunos)
1012
 
ifeq ($(CPU_TARGET),i386)
1013
 
REQUIRE_PACKAGES_RTL=1
1014
 
endif
1015
 
endif
1016
 
ifeq ($(OS_TARGET),sunos)
1017
 
ifeq ($(CPU_TARGET),sparc)
1018
 
REQUIRE_PACKAGES_RTL=1
1019
 
endif
1020
 
endif
1021
 
ifeq ($(OS_TARGET),qnx)
1022
 
ifeq ($(CPU_TARGET),i386)
1023
 
REQUIRE_PACKAGES_RTL=1
1024
 
endif
1025
 
endif
1026
 
ifeq ($(OS_TARGET),netware)
1027
 
ifeq ($(CPU_TARGET),i386)
1028
 
REQUIRE_PACKAGES_RTL=1
1029
 
endif
1030
 
endif
1031
 
ifeq ($(OS_TARGET),openbsd)
1032
 
ifeq ($(CPU_TARGET),i386)
1033
 
REQUIRE_PACKAGES_RTL=1
1034
 
endif
1035
 
endif
1036
 
ifeq ($(OS_TARGET),openbsd)
1037
 
ifeq ($(CPU_TARGET),m68k)
1038
 
REQUIRE_PACKAGES_RTL=1
1039
 
endif
1040
 
endif
1041
 
ifeq ($(OS_TARGET),wdosx)
1042
 
ifeq ($(CPU_TARGET),i386)
1043
 
REQUIRE_PACKAGES_RTL=1
1044
 
endif
1045
 
endif
1046
 
ifeq ($(OS_TARGET),palmos)
1047
 
ifeq ($(CPU_TARGET),m68k)
1048
 
REQUIRE_PACKAGES_RTL=1
1049
 
endif
1050
 
endif
1051
 
ifeq ($(OS_TARGET),macos)
1052
 
ifeq ($(CPU_TARGET),powerpc)
1053
 
REQUIRE_PACKAGES_RTL=1
1054
 
endif
1055
 
endif
1056
 
ifeq ($(OS_TARGET),darwin)
1057
 
ifeq ($(CPU_TARGET),powerpc)
1058
 
REQUIRE_PACKAGES_RTL=1
1059
 
endif
1060
 
endif
1061
 
ifeq ($(OS_TARGET),emx)
1062
 
ifeq ($(CPU_TARGET),i386)
1063
 
REQUIRE_PACKAGES_RTL=1
1064
 
endif
1065
 
endif
1066
 
ifeq ($(OS_TARGET),watcom)
1067
 
ifeq ($(CPU_TARGET),i386)
1068
 
REQUIRE_PACKAGES_RTL=1
1069
 
endif
 
984
ifeq ($(FULL_TARGET),i386-linux)
 
985
REQUIRE_PACKAGES_RTL=1
 
986
endif
 
987
ifeq ($(FULL_TARGET),i386-go32v2)
 
988
REQUIRE_PACKAGES_RTL=1
 
989
endif
 
990
ifeq ($(FULL_TARGET),i386-win32)
 
991
REQUIRE_PACKAGES_RTL=1
 
992
endif
 
993
ifeq ($(FULL_TARGET),i386-os2)
 
994
REQUIRE_PACKAGES_RTL=1
 
995
endif
 
996
ifeq ($(FULL_TARGET),i386-freebsd)
 
997
REQUIRE_PACKAGES_RTL=1
 
998
endif
 
999
ifeq ($(FULL_TARGET),i386-beos)
 
1000
REQUIRE_PACKAGES_RTL=1
 
1001
endif
 
1002
ifeq ($(FULL_TARGET),i386-netbsd)
 
1003
REQUIRE_PACKAGES_RTL=1
 
1004
endif
 
1005
ifeq ($(FULL_TARGET),i386-solaris)
 
1006
REQUIRE_PACKAGES_RTL=1
 
1007
endif
 
1008
ifeq ($(FULL_TARGET),i386-qnx)
 
1009
REQUIRE_PACKAGES_RTL=1
 
1010
endif
 
1011
ifeq ($(FULL_TARGET),i386-netware)
 
1012
REQUIRE_PACKAGES_RTL=1
 
1013
endif
 
1014
ifeq ($(FULL_TARGET),i386-openbsd)
 
1015
REQUIRE_PACKAGES_RTL=1
 
1016
endif
 
1017
ifeq ($(FULL_TARGET),i386-wdosx)
 
1018
REQUIRE_PACKAGES_RTL=1
 
1019
endif
 
1020
ifeq ($(FULL_TARGET),i386-darwin)
 
1021
REQUIRE_PACKAGES_RTL=1
 
1022
endif
 
1023
ifeq ($(FULL_TARGET),i386-emx)
 
1024
REQUIRE_PACKAGES_RTL=1
 
1025
endif
 
1026
ifeq ($(FULL_TARGET),i386-watcom)
 
1027
REQUIRE_PACKAGES_RTL=1
 
1028
endif
 
1029
ifeq ($(FULL_TARGET),i386-netwlibc)
 
1030
REQUIRE_PACKAGES_RTL=1
 
1031
endif
 
1032
ifeq ($(FULL_TARGET),i386-wince)
 
1033
REQUIRE_PACKAGES_RTL=1
 
1034
endif
 
1035
ifeq ($(FULL_TARGET),i386-embedded)
 
1036
REQUIRE_PACKAGES_RTL=1
 
1037
endif
 
1038
ifeq ($(FULL_TARGET),i386-symbian)
 
1039
REQUIRE_PACKAGES_RTL=1
 
1040
endif
 
1041
ifeq ($(FULL_TARGET),m68k-linux)
 
1042
REQUIRE_PACKAGES_RTL=1
 
1043
endif
 
1044
ifeq ($(FULL_TARGET),m68k-freebsd)
 
1045
REQUIRE_PACKAGES_RTL=1
 
1046
endif
 
1047
ifeq ($(FULL_TARGET),m68k-netbsd)
 
1048
REQUIRE_PACKAGES_RTL=1
 
1049
endif
 
1050
ifeq ($(FULL_TARGET),m68k-amiga)
 
1051
REQUIRE_PACKAGES_RTL=1
 
1052
endif
 
1053
ifeq ($(FULL_TARGET),m68k-atari)
 
1054
REQUIRE_PACKAGES_RTL=1
 
1055
endif
 
1056
ifeq ($(FULL_TARGET),m68k-openbsd)
 
1057
REQUIRE_PACKAGES_RTL=1
 
1058
endif
 
1059
ifeq ($(FULL_TARGET),m68k-palmos)
 
1060
REQUIRE_PACKAGES_RTL=1
 
1061
endif
 
1062
ifeq ($(FULL_TARGET),m68k-embedded)
 
1063
REQUIRE_PACKAGES_RTL=1
 
1064
endif
 
1065
ifeq ($(FULL_TARGET),powerpc-linux)
 
1066
REQUIRE_PACKAGES_RTL=1
 
1067
endif
 
1068
ifeq ($(FULL_TARGET),powerpc-netbsd)
 
1069
REQUIRE_PACKAGES_RTL=1
 
1070
endif
 
1071
ifeq ($(FULL_TARGET),powerpc-amiga)
 
1072
REQUIRE_PACKAGES_RTL=1
 
1073
endif
 
1074
ifeq ($(FULL_TARGET),powerpc-macos)
 
1075
REQUIRE_PACKAGES_RTL=1
 
1076
endif
 
1077
ifeq ($(FULL_TARGET),powerpc-darwin)
 
1078
REQUIRE_PACKAGES_RTL=1
 
1079
endif
 
1080
ifeq ($(FULL_TARGET),powerpc-morphos)
 
1081
REQUIRE_PACKAGES_RTL=1
 
1082
endif
 
1083
ifeq ($(FULL_TARGET),powerpc-embedded)
 
1084
REQUIRE_PACKAGES_RTL=1
 
1085
endif
 
1086
ifeq ($(FULL_TARGET),sparc-linux)
 
1087
REQUIRE_PACKAGES_RTL=1
 
1088
endif
 
1089
ifeq ($(FULL_TARGET),sparc-netbsd)
 
1090
REQUIRE_PACKAGES_RTL=1
 
1091
endif
 
1092
ifeq ($(FULL_TARGET),sparc-solaris)
 
1093
REQUIRE_PACKAGES_RTL=1
 
1094
endif
 
1095
ifeq ($(FULL_TARGET),sparc-embedded)
 
1096
REQUIRE_PACKAGES_RTL=1
 
1097
endif
 
1098
ifeq ($(FULL_TARGET),x86_64-linux)
 
1099
REQUIRE_PACKAGES_RTL=1
 
1100
endif
 
1101
ifeq ($(FULL_TARGET),x86_64-freebsd)
 
1102
REQUIRE_PACKAGES_RTL=1
 
1103
endif
 
1104
ifeq ($(FULL_TARGET),x86_64-win64)
 
1105
REQUIRE_PACKAGES_RTL=1
 
1106
endif
 
1107
ifeq ($(FULL_TARGET),x86_64-embedded)
 
1108
REQUIRE_PACKAGES_RTL=1
 
1109
endif
 
1110
ifeq ($(FULL_TARGET),arm-linux)
 
1111
REQUIRE_PACKAGES_RTL=1
 
1112
endif
 
1113
ifeq ($(FULL_TARGET),arm-palmos)
 
1114
REQUIRE_PACKAGES_RTL=1
 
1115
endif
 
1116
ifeq ($(FULL_TARGET),arm-wince)
 
1117
REQUIRE_PACKAGES_RTL=1
 
1118
endif
 
1119
ifeq ($(FULL_TARGET),arm-gba)
 
1120
REQUIRE_PACKAGES_RTL=1
 
1121
endif
 
1122
ifeq ($(FULL_TARGET),arm-nds)
 
1123
REQUIRE_PACKAGES_RTL=1
 
1124
endif
 
1125
ifeq ($(FULL_TARGET),arm-embedded)
 
1126
REQUIRE_PACKAGES_RTL=1
 
1127
endif
 
1128
ifeq ($(FULL_TARGET),arm-symbian)
 
1129
REQUIRE_PACKAGES_RTL=1
 
1130
endif
 
1131
ifeq ($(FULL_TARGET),powerpc64-linux)
 
1132
REQUIRE_PACKAGES_RTL=1
 
1133
endif
 
1134
ifeq ($(FULL_TARGET),powerpc64-embedded)
 
1135
REQUIRE_PACKAGES_RTL=1
1070
1136
endif
1071
1137
ifdef REQUIRE_PACKAGES_RTL
1072
 
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
 
1138
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
1073
1139
ifneq ($(PACKAGEDIR_RTL),)
1074
 
ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
1075
 
UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
 
1140
ifneq ($(wildcard $(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)),)
 
1141
UNITDIR_RTL=$(PACKAGEDIR_RTL)/units/$(TARGETSUFFIX)
1076
1142
else
1077
1143
UNITDIR_RTL=$(PACKAGEDIR_RTL)
1078
1144
endif
1100
1166
ifneq ($(OS_TARGET),$(OS_SOURCE))
1101
1167
override FPCOPT+=-T$(OS_TARGET)
1102
1168
endif
 
1169
ifneq ($(CPU_TARGET),$(CPU_SOURCE))
 
1170
override FPCOPT+=-P$(CPU_TARGET)
 
1171
endif
1103
1172
ifeq ($(OS_SOURCE),openbsd)
1104
1173
override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
1105
1174
endif
1106
1175
ifndef CROSSBOOTSTRAP
1107
1176
ifneq ($(BINUTILSPREFIX),)
1108
 
override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
 
1177
override FPCOPT+=-XP$(BINUTILSPREFIX) 
1109
1178
endif
1110
1179
ifneq ($(BINUTILSPREFIX),)
1111
1180
override FPCOPT+=-Xr$(RLINKPATH)
1134
1203
override FPCOPTDEF+=DEBUG
1135
1204
endif
1136
1205
ifdef RELEASE
 
1206
ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
1137
1207
ifeq ($(CPU_TARGET),i386)
1138
1208
FPCCPUOPT:=-OG2p3
1139
 
else
 
1209
endif
1140
1210
ifeq ($(CPU_TARGET),powerpc)
1141
 
FPCCPUOPT:=-O1
 
1211
FPCCPUOPT:=-O1r
 
1212
endif
1142
1213
else
1143
 
FPCCPUOPT:=
1144
 
endif
1145
 
endif
1146
 
override FPCOPT+=-Xs $(FPCCPUOPT) -n
 
1214
FPCCPUOPT:=-O2
 
1215
endif
 
1216
override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
1147
1217
override FPCOPTDEF+=RELEASE
1148
1218
endif
1149
1219
ifdef STRIP
1150
1220
override FPCOPT+=-Xs
1151
1221
endif
1152
1222
ifdef OPTIMIZE
1153
 
ifeq ($(CPU_TARGET),i386)
1154
 
override FPCOPT+=-OG2p3
1155
 
endif
 
1223
override FPCOPT+=-O2
1156
1224
endif
1157
1225
ifdef VERBOSE
1158
1226
override FPCOPT+=-vwni
1196
1264
override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
1197
1265
endif
1198
1266
endif
 
1267
ifdef CREATESHARED
 
1268
override FPCOPT+=-Cg
 
1269
ifeq ($(CPU_TARGET),i386)
 
1270
override FPCOPT+=-Aas
 
1271
endif
 
1272
endif
 
1273
ifeq ($(findstring 2.0.,$(FPC_VERSION)),)
1199
1274
ifeq ($(OS_TARGET),linux)
1200
 
ifeq ($(FPC_VERSION),1.0.6)
1201
 
override FPCOPTDEF+=HASUNIX
1202
 
endif
 
1275
ifeq ($(CPU_TARGET),x86_64)
 
1276
override FPCOPT+=-Cg
 
1277
endif
 
1278
endif
 
1279
endif
 
1280
ifdef LINKSHARED
1203
1281
endif
1204
1282
ifdef OPT
1205
1283
override FPCOPT+=$(OPT)
1215
1293
override FPCOPT:=!FPCEXTCMD
1216
1294
export FPCEXTCMD
1217
1295
endif
 
1296
override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
 
1297
override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
 
1298
ifneq ($(AFULL_TARGET),$(AFULL_SOURCE))
 
1299
override ACROSSCOMPILE=1
 
1300
endif
 
1301
ifdef ACROSSCOMPILE
 
1302
override FPCOPT+=$(CROSSOPT)
 
1303
endif
1218
1304
override COMPILER:=$(FPC) $(FPCOPT)
1219
1305
ifeq (,$(findstring -s ,$(COMPILER)))
1220
1306
EXECPPAS=
1224
1310
endif
1225
1311
endif
1226
1312
.PHONY: fpc_exes
 
1313
ifndef CROSSINSTALL
1227
1314
ifneq ($(TARGET_PROGRAMS),)
1228
1315
override EXEFILES=$(addsuffix $(EXEEXT),$(TARGET_PROGRAMS))
1229
 
override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
 
1316
override EXEOFILES:=$(addsuffix $(OEXT),$(TARGET_PROGRAMS)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS))) $(addprefix $(IMPORTLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_PROGRAMS)))
1230
1317
override ALLTARGET+=fpc_exes
1231
1318
override INSTALLEXEFILES+=$(EXEFILES)
1232
1319
override CLEANEXEFILES+=$(EXEFILES) $(EXEOFILES)
1237
1324
override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_PROGRAMS))
1238
1325
endif
1239
1326
endif
1240
 
fpc_exes: $(EXEFILES)
 
1327
endif
 
1328
fpc_exes: $(COMPILER_TARGETDIR) $(COMPILER_UNITTARGETDIR) $(EXEFILES)
1241
1329
ifdef TARGET_RSTS
1242
1330
override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
1243
1331
override CLEANRSTFILES+=$(RSTFILES)
1244
1332
endif
1245
 
.PHONY: fpc_all fpc_smart fpc_debug fpc_release
 
1333
.PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared
1246
1334
$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
1247
1335
        @$(ECHOREDIR) Compiled > $(FPCMADE)
1248
1336
fpc_all: $(FPCMADE)
1252
1340
        $(MAKE) all DEBUG=1
1253
1341
fpc_release:
1254
1342
        $(MAKE) all RELEASE=1
1255
 
.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
 
1343
.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
 
1344
$(COMPILER_UNITTARGETDIR):
 
1345
        $(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
 
1346
$(COMPILER_TARGETDIR):
 
1347
        $(MKDIRTREE) $(COMPILER_TARGETDIR)
1256
1348
%$(PPUEXT): %.pp
1257
1349
        $(COMPILER) $<
1258
1350
        $(EXECPPAS)
1265
1357
%$(EXEEXT): %.pas
1266
1358
        $(COMPILER) $<
1267
1359
        $(EXECPPAS)
 
1360
%$(EXEEXT): %.lpr
 
1361
        $(COMPILER) $<
 
1362
        $(EXECPPAS)
1268
1363
%$(EXEEXT): %.dpr
1269
1364
        $(COMPILER) $<
1270
1365
        $(EXECPPAS)
1272
1367
        windres -i $< -o $@
1273
1368
vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1274
1369
vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 
1370
vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1275
1371
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
 
1372
vpath %.inc $(COMPILER_INCLUDEDIR)
 
1373
vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
1276
1374
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
 
1375
.PHONY: fpc_shared
 
1376
override INSTALLTARGET+=fpc_shared_install
 
1377
ifndef SHARED_LIBVERSION
 
1378
SHARED_LIBVERSION=$(FPC_VERSION)
 
1379
endif
 
1380
ifndef SHARED_LIBNAME
 
1381
SHARED_LIBNAME=$(PACKAGE_NAME)
 
1382
endif
 
1383
ifndef SHARED_FULLNAME
 
1384
SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT)
 
1385
endif
 
1386
ifndef SHARED_LIBUNITS
 
1387
SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
 
1388
override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
 
1389
endif
 
1390
fpc_shared:
 
1391
ifdef HASSHAREDLIB
 
1392
        $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1
 
1393
ifneq ($(SHARED_BUILD),n)
 
1394
        $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)
 
1395
endif
 
1396
else
 
1397
        @$(ECHO) Shared Libraries not supported
 
1398
endif
 
1399
fpc_shared_install:
 
1400
ifneq ($(SHARED_BUILD),n)
 
1401
ifneq ($(SHARED_LIBUNITS),)
 
1402
ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)
 
1403
        $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR)
 
1404
endif
 
1405
endif
 
1406
endif
1277
1407
.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
1278
1408
ifdef INSTALL_UNITS
1279
1409
override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
1282
1412
override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
1283
1413
endif
1284
1414
ifdef INSTALLPPUFILES
1285
 
override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
1286
 
override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
1287
 
override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
 
1415
override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
 
1416
ifneq ($(UNITTARGETDIRPREFIX),)
 
1417
override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
 
1418
override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
 
1419
endif
1288
1420
override INSTALL_CREATEPACKAGEFPC=1
1289
1421
endif
1290
1422
ifdef INSTALLEXEFILES
1291
 
override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
 
1423
ifneq ($(TARGETDIRPREFIX),)
 
1424
override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
 
1425
endif
1292
1426
endif
1293
1427
fpc_install: all $(INSTALLTARGET)
1294
1428
ifdef INSTALLEXEFILES
1302
1436
ifdef FPCMAKE
1303
1437
ifdef PACKAGE_VERSION
1304
1438
ifneq ($(wildcard Makefile.fpc),)
1305
 
        $(FPCMAKE) -p -T$(OS_TARGET) Makefile.fpc
 
1439
        $(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
1306
1440
        $(MKDIR) $(INSTALL_UNITDIR)
1307
1441
        $(INSTALL) Package.fpc $(INSTALL_UNITDIR)
1308
1442
endif
1348
1482
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
1349
1483
endif
1350
1484
ifdef CLEANPPUFILES
1351
 
override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
 
1485
override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
1352
1486
ifdef DEBUGSYMEXT
1353
 
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES)) 
 
1487
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
1354
1488
endif
1355
1489
override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
1356
1490
override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
1376
1510
endif
1377
1511
        -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1378
1512
        -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
1379
 
fpc_distclean: clean
1380
 
ifdef COMPILER_UNITTARGETDIR
1381
 
TARGETDIRCLEAN=fpc_clean
1382
 
endif
1383
 
fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
 
1513
fpc_cleanall: $(CLEANTARGET)
1384
1514
ifdef CLEANEXEFILES
1385
1515
        -$(DEL) $(CLEANEXEFILES)
1386
1516
endif
 
1517
ifdef COMPILER_UNITTARGETDIR
 
1518
ifdef CLEANPPUFILES
 
1519
        -$(DEL) $(CLEANPPUFILES)
 
1520
endif
 
1521
ifneq ($(CLEANPPULINKFILES),)
 
1522
        -$(DEL) $(CLEANPPULINKFILES)
 
1523
endif
 
1524
ifdef CLEANRSTFILES
 
1525
        -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
 
1526
endif
 
1527
endif
 
1528
        -$(DELTREE) units
1387
1529
        -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
 
1530
ifneq ($(PPUEXT),.ppu)
 
1531
        -$(DEL) *.o *.ppu *.a
 
1532
endif
1388
1533
        -$(DELTREE) *$(SMARTEXT)
1389
 
        -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
 
1534
        -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1390
1535
        -$(DEL) *_ppas$(BATCHEXT)
1391
1536
ifdef AOUTEXT
1392
1537
        -$(DEL) *$(AOUTEXT)
1394
1539
ifdef DEBUGSYMEXT
1395
1540
        -$(DEL) *$(DEBUGSYMEXT)
1396
1541
endif
 
1542
fpc_distclean: cleanall
1397
1543
.PHONY: fpc_baseinfo
1398
1544
override INFORULES+=fpc_baseinfo
1399
1545
fpc_baseinfo:
1412
1558
        @$(ECHO)  Target OS.... $(OS_TARGET)
1413
1559
        @$(ECHO)  Full Source.. $(FULL_SOURCE)
1414
1560
        @$(ECHO)  Full Target.. $(FULL_TARGET)
 
1561
        @$(ECHO)  SourceSuffix. $(SOURCESUFFIX)
 
1562
        @$(ECHO)  TargetSuffix. $(TARGETSUFFIX)
1415
1563
        @$(ECHO)
1416
1564
        @$(ECHO)  == Directory info ==
1417
1565
        @$(ECHO)
1464
1612
        @$(ECHO)  == Install info ==
1465
1613
        @$(ECHO)
1466
1614
        @$(ECHO)  DateStr.............. $(DATESTR)
 
1615
        @$(ECHO)  ZipName.............. $(ZIPNAME)
1467
1616
        @$(ECHO)  ZipPrefix............ $(ZIPPREFIX)
 
1617
        @$(ECHO)  ZipCrossPrefix....... $(ZIPCROSSPREFIX)
1468
1618
        @$(ECHO)  ZipSuffix............ $(ZIPSUFFIX)
 
1619
        @$(ECHO)  FullZipName.......... $(FULLZIPNAME)
1469
1620
        @$(ECHO)  Install FPC Package.. $(INSTALL_FPCPACKAGE)
1470
1621
        @$(ECHO)
1471
1622
        @$(ECHO)  Install base dir..... $(INSTALL_BASEDIR)
1500
1651
debug: fpc_debug
1501
1652
smart: fpc_smart
1502
1653
release: fpc_release
 
1654
units: fpc_units
1503
1655
examples:
1504
 
shared:
 
1656
shared: fpc_shared
1505
1657
install: fpc_install
1506
1658
sourceinstall: fpc_sourceinstall
1507
1659
exampleinstall: fpc_exampleinstall
1515
1667
cleanall: fpc_cleanall
1516
1668
info: fpc_info
1517
1669
makefiles: fpc_makefiles
1518
 
.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
 
1670
.PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
1519
1671
ifneq ($(wildcard fpcmake.loc),)
1520
1672
include fpcmake.loc
1521
1673
endif