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 DEFAULT_FPCDIR=../../../..
101
FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
103
FPCPROG:=$(firstword $(FPCPROG))
104
FPC:=$(shell $(FPCPROG) -PB)
105
ifneq ($(findstring Error,$(FPC)),)
112
override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
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)
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))
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
166
override FPCDIR:=$(subst \,/,$(FPCDIR))
167
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
168
override FPCDIR=wrong
171
override FPCDIR=wrong
174
ifeq ($(FPCDIR),wrong)
175
override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
176
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
177
override FPCDIR=wrong
181
ifeq ($(FPCDIR),wrong)
183
override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
184
ifeq ($(wildcard $(FPCDIR)/units),)
185
override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
188
override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
189
override FPCDIR:=$(FPCDIR)/..
190
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
191
override FPCDIR:=$(FPCDIR)/..
192
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
193
override FPCDIR:=$(BASEDIR)
194
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
195
override FPCDIR=c:/pp
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=hwvideo
217
override PACKAGE_VERSION=1.9.4
218
override TARGET_UNITS+=hwvideo
219
override INSTALL_FPCPACKAGE=y
220
ifdef REQUIRE_UNITSDIR
221
override UNITSDIR+=$(REQUIRE_UNITSDIR)
223
ifdef REQUIRE_PACKAGESDIR
224
override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
227
ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
231
ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
235
ifndef INSTALL_PREFIX
237
INSTALL_PREFIX=$(PREFIX)
240
ifndef INSTALL_PREFIX
242
INSTALL_PREFIX=/usr/local
244
ifdef INSTALL_FPCPACKAGE
247
INSTALL_BASEDIR:=/$(PACKAGE_NAME)
251
export INSTALL_PREFIX
252
ifdef INSTALL_FPCSUBDIR
253
export INSTALL_FPCSUBDIR
256
DIST_DESTDIR:=$(BASEDIR)
259
ifndef INSTALL_BASEDIR
261
ifdef INSTALL_FPCPACKAGE
262
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
264
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
267
INSTALL_BASEDIR:=$(INSTALL_PREFIX)
270
ifndef INSTALL_BINDIR
273
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
275
INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
279
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin
281
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
283
ifdef INSTALL_FPCPACKAGE
284
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
288
ifndef INSTALL_UNITDIR
290
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/units
292
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
294
ifdef INSTALL_FPCPACKAGE
296
INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
300
ifndef INSTALL_LIBDIR
302
INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
304
INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
307
ifndef INSTALL_SOURCEDIR
310
SRCPREFIXDIR=share/src
313
SRCPREFIXDIR=share/src
318
ifdef INSTALL_FPCPACKAGE
319
ifdef INSTALL_FPCSUBDIR
320
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
322
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
325
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
328
ifdef INSTALL_FPCPACKAGE
329
ifdef INSTALL_FPCSUBDIR
330
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
332
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
335
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
339
ifndef INSTALL_DOCDIR
342
DOCPREFIXDIR=share/doc
345
DOCPREFIXDIR=share/doc
350
ifdef INSTALL_FPCPACKAGE
351
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
353
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
356
ifdef INSTALL_FPCPACKAGE
357
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
359
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
363
ifndef INSTALL_EXAMPLEDIR
365
ifdef INSTALL_FPCPACKAGE
367
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
370
INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
372
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
377
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
380
INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
382
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
387
ifdef INSTALL_FPCPACKAGE
388
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
390
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
394
ifndef INSTALL_DATADIR
395
INSTALL_DATADIR=$(INSTALL_BASEDIR)
399
CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
400
ifeq ($(CROSSBINDIR),)
401
CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
420
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
421
ifeq ($(OS_TARGET),go32v1)
426
ifeq ($(OS_TARGET),go32v2)
431
ifeq ($(OS_TARGET),watcom)
439
ifeq ($(OS_TARGET),linux)
446
ifeq ($(OS_TARGET),freebsd)
450
FPCMADE=fpcmade.freebsd
453
ifeq ($(OS_TARGET),netbsd)
457
FPCMADE=fpcmade.netbsd
460
ifeq ($(OS_TARGET),openbsd)
464
FPCMADE=fpcmade.openbsd
467
ifeq ($(OS_TARGET),win32)
472
ifeq ($(OS_TARGET),os2)
481
ifeq ($(OS_TARGET),emx)
490
ifeq ($(OS_TARGET),amiga)
492
SHAREDLIBEXT=.library
495
ifeq ($(OS_TARGET),atari)
499
ifeq ($(OS_TARGET),beos)
505
ifeq ($(OS_TARGET),sunos)
511
ifeq ($(OS_TARGET),qnx)
517
ifeq ($(OS_TARGET),netware)
523
ifeq ($(OS_TARGET),macos)
526
FPCMADE=fpcmade.macos
530
ifeq ($(OS_TARGET),darwin)
534
FPCMADE=fpcmade.darwin
538
ifeq ($(OS_TARGET),go32v1)
549
ifeq ($(OS_TARGET),go32v2)
554
ifeq ($(OS_TARGET),watcom)
559
ifeq ($(OS_TARGET),linux)
566
ifeq ($(OS_TARGET),freebsd)
570
FPCMADE=fpcmade.freebsd
573
ifeq ($(OS_TARGET),netbsd)
577
FPCMADE=fpcmade.netbsd
580
ifeq ($(OS_TARGET),openbsd)
584
FPCMADE=fpcmade.openbsd
587
ifeq ($(OS_TARGET),win32)
597
ifeq ($(OS_TARGET),os2)
611
ifeq ($(OS_TARGET),amiga)
618
SHAREDLIBEXT=.library
621
ifeq ($(OS_TARGET),atari)
630
ifeq ($(OS_TARGET),beos)
641
ifeq ($(OS_TARGET),sunos)
652
ifeq ($(OS_TARGET),qnx)
663
ifeq ($(OS_TARGET),netware)
675
ifeq ($(OS_TARGET),macos)
684
FPCMADE=fpcmade.macos
688
ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
690
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
692
ECHO= __missing_command__
694
ECHO:=$(firstword $(ECHO))
697
ECHO:=$(firstword $(ECHO))
702
DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
704
DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
706
DATE= __missing_command__
708
DATE:=$(firstword $(DATE))
711
DATE:=$(firstword $(DATE))
716
GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
718
GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
720
GINSTALL= __missing_command__
722
GINSTALL:=$(firstword $(GINSTALL))
725
GINSTALL:=$(firstword $(GINSTALL))
730
CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
732
CPPROG= __missing_command__
734
CPPROG:=$(firstword $(CPPROG))
739
RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
741
RMPROG= __missing_command__
743
RMPROG:=$(firstword $(RMPROG))
748
MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
750
MVPROG= __missing_command__
752
MVPROG:=$(firstword $(MVPROG))
767
COPYTREE:=$(CPPROG) -rfp
776
DELTREE:=$(RMPROG) -rf
780
INSTALL:=$(GINSTALL) -c -m 644
787
INSTALLEXE:=$(GINSTALL) -c -m 755
793
MKDIR:=$(GINSTALL) -m 755 -d
795
export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
797
PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
799
PPUMOVE= __missing_command__
801
PPUMOVE:=$(firstword $(PPUMOVE))
806
FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
808
FPCMAKE= __missing_command__
810
FPCMAKE:=$(firstword $(FPCMAKE))
815
ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
817
ZIPPROG= __missing_command__
819
ZIPPROG:=$(firstword $(ZIPPROG))
824
TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
826
TARPROG= __missing_command__
828
TARPROG:=$(firstword $(TARPROG))
832
ASNAME=$(BINUTILSPREFIX)as
833
LDNAME=$(BINUTILSPREFIX)ld
834
ARNAME=$(BINUTILSPREFIX)ar
835
RCNAME=$(BINUTILSPREFIX)rc
836
ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
837
ifeq ($(OS_TARGET),win32)
838
ifeq ($(CROSSBINDIR),)
847
ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
854
LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
861
RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
868
ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
877
PPAS=ppas$(SRCBATCHEXT)
884
DATESTR:=$(shell $(DATE) +%Y%m%d)
889
ifeq ($(OS_TARGET),go32v2)
892
ifeq ($(OS_TARGET),win32)
896
UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
900
UPXPROG:=$(firstword $(UPXPROG))
916
override REQUIRE_PACKAGES=rtl
917
ifeq ($(OS_TARGET),linux)
918
ifeq ($(CPU_TARGET),i386)
919
REQUIRE_PACKAGES_RTL=1
922
ifeq ($(OS_TARGET),linux)
923
ifeq ($(CPU_TARGET),m68k)
924
REQUIRE_PACKAGES_RTL=1
927
ifeq ($(OS_TARGET),linux)
928
ifeq ($(CPU_TARGET),powerpc)
929
REQUIRE_PACKAGES_RTL=1
932
ifeq ($(OS_TARGET),linux)
933
ifeq ($(CPU_TARGET),sparc)
934
REQUIRE_PACKAGES_RTL=1
937
ifeq ($(OS_TARGET),linux)
938
ifeq ($(CPU_TARGET),x86_64)
939
REQUIRE_PACKAGES_RTL=1
942
ifeq ($(OS_TARGET),linux)
943
ifeq ($(CPU_TARGET),arm)
944
REQUIRE_PACKAGES_RTL=1
947
ifeq ($(OS_TARGET),go32v2)
948
ifeq ($(CPU_TARGET),i386)
949
REQUIRE_PACKAGES_RTL=1
952
ifeq ($(OS_TARGET),win32)
953
ifeq ($(CPU_TARGET),i386)
954
REQUIRE_PACKAGES_RTL=1
957
ifeq ($(OS_TARGET),os2)
958
ifeq ($(CPU_TARGET),i386)
959
REQUIRE_PACKAGES_RTL=1
962
ifeq ($(OS_TARGET),freebsd)
963
ifeq ($(CPU_TARGET),i386)
964
REQUIRE_PACKAGES_RTL=1
967
ifeq ($(OS_TARGET),freebsd)
968
ifeq ($(CPU_TARGET),m68k)
969
REQUIRE_PACKAGES_RTL=1
972
ifeq ($(OS_TARGET),freebsd)
973
ifeq ($(CPU_TARGET),x86_64)
974
REQUIRE_PACKAGES_RTL=1
977
ifeq ($(OS_TARGET),beos)
978
ifeq ($(CPU_TARGET),i386)
979
REQUIRE_PACKAGES_RTL=1
982
ifeq ($(OS_TARGET),netbsd)
983
ifeq ($(CPU_TARGET),i386)
984
REQUIRE_PACKAGES_RTL=1
987
ifeq ($(OS_TARGET),netbsd)
988
ifeq ($(CPU_TARGET),m68k)
989
REQUIRE_PACKAGES_RTL=1
992
ifeq ($(OS_TARGET),netbsd)
993
ifeq ($(CPU_TARGET),powerpc)
994
REQUIRE_PACKAGES_RTL=1
997
ifeq ($(OS_TARGET),netbsd)
998
ifeq ($(CPU_TARGET),sparc)
999
REQUIRE_PACKAGES_RTL=1
1002
ifeq ($(OS_TARGET),amiga)
1003
ifeq ($(CPU_TARGET),m68k)
1004
REQUIRE_PACKAGES_RTL=1
1007
ifeq ($(OS_TARGET),atari)
1008
ifeq ($(CPU_TARGET),m68k)
1009
REQUIRE_PACKAGES_RTL=1
1012
ifeq ($(OS_TARGET),sunos)
1013
ifeq ($(CPU_TARGET),i386)
1014
REQUIRE_PACKAGES_RTL=1
1017
ifeq ($(OS_TARGET),sunos)
1018
ifeq ($(CPU_TARGET),sparc)
1019
REQUIRE_PACKAGES_RTL=1
1022
ifeq ($(OS_TARGET),qnx)
1023
ifeq ($(CPU_TARGET),i386)
1024
REQUIRE_PACKAGES_RTL=1
1027
ifeq ($(OS_TARGET),netware)
1028
ifeq ($(CPU_TARGET),i386)
1029
REQUIRE_PACKAGES_RTL=1
1032
ifeq ($(OS_TARGET),openbsd)
1033
ifeq ($(CPU_TARGET),i386)
1034
REQUIRE_PACKAGES_RTL=1
1037
ifeq ($(OS_TARGET),openbsd)
1038
ifeq ($(CPU_TARGET),m68k)
1039
REQUIRE_PACKAGES_RTL=1
1042
ifeq ($(OS_TARGET),wdosx)
1043
ifeq ($(CPU_TARGET),i386)
1044
REQUIRE_PACKAGES_RTL=1
1047
ifeq ($(OS_TARGET),palmos)
1048
ifeq ($(CPU_TARGET),m68k)
1049
REQUIRE_PACKAGES_RTL=1
1052
ifeq ($(OS_TARGET),macos)
1053
ifeq ($(CPU_TARGET),powerpc)
1054
REQUIRE_PACKAGES_RTL=1
1057
ifeq ($(OS_TARGET),darwin)
1058
ifeq ($(CPU_TARGET),powerpc)
1059
REQUIRE_PACKAGES_RTL=1
1062
ifeq ($(OS_TARGET),emx)
1063
ifeq ($(CPU_TARGET),i386)
1064
REQUIRE_PACKAGES_RTL=1
1067
ifeq ($(OS_TARGET),watcom)
1068
ifeq ($(CPU_TARGET),i386)
1069
REQUIRE_PACKAGES_RTL=1
1072
ifdef REQUIRE_PACKAGES_RTL
1073
PACKAGEDIR_RTL:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/$(OS_TARGET)/Makefile.fpc,$(PACKAGESDIR))))))
1074
ifneq ($(PACKAGEDIR_RTL),)
1075
ifneq ($(wildcard $(PACKAGEDIR_RTL)/$(OS_TARGET)),)
1076
UNITDIR_RTL=$(PACKAGEDIR_RTL)/$(OS_TARGET)
1078
UNITDIR_RTL=$(PACKAGEDIR_RTL)
1081
$(PACKAGEDIR_RTL)/$(FPCMADE):
1082
$(MAKE) -C $(PACKAGEDIR_RTL) $(FPCMADE)
1083
override ALLDEPENDENCIES+=$(PACKAGEDIR_RTL)/$(FPCMADE)
1087
UNITDIR_RTL:=$(subst /Package.fpc,,$(strip $(wildcard $(addsuffix /rtl/Package.fpc,$(UNITSDIR)))))
1088
ifneq ($(UNITDIR_RTL),)
1089
UNITDIR_RTL:=$(firstword $(UNITDIR_RTL))
1095
override COMPILER_UNITDIR+=$(UNITDIR_RTL)
1099
override FPCOPTDEF=$(CPU_TARGET)
1101
ifneq ($(OS_TARGET),$(OS_SOURCE))
1102
override FPCOPT+=-T$(OS_TARGET)
1104
ifeq ($(OS_SOURCE),openbsd)
1105
override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
1107
ifndef CROSSBOOTSTRAP
1108
ifneq ($(BINUTILSPREFIX),)
1109
override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
1111
ifneq ($(BINUTILSPREFIX),)
1112
override FPCOPT+=-Xr$(RLINKPATH)
1116
override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
1119
override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
1122
override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
1125
override FPCOPT+=$(addprefix -Fi,$(INCDIR))
1128
override FPCOPT+=-XX
1131
override FPCOPT+=-CX
1134
override FPCOPT+=-gl
1135
override FPCOPTDEF+=DEBUG
1138
ifeq ($(CPU_TARGET),i386)
1141
ifeq ($(CPU_TARGET),powerpc)
1147
override FPCOPT+=-Xs $(FPCCPUOPT) -n
1148
override FPCOPTDEF+=RELEASE
1151
override FPCOPT+=-Xs
1154
ifeq ($(CPU_TARGET),i386)
1155
override FPCOPT+=-OG2p3
1159
override FPCOPT+=-vwni
1161
ifdef COMPILER_OPTIONS
1162
override FPCOPT+=$(COMPILER_OPTIONS)
1164
ifdef COMPILER_UNITDIR
1165
override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
1167
ifdef COMPILER_LIBRARYDIR
1168
override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
1170
ifdef COMPILER_OBJECTDIR
1171
override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
1173
ifdef COMPILER_INCLUDEDIR
1174
override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
1177
override FPCOPT+=-FD$(CROSSBINDIR)
1179
ifdef COMPILER_TARGETDIR
1180
override FPCOPT+=-FE$(COMPILER_TARGETDIR)
1181
ifeq ($(COMPILER_TARGETDIR),.)
1182
override TARGETDIRPREFIX=
1184
override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
1187
ifdef COMPILER_UNITTARGETDIR
1188
override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
1189
ifeq ($(COMPILER_UNITTARGETDIR),.)
1190
override UNITTARGETDIRPREFIX=
1192
override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
1195
ifdef COMPILER_TARGETDIR
1196
override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
1197
override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
1200
ifeq ($(OS_TARGET),linux)
1201
ifeq ($(FPC_VERSION),1.0.6)
1202
override FPCOPTDEF+=HASUNIX
1206
override FPCOPT+=$(OPT)
1209
override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
1212
override FPCOPT+=@$(CFGFILE)
1215
override FPCEXTCMD:=$(FPCOPT)
1216
override FPCOPT:=!FPCEXTCMD
1219
override COMPILER:=$(FPC) $(FPCOPT)
1220
ifeq (,$(findstring -s ,$(COMPILER)))
1223
ifeq ($(FULL_SOURCE),$(FULL_TARGET))
1228
ifneq ($(TARGET_UNITS),)
1229
override ALLTARGET+=fpc_units
1230
override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
1231
override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
1232
override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
1233
override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
1235
fpc_units: $(UNITPPUFILES)
1237
override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
1238
override CLEANRSTFILES+=$(RSTFILES)
1240
.PHONY: fpc_all fpc_smart fpc_debug fpc_release
1241
$(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
1242
@$(ECHOREDIR) Compiled > $(FPCMADE)
1245
$(MAKE) all LINKSMART=1 CREATESMART=1
1249
$(MAKE) all RELEASE=1
1250
.SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .dpr .pp .rc .res
1268
vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1269
vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1270
vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
1271
vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
1272
.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
1274
override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
1276
ifdef INSTALL_BUILDUNIT
1277
override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
1279
ifdef INSTALLPPUFILES
1280
override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
1281
override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
1282
override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
1283
override INSTALL_CREATEPACKAGEFPC=1
1285
ifdef INSTALLEXEFILES
1286
override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
1288
fpc_install: all $(INSTALLTARGET)
1289
ifdef INSTALLEXEFILES
1290
$(MKDIR) $(INSTALL_BINDIR)
1292
-$(UPXPROG) $(INSTALLEXEFILES)
1294
$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
1296
ifdef INSTALL_CREATEPACKAGEFPC
1298
ifdef PACKAGE_VERSION
1299
ifneq ($(wildcard Makefile.fpc),)
1300
$(FPCMAKE) -p -T$(OS_TARGET) Makefile.fpc
1301
$(MKDIR) $(INSTALL_UNITDIR)
1302
$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
1307
ifdef INSTALLPPUFILES
1308
$(MKDIR) $(INSTALL_UNITDIR)
1309
$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
1310
ifneq ($(INSTALLPPULINKFILES),)
1311
$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
1313
ifneq ($(wildcard $(LIB_FULLNAME)),)
1314
$(MKDIR) $(INSTALL_LIBDIR)
1315
$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
1317
ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
1322
$(MKDIR) $(INSTALL_DATADIR)
1323
$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
1325
fpc_sourceinstall: distclean
1326
$(MKDIR) $(INSTALL_SOURCEDIR)
1327
$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
1328
fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
1330
$(MKDIR) $(INSTALL_EXAMPLEDIR)
1332
ifdef EXAMPLESOURCEFILES
1333
$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
1335
ifdef TARGET_EXAMPLEDIRS
1336
$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
1338
.PHONY: fpc_distinstall
1339
fpc_distinstall: install exampleinstall
1340
.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
1343
PACKDIR=$(BASEDIR)/../fpc-pack
1345
PACKDIR=/tmp/fpc-pack
1350
ZIPNAME=$(DIST_ZIPNAME)
1352
ZIPNAME=$(ZIPPREFIX)$(PACKAGE_NAME)$(ZIPSUFFIX)
1356
ifdef DIST_ZIPTARGET
1357
ZIPTARGET=DIST_ZIPTARGET
1371
ZIPPATHSEP=$(PATHSEP)
1372
ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))
1376
ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
1377
ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
1379
ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(TAREXT)
1380
ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
1382
ZIPDESTFILE:=$(DIST_DESTDIR)/$(ZIPNAME)$(ZIPEXT)
1383
ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
1386
$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
1387
$(MKDIR) $(DIST_DESTDIR)
1388
$(DEL) $(ZIPDESTFILE)
1390
ifneq ($(ECHOREDIR),echo)
1391
$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
1392
$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
1393
$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
1395
echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
1396
echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
1397
echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
1400
/bin/sh $(ZIPWRAPPER)
1404
$(DEL) $(ZIPWRAPPER)
1406
$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
1408
$(DELTREE) $(PACKDIR)
1409
fpc_zipsourceinstall:
1410
$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=src
1411
fpc_zipexampleinstall:
1413
$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=exm
1416
$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
1417
.PHONY: fpc_clean fpc_cleanall fpc_distclean
1419
override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
1422
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
1425
override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
1427
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
1429
override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
1430
override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
1432
fpc_clean: $(CLEANTARGET)
1434
-$(DEL) $(CLEANEXEFILES)
1437
-$(DEL) $(CLEANPPUFILES)
1439
ifneq ($(CLEANPPULINKFILES),)
1440
-$(DEL) $(CLEANPPULINKFILES)
1443
-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
1446
-$(DEL) $(CLEAN_FILES)
1449
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
1451
-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1452
-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
1453
fpc_distclean: clean
1454
ifdef COMPILER_UNITTARGETDIR
1455
TARGETDIRCLEAN=fpc_clean
1457
fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
1459
-$(DEL) $(CLEANEXEFILES)
1461
-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
1462
-$(DELTREE) *$(SMARTEXT)
1463
-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1464
-$(DEL) *_ppas$(BATCHEXT)
1469
-$(DEL) *$(DEBUGSYMEXT)
1471
.PHONY: fpc_baseinfo
1472
override INFORULES+=fpc_baseinfo
1475
@$(ECHO) == Package info ==
1476
@$(ECHO) Package Name..... $(PACKAGE_NAME)
1477
@$(ECHO) Package Version.. $(PACKAGE_VERSION)
1479
@$(ECHO) == Configuration info ==
1481
@$(ECHO) FPC.......... $(FPC)
1482
@$(ECHO) FPC Version.. $(FPC_VERSION)
1483
@$(ECHO) Source CPU... $(CPU_SOURCE)
1484
@$(ECHO) Target CPU... $(CPU_TARGET)
1485
@$(ECHO) Source OS.... $(OS_SOURCE)
1486
@$(ECHO) Target OS.... $(OS_TARGET)
1487
@$(ECHO) Full Source.. $(FULL_SOURCE)
1488
@$(ECHO) Full Target.. $(FULL_TARGET)
1490
@$(ECHO) == Directory info ==
1492
@$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
1494
@$(ECHO) Basedir......... $(BASEDIR)
1495
@$(ECHO) FPCDir.......... $(FPCDIR)
1496
@$(ECHO) CrossBinDir..... $(CROSSBINDIR)
1497
@$(ECHO) UnitsDir........ $(UNITSDIR)
1498
@$(ECHO) PackagesDir..... $(PACKAGESDIR)
1500
@$(ECHO) GCC library..... $(GCCLIBDIR)
1501
@$(ECHO) Other library... $(OTHERLIBDIR)
1503
@$(ECHO) == Tools info ==
1505
@$(ECHO) As........ $(AS)
1506
@$(ECHO) Ld........ $(LD)
1507
@$(ECHO) Ar........ $(AR)
1508
@$(ECHO) Rc........ $(RC)
1510
@$(ECHO) Mv........ $(MVPROG)
1511
@$(ECHO) Cp........ $(CPPROG)
1512
@$(ECHO) Rm........ $(RMPROG)
1513
@$(ECHO) GInstall.. $(GINSTALL)
1514
@$(ECHO) Echo...... $(ECHO)
1515
@$(ECHO) Shell..... $(SHELL)
1516
@$(ECHO) Date...... $(DATE)
1517
@$(ECHO) FPCMake... $(FPCMAKE)
1518
@$(ECHO) PPUMove... $(PPUMOVE)
1519
@$(ECHO) Upx....... $(UPXPROG)
1520
@$(ECHO) Zip....... $(ZIPPROG)
1522
@$(ECHO) == Object info ==
1524
@$(ECHO) Target Loaders........ $(TARGET_LOADERS)
1525
@$(ECHO) Target Units.......... $(TARGET_UNITS)
1526
@$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
1527
@$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
1528
@$(ECHO) Target Dirs........... $(TARGET_DIRS)
1529
@$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
1530
@$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
1532
@$(ECHO) Clean Units......... $(CLEAN_UNITS)
1533
@$(ECHO) Clean Files......... $(CLEAN_FILES)
1535
@$(ECHO) Install Units....... $(INSTALL_UNITS)
1536
@$(ECHO) Install Files....... $(INSTALL_FILES)
1538
@$(ECHO) == Install info ==
1540
@$(ECHO) DateStr.............. $(DATESTR)
1541
@$(ECHO) ZipPrefix............ $(ZIPPREFIX)
1542
@$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
1543
@$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
1545
@$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
1546
@$(ECHO) Install binary dir... $(INSTALL_BINDIR)
1547
@$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
1548
@$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
1549
@$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
1550
@$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
1551
@$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
1552
@$(ECHO) Install data dir..... $(INSTALL_DATADIR)
1554
@$(ECHO) Dist destination dir. $(DIST_DESTDIR)
1555
@$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
1558
fpc_info: $(INFORULES)
1559
.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
1562
$(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
1565
$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
1567
ifdef TARGET_EXAMPLEDIRS
1568
$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
1570
fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
1571
fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
1572
fpc_makefiles: fpc_makefile fpc_makefile_dirs
1576
release: fpc_release
1579
install: fpc_install
1580
sourceinstall: fpc_sourceinstall
1581
exampleinstall: fpc_exampleinstall
1582
distinstall: fpc_distinstall
1583
zipinstall: fpc_zipinstall
1584
zipsourceinstall: fpc_zipsourceinstall
1585
zipexampleinstall: fpc_zipexampleinstall
1586
zipdistinstall: fpc_zipdistinstall
1588
distclean: fpc_distclean
1589
cleanall: fpc_cleanall
1591
makefiles: fpc_makefiles
1592
.PHONY: all debug smart release examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
1593
ifneq ($(wildcard fpcmake.loc),)