46
# The extension of executables
53
# The path which is searched separated by spaces
55
SEARCHPATH=$(subst :, ,$(PATH))
57
SEARCHPATH=$(subst ;, ,$(PATH))
45
ifneq ($(findstring cygdrive,$(PATH)),)
61
PATHSEP:=$(subst /,\,/)
62
BASEDIR:=$(shell $(PWD))
67
BASEDIR:=$(subst \,/,$(shell $(PWD)))
69
ifneq ($(findstring /cygdrive/,$(BASEDIR)),)
70
BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR))
71
BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR)))
72
BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR))
67
#####################################################################
68
# FPC version/target Detection
69
#####################################################################
71
# What compiler to use ?
80
ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
82
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
86
ECHO:=$(firstword $(ECHO))
89
ECHO:=$(firstword $(ECHO))
94
override DEFAULT_FPCDIR=../../..
73
# Compatibility with old makefiles
101
FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
103
FPCPROG:=$(firstword $(FPCPROG))
104
FPC:=$(shell $(FPCPROG) -PB)
105
ifneq ($(findstring Error,$(FPC)),)
80
112
override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
81
113
override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
115
FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
116
FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
118
export FPC FPC_VERSION FPC_COMPILERINFO
119
unexport CHECKDEPEND ALLDEPENDENCIES
121
ifdef CPU_TARGET_DEFAULT
122
CPU_TARGET=$(CPU_TARGET_DEFAULT)
85
OS_TARGET:=$(shell $(FPC) -iTO)
126
ifdef OS_TARGET_DEFAULT
127
OS_TARGET=$(OS_TARGET_DEFAULT)
130
ifneq ($(words $(FPC_COMPILERINFO)),5)
131
FPC_COMPILERINFO+=$(shell $(FPC) -iSP)
132
FPC_COMPILERINFO+=$(shell $(FPC) -iTP)
133
FPC_COMPILERINFO+=$(shell $(FPC) -iSO)
134
FPC_COMPILERINFO+=$(shell $(FPC) -iTO)
137
CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
140
CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
90
OS_SOURCE:=$(shell $(FPC) -iSO)
95
CPU_TARGET:=$(shell $(FPC) -iTP)
100
CPU_SOURCE:=$(shell $(FPC) -iSP)
105
FPC_VERSION:=$(shell $(FPC) -iV)
108
export FPC OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FPC_VERSION
110
#####################################################################
112
#####################################################################
114
# Test FPCDIR to look if the RTL dir exists
143
OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
146
OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
148
FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
149
FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
150
ifneq ($(FULL_TARGET),$(FULL_SOURCE))
153
ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
154
ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
155
$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
158
ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
161
ifeq ($(OS_TARGET),linux)
164
export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
116
166
override FPCDIR:=$(subst \,/,$(FPCDIR))
117
ifeq ($(wildcard $(FPCDIR)/rtl),)
118
ifeq ($(wildcard $(FPCDIR)/units),)
167
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
119
168
override FPCDIR=wrong
123
171
override FPCDIR=wrong
127
174
ifeq ($(FPCDIR),wrong)
128
override FPCDIR=../../..
129
ifeq ($(wildcard $(FPCDIR)/rtl),)
130
ifeq ($(wildcard $(FPCDIR)/units),)
175
override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
176
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
131
177
override FPCDIR=wrong
137
181
ifeq ($(FPCDIR),wrong)
139
183
override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
144
188
override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
145
189
override FPCDIR:=$(FPCDIR)/..
146
ifeq ($(wildcard $(FPCDIR)/rtl),)
147
ifeq ($(wildcard $(FPCDIR)/units),)
190
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
148
191
override FPCDIR:=$(FPCDIR)/..
149
ifeq ($(wildcard $(FPCDIR)/rtl),)
150
ifeq ($(wildcard $(FPCDIR)/units),)
192
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
193
override FPCDIR:=$(BASEDIR)
194
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
151
195
override FPCDIR=c:/pp
160
PACKAGESDIR=$(FPCDIR)/packages
171
UNITSDIR=$(FPCDIR)/units/$(OS_TARGET)
174
#####################################################################
176
#####################################################################
181
override UNITOBJECTS+=interbase
182
override EXAMPLEOBJECTS+=testib
200
TARGETDIR=../../$(OS_TARGET)
205
override PACKAGES+=rtl ibase
212
INFOTARGET=fpc_infocfg fpc_infoobjects fpc_infoinstall
214
#####################################################################
216
#####################################################################
202
CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
204
ifndef CROSSTARGETDIR
205
CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
208
UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
210
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
213
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
215
PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
216
override PACKAGE_NAME=fcl
217
override TARGET_UNITS+=interbase
218
override TARGET_EXAMPLES+=testib
219
override CLEAN_UNITS+=ibas40 ibase60
220
override INSTALL_FPCPACKAGE=y
221
override COMPILER_OPTIONS+=-S2
222
override COMPILER_TARGETDIR+=../../$(OS_TARGET)
223
ifdef REQUIRE_UNITSDIR
224
override UNITSDIR+=$(REQUIRE_UNITSDIR)
226
ifdef REQUIRE_PACKAGESDIR
227
override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
230
ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
234
ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
238
ifndef INSTALL_PREFIX
240
INSTALL_PREFIX=$(PREFIX)
243
ifndef INSTALL_PREFIX
245
INSTALL_PREFIX=/usr/local
247
ifdef INSTALL_FPCPACKAGE
250
INSTALL_BASEDIR:=/$(PACKAGE_NAME)
254
export INSTALL_PREFIX
255
ifdef INSTALL_FPCSUBDIR
256
export INSTALL_FPCSUBDIR
259
DIST_DESTDIR:=$(BASEDIR)
262
ifndef INSTALL_BASEDIR
264
ifdef INSTALL_FPCPACKAGE
265
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
267
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
270
INSTALL_BASEDIR:=$(INSTALL_PREFIX)
273
ifndef INSTALL_BINDIR
276
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
278
INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
282
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
284
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
286
ifdef INSTALL_FPCPACKAGE
287
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
291
ifndef INSTALL_UNITDIR
293
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
295
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
297
ifdef INSTALL_FPCPACKAGE
299
INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
303
ifndef INSTALL_LIBDIR
305
INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
307
INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
310
ifndef INSTALL_SOURCEDIR
313
SRCPREFIXDIR=share/src
316
SRCPREFIXDIR=share/src
321
ifdef INSTALL_FPCPACKAGE
322
ifdef INSTALL_FPCSUBDIR
323
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
325
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
328
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
331
ifdef INSTALL_FPCPACKAGE
332
ifdef INSTALL_FPCSUBDIR
333
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
335
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
338
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
342
ifndef INSTALL_DOCDIR
345
DOCPREFIXDIR=share/doc
348
DOCPREFIXDIR=share/doc
353
ifdef INSTALL_FPCPACKAGE
354
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
356
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
359
ifdef INSTALL_FPCPACKAGE
360
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
362
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
366
ifndef INSTALL_EXAMPLEDIR
368
ifdef INSTALL_FPCPACKAGE
370
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
373
INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
375
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
380
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
383
INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
385
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
390
ifdef INSTALL_FPCPACKAGE
391
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
393
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
397
ifndef INSTALL_DATADIR
398
INSTALL_DATADIR=$(INSTALL_BASEDIR)
402
CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
403
ifeq ($(CROSSBINDIR),)
404
CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
410
ifeq ($(OS_SOURCE),linux)
412
ifeq ($(CPU_TARGET),i386)
413
ifneq ($(findstring x86_64,$(shell uname -a)),)
414
ifeq ($(BINUTILSPREFIX),)
415
GCCLIBDIR:=$(shell dirname `gcc -m32 -print-libgcc-file-name`)
417
GCCLIBDIR:=$(shell dirname `$(BINUTILSPREFIX)gcc -print-libgcc-file-name`)
420
GCCLIBDIR:=$(shell dirname `$(BINUTILSPREFIX)gcc -print-libgcc-file-name`)
423
GCCLIBDIR:=$(shell dirname `$(BINUTILSPREFIX)gcc -print-libgcc-file-name`)
427
OTHERLIBDIR:=$(shell grep -v "^\#" /etc/ld.so.conf | awk '{ ORS=" "; print $1 }')
431
ifeq ($(OS_SOURCE),netbsd)
432
OTHERLIBDIR+=/usr/pkg/lib
434
export GCCLIBDIR OTHERLIB
449
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
450
ifeq ($(OS_TARGET),go32v1)
455
ifeq ($(OS_TARGET),go32v2)
460
ifeq ($(OS_TARGET),watcom)
468
ifeq ($(OS_TARGET),linux)
475
ifeq ($(OS_TARGET),freebsd)
479
FPCMADE=fpcmade.freebsd
482
ifeq ($(OS_TARGET),netbsd)
486
FPCMADE=fpcmade.netbsd
489
ifeq ($(OS_TARGET),openbsd)
493
FPCMADE=fpcmade.openbsd
496
ifeq ($(OS_TARGET),win32)
501
ifeq ($(OS_TARGET),os2)
510
ifeq ($(OS_TARGET),emx)
519
ifeq ($(OS_TARGET),amiga)
521
SHAREDLIBEXT=.library
524
ifeq ($(OS_TARGET),atari)
528
ifeq ($(OS_TARGET),beos)
534
ifeq ($(OS_TARGET),sunos)
540
ifeq ($(OS_TARGET),qnx)
546
ifeq ($(OS_TARGET),netware)
552
ifeq ($(OS_TARGET),macos)
555
FPCMADE=fpcmade.macos
559
ifeq ($(OS_TARGET),darwin)
563
FPCMADE=fpcmade.darwin
567
ifeq ($(OS_TARGET),go32v1)
578
ifeq ($(OS_TARGET),go32v2)
583
ifeq ($(OS_TARGET),watcom)
588
ifeq ($(OS_TARGET),linux)
595
ifeq ($(OS_TARGET),freebsd)
599
FPCMADE=fpcmade.freebsd
602
ifeq ($(OS_TARGET),netbsd)
606
FPCMADE=fpcmade.netbsd
609
ifeq ($(OS_TARGET),openbsd)
613
FPCMADE=fpcmade.openbsd
616
ifeq ($(OS_TARGET),win32)
626
ifeq ($(OS_TARGET),os2)
640
ifeq ($(OS_TARGET),amiga)
647
SHAREDLIBEXT=.library
650
ifeq ($(OS_TARGET),atari)
659
ifeq ($(OS_TARGET),beos)
670
ifeq ($(OS_TARGET),sunos)
681
ifeq ($(OS_TARGET),qnx)
692
ifeq ($(OS_TARGET),netware)
704
ifeq ($(OS_TARGET),macos)
713
FPCMADE=fpcmade.macos
220
ECHO:=$(strip $(wildcard $(addsuffix /gecho$(EXEEXT),$(SEARCHPATH))))
717
ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
222
719
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
227
ECHO:=$(firstword $(ECHO))
231
ECHO:=$(firstword $(ECHO))
721
ECHO= __missing_command__
723
ECHO:=$(firstword $(ECHO))
726
ECHO:=$(firstword $(ECHO))
731
DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
733
DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
735
DATE= __missing_command__
737
DATE:=$(firstword $(DATE))
740
DATE:=$(firstword $(DATE))
745
GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
747
GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
749
GINSTALL= __missing_command__
751
GINSTALL:=$(firstword $(GINSTALL))
754
GINSTALL:=$(firstword $(GINSTALL))
759
CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
761
CPPROG= __missing_command__
763
CPPROG:=$(firstword $(CPPROG))
768
RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
770
RMPROG= __missing_command__
772
RMPROG:=$(firstword $(RMPROG))
777
MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
779
MVPROG= __missing_command__
781
MVPROG:=$(firstword $(MVPROG))
796
COPYTREE:=$(CPPROG) -rfp
251
# Check delete program
256
# Check deltree program
805
DELTREE:=$(RMPROG) -rf
264
INSTALL:=install -c -m 644
809
INSTALL:=$(GINSTALL) -c -m 644
270
# To install programs
271
814
ifndef INSTALLEXE
273
INSTALLEXE:=install -c -m 755
816
INSTALLEXE:=$(GINSTALL) -c -m 755
275
818
INSTALLEXE:=$(COPY)
279
# To make a directory.
282
MKDIR:=install -m 755 -d
284
MKDIR:=ginstall -m 755 -d
288
export ECHO ECHOE COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
290
#####################################################################
292
#####################################################################
294
# assembler, redefine it if cross compiling
299
# linker, but probably not used
315
# ldconfig to rebuild .so cache
822
MKDIR:=$(GINSTALL) -m 755 -d
824
export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
324
826
PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
325
827
ifeq ($(PPUMOVE),)
828
PPUMOVE= __missing_command__
328
830
PPUMOVE:=$(firstword $(PPUMOVE))
335
PPUFILES:=$(strip $(wildcard $(addsuffix /ppufiles$(SRCEXEEXT),$(SEARCHPATH))))
339
PPUFILES:=$(firstword $(PPUFILES))
344
# Look if UPX is found for go32v2 and win32. We can't use $UPX becuase
345
# upx uses that one itself (PFV)
347
ifeq ($(OS_TARGET),go32v2)
350
ifeq ($(OS_TARGET),win32)
354
UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
358
UPXPROG:=$(firstword $(UPXPROG))
366
# ZipProg, you can't use Zip as the var name (PFV)
835
FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
837
FPCMAKE= __missing_command__
839
FPCMAKE:=$(firstword $(FPCMAKE))
368
844
ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
369
845
ifeq ($(ZIPPROG),)
846
ZIPPROG= __missing_command__
372
848
ZIPPROG:=$(firstword $(ZIPPROG))
382
853
TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
383
854
ifeq ($(TARPROG),)
855
TARPROG= __missing_command__
386
857
TARPROG:=$(firstword $(TARPROG))
861
ASNAME=$(BINUTILSPREFIX)as
862
LDNAME=$(BINUTILSPREFIX)ld
863
ARNAME=$(BINUTILSPREFIX)ar
864
RCNAME=$(BINUTILSPREFIX)rc
865
ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
866
ifeq ($(OS_TARGET),win32)
867
ifeq ($(CROSSBINDIR),)
876
ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
883
LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
890
RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
897
ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
906
PPAS=ppas$(SRCBATCHEXT)
913
DATESTR:=$(shell $(DATE) +%Y%m%d)
918
ifeq ($(OS_TARGET),go32v2)
921
ifeq ($(OS_TARGET),win32)
925
UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
929
UPXPROG:=$(firstword $(UPXPROG))
391
938
ifeq ($(USETAR),bz2)
399
#####################################################################
401
#####################################################################
403
# Default needed extensions (Go32v2,Linux)
417
ifeq ($(OS_TARGET),go32v1)
945
override REQUIRE_PACKAGES=rtl ibase
946
ifeq ($(OS_TARGET),linux)
947
ifeq ($(CPU_TARGET),i386)
948
REQUIRE_PACKAGES_RTL=1
949
REQUIRE_PACKAGES_IBASE=1
952
ifeq ($(OS_TARGET),linux)
953
ifeq ($(CPU_TARGET),m68k)
954
REQUIRE_PACKAGES_RTL=1
955
REQUIRE_PACKAGES_IBASE=1
958
ifeq ($(OS_TARGET),linux)
959
ifeq ($(CPU_TARGET),powerpc)
960
REQUIRE_PACKAGES_RTL=1
961
REQUIRE_PACKAGES_IBASE=1
964
ifeq ($(OS_TARGET),linux)
965
ifeq ($(CPU_TARGET),sparc)
966
REQUIRE_PACKAGES_RTL=1
967
REQUIRE_PACKAGES_IBASE=1
970
ifeq ($(OS_TARGET),linux)
971
ifeq ($(CPU_TARGET),x86_64)
972
REQUIRE_PACKAGES_RTL=1
973
REQUIRE_PACKAGES_IBASE=1
976
ifeq ($(OS_TARGET),linux)
977
ifeq ($(CPU_TARGET),arm)
978
REQUIRE_PACKAGES_RTL=1
979
REQUIRE_PACKAGES_IBASE=1
428
982
ifeq ($(OS_TARGET),go32v2)
433
ifeq ($(OS_TARGET),linux)
440
ifeq ($(OS_TARGET),freebsd)
443
FPCMADE=fpcmade.freebsd
983
ifeq ($(CPU_TARGET),i386)
984
REQUIRE_PACKAGES_RTL=1
985
REQUIRE_PACKAGES_IBASE=1
447
988
ifeq ($(OS_TARGET),win32)
989
ifeq ($(CPU_TARGET),i386)
990
REQUIRE_PACKAGES_RTL=1
991
REQUIRE_PACKAGES_IBASE=1
458
994
ifeq ($(OS_TARGET),os2)
470
ifeq ($(OS_TARGET),go32v2)
473
ifeq ($(OS_TARGET),go32v1)
477
# determine which .pas extension is used
480
override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(EXEOBJECTS)))))
482
override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(UNITOBJECTS)))))
492
# Check if the dirs really exists, else turn it off
493
ifeq ($(wildcard $(UNITSDIR)),)
496
ifeq ($(wildcard $(TOOLKITSDIR)),)
499
ifeq ($(wildcard $(PACKAGESDIR)),)
502
ifeq ($(wildcard $(COMPONENTSDIR)),)
507
# PACKAGESDIR packages
513
ifneq ($(wildcard $(FPCDIR)/rtl),)
514
ifneq ($(wildcard $(FPCDIR)/rtl/$(OS_TARGET)),)
515
PACKAGEDIR_RTL=$(FPCDIR)/rtl/$(OS_TARGET)
517
PACKAGEDIR_RTL=$(FPCDIR)/rtl
519
ifeq ($(wildcard $(PACKAGEDIR_RTL)/$(FPCMADE)),)
520
override COMPILEPACKAGES+=package_rtl
522
$(MAKE) -C $(PACKAGEDIR_RTL) all
995
ifeq ($(CPU_TARGET),i386)
996
REQUIRE_PACKAGES_RTL=1
997
REQUIRE_PACKAGES_IBASE=1
1000
ifeq ($(OS_TARGET),freebsd)
1001
ifeq ($(CPU_TARGET),i386)
1002
REQUIRE_PACKAGES_RTL=1
1003
REQUIRE_PACKAGES_IBASE=1
1006
ifeq ($(OS_TARGET),freebsd)
1007
ifeq ($(CPU_TARGET),m68k)
1008
REQUIRE_PACKAGES_RTL=1
1009
REQUIRE_PACKAGES_IBASE=1
1012
ifeq ($(OS_TARGET),freebsd)
1013
ifeq ($(CPU_TARGET),x86_64)
1014
REQUIRE_PACKAGES_RTL=1
1015
REQUIRE_PACKAGES_IBASE=1
1018
ifeq ($(OS_TARGET),beos)
1019
ifeq ($(CPU_TARGET),i386)
1020
REQUIRE_PACKAGES_RTL=1
1021
REQUIRE_PACKAGES_IBASE=1
1024
ifeq ($(OS_TARGET),netbsd)
1025
ifeq ($(CPU_TARGET),i386)
1026
REQUIRE_PACKAGES_RTL=1
1027
REQUIRE_PACKAGES_IBASE=1
1030
ifeq ($(OS_TARGET),netbsd)
1031
ifeq ($(CPU_TARGET),m68k)
1032
REQUIRE_PACKAGES_RTL=1
1033
REQUIRE_PACKAGES_IBASE=1
1036
ifeq ($(OS_TARGET),netbsd)
1037
ifeq ($(CPU_TARGET),powerpc)
1038
REQUIRE_PACKAGES_RTL=1
1039
REQUIRE_PACKAGES_IBASE=1
1042
ifeq ($(OS_TARGET),netbsd)
1043
ifeq ($(CPU_TARGET),sparc)
1044
REQUIRE_PACKAGES_RTL=1
1045
REQUIRE_PACKAGES_IBASE=1
1048
ifeq ($(OS_TARGET),amiga)
1049
ifeq ($(CPU_TARGET),m68k)
1050
REQUIRE_PACKAGES_RTL=1
1051
REQUIRE_PACKAGES_IBASE=1
1054
ifeq ($(OS_TARGET),atari)
1055
ifeq ($(CPU_TARGET),m68k)
1056
REQUIRE_PACKAGES_RTL=1
1057
REQUIRE_PACKAGES_IBASE=1
1060
ifeq ($(OS_TARGET),sunos)
1061
ifeq ($(CPU_TARGET),i386)
1062
REQUIRE_PACKAGES_RTL=1
1063
REQUIRE_PACKAGES_IBASE=1
1066
ifeq ($(OS_TARGET),sunos)
1067
ifeq ($(CPU_TARGET),sparc)
1068
REQUIRE_PACKAGES_RTL=1
1069
REQUIRE_PACKAGES_IBASE=1
1072
ifeq ($(OS_TARGET),qnx)
1073
ifeq ($(CPU_TARGET),i386)
1074
REQUIRE_PACKAGES_RTL=1
1075
REQUIRE_PACKAGES_IBASE=1
1078
ifeq ($(OS_TARGET),netware)
1079
ifeq ($(CPU_TARGET),i386)
1080
REQUIRE_PACKAGES_RTL=1
1081
REQUIRE_PACKAGES_IBASE=1
1084
ifeq ($(OS_TARGET),openbsd)
1085
ifeq ($(CPU_TARGET),i386)
1086
REQUIRE_PACKAGES_RTL=1
1087
REQUIRE_PACKAGES_IBASE=1
1090
ifeq ($(OS_TARGET),openbsd)
1091
ifeq ($(CPU_TARGET),m68k)
1092
REQUIRE_PACKAGES_RTL=1
1093
REQUIRE_PACKAGES_IBASE=1
1096
ifeq ($(OS_TARGET),wdosx)
1097
ifeq ($(CPU_TARGET),i386)
1098
REQUIRE_PACKAGES_RTL=1
1099
REQUIRE_PACKAGES_IBASE=1
1102
ifeq ($(OS_TARGET),palmos)
1103
ifeq ($(CPU_TARGET),m68k)
1104
REQUIRE_PACKAGES_RTL=1
1105
REQUIRE_PACKAGES_IBASE=1
1108
ifeq ($(OS_TARGET),macos)
1109
ifeq ($(CPU_TARGET),powerpc)
1110
REQUIRE_PACKAGES_RTL=1
1111
REQUIRE_PACKAGES_IBASE=1
1114
ifeq ($(OS_TARGET),darwin)
1115
ifeq ($(CPU_TARGET),powerpc)
1116
REQUIRE_PACKAGES_RTL=1
1117
REQUIRE_PACKAGES_IBASE=1
1120
ifeq ($(OS_TARGET),emx)
1121
ifeq ($(CPU_TARGET),i386)
1122
REQUIRE_PACKAGES_RTL=1
1123
REQUIRE_PACKAGES_IBASE=1
1126
ifeq ($(OS_TARGET),watcom)
1127
ifeq ($(CPU_TARGET),i386)
1128
REQUIRE_PACKAGES_RTL=1
1129
REQUIRE_PACKAGES_IBASE=1
1132
ifdef REQUIRE_PACKAGES_RTL
1133
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
1134
ifneq ($(PACKAGEDIR_RTL),)
1135
ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
1136
UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
524
1138
UNITDIR_RTL=$(PACKAGEDIR_RTL)
1141
$(PACKAGEDIR_RTL)/$(FPCMADE):
1142
$(MAKE) -C $(PACKAGEDIR_RTL) $(FPCMADE)
1143
override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
527
ifneq ($(wildcard $(UNITSDIR)/rtl),)
528
ifneq ($(wildcard $(UNITSDIR)/rtl/$(OS_TARGET)),)
529
UNITDIR_RTL=$(UNITSDIR)/rtl/$(OS_TARGET)
531
UNITDIR_RTL=$(UNITSDIR)/rtl
1147
UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR)))))
1148
ifneq ($(UNITDIR_RTL),)
1149
UNITDIR_RTL:=$(firstword $(UNITDIR_RTL))
537
1154
ifdef UNITDIR_RTL
538
override NEEDUNITDIR+=$(UNITDIR_RTL)
542
ifneq ($(wildcard $(PACKAGESDIR)/ibase),)
543
ifneq ($(wildcard $(PACKAGESDIR)/ibase/$(OS_TARGET)),)
544
PACKAGEDIR_IBASE=$(PACKAGESDIR)/ibase/$(OS_TARGET)
1155
override COMPILER_UNITDIR+=$(UNITDIR_RTL)
1158
ifdef REQUIRE_PACKAGES_IBASE
1159
PACKAGEDIR_IBASE:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /ibase/Makefile.fpc,$(PACKAGESDIR))))))
1160
ifneq ($(PACKAGEDIR_IBASE),)
1161
ifneq ($(wildcard $(PACKAGEDIR_IBASE)/$(OS_TARGET)),)
1162
UNITDIR_IBASE=$(PACKAGEDIR_IBASE)/$(OS_TARGET)
546
PACKAGEDIR_IBASE=$(PACKAGESDIR)/ibase
548
ifeq ($(wildcard $(PACKAGEDIR_IBASE)/$(FPCMADE)),)
549
override COMPILEPACKAGES+=package_ibase
551
$(MAKE) -C $(PACKAGEDIR_IBASE) all
553
1164
UNITDIR_IBASE=$(PACKAGEDIR_IBASE)
1167
$(PACKAGEDIR_IBASE)/$(FPCMADE):
1168
$(MAKE) -C $(PACKAGEDIR_IBASE) $(FPCMADE)
1169
override ALLDEPENDENCIES+=$(PACKAGEDIR_IBASE)/$(FPCMADE)
555
1172
PACKAGEDIR_IBASE=
556
ifneq ($(wildcard $(UNITSDIR)/ibase),)
557
ifneq ($(wildcard $(UNITSDIR)/ibase/$(OS_TARGET)),)
558
UNITDIR_IBASE=$(UNITSDIR)/ibase/$(OS_TARGET)
560
UNITDIR_IBASE=$(UNITSDIR)/ibase
1173
UNITDIR_IBASE:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /ibase/Package.fpc,$(UNITSDIR)))))
1174
ifneq ($(UNITDIR_IBASE),)
1175
UNITDIR_IBASE:=$(firstword $(UNITDIR_IBASE))
566
1180
ifdef UNITDIR_IBASE
567
override NEEDUNITDIR+=$(UNITDIR_IBASE)
572
#####################################################################
573
# Default Directories
574
#####################################################################
576
# Linux and freebsd use unix dirs with /usr/bin, /usr/lib
577
# When zipping use the target as default, when normal install then
578
# use the source os as default
581
ifeq ($(OS_TARGET),linux)
584
ifeq ($(OS_TARGET),freebsd)
589
ifeq ($(OS_SOURCE),linux)
592
ifeq ($(OS_SOURCE),freebsd)
597
# set the prefix directory where to install everything
598
ifndef PREFIXINSTALLDIR
600
PREFIXINSTALLDIR=/usr
605
export PREFIXINSTALLDIR
607
# Where to place the resulting zip files
609
DESTZIPDIR:=$(BASEDIR)
613
#####################################################################
614
# Install Directories
615
#####################################################################
617
# set the base directory where to install everything
618
ifndef BASEINSTALLDIR
620
BASEINSTALLDIR=$(PREFIXINSTALLDIR)/lib/fpc/$(FPC_VERSION)
622
BASEINSTALLDIR=$(PREFIXINSTALLDIR)
626
# set the directory where to install the binaries
629
BININSTALLDIR=$(PREFIXINSTALLDIR)/bin
631
BININSTALLDIR=$(BASEINSTALLDIR)/bin/$(OS_TARGET)
635
# set the directory where to install the units.
636
ifndef UNITINSTALLDIR
637
UNITINSTALLDIR=$(BASEINSTALLDIR)/units/$(OS_TARGET)
639
UNITINSTALLDIR:=$(UNITINSTALLDIR)/$(UNITSUBDIR)
643
# Where to install shared libraries
646
LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
648
LIBINSTALLDIR=$(UNITINSTALLDIR)
652
# Where the source files will be stored
653
ifndef SOURCEINSTALLDIR
655
SOURCEINSTALLDIR=$(PREFIXINSTALLDIR)/src/fpc-$(FPC_VERSION)
657
SOURCEINSTALLDIR=$(BASEINSTALLDIR)/source
660
SOURCEINSTALLDIR:=$(SOURCEINSTALLDIR)/$(SOURCESUBDIR)
664
# Where the doc files will be stored
667
DOCINSTALLDIR=$(PREFIXINSTALLDIR)/doc/fpc-$(FPC_VERSION)
669
DOCINSTALLDIR=$(BASEINSTALLDIR)/doc
673
# Where to install the examples, under linux we use the doc dir
674
# because the copytree command will create a subdir itself
675
ifndef EXAMPLEINSTALLDIR
677
EXAMPLEINSTALLDIR=$(DOCINSTALLDIR)/examples
679
EXAMPLEINSTALLDIR=$(BASEINSTALLDIR)/examples
682
EXAMPLEINSTALLDIR:=$(EXAMPLEINSTALLDIR)/$(EXAMPLESUBDIR)
686
# Where the some extra (data)files will be stored
687
ifndef DATAINSTALLDIR
688
DATAINSTALLDIR=$(BASEINSTALLDIR)
691
#####################################################################
693
#####################################################################
701
override FPC=redir -eo $(FPC)
703
# set the verbosity to max
705
override REDIR:= >> $(REDIRFILE)
709
#####################################################################
710
# Compiler Command Line
711
#####################################################################
713
# Load commandline OPTDEF and add FPC_CPU define
714
override FPCOPTDEF:=-d$(CPU_TARGET)
716
# Load commandline OPT and add target and unit dir to be sure
1181
override COMPILER_UNITDIR+=$(UNITDIR_IBASE)
1185
override FPCOPTDEF=$(CPU_TARGET)
717
1187
ifneq ($(OS_TARGET),$(OS_SOURCE))
718
1188
override FPCOPT+=-T$(OS_TARGET)
721
# User dirs should be first, so they are looked at first
1190
ifeq ($(OS_SOURCE),openbsd)
1191
override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
1193
ifndef CROSSBOOTSTRAP
1194
ifneq ($(BINUTILSPREFIX),)
1195
override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
1197
ifneq ($(BINUTILSPREFIX),)
1198
override FPCOPT+=-Xr$(RLINKPATH)
723
1202
override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
732
1211
override FPCOPT+=$(addprefix -Fi,$(INCDIR))
737
1214
override FPCOPT+=-XX
740
# Smartlinking creation
741
1216
ifdef CREATESMART
742
1217
override FPCOPT+=-CX
747
override FPCOPT+=-gl -dDEBUG
1220
override FPCOPT+=-gl
1221
override FPCOPTDEF+=DEBUG
750
# Release mode (strip, optimize and don't load ppc386.cfg)
751
# 0.99.12b has a bug in the optimizer so don't use it by default
753
ifeq ($(FPC_VERSION),0.99.12)
754
override FPCOPT+=-Xs -OGp3 -n
756
override FPCOPT+=-Xs -OG2p3 -n
1224
ifeq ($(CPU_TARGET),i386)
1227
ifeq ($(CPU_TARGET),powerpc)
1233
override FPCOPT+=-Xs $(FPCCPUOPT) -n
1234
override FPCOPTDEF+=RELEASE
762
1237
override FPCOPT+=-Xs
1240
ifeq ($(CPU_TARGET),i386)
767
1241
override FPCOPT+=-OG2p3
770
# Verbose settings (warning,note,info)
772
1245
override FPCOPT+=-vwni
776
override FPCOPT+=$(NEEDOPT)
780
override FPCOPT+=$(addprefix -Fu,$(NEEDUNITDIR))
784
override FPCOPT+=-Fu$(UNITSDIR)
787
# Target dirs and the prefix to use for clean/install
789
override FPCOPT+=-FE$(TARGETDIR)
790
ifeq ($(TARGETDIR),.)
1247
ifdef COMPILER_OPTIONS
1248
override FPCOPT+=$(COMPILER_OPTIONS)
1250
ifdef COMPILER_UNITDIR
1251
override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
1253
ifdef COMPILER_LIBRARYDIR
1254
override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
1256
ifdef COMPILER_OBJECTDIR
1257
override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
1259
ifdef COMPILER_INCLUDEDIR
1260
override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
1263
override FPCOPT+=-FD$(CROSSBINDIR)
1265
ifdef COMPILER_TARGETDIR
1266
override FPCOPT+=-FE$(COMPILER_TARGETDIR)
1267
ifeq ($(COMPILER_TARGETDIR),.)
791
1268
override TARGETDIRPREFIX=
793
override TARGETDIRPREFIX=$(TARGETDIR)/
797
override FPCOPT+=-FU$(UNITTARGETDIR)
798
ifeq ($(UNITTARGETDIR),.)
1270
override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
1273
ifdef COMPILER_UNITTARGETDIR
1274
override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
1275
ifeq ($(COMPILER_UNITTARGETDIR),.)
799
1276
override UNITTARGETDIRPREFIX=
801
override UNITTARGETDIRPREFIX=$(TARGETDIR)/
1278
override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
805
override UNITTARGETDIR=$(TARGETDIR)
1281
ifdef COMPILER_TARGETDIR
1282
override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
806
1283
override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
810
# Add commandline options last so they can override
1286
ifeq ($(OS_TARGET),linux)
1287
ifeq ($(FPC_VERSION),1.0.6)
1288
override FPCOPTDEF+=HASUNIX
1292
override FPCOPT+=-Fl$(GCCLIBDIR)
1295
override FPCOPT+=$(addprefix -Fl,$(OTHERLIBDIR))
812
1298
override FPCOPT+=$(OPT)
815
# Add defines from FPCOPTDEF to FPCOPT
817
override FPCOPT+=$(FPCOPTDEF)
822
override FPCOPT+=-Fr$(ERRORFILE)
825
# Was a config file specified ?
1301
override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
827
1304
override FPCOPT+=@$(CFGFILE)
830
# For win32 the options are passed using the environment FPCEXTCMD
831
ifeq ($(OS_SOURCE),win32)
832
1307
override FPCEXTCMD:=$(FPCOPT)
833
1308
override FPCOPT:=!FPCEXTCMD
834
1309
export FPCEXTCMD
837
# Compiler commandline
838
1311
override COMPILER:=$(FPC) $(FPCOPT)
840
# also call ppas if with command option -s
841
# but only if the OS_SOURCE and OS_TARGE are equal
842
1312
ifeq (,$(findstring -s ,$(COMPILER)))
845
ifeq ($(OS_SOURCE),$(OS_TARGET))
1315
ifeq ($(FULL_SOURCE),$(FULL_TARGET))
846
1316
EXECPPAS:=@$(PPAS)
850
#####################################################################
852
#####################################################################
858
examples: fpc_examples
866
showinstall: fpc_showinstall
870
sourceinstall: fpc_sourceinstall
872
exampleinstall: fpc_exampleinstall
874
zipinstall: fpc_zipinstall
876
zipsourceinstall: fpc_zipsourceinstall
878
zipexampleinstall: fpc_zipexampleinstall
882
distclean: fpc_distclean
884
cleanall: fpc_cleanall
888
.PHONY: all debug examples test smart shared showinstall install sourceinstall exampleinstall zipinstall zipsourceinstall zipexampleinstall clean distclean cleanall info
890
#####################################################################
892
#####################################################################
894
1319
.PHONY: fpc_units
1320
ifneq ($(TARGET_UNITS),)
896
1321
override ALLTARGET+=fpc_units
898
override UNITPPUFILES=$(addsuffix $(PPUEXT),$(UNITOBJECTS))
899
override INSTALLPPUFILES+=$(UNITPPUFILES)
900
override CLEANPPUFILES+=$(UNITPPUFILES)
1322
override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
1323
override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
1324
override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
1325
override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
902
1327
fpc_units: $(UNITPPUFILES)
904
#####################################################################
906
#####################################################################
908
.PHONY: fpc_examples fpc_test
911
override EXAMPLESOURCEFILES:=$(addsuffix $(PASEXT),$(EXAMPLEOBJECTS))
912
override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(EXAMPLEOBJECTS))
913
override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(EXAMPLEOBJECTS)) $(addprefix $(LIBPREFIX),$(addsuffix $(STATICLIBEXT),$(EXAMPLEOBJECTS)))
1329
override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
1330
override CLEANRSTFILES+=$(RSTFILES)
1332
.PHONY: fpc_examples
1333
ifneq ($(TARGET_EXAMPLES),)
1335
override EXAMPLESOURCEFILES:=$(wildcard $(addsuffix .pp,$(TARGET_EXAMPLES)) $(addsuffix .pas,$(TARGET_EXAMPLES)) $(addsuffix .dpr,$(TARGET_EXAMPLES)))
1336
override EXAMPLEFILES:=$(addsuffix $(EXEEXT),$(TARGET_EXAMPLES))
1337
override EXAMPLEOFILES:=$(addsuffix $(OEXT),$(TARGET_EXAMPLES)) $(addprefix $(STATICLIBPREFIX),$(addsuffix $(STATICLIBEXT),$(TARGET_EXAMPLES)))
915
1338
override CLEANEXEFILES+=$(EXAMPLEFILES) $(EXAMPLEOFILES)
918
fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(EXAMPLEDIROBJECTS))
922
#####################################################################
923
# General compile rules
924
#####################################################################
926
.PHONY: fpc_packages fpc_all fpc_debug
928
$(FPCMADE): $(ALLTARGET)
929
@$(ECHO) Compiled > $(FPCMADE)
931
fpc_packages: $(COMPILEPACKAGES)
933
fpc_all: fpc_packages $(FPCMADE)
1339
ifeq ($(OS_TARGET),os2)
1340
override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))
1342
ifeq ($(OS_TARGET),emx)
1343
override CLEANEXEFILES+=$(addsuffix $(AOUTEXT),$(TARGET_EXAMPLES))
1346
ifneq ($(TARGET_EXAMPLEDIRS),)
1349
fpc_examples: all $(EXAMPLEFILES) $(addsuffix _all,$(TARGET_EXAMPLEDIRS))
1350
.PHONY: fpc_all fpc_smart fpc_debug fpc_release
1351
$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
1352
@$(ECHOREDIR) Compiled > $(FPCMADE)
1355
$(MAKE) all LINKSMART=1 CREATESMART=1
936
1357
$(MAKE) all DEBUG=1
938
# Search paths for .ppu if targetdir is set
940
vpath %$(PPUEXT) $(UNITTARGETDIR)
943
# General compile rules, available for both possible PASEXT
945
.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
1359
$(MAKE) all RELEASE=1
1360
.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
947
1361
%$(PPUEXT): %.pp
948
$(COMPILER) $< $(REDIR)
951
1364
%$(PPUEXT): %.pas
952
$(COMPILER) $< $(REDIR)
955
1367
%$(EXEEXT): %.pp
956
$(COMPILER) $< $(REDIR)
959
1370
%$(EXEEXT): %.pas
960
$(COMPILER) $< $(REDIR)
963
#####################################################################
965
#####################################################################
967
.PHONY: fpc_smart fpc_shared
970
LIBFULLNAME=$(LIBNAME).$(LIBVERSION)
972
LIBFULLNAME=$(LIBNAME)
975
# Default sharedlib units are all unit objects
976
ifndef SHAREDLIBUNITOBJECTS
977
SHAREDLIBUNITOBJECTS:=$(UNITOBJECTS)
981
$(MAKE) all LINKSMART=1 CREATESMART=1
986
@$(ECHO) "LIBNAME not set"
988
$(PPUMOVE) $(SHAREDLIBUNITOBJECTS) -o$(LIBFULLNAME)
991
@$(ECHO) "Shared Libraries not supported"
994
#####################################################################
996
#####################################################################
998
.PHONY: fpc_showinstall fpc_install
1000
ifdef EXTRAINSTALLUNITS
1001
override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRAINSTALLUNITS))
1378
vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1379
vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1380
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1381
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
1382
.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
1384
override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
1386
ifdef INSTALL_BUILDUNIT
1387
override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
1004
1389
ifdef INSTALLPPUFILES
1390
override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
1005
1391
override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
1007
INSTALLPPULINKFILES:=$(shell $(PPUFILES) -S -O $(INSTALLPPUFILES))
1009
INSTALLPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(LIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))))
1011
override INSTALLPPULINKFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES))
1392
override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
1393
override INSTALL_CREATEPACKAGEFPC=1
1014
1395
ifdef INSTALLEXEFILES
1015
1396
override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
1018
fpc_showinstall: $(SHOWINSTALLTARGET)
1019
ifdef INSTALLEXEFILES
1020
@$(ECHO) -e $(addprefix "\n"$(BININSTALLDIR)/,$(INSTALLEXEFILES))
1022
ifdef INSTALLPPUFILES
1023
@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPUFILES))
1024
ifneq ($(INSTALLPPULINKFILES),)
1025
@$(ECHO) -e $(addprefix "\n"$(UNITINSTALLDIR)/,$(INSTALLPPULINKFILES))
1027
ifneq ($(wildcard $(LIBFULLNAME)),)
1028
@$(ECHO) $(LIBINSTALLDIR)/$(LIBFULLNAME)
1030
@$(ECHO) $(LIBINSTALLDIR)/$(LIBNAME)
1034
ifdef EXTRAINSTALLFILES
1035
@$(ECHO) -e $(addprefix "\n"$(DATAINSTALLDIR)/,$(EXTRAINSTALLFILES))
1038
fpc_install: $(INSTALLTARGET)
1039
# Create UnitInstallFiles
1040
ifdef INSTALLEXEFILES
1041
$(MKDIR) $(BININSTALLDIR)
1042
# Compress the exes if upx is defined
1398
fpc_install: all $(INSTALLTARGET)
1399
ifdef INSTALLEXEFILES
1400
$(MKDIR) $(INSTALL_BINDIR)
1044
1402
-$(UPXPROG) $(INSTALLEXEFILES)
1046
$(INSTALLEXE) $(INSTALLEXEFILES) $(BININSTALLDIR)
1404
$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
1406
ifdef INSTALL_CREATEPACKAGEFPC
1408
ifdef PACKAGE_VERSION
1409
ifneq ($(wildcard Makefile.fpc),)
1410
$(FPCMAKE) -p -T$(OS_TARGET) Makefile.fpc
1411
$(MKDIR) $(INSTALL_UNITDIR)
1412
$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
1048
1417
ifdef INSTALLPPUFILES
1049
$(MKDIR) $(UNITINSTALLDIR)
1050
$(INSTALL) $(INSTALLPPUFILES) $(UNITINSTALLDIR)
1418
$(MKDIR) $(INSTALL_UNITDIR)
1419
$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
1051
1420
ifneq ($(INSTALLPPULINKFILES),)
1052
$(INSTALL) $(INSTALLPPULINKFILES) $(UNITINSTALLDIR)
1421
$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
1054
ifneq ($(wildcard $(LIBFULLNAME)),)
1055
$(MKDIR) $(LIBINSTALLDIR)
1056
$(INSTALL) $(LIBFULLNAME) $(LIBINSTALLDIR)
1423
ifneq ($(wildcard $(LIB_FULLNAME)),)
1424
$(MKDIR) $(INSTALL_LIBDIR)
1425
$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
1058
ln -sf $(LIBFULLNAME) $(LIBINSTALLDIR)/$(LIBNAME)
1062
ifdef EXTRAINSTALLFILES
1063
$(MKDIR) $(DATAINSTALLDIR)
1064
$(INSTALL) $(EXTRAINSTALLFILES) $(DATAINSTALLDIR)
1067
#####################################################################
1068
# SourceInstall rules
1069
#####################################################################
1071
.PHONY: fpc_sourceinstall
1074
SOURCETOPDIR=$(BASEDIR)
1077
fpc_sourceinstall: clean
1078
$(MKDIR) $(SOURCEINSTALLDIR)
1079
$(COPYTREE) $(SOURCETOPDIR) $(SOURCEINSTALLDIR)
1081
#####################################################################
1082
# exampleinstall rules
1083
#####################################################################
1085
.PHONY: fpc_exampleinstall
1087
fpc_exampleinstall: $(addsuffix _clean,$(EXAMPLEDIROBJECTS))
1427
ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
1432
$(MKDIR) $(INSTALL_DATADIR)
1433
$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
1435
fpc_sourceinstall: distclean
1436
$(MKDIR) $(INSTALL_SOURCEDIR)
1437
$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
1438
fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
1440
$(MKDIR) $(INSTALL_EXAMPLEDIR)
1088
1442
ifdef EXAMPLESOURCEFILES
1089
$(MKDIR) $(EXAMPLEINSTALLDIR)
1090
$(COPY) $(EXAMPLESOURCEFILES) $(EXAMPLEINSTALLDIR)
1092
ifdef EXAMPLEDIROBJECTS
1093
ifndef EXAMPLESOURCEFILES
1094
$(MKDIR) $(EXAMPLEINSTALLDIR)
1096
$(COPYTREE) $(addsuffix /*,$(EXAMPLEDIROBJECTS)) $(EXAMPLEINSTALLDIR)
1099
#####################################################################
1101
#####################################################################
1103
.PHONY: fpc_zipinstall
1105
# Create suffix to add
1106
ifndef PACKAGESUFFIX
1107
PACKAGESUFFIX=$(OS_TARGET)
1108
ifeq ($(OS_TARGET),go32v2)
1111
ifeq ($(OS_TARGET),win32)
1114
ifeq ($(OS_TARGET),os2)
1119
# Temporary path to pack a file
1122
PACKDIR=$(BASEDIR)/pack_tmp
1124
PACKDIR=/tmp/fpc-pack
1128
# Maybe create default zipname from packagename
1131
ZIPNAME=$(PACKAGEPREFIX)$(PACKAGENAME)$(PACKAGESUFFIX)
1135
# Use tar by default under linux
1144
@$(ECHO) "Please specify ZIPNAME!"
1147
$(MAKE) $(ZIPTARGET) PREFIXINSTALLDIR=$(PACKDIR)
1149
$(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(TAREXT)
1150
cd $(PACKDIR) ; $(TARPROG) cf$(TAROPT) $(DESTZIPDIR)/$(ZIPNAME)$(TAREXT) * ; cd $(BASEDIR)
1152
$(DEL) $(DESTZIPDIR)/$(ZIPNAME)$(ZIPEXT)
1153
cd $(PACKDIR) ; $(ZIPPROG) -Dr $(ZIPOPT) $(DESTZIPDIR)/$(ZIPNAME)$(ZIPEXT) * ; cd $(BASEDIR)
1155
$(DELTREE) $(PACKDIR)
1158
.PHONY: fpc_zipsourceinstall
1160
fpc_zipsourceinstall:
1161
$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall PACKAGESUFFIX=src
1163
.PHONY: fpc_zipexampleinstall
1165
fpc_zipexampleinstall:
1166
$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall PACKAGESUFFIX=exm
1168
#####################################################################
1170
#####################################################################
1443
$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
1445
ifdef TARGET_EXAMPLEDIRS
1446
$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
1172
1448
.PHONY: fpc_clean fpc_cleanall fpc_distclean
1175
1450
override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
1178
ifdef EXTRACLEANUNITS
1179
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(EXTRACLEANUNITS))
1453
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
1182
1455
ifdef CLEANPPUFILES
1456
override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
1458
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
1183
1460
override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
1184
# Get the .o and .a files created for the units
1186
CLEANPPULINKFILES:=$(shell $(PPUFILES) $(CLEANPPUFILES))
1188
CLEANPPULINKFILES:=$(wildcard $(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(LIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))))
1190
override CLEANPPULINKFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES))
1461
override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
1193
1463
fpc_clean: $(CLEANTARGET)
1194
1464
ifdef CLEANEXEFILES
1195
1465
-$(DEL) $(CLEANEXEFILES)
1203
1473
ifdef CLEANRSTFILES
1204
1474
-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
1206
ifdef EXTRACLEANFILES
1207
-$(DEL) $(EXTRACLEANFILES)
1210
-$(DEL) $(LIBNAME) $(LIBFULLNAME)
1212
-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
1214
fpc_distclean: fpc_clean
1216
# Also run clean first if targetdir is set. Unittargetdir is always
1217
# set if targetdir or unittargetdir is specified
1477
-$(DEL) $(CLEAN_FILES)
1480
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
1482
-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1483
-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
1484
fpc_distclean: clean
1485
ifdef COMPILER_UNITTARGETDIR
1219
1486
TARGETDIRCLEAN=fpc_clean
1222
1488
fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
1223
1489
ifdef CLEANEXEFILES
1224
1490
-$(DEL) $(CLEANEXEFILES)
1226
1492
-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
1227
1493
-$(DELTREE) *$(SMARTEXT)
1228
-$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
1230
#####################################################################
1232
#####################################################################
1234
.PHONY: fpc_info fpc_cfginfo fpc_objectinfo fpc_toolsinfo fpc_installinfo \
1237
fpc_info: $(INFOTARGET)
1494
-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1495
-$(DEL) *_ppas$(BATCHEXT)
1500
-$(DEL) *$(DEBUGSYMEXT)
1502
.PHONY: fpc_baseinfo
1503
override INFORULES+=fpc_baseinfo
1506
@$(ECHO) == Package info ==
1507
@$(ECHO) Package Name..... $(PACKAGE_NAME)
1508
@$(ECHO) Package Version.. $(PACKAGE_VERSION)
1241
1510
@$(ECHO) == Configuration info ==
1243
@$(ECHO) FPC....... $(FPC)
1244
@$(ECHO) Version... $(FPC_VERSION)
1245
@$(ECHO) CPU....... $(CPU_TARGET)
1246
@$(ECHO) Source.... $(OS_SOURCE)
1247
@$(ECHO) Target.... $(OS_TARGET)
1512
@$(ECHO) FPC.......... $(FPC)
1513
@$(ECHO) FPC Version.. $(FPC_VERSION)
1514
@$(ECHO) Source CPU... $(CPU_SOURCE)
1515
@$(ECHO) Target CPU... $(CPU_TARGET)
1516
@$(ECHO) Source OS.... $(OS_SOURCE)
1517
@$(ECHO) Target OS.... $(OS_TARGET)
1518
@$(ECHO) Full Source.. $(FULL_SOURCE)
1519
@$(ECHO) Full Target.. $(FULL_TARGET)
1521
@$(ECHO) == Directory info ==
1523
@$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
1525
@$(ECHO) Basedir......... $(BASEDIR)
1526
@$(ECHO) FPCDir.......... $(FPCDIR)
1527
@$(ECHO) CrossBinDir..... $(CROSSBINDIR)
1528
@$(ECHO) UnitsDir........ $(UNITSDIR)
1529
@$(ECHO) PackagesDir..... $(PACKAGESDIR)
1531
@$(ECHO) GCC library..... $(GCCLIBDIR)
1532
@$(ECHO) Other library... $(OTHERLIBDIR)
1534
@$(ECHO) == Tools info ==
1536
@$(ECHO) As........ $(AS)
1537
@$(ECHO) Ld........ $(LD)
1538
@$(ECHO) Ar........ $(AR)
1539
@$(ECHO) Rc........ $(RC)
1541
@$(ECHO) Mv........ $(MVPROG)
1542
@$(ECHO) Cp........ $(CPPROG)
1543
@$(ECHO) Rm........ $(RMPROG)
1544
@$(ECHO) GInstall.. $(GINSTALL)
1545
@$(ECHO) Echo...... $(ECHO)
1546
@$(ECHO) Shell..... $(SHELL)
1547
@$(ECHO) Date...... $(DATE)
1548
@$(ECHO) FPCMake... $(FPCMAKE)
1549
@$(ECHO) PPUMove... $(PPUMOVE)
1550
@$(ECHO) Upx....... $(UPXPROG)
1551
@$(ECHO) Zip....... $(ZIPPROG)
1252
1553
@$(ECHO) == Object info ==
1254
@$(ECHO) LoaderObjects..... $(LOADEROBJECTS)
1255
@$(ECHO) UnitObjects....... $(UNITOBJECTS)
1256
@$(ECHO) ExeObjects........ $(EXEOBJECTS)
1258
@$(ECHO) ExtraCleanUnits... $(EXTRACLEANUNITS)
1259
@$(ECHO) ExtraCleanFiles... $(EXTRACLEANFILES)
1261
@$(ECHO) ExtraInstallUnits. $(EXTRAINSTALLUNITS)
1262
@$(ECHO) ExtraInstallFiles. $(EXTRAINSTALLFILES)
1555
@$(ECHO) Target Loaders........ $(TARGET_LOADERS)
1556
@$(ECHO) Target Units.......... $(TARGET_UNITS)
1557
@$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
1558
@$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
1559
@$(ECHO) Target Dirs........... $(TARGET_DIRS)
1560
@$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
1561
@$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
1563
@$(ECHO) Clean Units......... $(CLEAN_UNITS)
1564
@$(ECHO) Clean Files......... $(CLEAN_FILES)
1566
@$(ECHO) Install Units....... $(INSTALL_UNITS)
1567
@$(ECHO) Install Files....... $(INSTALL_FILES)
1267
1569
@$(ECHO) == Install info ==
1270
1571
@$(ECHO) DateStr.............. $(DATESTR)
1273
@$(ECHO) PackagePrefix........ $(PACKAGEPREFIX)
1276
@$(ECHO) PackageName.......... $(PACKAGENAME)
1278
@$(ECHO) PackageSuffix........ $(PACKAGESUFFIX)
1280
@$(ECHO) BaseInstallDir....... $(BASEINSTALLDIR)
1281
@$(ECHO) BinInstallDir........ $(BININSTALLDIR)
1282
@$(ECHO) LibInstallDir........ $(LIBINSTALLDIR)
1283
@$(ECHO) UnitInstallDir....... $(UNITINSTALLDIR)
1284
@$(ECHO) SourceInstallDir..... $(SOURCEINSTALLDIR)
1285
@$(ECHO) DocInstallDir........ $(DOCINSTALLDIR)
1286
@$(ECHO) DataInstallDir....... $(DATAINSTALLDIR)
1288
@$(ECHO) DestZipDir........... $(DESTZIPDIR)
1289
@$(ECHO) ZipName.............. $(ZIPNAME)
1292
#####################################################################
1294
#####################################################################
1572
@$(ECHO) ZipPrefix............ $(ZIPPREFIX)
1573
@$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
1574
@$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
1576
@$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
1577
@$(ECHO) Install binary dir... $(INSTALL_BINDIR)
1578
@$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
1579
@$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
1580
@$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
1581
@$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
1582
@$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
1583
@$(ECHO) Install data dir..... $(INSTALL_DATADIR)
1585
@$(ECHO) Dist destination dir. $(DIST_DESTDIR)
1586
@$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
1589
fpc_info: $(INFORULES)
1590
.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
1593
$(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
1596
$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
1598
ifdef TARGET_EXAMPLEDIRS
1599
$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
1601
fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
1602
fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
1603
fpc_makefiles: fpc_makefile fpc_makefile_dirs
1607
release: fpc_release
1608
examples: fpc_examples
1610
install: fpc_install
1611
sourceinstall: fpc_sourceinstall
1612
exampleinstall: fpc_exampleinstall
1619
distclean: fpc_distclean
1620
cleanall: fpc_cleanall
1622
makefiles: fpc_makefiles
1623
.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
1296
1624
ifneq ($(wildcard fpcmake.loc),)
1297
1625
include fpcmake.loc