116
104
FPCPROG:=$(firstword $(FPCPROG))
117
105
FPC:=$(shell $(FPCPROG) -PB)
118
106
ifneq ($(findstring Error,$(FPC)),)
107
override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
110
override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
125
113
override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
126
114
override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
128
HOSTOS=$(shell $(FPC) -iSO)
129
# Which docs are made when 'html' is specified
130
HTML = user units ref prog fpdoc fcl chart
132
# Can be 'report','book', 'html', 'hevea', 'ts3' 'ts4'
115
FOUNDFPC:=$(strip $(wildcard $(FPC)))
117
FOUNDFPC=$(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))
119
$(error Compiler $(FPC) not found)
122
ifndef FPC_COMPILERINFO
123
FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
126
FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
128
export FPC FPC_VERSION FPC_COMPILERINFO
129
unexport CHECKDEPEND ALLDEPENDENCIES
131
ifdef CPU_TARGET_DEFAULT
132
CPU_TARGET=$(CPU_TARGET_DEFAULT)
136
ifdef OS_TARGET_DEFAULT
137
OS_TARGET=$(OS_TARGET_DEFAULT)
140
ifneq ($(words $(FPC_COMPILERINFO)),5)
141
FPC_COMPILERINFO+=$(shell $(FPC) -iSP)
142
FPC_COMPILERINFO+=$(shell $(FPC) -iTP)
143
FPC_COMPILERINFO+=$(shell $(FPC) -iSO)
144
FPC_COMPILERINFO+=$(shell $(FPC) -iTO)
147
CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
150
CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
153
OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
156
OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
158
FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
159
FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
160
ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
161
TARGETSUFFIX=$(OS_TARGET)
162
SOURCESUFFIX=$(OS_SOURCE)
164
TARGETSUFFIX=$(FULL_TARGET)
165
SOURCESUFFIX=$(FULL_SOURCE)
167
ifneq ($(FULL_TARGET),$(FULL_SOURCE))
170
ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
171
ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),)
172
$(error The Makefile doesn't support target $(FULL_TARGET), please run fpcmake first)
175
ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
178
ifeq ($(OS_TARGET),linux)
181
export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE
183
override FPCDIR:=$(subst \,/,$(FPCDIR))
184
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
185
override FPCDIR=wrong
188
override FPCDIR=wrong
191
ifeq ($(FPCDIR),wrong)
192
override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
193
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
194
override FPCDIR=wrong
198
ifeq ($(FPCDIR),wrong)
200
override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
201
ifeq ($(wildcard $(FPCDIR)/units),)
202
override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
205
override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
206
override FPCDIR:=$(FPCDIR)/..
207
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
208
override FPCDIR:=$(FPCDIR)/..
209
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
210
override FPCDIR:=$(BASEDIR)
211
ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
212
override FPCDIR=c:/pp
219
CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
221
ifndef BINUTILSPREFIX
224
BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
228
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX))
230
UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
232
PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
233
override PACKAGE_NAME=fpc
234
override PACKAGE_VERSION=2.0.0
235
ifdef REQUIRE_UNITSDIR
236
override UNITSDIR+=$(REQUIRE_UNITSDIR)
238
ifdef REQUIRE_PACKAGESDIR
239
override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
242
ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
246
ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
250
ifndef INSTALL_PREFIX
252
INSTALL_PREFIX=$(PREFIX)
255
ifndef INSTALL_PREFIX
257
INSTALL_PREFIX=/usr/local
259
ifdef INSTALL_FPCPACKAGE
262
INSTALL_BASEDIR:=/$(PACKAGE_NAME)
266
export INSTALL_PREFIX
267
ifdef INSTALL_FPCSUBDIR
268
export INSTALL_FPCSUBDIR
271
DIST_DESTDIR:=$(BASEDIR)
274
ifndef COMPILER_UNITTARGETDIR
275
ifdef PACKAGEDIR_MAIN
276
COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
278
COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
281
ifndef COMPILER_TARGETDIR
284
ifndef INSTALL_BASEDIR
286
ifdef INSTALL_FPCPACKAGE
287
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
289
INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
292
INSTALL_BASEDIR:=$(INSTALL_PREFIX)
295
ifndef INSTALL_BINDIR
297
INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
299
INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
300
ifdef INSTALL_FPCPACKAGE
303
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
305
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
308
INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
313
ifndef INSTALL_UNITDIR
314
INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
315
ifdef INSTALL_FPCPACKAGE
317
INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
321
ifndef INSTALL_LIBDIR
323
INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
325
INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
328
ifndef INSTALL_SOURCEDIR
331
SRCPREFIXDIR=share/src
334
SRCPREFIXDIR=share/src
339
ifdef INSTALL_FPCPACKAGE
340
ifdef INSTALL_FPCSUBDIR
341
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
343
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
346
INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
349
ifdef INSTALL_FPCPACKAGE
350
ifdef INSTALL_FPCSUBDIR
351
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
353
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
356
INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
360
ifndef INSTALL_DOCDIR
363
DOCPREFIXDIR=share/doc
366
DOCPREFIXDIR=share/doc
371
ifdef INSTALL_FPCPACKAGE
372
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
374
INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
377
ifdef INSTALL_FPCPACKAGE
378
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
380
INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
384
ifndef INSTALL_EXAMPLEDIR
386
ifdef INSTALL_FPCPACKAGE
388
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
391
INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
393
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
398
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
401
INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
403
INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
408
ifdef INSTALL_FPCPACKAGE
409
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
411
INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
415
ifndef INSTALL_DATADIR
416
INSTALL_DATADIR=$(INSTALL_BASEDIR)
420
CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
421
ifeq ($(CROSSBINDIR),)
422
CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
440
ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
441
ifeq ($(OS_TARGET),go32v1)
445
ifeq ($(OS_TARGET),go32v2)
449
ifeq ($(OS_TARGET),watcom)
456
ifeq ($(OS_TARGET),linux)
462
ifeq ($(OS_TARGET),freebsd)
468
ifeq ($(OS_TARGET),netbsd)
474
ifeq ($(OS_TARGET),openbsd)
480
ifeq ($(OS_TARGET),win32)
484
ifeq ($(OS_TARGET),os2)
492
ifeq ($(OS_TARGET),emx)
500
ifeq ($(OS_TARGET),amiga)
502
SHAREDLIBEXT=.library
505
ifeq ($(OS_TARGET),morphos)
507
SHAREDLIBEXT=.library
510
ifeq ($(OS_TARGET),atari)
514
ifeq ($(OS_TARGET),beos)
519
ifeq ($(OS_TARGET),solaris)
524
ifeq ($(OS_TARGET),qnx)
529
ifeq ($(OS_TARGET),netware)
534
ifeq ($(OS_TARGET),netwlibc)
539
ifeq ($(OS_TARGET),macos)
545
ifeq ($(OS_TARGET),darwin)
552
ifeq ($(OS_TARGET),go32v1)
562
ifeq ($(OS_TARGET),go32v2)
566
ifeq ($(OS_TARGET),watcom)
570
ifeq ($(OS_TARGET),linux)
576
ifeq ($(OS_TARGET),freebsd)
582
ifeq ($(OS_TARGET),netbsd)
588
ifeq ($(OS_TARGET),openbsd)
594
ifeq ($(OS_TARGET),win32)
603
ifeq ($(OS_TARGET),os2)
616
ifeq ($(OS_TARGET),amiga)
623
SHAREDLIBEXT=.library
626
ifeq ($(OS_TARGET),atari)
635
ifeq ($(OS_TARGET),beos)
645
ifeq ($(OS_TARGET),solaris)
655
ifeq ($(OS_TARGET),qnx)
665
ifeq ($(OS_TARGET),netware)
676
ifeq ($(OS_TARGET),netwlibc)
687
ifeq ($(OS_TARGET),macos)
699
ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
700
FPCMADE=fpcmade.$(SHORTSUFFIX)
701
ZIPSUFFIX=$(SHORTSUFFIX)
706
FPCMADE=fpcmade.$(TARGETSUFFIX)
707
ZIPSOURCESUFFIX=.source
708
ZIPEXAMPLESUFFIX=.examples
710
ZIPSUFFIX=.$(SOURCESUFFIX)
711
ZIPCROSSPREFIX=$(TARGETSUFFIX)-
713
ZIPSUFFIX=.$(TARGETSUFFIX)
718
ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
720
ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
722
ECHO= __missing_command_ECHO
724
ECHO:=$(firstword $(ECHO))
727
ECHO:=$(firstword $(ECHO))
732
DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
734
DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
736
DATE= __missing_command_DATE
738
DATE:=$(firstword $(DATE))
741
DATE:=$(firstword $(DATE))
746
GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
748
GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
750
GINSTALL= __missing_command_GINSTALL
752
GINSTALL:=$(firstword $(GINSTALL))
755
GINSTALL:=$(firstword $(GINSTALL))
760
CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
762
CPPROG= __missing_command_CPPROG
764
CPPROG:=$(firstword $(CPPROG))
769
RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
771
RMPROG= __missing_command_RMPROG
773
RMPROG:=$(firstword $(RMPROG))
778
MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
780
MVPROG= __missing_command_MVPROG
782
MVPROG:=$(firstword $(MVPROG))
787
MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
789
MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
791
MKDIRPROG= __missing_command_MKDIRPROG
793
MKDIRPROG:=$(firstword $(MKDIRPROG))
796
MKDIRPROG:=$(firstword $(MKDIRPROG))
811
COPYTREE:=$(CPPROG) -Rfp
814
MKDIRTREE:=$(MKDIRPROG) -p
823
DELTREE:=$(RMPROG) -rf
827
INSTALL:=$(GINSTALL) -c -m 644
834
INSTALLEXE:=$(GINSTALL) -c -m 755
840
MKDIR:=$(GINSTALL) -m 755 -d
842
export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
844
PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
846
PPUMOVE= __missing_command_PPUMOVE
848
PPUMOVE:=$(firstword $(PPUMOVE))
853
FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
855
FPCMAKE= __missing_command_FPCMAKE
857
FPCMAKE:=$(firstword $(FPCMAKE))
862
ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
864
ZIPPROG= __missing_command_ZIPPROG
866
ZIPPROG:=$(firstword $(ZIPPROG))
871
TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
873
TARPROG= __missing_command_TARPROG
875
TARPROG:=$(firstword $(TARPROG))
879
ASNAME=$(BINUTILSPREFIX)as
880
LDNAME=$(BINUTILSPREFIX)ld
881
ARNAME=$(BINUTILSPREFIX)ar
882
RCNAME=$(BINUTILSPREFIX)rc
883
ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
884
ifeq ($(OS_TARGET),win32)
885
ifeq ($(CROSSBINDIR),)
894
ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
901
LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
908
RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
915
ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
924
PPAS=ppas$(SRCBATCHEXT)
931
DATESTR:=$(shell $(DATE) +%Y%m%d)
936
ifeq ($(OS_TARGET),go32v2)
939
ifeq ($(OS_TARGET),win32)
943
UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
947
UPXPROG:=$(firstword $(UPXPROG))
964
override FPCOPTDEF=$(CPU_TARGET)
966
ifneq ($(OS_TARGET),$(OS_SOURCE))
967
override FPCOPT+=-T$(OS_TARGET)
969
ifeq ($(OS_SOURCE),openbsd)
970
override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
972
ifndef CROSSBOOTSTRAP
973
ifneq ($(BINUTILSPREFIX),)
974
override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
976
ifneq ($(BINUTILSPREFIX),)
977
override FPCOPT+=-Xr$(RLINKPATH)
981
override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
984
override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
987
override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
990
override FPCOPT+=$(addprefix -Fi,$(INCDIR))
1000
override FPCOPTDEF+=DEBUG
1003
ifeq ($(CPU_TARGET),i386)
1006
ifeq ($(CPU_TARGET),powerpc)
1012
override FPCOPT+=-Xs $(FPCCPUOPT) -n
1013
override FPCOPTDEF+=RELEASE
1016
override FPCOPT+=-Xs
1019
ifeq ($(CPU_TARGET),i386)
1020
override FPCOPT+=-OG2p3
1024
override FPCOPT+=-vwni
1026
ifdef COMPILER_OPTIONS
1027
override FPCOPT+=$(COMPILER_OPTIONS)
1029
ifdef COMPILER_UNITDIR
1030
override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
1032
ifdef COMPILER_LIBRARYDIR
1033
override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
1035
ifdef COMPILER_OBJECTDIR
1036
override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
1038
ifdef COMPILER_INCLUDEDIR
1039
override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
1042
override FPCOPT+=-FD$(CROSSBINDIR)
1044
ifdef COMPILER_TARGETDIR
1045
override FPCOPT+=-FE$(COMPILER_TARGETDIR)
1046
ifeq ($(COMPILER_TARGETDIR),.)
1047
override TARGETDIRPREFIX=
1049
override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
1052
ifdef COMPILER_UNITTARGETDIR
1053
override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
1054
ifeq ($(COMPILER_UNITTARGETDIR),.)
1055
override UNITTARGETDIRPREFIX=
1057
override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
1060
ifdef COMPILER_TARGETDIR
1061
override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
1062
override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
1065
ifeq ($(OS_TARGET),linux)
1066
ifeq ($(FPC_VERSION),1.0.6)
1067
override FPCOPTDEF+=HASUNIX
1071
override FPCOPT+=$(OPT)
1074
override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
1077
override FPCOPT+=@$(CFGFILE)
1080
override FPCEXTCMD:=$(FPCOPT)
1081
override FPCOPT:=!FPCEXTCMD
1084
override COMPILER:=$(FPC) $(FPCOPT)
1085
ifeq (,$(findstring -s ,$(COMPILER)))
1088
ifeq ($(FULL_SOURCE),$(FULL_TARGET))
1093
override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
1094
override CLEANRSTFILES+=$(RSTFILES)
1096
.PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
1098
override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
1100
ifdef INSTALL_BUILDUNIT
1101
override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
1103
ifdef INSTALLPPUFILES
1104
override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
1105
ifneq ($(UNITTARGETDIRPREFIX),)
1106
override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
1107
override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
1109
override INSTALL_CREATEPACKAGEFPC=1
1111
ifdef INSTALLEXEFILES
1112
ifneq ($(TARGETDIRPREFIX),)
1113
override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
1116
fpc_install: all $(INSTALLTARGET)
1117
ifdef INSTALLEXEFILES
1118
$(MKDIR) $(INSTALL_BINDIR)
1120
-$(UPXPROG) $(INSTALLEXEFILES)
1122
$(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
1124
ifdef INSTALL_CREATEPACKAGEFPC
1126
ifdef PACKAGE_VERSION
1127
ifneq ($(wildcard Makefile.fpc),)
1128
$(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
1129
$(MKDIR) $(INSTALL_UNITDIR)
1130
$(INSTALL) Package.fpc $(INSTALL_UNITDIR)
1135
ifdef INSTALLPPUFILES
1136
$(MKDIR) $(INSTALL_UNITDIR)
1137
$(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
1138
ifneq ($(INSTALLPPULINKFILES),)
1139
$(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
1141
ifneq ($(wildcard $(LIB_FULLNAME)),)
1142
$(MKDIR) $(INSTALL_LIBDIR)
1143
$(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
1145
ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
1150
$(MKDIR) $(INSTALL_DATADIR)
1151
$(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
1153
fpc_sourceinstall: distclean
1154
$(MKDIR) $(INSTALL_SOURCEDIR)
1155
$(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
1156
fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
1158
$(MKDIR) $(INSTALL_EXAMPLEDIR)
1160
ifdef EXAMPLESOURCEFILES
1161
$(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
1163
ifdef TARGET_EXAMPLEDIRS
1164
$(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
1166
.PHONY: fpc_distinstall
1167
fpc_distinstall: install exampleinstall
1168
.PHONY: fpc_zipinstall fpc_zipsourceinstall fpc_zipexampleinstall
1171
PACKDIR=$(BASEDIR)/../fpc-pack
1173
PACKDIR=/tmp/fpc-pack
1178
ZIPNAME=$(DIST_ZIPNAME)
1180
ZIPNAME=$(PACKAGE_NAME)
1184
FULLZIPNAME=$(ZIPCROSSPREFIX)$(ZIPPREFIX)$(ZIPNAME)$(ZIPSUFFIX)
1187
ifdef DIST_ZIPTARGET
1188
ZIPTARGET=DIST_ZIPTARGET
1202
ZIPPATHSEP=$(PATHSEP)
1203
ZIPWRAPPER=$(subst /,$(PATHSEP),$(DIST_DESTDIR)/fpczip$(SRCBATCHEXT))
1207
ZIPCMD_CDPACK:=cd $(subst /,$(ZIPPATHSEP),$(PACKDIR))
1208
ZIPCMD_CDBASE:=cd $(subst /,$(ZIPPATHSEP),$(BASEDIR))
1210
ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(TAREXT)
1211
ZIPCMD_ZIP:=$(TARPROG) cf$(TAROPT) $(ZIPDESTFILE) *
1213
ZIPDESTFILE:=$(DIST_DESTDIR)/$(FULLZIPNAME)$(ZIPEXT)
1214
ZIPCMD_ZIP:=$(subst /,$(ZIPPATHSEP),$(ZIPPROG)) -Dr $(ZIPOPT) $(ZIPDESTFILE) *
1217
$(MAKE) $(ZIPTARGET) INSTALL_PREFIX=$(PACKDIR) ZIPINSTALL=1
1218
$(MKDIR) $(DIST_DESTDIR)
1219
$(DEL) $(ZIPDESTFILE)
1221
ifneq ($(ECHOREDIR),echo)
1222
$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDPACK))" > $(ZIPWRAPPER)
1223
$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_ZIP))" >> $(ZIPWRAPPER)
1224
$(ECHOREDIR) -e "$(subst \,\\,$(ZIPCMD_CDBASE))" >> $(ZIPWRAPPER)
1226
echo $(ZIPCMD_CDPACK) > $(ZIPWRAPPER)
1227
echo $(ZIPCMD_ZIP) >> $(ZIPWRAPPER)
1228
echo $(ZIPCMD_CDBASE) >> $(ZIPWRAPPER)
1231
/bin/sh $(ZIPWRAPPER)
1235
$(DEL) $(ZIPWRAPPER)
1237
$(ZIPCMD_CDPACK) ; $(ZIPCMD_ZIP) ; $(ZIPCMD_CDBASE)
1239
$(DELTREE) $(PACKDIR)
1240
fpc_zipsourceinstall:
1241
$(MAKE) fpc_zipinstall ZIPTARGET=sourceinstall ZIPSUFFIX=$(ZIPSOURCESUFFIX)
1242
fpc_zipexampleinstall:
1244
$(MAKE) fpc_zipinstall ZIPTARGET=exampleinstall ZIPSUFFIX=$(ZIPEXAMPLESUFFIX)
1247
$(MAKE) fpc_zipinstall ZIPTARGET=distinstall
1248
.PHONY: fpc_clean fpc_cleanall fpc_distclean
1250
override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
1253
override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
1256
override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
1258
override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
1260
override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
1261
override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
1263
fpc_clean: $(CLEANTARGET)
1265
-$(DEL) $(CLEANEXEFILES)
1268
-$(DEL) $(CLEANPPUFILES)
1270
ifneq ($(CLEANPPULINKFILES),)
1271
-$(DEL) $(CLEANPPULINKFILES)
1274
-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
1277
-$(DEL) $(CLEAN_FILES)
1280
-$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
1282
-$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1283
-$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
1284
fpc_cleanall: $(CLEANTARGET)
1286
-$(DEL) $(CLEANEXEFILES)
1288
ifdef COMPILER_UNITTARGETDIR
1290
-$(DEL) $(CLEANPPUFILES)
1292
ifneq ($(CLEANPPULINKFILES),)
1293
-$(DEL) $(CLEANPPULINKFILES)
1296
-$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
1300
-$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
1301
ifneq ($(PPUEXT),.ppu)
1302
-$(DEL) *.o *.ppu *.a
1304
-$(DELTREE) *$(SMARTEXT)
1305
-$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
1306
-$(DEL) *_ppas$(BATCHEXT)
1311
-$(DEL) *$(DEBUGSYMEXT)
1313
fpc_distclean: cleanall
1314
.PHONY: fpc_baseinfo
1315
override INFORULES+=fpc_baseinfo
1318
@$(ECHO) == Package info ==
1319
@$(ECHO) Package Name..... $(PACKAGE_NAME)
1320
@$(ECHO) Package Version.. $(PACKAGE_VERSION)
1322
@$(ECHO) == Configuration info ==
1324
@$(ECHO) FPC.......... $(FPC)
1325
@$(ECHO) FPC Version.. $(FPC_VERSION)
1326
@$(ECHO) Source CPU... $(CPU_SOURCE)
1327
@$(ECHO) Target CPU... $(CPU_TARGET)
1328
@$(ECHO) Source OS.... $(OS_SOURCE)
1329
@$(ECHO) Target OS.... $(OS_TARGET)
1330
@$(ECHO) Full Source.. $(FULL_SOURCE)
1331
@$(ECHO) Full Target.. $(FULL_TARGET)
1332
@$(ECHO) SourceSuffix. $(SOURCESUFFIX)
1333
@$(ECHO) TargetSuffix. $(TARGETSUFFIX)
1335
@$(ECHO) == Directory info ==
1337
@$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
1339
@$(ECHO) Basedir......... $(BASEDIR)
1340
@$(ECHO) FPCDir.......... $(FPCDIR)
1341
@$(ECHO) CrossBinDir..... $(CROSSBINDIR)
1342
@$(ECHO) UnitsDir........ $(UNITSDIR)
1343
@$(ECHO) PackagesDir..... $(PACKAGESDIR)
1345
@$(ECHO) GCC library..... $(GCCLIBDIR)
1346
@$(ECHO) Other library... $(OTHERLIBDIR)
1348
@$(ECHO) == Tools info ==
1350
@$(ECHO) As........ $(AS)
1351
@$(ECHO) Ld........ $(LD)
1352
@$(ECHO) Ar........ $(AR)
1353
@$(ECHO) Rc........ $(RC)
1355
@$(ECHO) Mv........ $(MVPROG)
1356
@$(ECHO) Cp........ $(CPPROG)
1357
@$(ECHO) Rm........ $(RMPROG)
1358
@$(ECHO) GInstall.. $(GINSTALL)
1359
@$(ECHO) Echo...... $(ECHO)
1360
@$(ECHO) Shell..... $(SHELL)
1361
@$(ECHO) Date...... $(DATE)
1362
@$(ECHO) FPCMake... $(FPCMAKE)
1363
@$(ECHO) PPUMove... $(PPUMOVE)
1364
@$(ECHO) Upx....... $(UPXPROG)
1365
@$(ECHO) Zip....... $(ZIPPROG)
1367
@$(ECHO) == Object info ==
1369
@$(ECHO) Target Loaders........ $(TARGET_LOADERS)
1370
@$(ECHO) Target Units.......... $(TARGET_UNITS)
1371
@$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
1372
@$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
1373
@$(ECHO) Target Dirs........... $(TARGET_DIRS)
1374
@$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
1375
@$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
1377
@$(ECHO) Clean Units......... $(CLEAN_UNITS)
1378
@$(ECHO) Clean Files......... $(CLEAN_FILES)
1380
@$(ECHO) Install Units....... $(INSTALL_UNITS)
1381
@$(ECHO) Install Files....... $(INSTALL_FILES)
1383
@$(ECHO) == Install info ==
1385
@$(ECHO) DateStr.............. $(DATESTR)
1386
@$(ECHO) ZipName.............. $(ZIPNAME)
1387
@$(ECHO) ZipPrefix............ $(ZIPPREFIX)
1388
@$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX)
1389
@$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
1390
@$(ECHO) FullZipName.......... $(FULLZIPNAME)
1391
@$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
1393
@$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
1394
@$(ECHO) Install binary dir... $(INSTALL_BINDIR)
1395
@$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
1396
@$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
1397
@$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
1398
@$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
1399
@$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
1400
@$(ECHO) Install data dir..... $(INSTALL_DATADIR)
1402
@$(ECHO) Dist destination dir. $(DIST_DESTDIR)
1403
@$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
1406
fpc_info: $(INFORULES)
1407
.PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
1410
$(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
1413
$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
1415
ifdef TARGET_EXAMPLEDIRS
1416
$(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
1418
fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
1419
fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
1420
fpc_makefiles: fpc_makefile fpc_makefile_dirs
1426
sourceinstall: fpc_sourceinstall
1427
exampleinstall: fpc_exampleinstall
1428
distinstall: fpc_distinstall
1429
zipinstall: fpc_zipinstall
1430
zipsourceinstall: fpc_zipsourceinstall
1431
zipexampleinstall: fpc_zipexampleinstall
1432
zipdistinstall: fpc_zipdistinstall
1435
makefiles: fpc_makefiles
1436
.PHONY: debug smart release units shared sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall cleanall info makefiles
1437
ifneq ($(wildcard fpcmake.loc),)
1441
DOCS = user rtl ref prog fpdoc chart
139
1443
PREAMBLETYPE = report
143
# Where do you want the html files to be put ?
144
ifndef PREFIXINSTALLDIR
145
PREFIXINSTALLDIR=/usr
149
DOCINSTALLDIR:=$(PREFIXINSTALLDIR)/doc/fpc-$(shell $(FPC) -iV)
153
1446
ifneq ($(wildcard ../utils/fpdoc/fpdoc),)
154
1447
FPDOC=../utils/fpdoc/fpdoc
309
1550
@echo ' htmldist : html, and rchive result.'
310
1551
@echo ' psdist : ps, and archive result.'
311
1552
@echo ' pdfdist : pdf, and archive result.'
314
-rm -f preamble.inc date.inc htex.sed
315
-rm -f *.htex *.hind *.haux *.htoc $(addsuffix *.html,$(HTML))
1554
-rm -f preamble.inc date.inc messages.inc rtl.inc
316
1555
-rm -f *.4tc *.4ct *.css *.lg *.tmp *.xref
317
-rm -rf $(HTML) onechap
318
-rm -f $(TOC) $(LOG) $(DVI) $(PDF) $(AUX) $(OUT) $(PS) *.i* $(LOT) $(TXT) $(CHK)
319
-rm -f onechap.dvi onechap.pdf onechap.ps onechap.out onechap.log onechap.aux
321
-rm -f $(notdir $(wildcard styles/*))
323
-$(MAKE) -C crtex clean
324
-$(MAKE) -C dosex clean
325
-$(MAKE) -C go32ex clean
326
-$(MAKE) -C heapex clean
327
-$(MAKE) -C ipcex clean
328
-$(MAKE) -C linuxex clean
329
-$(MAKE) -C mmouseex clean
330
-$(MAKE) -C mouseex clean
331
-$(MAKE) -C objectex clean
332
-$(MAKE) -C optex clean
333
-$(MAKE) -C printex clean
334
-$(MAKE) -C sockex clean
335
-$(MAKE) -C stringex clean
336
-$(MAKE) -C sysutex clean
337
-$(MAKE) -C mathex clean
338
-$(MAKE) -C graphex clean
339
-$(MAKE) -C gpmex clean
340
-$(MAKE) -C typinfex clean
341
-$(MAKE) -C kbdex clean
342
-$(MAKE) -C videoex clean
344
-$(MAKE) -C refex clean
346
-$(MAKE) -C progex clean
348
$(TXT) : %.txt: %.dvi
350
$(DVI) : %.dvi: %.tex
352
$(PDF) : %.pdf: %.tex
358
$(MAKE) -C go32ex tex
359
$(MAKE) -C heapex tex
361
$(MAKE) -C linuxex tex
362
$(MAKE) -C mouseex tex
363
$(MAKE) -C mmouseex tex
364
$(MAKE) -C objectex tex
366
$(MAKE) -C printex tex
367
$(MAKE) -C sockex tex
368
$(MAKE) -C stringex tex
369
$(MAKE) -C sysutex tex
370
$(MAKE) -C mathex tex
371
$(MAKE) -C graphex tex
374
$(MAKE) -C typinfex tex
375
$(MAKE) -C videoex tex
387
$(MAKE) -C progex tex
392
msg2inc -TE ../compiler/errore.msg messages.tex
1557
-rm -f $(CHK) $(TOC) $(LOG) $(DVI) $(PDF) $(AUX) $(OUT) $(PS) $(HTML) *.i* $(LOT) $(TXT)
1558
-rm -f $(notdir $(wildcard styles/*.sty))
1559
distclean: clean cleanexamples
1560
-rm -f *.tar.gz *.zip
399
1562
@echo \\date\{`date +'%B %Y'`\} > date.inc
402
cp -f preamble.$(PREAMBLETYPE) preamble.inc
404
ifeq ($(OS),Windows_NT)
412
chmod +x progex/c2tex
416
# Local copy of the required styles
1563
../compiler/msg2inc$(EXEEXT):
1564
$(MAKE) -C ../compiler msg2inc
1565
messages.inc: ../compiler/msg2inc$(EXEEXT) ../compiler/msg/errore.msg
1566
../compiler/msg2inc -TE ../compiler/msg/errore.msg messages.inc
417
1567
syntax.sty: styles/syntax.sty
418
cp $(wildcard styles/*.*) .
421
includes: date.inc preamble.inc syntax.sty scripts.chk
1568
cp $(wildcard styles/*.sty) .
1569
INCLUDES=date.inc syntax.sty
1570
SYSTEMUNITDIR=$(OS_SOURCE)
1571
ifeq ($(findstring bsd,$(OS_SOURCE)),)
1572
override SYSTEMUNITDIR=bsd
1574
ifeq ($(findstring darwin,$(OS_SOURCE)),)
1575
override SYSTEMUNITDIR=bsd
1578
ifneq ($(findstring $(OS_SOURCE),linux freebsd darwin netbsd openbsd),)
423
includes: date.inc preamble.inc syntax.sty
1581
CLASSESUNITDIR=$(OS_SOURCE)
427
#####################################################################
429
#####################################################################
430
FCLOPTS=--package=fcl --descr=classes.xml --input='$(FPCSRCDIR)/rtl/$(HOSTOS)/classes.pp -Fi$(FPCSRCDIR)/rtl/objpas/classes'
1583
FCLOPTS=--package=fcl --descr=classes.xml --input='$(FPCSRCDIR)/rtl/$(OS_SOURCE)/classes.pp -Fi$(FPCSRCDIR)/rtl/objpas/classes'
432
1584
fcl.inc: classes.xml
433
1585
$(FPDOC) --output=fcl.inc $(FCLOPTS) --format=latex
435
#####################################################################
437
#####################################################################
441
units.dvi: units.tex includes $(CHAPTERS)
443
ref.dvi: ref.tex includes
445
prog.dvi: prog.tex includes
447
user.dvi: user.tex includes
449
fpdoc.dvi: fpdoc.tex includes
451
fcl.dvi: fcl.tex fcl.inc includes
1586
RTLOPTS=--hide-protected --warn-no-node --package=rtl --descr=rtl.xml
1587
ifndef CURRENTXMLONLY
1588
XMLUNITS=sysutils strutils dateutils strings mouse keyboard \
1589
crt video dos sockets objects heaptrc mmx ipc printer typinfo \
1590
ports getopts emu387 dxeload go32 gpm graph oldlinux baseunix \
1591
unixtype unix classes unixutil x86 dynlibs linux math system\
1592
objpas dateutils rtl
1593
RTLXML=$(addsuffix .xml,$(XMLUNITS))
1594
RTLOPTS+= --descr=strutils.xml --input="../rtl/objpas/strutils.pp"
1595
RTLOPTS+= --descr=sysutils.xml --input="../rtl/unix/sysutils.pp -Fi../rtl/objpas/sysutils -Fi../rtl/inc"
1596
RTLOPTS+= --descr=strings.xml --input="../rtl/inc/strings.pp -Fi../rtl/i386 -Fi../rtl/inc"
1597
RTLOPTS+= --descr=mouse.xml --input="../rtl/unix/mouse.pp -Fi../rtl/inc"
1598
RTLOPTS+= --descr=keyboard.xml --input="../rtl/unix/keyboard.pp -Fi../rtl/inc"
1599
RTLOPTS+= --descr=crt.xml --input="../rtl/unix/crt.pp -Fi../rtl/inc"
1600
RTLOPTS+= --descr=video.xml --input="../rtl/unix/video.pp -Fi../rtl/inc"
1601
RTLOPTS+= --descr=dos.xml --input="../rtl/unix/dos.pp -Fi../rtl/inc -dcpui386"
1602
RTLOPTS+= --descr=sockets.xml --input="-dver1_0 ../rtl/unix/sockets.pp -Fi../rtl/inc -Fi../rtl/$(OS_SOURCE)"
1603
RTLOPTS+= --descr=objects.xml --input="../rtl/inc/objects.pp -Fi../rtl/i386 -Fi../rtl/$(OS_SOURCE)"
1604
RTLOPTS+= --descr=heaptrc.xml --input="../rtl/inc/heaptrc.pp -Fi../rtl/i386 -Fi../rtl/$(OS_SOURCE)"
1605
RTLOPTS+= --descr=mmx.xml --input="../rtl/i386/mmx.pp -Fi../rtl/$(OS_SOURCE)"
1606
RTLOPTS+= --descr=ipc.xml --input="../rtl/unix/ipc.pp -Fi../rtl/$(OS_SOURCE)"
1607
RTLOPTS+= --descr=printer.xml --input="../rtl/unix/printer.pp -Fi../rtl/$(OS_SOURCE) -Fi../rtl/inc"
1608
RTLOPTS+= --descr=typinfo.xml --input="../rtl/objpas/typinfo.pp -Fi../rtl/$(OS_SOURCE)"
1609
RTLOPTS+= --descr=ports.xml --input="../rtl/unix/ports.pp -Fi../rtl/$(OS_SOURCE)"
1610
RTLOPTS+= --descr=getopts.xml --input="../rtl/inc/getopts.pp -Fi../rtl/$(OS_SOURCE)"
1611
RTLOPTS+= --descr=emu387.xml --input="../rtl/go32v2/emu387.pp -Fi../rtl/i386"
1612
RTLOPTS+= --descr=dxeload.xml --input="../rtl/go32v2/dxeload.pp -Fi../rtl/i386"
1613
RTLOPTS+= --descr=go32.xml --input="../rtl/go32v2/go32.pp -Fi../rtl/i386"
1614
RTLOPTS+= --descr=gpm.xml --input="-dVER1_0 ../rtl/linux/gpm.pp -Fi../rtl/i386"
1615
RTLOPTS+= --descr=graph.xml --input="../rtl/unix/graph.pp -Fi../rtl/i386 -Fi../rtl/inc/graph"
1616
RTLOPTS+= --descr=oldlinux.xml --input="../rtl/unix/oldlinux.pp -Fi../rtl/linux -Fi../rtl/unix"
1617
RTLOPTS+= --descr=unixtype.xml --input="../rtl/unix/unixtype.pp -Fi../rtl/unix -Fi../rtl/linux -Fi../rtl/linux/i386"
1618
RTLOPTS+= --descr=baseunix.xml --input="../rtl/unix/baseunix.pp -Fi../rtl/unix -Fi../rtl/linux -Fi../rtl/linux/i386"
1619
RTLOPTS+= --descr=unix.xml --input="../rtl/unix/unix.pp -Fi../rtl/unix -Fi../rtl/linux -Fi../rtl/linux/i386"
1620
RTLOPTS+= --descr=classes.xml --input='$(FPCSRCDIR)/rtl/$(CLASSESUNITDIR)/classes.pp -Fi$(FPCSRCDIR)/rtl/objpas/classes'
1621
RTLOPTS+= --descr=unixutil.xml --input="../rtl/unix/unixutil.pp"
1622
RTLOPTS+= --descr=x86.xml --input="../rtl/unix/x86.pp"
1623
RTLOPTS+= --descr=dynlibs.xml --input="../rtl/inc/dynlibs.pp -Fi../rtl/unix"
1624
RTLOPTS+= --descr=linux.xml --input="../rtl/unix/linux.pp -Fi../rtl/linux -Fi../rtl/unix"
1625
RTLOPTS+= --descr=math.xml --input="../rtl/objpas/math.pp -Fi../rtl/i386 -dFPC_HAS_TYPE_EXTENDED"
1626
RTLOPTS+= --descr=system.xml --input="-dfpdocsystem -dHASGETHEAPSTATUS -dSUPPORT_DOUBLE ../rtl/$(SYSTEMUNITDIR)/system.pp -Fi../rtl/$(OS_SOURCE) -Fi../rtl/unix -Fi../rtl/inc -Fi../rtl/i386 -dCPU32 -dHASVARIANT -dFPC_HAS_TYPE_EXTENDED -dHASWIDECHAR"
1627
RTLOPTS+=--descr=objpas.xml --input="-dHASINTF ../rtl/objpas/objpas.pp"
1628
RTLOPTS+=--descr=dateutils.xml --input="../rtl/objpas/dateutils.pp -Fi../rtl/objpas"
1630
RTLXML=dateutils.xml
1631
RTLOPTS+=--descr=dateutils.xml --input="../rtl/objpas/dateutils.pp -Fi../rtl/objpas"
1634
$(FPDOC) --output=rtl.inc $(RTLOPTS) --format=latex
1635
ref.dvi: ref.tex $(INCLUDES)
1636
prog.dvi: prog.tex $(INCLUDES)
1637
user.dvi: user.tex $(INCLUDES) messages.inc
1638
fpdoc.dvi: fpdoc.tex $(INCLUDES)
1639
fcl.dvi: fcl.tex fcl.inc $(INCLUDES)
453
1640
chart.dvi: chart.tex
455
units.pdf: units.tex includes $(CHAPTERS)
457
ref.pdf: ref.tex includes
459
user.pdf: user.tex includes
461
prog.pdf: prog.tex includes
463
onechap.pdf: onechap.tex includes
465
onechap.dvi: onechap.tex includes
467
fpdoc.pdf: fpdoc.tex includes
469
fcl.pdf: fcl.tex fcl.inc includes
1641
ref.pdf: ref.tex $(INCLUDES)
1642
user.pdf: user.tex $(INCLUDES) messages.inc
1643
prog.pdf: prog.tex $(INCLUDES)
1644
onechap.pdf: onechap.tex $(INCLUDES)
1645
onechap.dvi: onechap.tex $(INCLUDES)
1646
fpdoc.pdf: fpdoc.tex $(INCLUDES)
1647
fcl.pdf: fcl.tex fcl.inc $(INCLUDES)
471
1648
chart.pdf: chart.tex
1649
rtl.dvi: rtl.tex rtl.inc $(INCLUDES)
1650
rtl.pdf: rtl.tex rtl.inc $(INCLUDES)
475
1652
txt : dvi $(TXT)
481
1655
all : dvi ps pdf txt html
484
#######################################################################
486
#######################################################################
488
.PHONY: htex user prog units onechap ref internal html hevea
1656
.PHONY: htex user prog onechap ref internal html hevea
490
1657
ifdef INSTALLDEBUG
491
#######################################################################
492
# Installation debugging
495
1660
cp $@.tex $@/index.html
498
#######################################################################
499
# Automatic selection. Default tex4ht
501
1664
include Makefile.hev