2
# Don't edit, this file is generated by FPCMake Version 1.1 [2004/05/23]
5
MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom
6
BSDs = freebsd netbsd openbsd darwin
7
UNIXs = linux $(BSDs) sunos qnx
10
override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
11
ifneq ($(findstring darwin,$(OSTYPE)),)
13
SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
15
ifeq ($(findstring ;,$(PATH)),)
17
SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
19
SEARCHPATH:=$(subst ;, ,$(PATH))
22
SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
23
PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
25
PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
27
$(error You need the GNU utils package to use this Makefile)
29
PWD:=$(firstword $(PWD))
33
PWD:=$(firstword $(PWD))
37
ifeq ($(OS),Windows_NT)
45
ifneq ($(findstring cygdrive,$(PATH)),)
61
PATHSEP:=$(subst /,\,/)
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))
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 OS_TARGET_DEFAULT=netbsd
95
override DEFAULT_FPCDIR=../..
102
FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
104
FPCPROG:=$(firstword $(FPCPROG))
105
FPC:=$(shell $(FPCPROG) -PB)
106
ifneq ($(findstring Error,$(FPC)),)
113
override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
114
override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
116
FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
117
FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
119
export FPC FPC_VERSION FPC_COMPILERINFO
120
unexport CHECKDEPEND ALLDEPENDENCIES
122
ifdef CPU_TARGET_DEFAULT
123
CPU_TARGET=$(CPU_TARGET_DEFAULT)
127
ifdef OS_TARGET_DEFAULT
128
OS_TARGET=$(OS_TARGET_DEFAULT)
131
ifneq ($(words $(FPC_COMPILERINFO)),5)
132
FPC_COMPILERINFO+=$(shell $(FPC) -iSP)
133
FPC_COMPILERINFO+=$(shell $(FPC) -iTP)
134
FPC_COMPILERINFO+=$(shell $(FPC) -iSO)
135
FPC_COMPILERINFO+=$(shell $(FPC) -iTO)
138
CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
141
CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
144
OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
147
OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
149
FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
150
FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
151
ifneq ($(FULL_TARGET),$(FULL_SOURCE))
154
ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
155
ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
156
$(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
159
ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
162
ifeq ($(OS_TARGET),linux)
165
export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
167
override FPCDIR:=$(subst \,/,$(FPCDIR))
168
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
169
override FPCDIR=wrong
172
override FPCDIR=wrong
175
ifeq ($(FPCDIR),wrong)
176
override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
177
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
178
override FPCDIR=wrong
182
ifeq ($(FPCDIR),wrong)
184
override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
185
ifeq ($(wildcard $(FPCDIR)/units),)
186
override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
189
override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
190
override FPCDIR:=$(FPCDIR)/..
191
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
192
override FPCDIR:=$(FPCDIR)/..
193
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
194
override FPCDIR:=$(BASEDIR)
195
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
196
override FPCDIR=c:/pp
203
CROSSDIR:=$(FPCDIR)/cross/$(FULL_TARGET)
205
ifndef CROSSTARGETDIR
206
CROSSTARGETDIR=$(CROSSDIR)/$(FULL_TARGET)
209
UNITSDIR:=$(wildcard $(CROSSTARGETDIR)/units)
211
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
214
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
216
PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
217
override PACKAGE_NAME=rtl
220
PROCINC=$(RTL)/$(CPU_TARGET)
222
BSDPROCINC=$(BSDINC)/$(CPU_TARGET)
225
TARGETPROCINC=$(RTL)/netbsd/$(CPU_TARGET)
226
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
233
override FPCOPT+=-dUNIX
239
OBJPASDIR=$(RTL)/objpas
240
GRAPHDIR=$(INC)/graph
244
override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings syscall baseunix $(LINUXUNIT) unix initc systhrds dos crt objects printer sysutils classes typinfo math varutils charset ucomplex getopts heaptrc lineinfo errors sockets gpm ipc terminfo video mouse keyboard serial variants types systhrds sysctl sysconst
245
ifeq ($(OS_TARGET),netbsd)
246
ifeq ($(CPU_TARGET),i386)
247
override TARGET_UNITS+=mmx cpu
250
override TARGET_LOADERS+=prt0 cprt0
251
override TARGET_RSTS+=math varutils typinfo variants classes sysconst
252
override INSTALL_FPCPACKAGE=y y
253
override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(TARGETPROCINC)
254
override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC)
255
override COMPILER_TARGETDIR+=.
256
ifdef REQUIRE_UNITSDIR
257
override UNITSDIR+=$(REQUIRE_UNITSDIR)
259
ifdef REQUIRE_PACKAGESDIR
260
override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
263
ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
267
ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
271
ifndef INSTALL_PREFIX
273
INSTALL_PREFIX=$(PREFIX)
276
ifndef INSTALL_PREFIX
278
INSTALL_PREFIX=/usr/local
280
ifdef INSTALL_FPCPACKAGE
283
INSTALL_BASEDIR:=/$(PACKAGE_NAME)
287
export INSTALL_PREFIX
288
ifdef INSTALL_FPCSUBDIR
289
export INSTALL_FPCSUBDIR
292
DIST_DESTDIR:=$(BASEDIR)
295
ifndef INSTALL_BASEDIR
297
ifdef INSTALL_FPCPACKAGE
298
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
300
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
303
INSTALL_BASEDIR:=$(INSTALL_PREFIX)
306
ifndef INSTALL_BINDIR
309
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
311
INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
315
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
317
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
319
ifdef INSTALL_FPCPACKAGE
320
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
324
ifndef INSTALL_UNITDIR
326
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
328
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
330
ifdef INSTALL_FPCPACKAGE
332
INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
336
ifndef INSTALL_LIBDIR
338
INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
340
INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
343
ifndef INSTALL_SOURCEDIR
346
SRCPREFIXDIR=share/src
349
SRCPREFIXDIR=share/src
354
ifdef INSTALL_FPCPACKAGE
355
ifdef INSTALL_FPCSUBDIR
356
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
358
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
361
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
364
ifdef INSTALL_FPCPACKAGE
365
ifdef INSTALL_FPCSUBDIR
366
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
368
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
371
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
375
ifndef INSTALL_DOCDIR
378
DOCPREFIXDIR=share/doc
381
DOCPREFIXDIR=share/doc
386
ifdef INSTALL_FPCPACKAGE
387
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
389
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
392
ifdef INSTALL_FPCPACKAGE
393
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
395
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
399
ifndef INSTALL_EXAMPLEDIR
401
ifdef INSTALL_FPCPACKAGE
403
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
406
INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
408
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
413
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
416
INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
418
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
423
ifdef INSTALL_FPCPACKAGE
424
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
426
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
430
ifndef INSTALL_DATADIR
431
INSTALL_DATADIR=$(INSTALL_BASEDIR)
435
CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
436
ifeq ($(CROSSBINDIR),)
437
CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
456
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
457
ifeq ($(OS_TARGET),go32v1)
462
ifeq ($(OS_TARGET),go32v2)
467
ifeq ($(OS_TARGET),watcom)
475
ifeq ($(OS_TARGET),linux)
482
ifeq ($(OS_TARGET),freebsd)
486
FPCMADE=fpcmade.freebsd
489
ifeq ($(OS_TARGET),netbsd)
493
FPCMADE=fpcmade.netbsd
496
ifeq ($(OS_TARGET),openbsd)
500
FPCMADE=fpcmade.openbsd
503
ifeq ($(OS_TARGET),win32)
508
ifeq ($(OS_TARGET),os2)
517
ifeq ($(OS_TARGET),emx)
526
ifeq ($(OS_TARGET),amiga)
528
SHAREDLIBEXT=.library
531
ifeq ($(OS_TARGET),atari)
535
ifeq ($(OS_TARGET),beos)
541
ifeq ($(OS_TARGET),sunos)
547
ifeq ($(OS_TARGET),qnx)
553
ifeq ($(OS_TARGET),netware)
559
ifeq ($(OS_TARGET),macos)
562
FPCMADE=fpcmade.macos
566
ifeq ($(OS_TARGET),darwin)
570
FPCMADE=fpcmade.darwin
574
ifeq ($(OS_TARGET),go32v1)
585
ifeq ($(OS_TARGET),go32v2)
590
ifeq ($(OS_TARGET),watcom)
595
ifeq ($(OS_TARGET),linux)
602
ifeq ($(OS_TARGET),freebsd)
606
FPCMADE=fpcmade.freebsd
609
ifeq ($(OS_TARGET),netbsd)
613
FPCMADE=fpcmade.netbsd
616
ifeq ($(OS_TARGET),openbsd)
620
FPCMADE=fpcmade.openbsd
623
ifeq ($(OS_TARGET),win32)
633
ifeq ($(OS_TARGET),os2)
647
ifeq ($(OS_TARGET),amiga)
654
SHAREDLIBEXT=.library
657
ifeq ($(OS_TARGET),atari)
666
ifeq ($(OS_TARGET),beos)
677
ifeq ($(OS_TARGET),sunos)
688
ifeq ($(OS_TARGET),qnx)
699
ifeq ($(OS_TARGET),netware)
711
ifeq ($(OS_TARGET),macos)
720
FPCMADE=fpcmade.macos
724
ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
726
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
728
ECHO= __missing_command__
730
ECHO:=$(firstword $(ECHO))
733
ECHO:=$(firstword $(ECHO))
738
DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
740
DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
742
DATE= __missing_command__
744
DATE:=$(firstword $(DATE))
747
DATE:=$(firstword $(DATE))
752
GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
754
GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
756
GINSTALL= __missing_command__
758
GINSTALL:=$(firstword $(GINSTALL))
761
GINSTALL:=$(firstword $(GINSTALL))
766
CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
768
CPPROG= __missing_command__
770
CPPROG:=$(firstword $(CPPROG))
775
RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
777
RMPROG= __missing_command__
779
RMPROG:=$(firstword $(RMPROG))
784
MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
786
MVPROG= __missing_command__
788
MVPROG:=$(firstword $(MVPROG))
803
COPYTREE:=$(CPPROG) -rfp
812
DELTREE:=$(RMPROG) -rf
816
INSTALL:=$(GINSTALL) -c -m 644
823
INSTALLEXE:=$(GINSTALL) -c -m 755
829
MKDIR:=$(GINSTALL) -m 755 -d
831
export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
833
PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
835
PPUMOVE= __missing_command__
837
PPUMOVE:=$(firstword $(PPUMOVE))
842
FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
844
FPCMAKE= __missing_command__
846
FPCMAKE:=$(firstword $(FPCMAKE))
851
ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
853
ZIPPROG= __missing_command__
855
ZIPPROG:=$(firstword $(ZIPPROG))
860
TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
862
TARPROG= __missing_command__
864
TARPROG:=$(firstword $(TARPROG))
868
ASNAME=$(BINUTILSPREFIX)as
869
LDNAME=$(BINUTILSPREFIX)ld
870
ARNAME=$(BINUTILSPREFIX)ar
871
RCNAME=$(BINUTILSPREFIX)rc
872
ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
873
ifeq ($(OS_TARGET),win32)
874
ifeq ($(CROSSBINDIR),)
883
ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
890
LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
897
RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
904
ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
913
PPAS=ppas$(SRCBATCHEXT)
920
DATESTR:=$(shell $(DATE) +%Y%m%d)
925
ifeq ($(OS_TARGET),go32v2)
928
ifeq ($(OS_TARGET),win32)
932
UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
936
UPXPROG:=$(firstword $(UPXPROG))
953
override FPCOPTDEF=$(CPU_TARGET)
955
ifneq ($(OS_TARGET),$(OS_SOURCE))
956
override FPCOPT+=-T$(OS_TARGET)
958
ifeq ($(OS_SOURCE),openbsd)
959
override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
961
ifndef CROSSBOOTSTRAP
962
ifneq ($(BINUTILSPREFIX),)
963
override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
965
ifneq ($(BINUTILSPREFIX),)
966
override FPCOPT+=-Xr$(RLINKPATH)
970
override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
973
override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
976
override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
979
override FPCOPT+=$(addprefix -Fi,$(INCDIR))
989
override FPCOPTDEF+=DEBUG
992
ifeq ($(CPU_TARGET),i386)
995
ifeq ($(CPU_TARGET),powerpc)
1001
override FPCOPT+=-Xs $(FPCCPUOPT) -n
1002
override FPCOPTDEF+=RELEASE
1005
override FPCOPT+=-Xs
1008
ifeq ($(CPU_TARGET),i386)
1009
override FPCOPT+=-OG2p3
1013
override FPCOPT+=-vwni
1015
ifdef COMPILER_OPTIONS
1016
override FPCOPT+=$(COMPILER_OPTIONS)
1018
ifdef COMPILER_UNITDIR
1019
override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
1021
ifdef COMPILER_LIBRARYDIR
1022
override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
1024
ifdef COMPILER_OBJECTDIR
1025
override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
1027
ifdef COMPILER_INCLUDEDIR
1028
override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
1031
override FPCOPT+=-FD$(CROSSBINDIR)
1033
ifdef COMPILER_TARGETDIR
1034
override FPCOPT+=-FE$(COMPILER_TARGETDIR)
1035
ifeq ($(COMPILER_TARGETDIR),.)
1036
override TARGETDIRPREFIX=
1038
override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
1041
ifdef COMPILER_UNITTARGETDIR
1042
override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
1043
ifeq ($(COMPILER_UNITTARGETDIR),.)
1044
override UNITTARGETDIRPREFIX=
1046
override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
1049
ifdef COMPILER_TARGETDIR
1050
override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
1051
override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
1054
ifeq ($(OS_TARGET),linux)
1055
ifeq ($(FPC_VERSION),1.0.6)
1056
override FPCOPTDEF+=HASUNIX
1060
override FPCOPT+=$(OPT)
1063
override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
1066
override FPCOPT+=@$(CFGFILE)
1069
override FPCEXTCMD:=$(FPCOPT)
1070
override FPCOPT:=!FPCEXTCMD
1073
override COMPILER:=$(FPC) $(FPCOPT)
1074
ifeq (,$(findstring -s ,$(COMPILER)))
1077
ifeq ($(FULL_SOURCE),$(FULL_TARGET))
1082
ifneq ($(TARGET_LOADERS),)
1083
override ALLTARGET+=fpc_loaders
1084
override CLEANTARGET+=fpc_loaders_clean
1085
override INSTALLTARGET+=fpc_loaders_install
1086
override LOADEROFILES:=$(addsuffix $(OEXT),$(TARGET_LOADERS))
1088
%$(OEXT): %$(LOADEREXT)
1089
$(AS) -o $*$(OEXT) $<
1090
fpc_loaders: $(LOADEROFILES)
1092
-$(DEL) $(LOADEROFILES)
1093
fpc_loaders_install:
1094
$(MKDIR) $(INSTALL_UNITDIR)
1095
$(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
1097
ifneq ($(TARGET_UNITS),)
1098
override ALLTARGET+=fpc_units
1099
override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
1100
override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
1101
override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
1102
override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
1104
fpc_units: $(UNITPPUFILES)
1106
override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
1107
override CLEANRSTFILES+=$(RSTFILES)
1109
.PHONY: fpc_all fpc_smart fpc_debug fpc_release
1110
$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
1111
@$(ECHOREDIR) Compiled > $(FPCMADE)
1114
$(MAKE) all LINKSMART=1 CREATESMART=1
1118
$(MAKE) all RELEASE=1
1119
.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
1137
vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1138
vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1139
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1140
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
1141
.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
1143
override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
1145
ifdef INSTALL_BUILDUNIT
1146
override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
1148
ifdef INSTALLPPUFILES
1149
override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
1150
override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
1151
override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
1152
override INSTALL_CREATEPACKAGEFPC=1
1154
ifdef INSTALLEXEFILES
1155
override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
1157
fpc_install: all $(INSTALLTARGET)
1158
ifdef INSTALLEXEFILES
1159
$(MKDIR) $(INSTALL_BINDIR)
1161
-$(UPXPROG) $(INSTALLEXEFILES)
1163
$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
1165
ifdef INSTALL_CREATEPACKAGEFPC
1167
ifdef PACKAGE_VERSION
1168
ifneq ($(wildcard Makefile.fpc),)
1169
$(FPCMAKE) -p -T$(OS_TARGET) Makefile.fpc
1170
$(MKDIR) $(INSTALL_UNITDIR)
1171
$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
1176
ifdef INSTALLPPUFILES
1177
$(MKDIR) $(INSTALL_UNITDIR)
1178
$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
1179
ifneq ($(INSTALLPPULINKFILES),)
1180
$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
1182
ifneq ($(wildcard $(LIB_FULLNAME)),)
1183
$(MKDIR) $(INSTALL_LIBDIR)
1184
$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
1186
ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
1191
$(MKDIR) $(INSTALL_DATADIR)
1192
$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
1194
fpc_sourceinstall: distclean
1195
$(MKDIR) $(INSTALL_SOURCEDIR)
1196
$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
1197
fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
1199
$(MKDIR) $(INSTALL_EXAMPLEDIR)
1201
ifdef EXAMPLESOURCEFILES
1202
$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
1204
ifdef TARGET_EXAMPLEDIRS
1205
$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
1207
.PHONY: fpc_clean fpc_cleanall fpc_distclean
1209
override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
1212
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
1215
override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
1217
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
1219
override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
1220
override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
1222
fpc_clean: $(CLEANTARGET)
1224
-$(DEL) $(CLEANEXEFILES)
1227
-$(DEL) $(CLEANPPUFILES)
1229
ifneq ($(CLEANPPULINKFILES),)
1230
-$(DEL) $(CLEANPPULINKFILES)
1233
-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
1236
-$(DEL) $(CLEAN_FILES)
1239
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
1241
-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1242
-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
1243
fpc_distclean: clean
1244
ifdef COMPILER_UNITTARGETDIR
1245
TARGETDIRCLEAN=fpc_clean
1247
fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
1249
-$(DEL) $(CLEANEXEFILES)
1251
-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
1252
-$(DELTREE) *$(SMARTEXT)
1253
-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1254
-$(DEL) *_ppas$(BATCHEXT)
1259
-$(DEL) *$(DEBUGSYMEXT)
1261
.PHONY: fpc_baseinfo
1262
override INFORULES+=fpc_baseinfo
1265
@$(ECHO) == Package info ==
1266
@$(ECHO) Package Name..... $(PACKAGE_NAME)
1267
@$(ECHO) Package Version.. $(PACKAGE_VERSION)
1269
@$(ECHO) == Configuration info ==
1271
@$(ECHO) FPC.......... $(FPC)
1272
@$(ECHO) FPC Version.. $(FPC_VERSION)
1273
@$(ECHO) Source CPU... $(CPU_SOURCE)
1274
@$(ECHO) Target CPU... $(CPU_TARGET)
1275
@$(ECHO) Source OS.... $(OS_SOURCE)
1276
@$(ECHO) Target OS.... $(OS_TARGET)
1277
@$(ECHO) Full Source.. $(FULL_SOURCE)
1278
@$(ECHO) Full Target.. $(FULL_TARGET)
1280
@$(ECHO) == Directory info ==
1282
@$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
1284
@$(ECHO) Basedir......... $(BASEDIR)
1285
@$(ECHO) FPCDir.......... $(FPCDIR)
1286
@$(ECHO) CrossBinDir..... $(CROSSBINDIR)
1287
@$(ECHO) UnitsDir........ $(UNITSDIR)
1288
@$(ECHO) PackagesDir..... $(PACKAGESDIR)
1290
@$(ECHO) GCC library..... $(GCCLIBDIR)
1291
@$(ECHO) Other library... $(OTHERLIBDIR)
1293
@$(ECHO) == Tools info ==
1295
@$(ECHO) As........ $(AS)
1296
@$(ECHO) Ld........ $(LD)
1297
@$(ECHO) Ar........ $(AR)
1298
@$(ECHO) Rc........ $(RC)
1300
@$(ECHO) Mv........ $(MVPROG)
1301
@$(ECHO) Cp........ $(CPPROG)
1302
@$(ECHO) Rm........ $(RMPROG)
1303
@$(ECHO) GInstall.. $(GINSTALL)
1304
@$(ECHO) Echo...... $(ECHO)
1305
@$(ECHO) Shell..... $(SHELL)
1306
@$(ECHO) Date...... $(DATE)
1307
@$(ECHO) FPCMake... $(FPCMAKE)
1308
@$(ECHO) PPUMove... $(PPUMOVE)
1309
@$(ECHO) Upx....... $(UPXPROG)
1310
@$(ECHO) Zip....... $(ZIPPROG)
1312
@$(ECHO) == Object info ==
1314
@$(ECHO) Target Loaders........ $(TARGET_LOADERS)
1315
@$(ECHO) Target Units.......... $(TARGET_UNITS)
1316
@$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
1317
@$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
1318
@$(ECHO) Target Dirs........... $(TARGET_DIRS)
1319
@$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
1320
@$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
1322
@$(ECHO) Clean Units......... $(CLEAN_UNITS)
1323
@$(ECHO) Clean Files......... $(CLEAN_FILES)
1325
@$(ECHO) Install Units....... $(INSTALL_UNITS)
1326
@$(ECHO) Install Files....... $(INSTALL_FILES)
1328
@$(ECHO) == Install info ==
1330
@$(ECHO) DateStr.............. $(DATESTR)
1331
@$(ECHO) ZipPrefix............ $(ZIPPREFIX)
1332
@$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
1333
@$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
1335
@$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
1336
@$(ECHO) Install binary dir... $(INSTALL_BINDIR)
1337
@$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
1338
@$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
1339
@$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
1340
@$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
1341
@$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
1342
@$(ECHO) Install data dir..... $(INSTALL_DATADIR)
1344
@$(ECHO) Dist destination dir. $(DIST_DESTDIR)
1345
@$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
1348
fpc_info: $(INFORULES)
1349
.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
1352
$(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
1355
$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
1357
ifdef TARGET_EXAMPLEDIRS
1358
$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
1360
fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
1361
fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
1362
fpc_makefiles: fpc_makefile fpc_makefile_dirs
1366
release: fpc_release
1369
install: fpc_install
1370
sourceinstall: fpc_sourceinstall
1371
exampleinstall: fpc_exampleinstall
1378
distclean: fpc_distclean
1379
cleanall: fpc_cleanall
1381
makefiles: fpc_makefiles
1382
.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
1383
ifneq ($(wildcard fpcmake.loc),)
1386
include $(INC)/makefile.inc
1387
SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
1388
include $(PROCINC)/makefile.cpu
1389
SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
1390
SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
1391
prt0$(OEXT) : $(CPU_TARGET)/$(PRT0).as
1392
$(AS) -o prt0$(OEXT) $(CPU_TARGET)/$(PRT0).as
1393
cprt0$(OEXT) : $(CPU_TARGET)/cprt0.as
1394
$(AS) -o cprt0$(OEXT) $(CPU_TARGET)/cprt0.as
1395
$(SYSTEMUNIT)$(PPUEXT) : $(BSDINC)/$(SYSTEMUNIT).pp sysconst.inc systypes.inc syscalls.inc $(SYSDEPS)
1396
$(COMPILER) -Us -Sg $(BSDINC)/$(SYSTEMUNIT).pp
1397
objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT)
1398
$(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
1399
strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc\
1400
$(PROCINC)/strings.inc $(PROCINC)/stringss.inc\
1401
$(SYSTEMUNIT)$(PPUEXT)
1402
baseunix$(PPUEXT) : errno.inc $(BSDINC)/bunxtype.inc ptypes.inc $(BSDINC)/ctypes.inc \
1403
signal.inc $(UNIXINC)/bunxh.inc $(BSDINC)/bunxmain.inc $(BSDINC)/ostypes.inc \
1404
$(BSDINC)/bunxfunc.inc $(BSDPROCINC)/syscallh.inc sysnr.inc \
1405
$(BSDINC)/ostypes.inc $(BSDINC)/ossysch.inc $(BSDINC)/bunxmacr.inc $(UNIXINC)/gensigset.inc \
1406
$(UNIXINC)/genfuncs.inc $(SYSTEMUNIT)$(PPUEXT)
1407
unix$(PPUEXT) : $(UNIXINC)/unix.pp strings$(PPUEXT) $(INC)/textrec.inc $(INC)/filerec.inc \
1408
syscalls.inc systypes.inc sysconst.inc $(UNIXINC)/timezone.inc \
1409
unixsysc.inc baseunix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1410
dos$(PPUEXT) : $(UNIXINC)/dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) \
1411
unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1412
crt$(PPUEXT) : $(UNIXINC)/crt.pp $(INC)/textrec.inc unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1413
objects$(PPUEXT) : $(INC)/objects.pp $(SYSTEMUNIT)$(PPUEXT)
1414
printer$(PPUEXT) : $(UNIXINC)/printer.pp $(INC)/textrec.inc unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1415
sysutils$(PPUEXT) : $(UNIXINC)/sysutils.pp $(wildcard $(OBJPASDIR)/sysutils/*.inc) \
1416
objpas$(PPUEXT) unix$(PPUEXT) errors$(PPUEXT) sysconst$(PPUEXT)
1417
$(COMPILER) -Fi$(OBJPASDIR)/sysutils $(UNIXINC)/sysutils.pp
1418
classes$(PPUEXT) : classes.pp $(wildcard $(OBJPASDIR)/classes/*.inc) \
1419
sysutils$(PPUEXT) typinfo$(PPUEXT)
1420
$(COMPILER) -Fi$(OBJPASDIR)/classes classes.pp
1421
typinfo$(PPUEXT): $(OBJPASDIR)/typinfo.pp objpas$(PPUEXT)
1422
$(COMPILER) -Sg $(OBJPASDIR)/typinfo.pp
1423
math$(PPUEXT): $(OBJPASDIR)/math.pp objpas$(PPUEXT) sysutils$(PPUEXT)
1424
$(COMPILER) $(OBJPASDIR)/math.pp
1425
gettext$(PPUEXT): $(OBJPASDIR)/gettext.pp objpas$(PPUEXT) sysutils$(PPUEXT)
1426
$(COMPILER) $(OBJPASDIR)/gettext.pp
1427
varutils$(PPUEXT) : $(OBJPASDIR)/cvarutil.inc $(OBJPASDIR)/varutils.inc \
1428
$(OBJPASDIR)/varutilh.inc varutils.pp
1429
$(COMPILER) -I$(OBJPASDIR) $(UNIXINC)/varutils.pp
1430
types$(PPUEXT) : $(OBJPASDIR/types.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1431
$(COMPILER) $(OBJPASDIR)/types.pp
1432
cpu$(PPUEXT) : $(PROCINC)/cpu.pp $(SYSTEMUNIT)$(PPUEXT)
1433
mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1434
getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT)
1435
heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT)
1436
$(COMPILER) -Sg $(INC)/heaptrc.pp
1437
lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT)
1438
charset$(PPUEXT) : $(INC)/charset.pp $(SYSTEMUNIT)$(PPUEXT)
1439
ucomplex$(PPUEXT) : $(INC)/ucomplex.pp math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1440
sockets$(PPUEXT) : $(UNIXINC)/sockets.pp $(INC)/textrec.inc $(INC)/filerec.inc \
1441
unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1442
errors$(PPUEXT) : $(UNIXINC)/errors.pp strings$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1443
ipc$(PPUEXT) : $(UNIXINC)/ipc.pp unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1444
terminfo$(PPUEXT) : terminfo.pp unix$(PPUEXT)
1445
callspec$(PPUEXT) : $(INC)/callspec.pp $(SYSTEMUNIT)$(PPUEXT)
1446
sysctl$(PPUEXT) : $(BSDINC)/sysctl.pp $(SYSTEMUNIT)$(PPUEXT)
1447
syscall$(PPUEXT) : $(UNIXINC)/syscall.pp
1448
sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
1449
$(COMPILER) $(OBJPASDIR)/sysconst.pp
1450
cthreads$(PPUEXT) : $(UNIXINC)/cthreads.pp systhrds$(PPUEXT)