Makefile 64 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034
  1. #
  2. # Don't edit, this file is generated by FPCMake Version 1.9.8 [2005/01/11]
  3. #
  4. default: all
  5. MAKEFILETARGETS=i386-linux i386-go32v2 i386-win32 i386-os2 i386-freebsd i386-beos i386-netbsd i386-sunos i386-qnx i386-netware i386-openbsd i386-wdosx i386-emx i386-watcom i386-netwlibc m68k-linux m68k-freebsd m68k-netbsd m68k-amiga m68k-atari m68k-openbsd m68k-palmos powerpc-linux powerpc-netbsd powerpc-macos powerpc-darwin powerpc-morphos sparc-linux sparc-netbsd sparc-sunos x86_64-linux x86_64-freebsd arm-linux
  6. BSDs = freebsd netbsd openbsd darwin
  7. UNIXs = linux $(BSDs) sunos qnx
  8. LIMIT83fs = go32v2 os2 emx watcom
  9. FORCE:
  10. .PHONY: FORCE
  11. override PATH:=$(patsubst %/,%,$(subst \,/,$(PATH)))
  12. ifneq ($(findstring darwin,$(OSTYPE)),)
  13. inUnix=1 #darwin
  14. SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
  15. else
  16. ifeq ($(findstring ;,$(PATH)),)
  17. inUnix=1
  18. SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
  19. else
  20. SEARCHPATH:=$(subst ;, ,$(PATH))
  21. endif
  22. endif
  23. SEARCHPATH+=$(patsubst %/,%,$(subst \,/,$(dir $(MAKE))))
  24. PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
  25. ifeq ($(PWD),)
  26. PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
  27. ifeq ($(PWD),)
  28. $(error You need the GNU utils package to use this Makefile)
  29. else
  30. PWD:=$(firstword $(PWD))
  31. SRCEXEEXT=
  32. endif
  33. else
  34. PWD:=$(firstword $(PWD))
  35. SRCEXEEXT=.exe
  36. endif
  37. ifndef inUnix
  38. ifeq ($(OS),Windows_NT)
  39. inWinNT=1
  40. else
  41. ifdef OS2_SHELL
  42. inOS2=1
  43. endif
  44. endif
  45. else
  46. ifneq ($(findstring cygdrive,$(PATH)),)
  47. inCygWin=1
  48. endif
  49. endif
  50. ifdef inUnix
  51. SRCBATCHEXT=.sh
  52. else
  53. ifdef inOS2
  54. SRCBATCHEXT=.cmd
  55. else
  56. SRCBATCHEXT=.bat
  57. endif
  58. endif
  59. ifdef inUnix
  60. PATHSEP=/
  61. else
  62. PATHSEP:=$(subst /,\,/)
  63. ifdef inCygWin
  64. PATHSEP=/
  65. endif
  66. endif
  67. ifdef PWD
  68. BASEDIR:=$(subst \,/,$(shell $(PWD)))
  69. ifdef inCygWin
  70. ifneq ($(findstring /cygdrive/,$(BASEDIR)),)
  71. BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR))
  72. BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR)))
  73. BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR))
  74. endif
  75. endif
  76. else
  77. BASEDIR=.
  78. endif
  79. ifdef inOS2
  80. ifndef ECHO
  81. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  82. ifeq ($(ECHO),)
  83. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  84. ifeq ($(ECHO),)
  85. ECHO=echo
  86. else
  87. ECHO:=$(firstword $(ECHO))
  88. endif
  89. else
  90. ECHO:=$(firstword $(ECHO))
  91. endif
  92. endif
  93. export ECHO
  94. endif
  95. override OS_TARGET_DEFAULT=win32
  96. override DEFAULT_FPCDIR=../..
  97. ifndef FPC
  98. ifdef PP
  99. FPC=$(PP)
  100. endif
  101. endif
  102. ifndef FPC
  103. FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
  104. ifneq ($(FPCPROG),)
  105. FPCPROG:=$(firstword $(FPCPROG))
  106. FPC:=$(shell $(FPCPROG) -PB)
  107. ifneq ($(findstring Error,$(FPC)),)
  108. override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
  109. endif
  110. else
  111. override FPC=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
  112. endif
  113. endif
  114. override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
  115. override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
  116. FOUNDFPC:=$(strip $(wildcard $(FPC)))
  117. ifeq ($(FOUNDFPC),)
  118. FOUNDFPC=$(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))
  119. ifeq ($(FOUNDFPC),)
  120. $(error Compiler $(FPC) not found)
  121. endif
  122. endif
  123. ifndef FPC_COMPILERINFO
  124. FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
  125. endif
  126. ifndef FPC_VERSION
  127. FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
  128. endif
  129. export FPC FPC_VERSION FPC_COMPILERINFO
  130. unexport CHECKDEPEND ALLDEPENDENCIES
  131. ifndef CPU_TARGET
  132. ifdef CPU_TARGET_DEFAULT
  133. CPU_TARGET=$(CPU_TARGET_DEFAULT)
  134. endif
  135. endif
  136. ifndef OS_TARGET
  137. ifdef OS_TARGET_DEFAULT
  138. OS_TARGET=$(OS_TARGET_DEFAULT)
  139. endif
  140. endif
  141. ifneq ($(words $(FPC_COMPILERINFO)),5)
  142. FPC_COMPILERINFO+=$(shell $(FPC) -iSP)
  143. FPC_COMPILERINFO+=$(shell $(FPC) -iTP)
  144. FPC_COMPILERINFO+=$(shell $(FPC) -iSO)
  145. FPC_COMPILERINFO+=$(shell $(FPC) -iTO)
  146. endif
  147. ifndef CPU_SOURCE
  148. CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
  149. endif
  150. ifndef CPU_TARGET
  151. CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
  152. endif
  153. ifndef OS_SOURCE
  154. OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
  155. endif
  156. ifndef OS_TARGET
  157. OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
  158. endif
  159. FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
  160. FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
  161. ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
  162. TARGETSUFFIX=$(OS_TARGET)
  163. SOURCESUFFIX=$(OS_SOURCE)
  164. else
  165. TARGETSUFFIX=$(FULL_TARGET)
  166. SOURCESUFFIX=$(FULL_SOURCE)
  167. endif
  168. ifneq ($(FULL_TARGET),$(FULL_SOURCE))
  169. CROSSCOMPILE=1
  170. endif
  171. ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
  172. ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),)
  173. $(error The Makefile doesn't support target $(FULL_TARGET), please run fpcmake first)
  174. endif
  175. endif
  176. ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
  177. BSDhier=1
  178. endif
  179. ifeq ($(OS_TARGET),linux)
  180. linuxHier=1
  181. endif
  182. export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE
  183. ifdef FPCDIR
  184. override FPCDIR:=$(subst \,/,$(FPCDIR))
  185. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  186. override FPCDIR=wrong
  187. endif
  188. else
  189. override FPCDIR=wrong
  190. endif
  191. ifdef DEFAULT_FPCDIR
  192. ifeq ($(FPCDIR),wrong)
  193. override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
  194. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  195. override FPCDIR=wrong
  196. endif
  197. endif
  198. endif
  199. ifeq ($(FPCDIR),wrong)
  200. ifdef inUnix
  201. override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
  202. ifeq ($(wildcard $(FPCDIR)/units),)
  203. override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
  204. endif
  205. else
  206. override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
  207. override FPCDIR:=$(FPCDIR)/..
  208. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  209. override FPCDIR:=$(FPCDIR)/..
  210. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  211. override FPCDIR:=$(BASEDIR)
  212. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  213. override FPCDIR=c:/pp
  214. endif
  215. endif
  216. endif
  217. endif
  218. endif
  219. ifndef CROSSBINDIR
  220. CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
  221. endif
  222. ifndef BINUTILSPREFIX
  223. ifndef CROSSBINDIR
  224. ifdef CROSSCOMPILE
  225. BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
  226. endif
  227. endif
  228. endif
  229. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX))
  230. ifeq ($(UNITSDIR),)
  231. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
  232. endif
  233. PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
  234. override PACKAGE_NAME=rtl
  235. PACKAGEDIR_MAIN:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
  236. RTL=..
  237. INC=$(RTL)/inc
  238. PROCINC=$(RTL)/$(CPU_TARGET)
  239. WININC=wininc
  240. UNITPREFIX=rtl
  241. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  242. SYSTEMUNIT=system
  243. PRT0=wprt0
  244. else
  245. SYSTEMUNIT=syswin32
  246. PRT0=wprt0_10
  247. endif
  248. ifdef RELEASE
  249. override FPCOPT+=-Ur
  250. endif
  251. OBJPASDIR=$(RTL)/objpas
  252. GRAPHDIR=$(INC)/graph
  253. include $(WININC)/makefile.inc
  254. WINDOWS_SOURCE_FILES=$(addprefix $(WININC)/,$(addsuffix .inc,$(WINDOWS_FILES)))
  255. ifeq ($(FULL_TARGET),i386-linux)
  256. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  257. endif
  258. ifeq ($(FULL_TARGET),i386-go32v2)
  259. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  260. endif
  261. ifeq ($(FULL_TARGET),i386-win32)
  262. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  263. endif
  264. ifeq ($(FULL_TARGET),i386-os2)
  265. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  266. endif
  267. ifeq ($(FULL_TARGET),i386-freebsd)
  268. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  269. endif
  270. ifeq ($(FULL_TARGET),i386-beos)
  271. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  272. endif
  273. ifeq ($(FULL_TARGET),i386-netbsd)
  274. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  275. endif
  276. ifeq ($(FULL_TARGET),i386-sunos)
  277. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  278. endif
  279. ifeq ($(FULL_TARGET),i386-qnx)
  280. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  281. endif
  282. ifeq ($(FULL_TARGET),i386-netware)
  283. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  284. endif
  285. ifeq ($(FULL_TARGET),i386-openbsd)
  286. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  287. endif
  288. ifeq ($(FULL_TARGET),i386-wdosx)
  289. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  290. endif
  291. ifeq ($(FULL_TARGET),i386-emx)
  292. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  293. endif
  294. ifeq ($(FULL_TARGET),i386-watcom)
  295. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  296. endif
  297. ifeq ($(FULL_TARGET),i386-netwlibc)
  298. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  299. endif
  300. ifeq ($(FULL_TARGET),m68k-linux)
  301. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  302. endif
  303. ifeq ($(FULL_TARGET),m68k-freebsd)
  304. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  305. endif
  306. ifeq ($(FULL_TARGET),m68k-netbsd)
  307. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  308. endif
  309. ifeq ($(FULL_TARGET),m68k-amiga)
  310. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  311. endif
  312. ifeq ($(FULL_TARGET),m68k-atari)
  313. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  314. endif
  315. ifeq ($(FULL_TARGET),m68k-openbsd)
  316. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  317. endif
  318. ifeq ($(FULL_TARGET),m68k-palmos)
  319. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  320. endif
  321. ifeq ($(FULL_TARGET),powerpc-linux)
  322. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  323. endif
  324. ifeq ($(FULL_TARGET),powerpc-netbsd)
  325. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  326. endif
  327. ifeq ($(FULL_TARGET),powerpc-macos)
  328. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  329. endif
  330. ifeq ($(FULL_TARGET),powerpc-darwin)
  331. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  332. endif
  333. ifeq ($(FULL_TARGET),powerpc-morphos)
  334. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  335. endif
  336. ifeq ($(FULL_TARGET),sparc-linux)
  337. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  338. endif
  339. ifeq ($(FULL_TARGET),sparc-netbsd)
  340. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  341. endif
  342. ifeq ($(FULL_TARGET),sparc-sunos)
  343. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  344. endif
  345. ifeq ($(FULL_TARGET),x86_64-linux)
  346. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  347. endif
  348. ifeq ($(FULL_TARGET),x86_64-freebsd)
  349. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  350. endif
  351. ifeq ($(FULL_TARGET),arm-linux)
  352. override TARGET_UNITS+=$(SYSTEMUNIT) ctypes systhrds objpas macpas strings lineinfo heaptrc matrix windows winsock initc cmem dynlibs signals dos crt objects graph messages rtlconst sysconst sysutils typinfo math types strutils convutils dateutils varutils variants classes cpu mmx charset ucomplex getopts wincrt winmouse winevent sockets printer video mouse keyboard comobj winsysut ole2 activex shellapi shlobj
  353. endif
  354. ifeq ($(FULL_TARGET),i386-linux)
  355. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  356. endif
  357. ifeq ($(FULL_TARGET),i386-go32v2)
  358. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  359. endif
  360. ifeq ($(FULL_TARGET),i386-win32)
  361. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  362. endif
  363. ifeq ($(FULL_TARGET),i386-os2)
  364. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  365. endif
  366. ifeq ($(FULL_TARGET),i386-freebsd)
  367. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  368. endif
  369. ifeq ($(FULL_TARGET),i386-beos)
  370. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  371. endif
  372. ifeq ($(FULL_TARGET),i386-netbsd)
  373. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  374. endif
  375. ifeq ($(FULL_TARGET),i386-sunos)
  376. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  377. endif
  378. ifeq ($(FULL_TARGET),i386-qnx)
  379. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  380. endif
  381. ifeq ($(FULL_TARGET),i386-netware)
  382. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  383. endif
  384. ifeq ($(FULL_TARGET),i386-openbsd)
  385. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  386. endif
  387. ifeq ($(FULL_TARGET),i386-wdosx)
  388. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  389. endif
  390. ifeq ($(FULL_TARGET),i386-emx)
  391. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  392. endif
  393. ifeq ($(FULL_TARGET),i386-watcom)
  394. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  395. endif
  396. ifeq ($(FULL_TARGET),i386-netwlibc)
  397. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  398. endif
  399. ifeq ($(FULL_TARGET),m68k-linux)
  400. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  401. endif
  402. ifeq ($(FULL_TARGET),m68k-freebsd)
  403. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  404. endif
  405. ifeq ($(FULL_TARGET),m68k-netbsd)
  406. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  407. endif
  408. ifeq ($(FULL_TARGET),m68k-amiga)
  409. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  410. endif
  411. ifeq ($(FULL_TARGET),m68k-atari)
  412. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  413. endif
  414. ifeq ($(FULL_TARGET),m68k-openbsd)
  415. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  416. endif
  417. ifeq ($(FULL_TARGET),m68k-palmos)
  418. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  419. endif
  420. ifeq ($(FULL_TARGET),powerpc-linux)
  421. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  422. endif
  423. ifeq ($(FULL_TARGET),powerpc-netbsd)
  424. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  425. endif
  426. ifeq ($(FULL_TARGET),powerpc-macos)
  427. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  428. endif
  429. ifeq ($(FULL_TARGET),powerpc-darwin)
  430. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  431. endif
  432. ifeq ($(FULL_TARGET),powerpc-morphos)
  433. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  434. endif
  435. ifeq ($(FULL_TARGET),sparc-linux)
  436. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  437. endif
  438. ifeq ($(FULL_TARGET),sparc-netbsd)
  439. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  440. endif
  441. ifeq ($(FULL_TARGET),sparc-sunos)
  442. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  443. endif
  444. ifeq ($(FULL_TARGET),x86_64-linux)
  445. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  446. endif
  447. ifeq ($(FULL_TARGET),x86_64-freebsd)
  448. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  449. endif
  450. ifeq ($(FULL_TARGET),arm-linux)
  451. override TARGET_LOADERS+=wprt0 wdllprt0 gprt0 wcygprt0
  452. endif
  453. ifeq ($(FULL_TARGET),i386-linux)
  454. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  455. endif
  456. ifeq ($(FULL_TARGET),i386-go32v2)
  457. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  458. endif
  459. ifeq ($(FULL_TARGET),i386-win32)
  460. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  461. endif
  462. ifeq ($(FULL_TARGET),i386-os2)
  463. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  464. endif
  465. ifeq ($(FULL_TARGET),i386-freebsd)
  466. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  467. endif
  468. ifeq ($(FULL_TARGET),i386-beos)
  469. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  470. endif
  471. ifeq ($(FULL_TARGET),i386-netbsd)
  472. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  473. endif
  474. ifeq ($(FULL_TARGET),i386-sunos)
  475. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  476. endif
  477. ifeq ($(FULL_TARGET),i386-qnx)
  478. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  479. endif
  480. ifeq ($(FULL_TARGET),i386-netware)
  481. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  482. endif
  483. ifeq ($(FULL_TARGET),i386-openbsd)
  484. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  485. endif
  486. ifeq ($(FULL_TARGET),i386-wdosx)
  487. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  488. endif
  489. ifeq ($(FULL_TARGET),i386-emx)
  490. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  491. endif
  492. ifeq ($(FULL_TARGET),i386-watcom)
  493. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  494. endif
  495. ifeq ($(FULL_TARGET),i386-netwlibc)
  496. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  497. endif
  498. ifeq ($(FULL_TARGET),m68k-linux)
  499. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  500. endif
  501. ifeq ($(FULL_TARGET),m68k-freebsd)
  502. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  503. endif
  504. ifeq ($(FULL_TARGET),m68k-netbsd)
  505. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  506. endif
  507. ifeq ($(FULL_TARGET),m68k-amiga)
  508. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  509. endif
  510. ifeq ($(FULL_TARGET),m68k-atari)
  511. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  512. endif
  513. ifeq ($(FULL_TARGET),m68k-openbsd)
  514. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  515. endif
  516. ifeq ($(FULL_TARGET),m68k-palmos)
  517. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  518. endif
  519. ifeq ($(FULL_TARGET),powerpc-linux)
  520. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  521. endif
  522. ifeq ($(FULL_TARGET),powerpc-netbsd)
  523. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  524. endif
  525. ifeq ($(FULL_TARGET),powerpc-macos)
  526. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  527. endif
  528. ifeq ($(FULL_TARGET),powerpc-darwin)
  529. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  530. endif
  531. ifeq ($(FULL_TARGET),powerpc-morphos)
  532. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  533. endif
  534. ifeq ($(FULL_TARGET),sparc-linux)
  535. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  536. endif
  537. ifeq ($(FULL_TARGET),sparc-netbsd)
  538. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  539. endif
  540. ifeq ($(FULL_TARGET),sparc-sunos)
  541. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  542. endif
  543. ifeq ($(FULL_TARGET),x86_64-linux)
  544. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  545. endif
  546. ifeq ($(FULL_TARGET),x86_64-freebsd)
  547. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  548. endif
  549. ifeq ($(FULL_TARGET),arm-linux)
  550. override TARGET_RSTS+=math varutils typinfo variants classes dateutils sysconst
  551. endif
  552. override INSTALL_FPCPACKAGE=y
  553. ifeq ($(FULL_TARGET),i386-linux)
  554. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  555. endif
  556. ifeq ($(FULL_TARGET),i386-go32v2)
  557. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  558. endif
  559. ifeq ($(FULL_TARGET),i386-win32)
  560. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  561. endif
  562. ifeq ($(FULL_TARGET),i386-os2)
  563. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  564. endif
  565. ifeq ($(FULL_TARGET),i386-freebsd)
  566. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  567. endif
  568. ifeq ($(FULL_TARGET),i386-beos)
  569. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  570. endif
  571. ifeq ($(FULL_TARGET),i386-netbsd)
  572. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  573. endif
  574. ifeq ($(FULL_TARGET),i386-sunos)
  575. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  576. endif
  577. ifeq ($(FULL_TARGET),i386-qnx)
  578. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  579. endif
  580. ifeq ($(FULL_TARGET),i386-netware)
  581. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  582. endif
  583. ifeq ($(FULL_TARGET),i386-openbsd)
  584. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  585. endif
  586. ifeq ($(FULL_TARGET),i386-wdosx)
  587. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  588. endif
  589. ifeq ($(FULL_TARGET),i386-emx)
  590. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  591. endif
  592. ifeq ($(FULL_TARGET),i386-watcom)
  593. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  594. endif
  595. ifeq ($(FULL_TARGET),i386-netwlibc)
  596. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  597. endif
  598. ifeq ($(FULL_TARGET),m68k-linux)
  599. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  600. endif
  601. ifeq ($(FULL_TARGET),m68k-freebsd)
  602. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  603. endif
  604. ifeq ($(FULL_TARGET),m68k-netbsd)
  605. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  606. endif
  607. ifeq ($(FULL_TARGET),m68k-amiga)
  608. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  609. endif
  610. ifeq ($(FULL_TARGET),m68k-atari)
  611. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  612. endif
  613. ifeq ($(FULL_TARGET),m68k-openbsd)
  614. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  615. endif
  616. ifeq ($(FULL_TARGET),m68k-palmos)
  617. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  618. endif
  619. ifeq ($(FULL_TARGET),powerpc-linux)
  620. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  621. endif
  622. ifeq ($(FULL_TARGET),powerpc-netbsd)
  623. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  624. endif
  625. ifeq ($(FULL_TARGET),powerpc-macos)
  626. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  627. endif
  628. ifeq ($(FULL_TARGET),powerpc-darwin)
  629. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  630. endif
  631. ifeq ($(FULL_TARGET),powerpc-morphos)
  632. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  633. endif
  634. ifeq ($(FULL_TARGET),sparc-linux)
  635. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  636. endif
  637. ifeq ($(FULL_TARGET),sparc-netbsd)
  638. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  639. endif
  640. ifeq ($(FULL_TARGET),sparc-sunos)
  641. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  642. endif
  643. ifeq ($(FULL_TARGET),x86_64-linux)
  644. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  645. endif
  646. ifeq ($(FULL_TARGET),x86_64-freebsd)
  647. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  648. endif
  649. ifeq ($(FULL_TARGET),arm-linux)
  650. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  651. endif
  652. ifeq ($(FULL_TARGET),i386-linux)
  653. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  654. endif
  655. ifeq ($(FULL_TARGET),i386-go32v2)
  656. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  657. endif
  658. ifeq ($(FULL_TARGET),i386-win32)
  659. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  660. endif
  661. ifeq ($(FULL_TARGET),i386-os2)
  662. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  663. endif
  664. ifeq ($(FULL_TARGET),i386-freebsd)
  665. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  666. endif
  667. ifeq ($(FULL_TARGET),i386-beos)
  668. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  669. endif
  670. ifeq ($(FULL_TARGET),i386-netbsd)
  671. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  672. endif
  673. ifeq ($(FULL_TARGET),i386-sunos)
  674. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  675. endif
  676. ifeq ($(FULL_TARGET),i386-qnx)
  677. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  678. endif
  679. ifeq ($(FULL_TARGET),i386-netware)
  680. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  681. endif
  682. ifeq ($(FULL_TARGET),i386-openbsd)
  683. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  684. endif
  685. ifeq ($(FULL_TARGET),i386-wdosx)
  686. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  687. endif
  688. ifeq ($(FULL_TARGET),i386-emx)
  689. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  690. endif
  691. ifeq ($(FULL_TARGET),i386-watcom)
  692. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  693. endif
  694. ifeq ($(FULL_TARGET),i386-netwlibc)
  695. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  696. endif
  697. ifeq ($(FULL_TARGET),m68k-linux)
  698. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  699. endif
  700. ifeq ($(FULL_TARGET),m68k-freebsd)
  701. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  702. endif
  703. ifeq ($(FULL_TARGET),m68k-netbsd)
  704. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  705. endif
  706. ifeq ($(FULL_TARGET),m68k-amiga)
  707. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  708. endif
  709. ifeq ($(FULL_TARGET),m68k-atari)
  710. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  711. endif
  712. ifeq ($(FULL_TARGET),m68k-openbsd)
  713. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  714. endif
  715. ifeq ($(FULL_TARGET),m68k-palmos)
  716. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  717. endif
  718. ifeq ($(FULL_TARGET),powerpc-linux)
  719. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  720. endif
  721. ifeq ($(FULL_TARGET),powerpc-netbsd)
  722. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  723. endif
  724. ifeq ($(FULL_TARGET),powerpc-macos)
  725. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  726. endif
  727. ifeq ($(FULL_TARGET),powerpc-darwin)
  728. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  729. endif
  730. ifeq ($(FULL_TARGET),powerpc-morphos)
  731. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  732. endif
  733. ifeq ($(FULL_TARGET),sparc-linux)
  734. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  735. endif
  736. ifeq ($(FULL_TARGET),sparc-netbsd)
  737. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  738. endif
  739. ifeq ($(FULL_TARGET),sparc-sunos)
  740. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  741. endif
  742. ifeq ($(FULL_TARGET),x86_64-linux)
  743. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  744. endif
  745. ifeq ($(FULL_TARGET),x86_64-freebsd)
  746. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  747. endif
  748. ifeq ($(FULL_TARGET),arm-linux)
  749. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  750. endif
  751. ifdef REQUIRE_UNITSDIR
  752. override UNITSDIR+=$(REQUIRE_UNITSDIR)
  753. endif
  754. ifdef REQUIRE_PACKAGESDIR
  755. override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
  756. endif
  757. ifdef ZIPINSTALL
  758. ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
  759. UNIXHier=1
  760. endif
  761. else
  762. ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
  763. UNIXHier=1
  764. endif
  765. endif
  766. ifndef INSTALL_PREFIX
  767. ifdef PREFIX
  768. INSTALL_PREFIX=$(PREFIX)
  769. endif
  770. endif
  771. ifndef INSTALL_PREFIX
  772. ifdef UNIXHier
  773. INSTALL_PREFIX=/usr/local
  774. else
  775. ifdef INSTALL_FPCPACKAGE
  776. INSTALL_BASEDIR:=/pp
  777. else
  778. INSTALL_BASEDIR:=/$(PACKAGE_NAME)
  779. endif
  780. endif
  781. endif
  782. export INSTALL_PREFIX
  783. ifdef INSTALL_FPCSUBDIR
  784. export INSTALL_FPCSUBDIR
  785. endif
  786. ifndef DIST_DESTDIR
  787. DIST_DESTDIR:=$(BASEDIR)
  788. endif
  789. export DIST_DESTDIR
  790. ifndef COMPILER_UNITTARGETDIR
  791. ifdef PACKAGEDIR_MAIN
  792. COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
  793. else
  794. COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
  795. endif
  796. endif
  797. ifndef COMPILER_TARGETDIR
  798. COMPILER_TARGETDIR=.
  799. endif
  800. ifndef INSTALL_BASEDIR
  801. ifdef UNIXHier
  802. ifdef INSTALL_FPCPACKAGE
  803. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
  804. else
  805. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
  806. endif
  807. else
  808. INSTALL_BASEDIR:=$(INSTALL_PREFIX)
  809. endif
  810. endif
  811. ifndef INSTALL_BINDIR
  812. ifdef UNIXHier
  813. INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
  814. else
  815. INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
  816. ifdef INSTALL_FPCPACKAGE
  817. ifdef CROSSCOMPILE
  818. ifdef CROSSINSTALL
  819. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
  820. else
  821. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
  822. endif
  823. else
  824. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
  825. endif
  826. endif
  827. endif
  828. endif
  829. ifndef INSTALL_UNITDIR
  830. INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
  831. ifdef INSTALL_FPCPACKAGE
  832. ifdef PACKAGE_NAME
  833. INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
  834. endif
  835. endif
  836. endif
  837. ifndef INSTALL_LIBDIR
  838. ifdef UNIXHier
  839. INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
  840. else
  841. INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
  842. endif
  843. endif
  844. ifndef INSTALL_SOURCEDIR
  845. ifdef UNIXHier
  846. ifdef BSDhier
  847. SRCPREFIXDIR=share/src
  848. else
  849. ifdef linuxHier
  850. SRCPREFIXDIR=share/src
  851. else
  852. SRCPREFIXDIR=src
  853. endif
  854. endif
  855. ifdef INSTALL_FPCPACKAGE
  856. ifdef INSTALL_FPCSUBDIR
  857. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  858. else
  859. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  860. endif
  861. else
  862. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  863. endif
  864. else
  865. ifdef INSTALL_FPCPACKAGE
  866. ifdef INSTALL_FPCSUBDIR
  867. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  868. else
  869. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
  870. endif
  871. else
  872. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
  873. endif
  874. endif
  875. endif
  876. ifndef INSTALL_DOCDIR
  877. ifdef UNIXHier
  878. ifdef BSDhier
  879. DOCPREFIXDIR=share/doc
  880. else
  881. ifdef linuxHier
  882. DOCPREFIXDIR=share/doc
  883. else
  884. DOCPREFIXDIR=doc
  885. endif
  886. endif
  887. ifdef INSTALL_FPCPACKAGE
  888. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  889. else
  890. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  891. endif
  892. else
  893. ifdef INSTALL_FPCPACKAGE
  894. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
  895. else
  896. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
  897. endif
  898. endif
  899. endif
  900. ifndef INSTALL_EXAMPLEDIR
  901. ifdef UNIXHier
  902. ifdef INSTALL_FPCPACKAGE
  903. ifdef BSDhier
  904. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  905. else
  906. ifdef linuxHier
  907. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
  908. else
  909. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
  910. endif
  911. endif
  912. else
  913. ifdef BSDhier
  914. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  915. else
  916. ifdef linuxHier
  917. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  918. else
  919. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  920. endif
  921. endif
  922. endif
  923. else
  924. ifdef INSTALL_FPCPACKAGE
  925. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
  926. else
  927. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
  928. endif
  929. endif
  930. endif
  931. ifndef INSTALL_DATADIR
  932. INSTALL_DATADIR=$(INSTALL_BASEDIR)
  933. endif
  934. ifdef CROSSCOMPILE
  935. ifndef CROSSBINDIR
  936. CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
  937. ifeq ($(CROSSBINDIR),)
  938. CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
  939. endif
  940. endif
  941. else
  942. CROSSBINDIR=
  943. endif
  944. BATCHEXT=.bat
  945. LOADEREXT=.as
  946. EXEEXT=.exe
  947. PPLEXT=.ppl
  948. PPUEXT=.ppu
  949. OEXT=.o
  950. ASMEXT=.s
  951. SMARTEXT=.sl
  952. STATICLIBEXT=.a
  953. SHAREDLIBEXT=.so
  954. STATICLIBPREFIX=libp
  955. RSTEXT=.rst
  956. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  957. ifeq ($(OS_TARGET),go32v1)
  958. STATICLIBPREFIX=
  959. SHORTSUFFIX=v1
  960. endif
  961. ifeq ($(OS_TARGET),go32v2)
  962. STATICLIBPREFIX=
  963. SHORTSUFFIX=dos
  964. endif
  965. ifeq ($(OS_TARGET),watcom)
  966. STATICLIBPREFIX=
  967. OEXT=.obj
  968. ASMEXT=.asm
  969. SHAREDLIBEXT=.dll
  970. SHORTSUFFIX=wat
  971. endif
  972. ifeq ($(OS_TARGET),linux)
  973. BATCHEXT=.sh
  974. EXEEXT=
  975. HASSHAREDLIB=1
  976. SHORTSUFFIX=lnx
  977. endif
  978. ifeq ($(OS_TARGET),freebsd)
  979. BATCHEXT=.sh
  980. EXEEXT=
  981. HASSHAREDLIB=1
  982. SHORTSUFFIX=fbs
  983. endif
  984. ifeq ($(OS_TARGET),netbsd)
  985. BATCHEXT=.sh
  986. EXEEXT=
  987. HASSHAREDLIB=1
  988. SHORTSUFFIX=nbs
  989. endif
  990. ifeq ($(OS_TARGET),openbsd)
  991. BATCHEXT=.sh
  992. EXEEXT=
  993. HASSHAREDLIB=1
  994. SHORTSUFFIX=obs
  995. endif
  996. ifeq ($(OS_TARGET),win32)
  997. SHAREDLIBEXT=.dll
  998. SHORTSUFFIX=w32
  999. endif
  1000. ifeq ($(OS_TARGET),os2)
  1001. BATCHEXT=.cmd
  1002. AOUTEXT=.out
  1003. STATICLIBPREFIX=
  1004. SHAREDLIBEXT=.dll
  1005. SHORTSUFFIX=os2
  1006. ECHO=echo
  1007. endif
  1008. ifeq ($(OS_TARGET),emx)
  1009. BATCHEXT=.cmd
  1010. AOUTEXT=.out
  1011. STATICLIBPREFIX=
  1012. SHAREDLIBEXT=.dll
  1013. SHORTSUFFIX=emx
  1014. ECHO=echo
  1015. endif
  1016. ifeq ($(OS_TARGET),amiga)
  1017. EXEEXT=
  1018. SHAREDLIBEXT=.library
  1019. SHORTSUFFIX=amg
  1020. endif
  1021. ifeq ($(OS_TARGET),morphos)
  1022. EXEEXT=
  1023. SHAREDLIBEXT=.library
  1024. SHORTSUFFIX=mos
  1025. endif
  1026. ifeq ($(OS_TARGET),atari)
  1027. EXEEXT=.ttp
  1028. SHORTSUFFIX=ata
  1029. endif
  1030. ifeq ($(OS_TARGET),beos)
  1031. BATCHEXT=.sh
  1032. EXEEXT=
  1033. SHORTSUFFIX=be
  1034. endif
  1035. ifeq ($(OS_TARGET),sunos)
  1036. BATCHEXT=.sh
  1037. EXEEXT=
  1038. SHORTSUFFIX=sun
  1039. endif
  1040. ifeq ($(OS_TARGET),qnx)
  1041. BATCHEXT=.sh
  1042. EXEEXT=
  1043. SHORTSUFFIX=qnx
  1044. endif
  1045. ifeq ($(OS_TARGET),netware)
  1046. EXEEXT=.nlm
  1047. STATICLIBPREFIX=
  1048. SHORTSUFFIX=nw
  1049. endif
  1050. ifeq ($(OS_TARGET),netwlibc)
  1051. EXEEXT=.nlm
  1052. STATICLIBPREFIX=
  1053. SHORTSUFFIX=nwl
  1054. endif
  1055. ifeq ($(OS_TARGET),macos)
  1056. BATCHEXT=
  1057. EXEEXT=
  1058. DEBUGSYMEXT=.xcoff
  1059. SHORTSUFFIX=mac
  1060. endif
  1061. ifeq ($(OS_TARGET),darwin)
  1062. BATCHEXT=.sh
  1063. EXEEXT=
  1064. HASSHAREDLIB=1
  1065. SHORTSUFFIX=dwn
  1066. endif
  1067. else
  1068. ifeq ($(OS_TARGET),go32v1)
  1069. PPUEXT=.pp1
  1070. OEXT=.o1
  1071. ASMEXT=.s1
  1072. SMARTEXT=.sl1
  1073. STATICLIBEXT=.a1
  1074. SHAREDLIBEXT=.so1
  1075. STATICLIBPREFIX=
  1076. SHORTSUFFIX=v1
  1077. endif
  1078. ifeq ($(OS_TARGET),go32v2)
  1079. STATICLIBPREFIX=
  1080. SHORTSUFFIX=dos
  1081. endif
  1082. ifeq ($(OS_TARGET),watcom)
  1083. STATICLIBPREFIX=
  1084. SHORTSUFFIX=wat
  1085. endif
  1086. ifeq ($(OS_TARGET),linux)
  1087. BATCHEXT=.sh
  1088. EXEEXT=
  1089. HASSHAREDLIB=1
  1090. SHORTSUFFIX=lnx
  1091. endif
  1092. ifeq ($(OS_TARGET),freebsd)
  1093. BATCHEXT=.sh
  1094. EXEEXT=
  1095. HASSHAREDLIB=1
  1096. SHORTSUFFIX=fbs
  1097. endif
  1098. ifeq ($(OS_TARGET),netbsd)
  1099. BATCHEXT=.sh
  1100. EXEEXT=
  1101. HASSHAREDLIB=1
  1102. SHORTSUFFIX=nbs
  1103. endif
  1104. ifeq ($(OS_TARGET),openbsd)
  1105. BATCHEXT=.sh
  1106. EXEEXT=
  1107. HASSHAREDLIB=1
  1108. SHORTSUFFIX=obs
  1109. endif
  1110. ifeq ($(OS_TARGET),win32)
  1111. PPUEXT=.ppw
  1112. OEXT=.ow
  1113. ASMEXT=.sw
  1114. SMARTEXT=.slw
  1115. STATICLIBEXT=.aw
  1116. SHAREDLIBEXT=.dll
  1117. SHORTSUFFIX=w32
  1118. endif
  1119. ifeq ($(OS_TARGET),os2)
  1120. BATCHEXT=.cmd
  1121. PPUEXT=.ppo
  1122. ASMEXT=.so2
  1123. OEXT=.oo2
  1124. AOUTEXT=.out
  1125. SMARTEXT=.sl2
  1126. STATICLIBPREFIX=
  1127. STATICLIBEXT=.ao2
  1128. SHAREDLIBEXT=.dll
  1129. SHORTSUFFIX=os2
  1130. ECHO=echo
  1131. endif
  1132. ifeq ($(OS_TARGET),amiga)
  1133. EXEEXT=
  1134. PPUEXT=.ppu
  1135. ASMEXT=.asm
  1136. OEXT=.o
  1137. SMARTEXT=.sl
  1138. STATICLIBEXT=.a
  1139. SHAREDLIBEXT=.library
  1140. SHORTSUFFIX=amg
  1141. endif
  1142. ifeq ($(OS_TARGET),atari)
  1143. PPUEXT=.ppu
  1144. ASMEXT=.s
  1145. OEXT=.o
  1146. SMARTEXT=.sl
  1147. STATICLIBEXT=.a
  1148. EXEEXT=.ttp
  1149. SHORTSUFFIX=ata
  1150. endif
  1151. ifeq ($(OS_TARGET),beos)
  1152. BATCHEXT=.sh
  1153. PPUEXT=.ppu
  1154. ASMEXT=.s
  1155. OEXT=.o
  1156. SMARTEXT=.sl
  1157. STATICLIBEXT=.a
  1158. EXEEXT=
  1159. SHORTSUFFIX=be
  1160. endif
  1161. ifeq ($(OS_TARGET),sunos)
  1162. BATCHEXT=.sh
  1163. PPUEXT=.ppu
  1164. ASMEXT=.s
  1165. OEXT=.o
  1166. SMARTEXT=.sl
  1167. STATICLIBEXT=.a
  1168. EXEEXT=
  1169. SHORTSUFFIX=sun
  1170. endif
  1171. ifeq ($(OS_TARGET),qnx)
  1172. BATCHEXT=.sh
  1173. PPUEXT=.ppu
  1174. ASMEXT=.s
  1175. OEXT=.o
  1176. SMARTEXT=.sl
  1177. STATICLIBEXT=.a
  1178. EXEEXT=
  1179. SHORTSUFFIX=qnx
  1180. endif
  1181. ifeq ($(OS_TARGET),netware)
  1182. STATICLIBPREFIX=
  1183. PPUEXT=.ppu
  1184. OEXT=.o
  1185. ASMEXT=.s
  1186. SMARTEXT=.sl
  1187. STATICLIBEXT=.a
  1188. SHAREDLIBEXT=.nlm
  1189. EXEEXT=.nlm
  1190. SHORTSUFFIX=nw
  1191. endif
  1192. ifeq ($(OS_TARGET),netwlibc)
  1193. STATICLIBPREFIX=
  1194. PPUEXT=.ppu
  1195. OEXT=.o
  1196. ASMEXT=.s
  1197. SMARTEXT=.sl
  1198. STATICLIBEXT=.a
  1199. SHAREDLIBEXT=.nlm
  1200. EXEEXT=.nlm
  1201. SHORTSUFFIX=nwl
  1202. endif
  1203. ifeq ($(OS_TARGET),macos)
  1204. BATCHEXT=
  1205. PPUEXT=.ppu
  1206. ASMEXT=.s
  1207. OEXT=.o
  1208. SMARTEXT=.sl
  1209. STATICLIBEXT=.a
  1210. EXEEXT=
  1211. DEBUGSYMEXT=.xcoff
  1212. SHORTSUFFIX=mac
  1213. endif
  1214. endif
  1215. ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
  1216. FPCMADE=fpcmade.$(SHORTSUFFIX)
  1217. ZIPSUFFIX=$(SHORTSUFFIX)
  1218. ZIPCROSSPREFIX=
  1219. ZIPSOURCESUFFIX=src
  1220. ZIPEXAMPLESUFFIX=exm
  1221. else
  1222. FPCMADE=fpcmade.$(TARGETSUFFIX)
  1223. ZIPSOURCESUFFIX=.source
  1224. ZIPEXAMPLESUFFIX=.examples
  1225. ifdef CROSSCOMPILE
  1226. ZIPSUFFIX=.$(SOURCESUFFIX)
  1227. ZIPCROSSPREFIX=$(TARGETSUFFIX)-
  1228. else
  1229. ZIPSUFFIX=.$(TARGETSUFFIX)
  1230. ZIPCROSSPREFIX=
  1231. endif
  1232. endif
  1233. ifndef ECHO
  1234. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  1235. ifeq ($(ECHO),)
  1236. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  1237. ifeq ($(ECHO),)
  1238. ECHO= __missing_command_ECHO
  1239. else
  1240. ECHO:=$(firstword $(ECHO))
  1241. endif
  1242. else
  1243. ECHO:=$(firstword $(ECHO))
  1244. endif
  1245. endif
  1246. export ECHO
  1247. ifndef DATE
  1248. DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
  1249. ifeq ($(DATE),)
  1250. DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
  1251. ifeq ($(DATE),)
  1252. DATE= __missing_command_DATE
  1253. else
  1254. DATE:=$(firstword $(DATE))
  1255. endif
  1256. else
  1257. DATE:=$(firstword $(DATE))
  1258. endif
  1259. endif
  1260. export DATE
  1261. ifndef GINSTALL
  1262. GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
  1263. ifeq ($(GINSTALL),)
  1264. GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
  1265. ifeq ($(GINSTALL),)
  1266. GINSTALL= __missing_command_GINSTALL
  1267. else
  1268. GINSTALL:=$(firstword $(GINSTALL))
  1269. endif
  1270. else
  1271. GINSTALL:=$(firstword $(GINSTALL))
  1272. endif
  1273. endif
  1274. export GINSTALL
  1275. ifndef CPPROG
  1276. CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
  1277. ifeq ($(CPPROG),)
  1278. CPPROG= __missing_command_CPPROG
  1279. else
  1280. CPPROG:=$(firstword $(CPPROG))
  1281. endif
  1282. endif
  1283. export CPPROG
  1284. ifndef RMPROG
  1285. RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
  1286. ifeq ($(RMPROG),)
  1287. RMPROG= __missing_command_RMPROG
  1288. else
  1289. RMPROG:=$(firstword $(RMPROG))
  1290. endif
  1291. endif
  1292. export RMPROG
  1293. ifndef MVPROG
  1294. MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
  1295. ifeq ($(MVPROG),)
  1296. MVPROG= __missing_command_MVPROG
  1297. else
  1298. MVPROG:=$(firstword $(MVPROG))
  1299. endif
  1300. endif
  1301. export MVPROG
  1302. ifndef MKDIRPROG
  1303. MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
  1304. ifeq ($(MKDIRPROG),)
  1305. MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
  1306. ifeq ($(MKDIRPROG),)
  1307. MKDIRPROG= __missing_command_MKDIRPROG
  1308. else
  1309. MKDIRPROG:=$(firstword $(MKDIRPROG))
  1310. endif
  1311. else
  1312. MKDIRPROG:=$(firstword $(MKDIRPROG))
  1313. endif
  1314. endif
  1315. export MKDIRPROG
  1316. ifndef ECHOREDIR
  1317. ifndef inUnix
  1318. ECHOREDIR=echo
  1319. else
  1320. ECHOREDIR=$(ECHO)
  1321. endif
  1322. endif
  1323. ifndef COPY
  1324. COPY:=$(CPPROG) -fp
  1325. endif
  1326. ifndef COPYTREE
  1327. COPYTREE:=$(CPPROG) -Rfp
  1328. endif
  1329. ifndef MKDIRTREE
  1330. MKDIRTREE:=$(MKDIRPROG) -p
  1331. endif
  1332. ifndef MOVE
  1333. MOVE:=$(MVPROG) -f
  1334. endif
  1335. ifndef DEL
  1336. DEL:=$(RMPROG) -f
  1337. endif
  1338. ifndef DELTREE
  1339. DELTREE:=$(RMPROG) -rf
  1340. endif
  1341. ifndef INSTALL
  1342. ifdef inUnix
  1343. INSTALL:=$(GINSTALL) -c -m 644
  1344. else
  1345. INSTALL:=$(COPY)
  1346. endif
  1347. endif
  1348. ifndef INSTALLEXE
  1349. ifdef inUnix
  1350. INSTALLEXE:=$(GINSTALL) -c -m 755
  1351. else
  1352. INSTALLEXE:=$(COPY)
  1353. endif
  1354. endif
  1355. ifndef MKDIR
  1356. MKDIR:=$(GINSTALL) -m 755 -d
  1357. endif
  1358. export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
  1359. ifndef PPUMOVE
  1360. PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
  1361. ifeq ($(PPUMOVE),)
  1362. PPUMOVE= __missing_command_PPUMOVE
  1363. else
  1364. PPUMOVE:=$(firstword $(PPUMOVE))
  1365. endif
  1366. endif
  1367. export PPUMOVE
  1368. ifndef FPCMAKE
  1369. FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
  1370. ifeq ($(FPCMAKE),)
  1371. FPCMAKE= __missing_command_FPCMAKE
  1372. else
  1373. FPCMAKE:=$(firstword $(FPCMAKE))
  1374. endif
  1375. endif
  1376. export FPCMAKE
  1377. ifndef ZIPPROG
  1378. ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
  1379. ifeq ($(ZIPPROG),)
  1380. ZIPPROG= __missing_command_ZIPPROG
  1381. else
  1382. ZIPPROG:=$(firstword $(ZIPPROG))
  1383. endif
  1384. endif
  1385. export ZIPPROG
  1386. ifndef TARPROG
  1387. TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
  1388. ifeq ($(TARPROG),)
  1389. TARPROG= __missing_command_TARPROG
  1390. else
  1391. TARPROG:=$(firstword $(TARPROG))
  1392. endif
  1393. endif
  1394. export TARPROG
  1395. ASNAME=$(BINUTILSPREFIX)as
  1396. LDNAME=$(BINUTILSPREFIX)ld
  1397. ARNAME=$(BINUTILSPREFIX)ar
  1398. RCNAME=$(BINUTILSPREFIX)rc
  1399. ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
  1400. ifeq ($(OS_TARGET),win32)
  1401. ifeq ($(CROSSBINDIR),)
  1402. ASNAME=asw
  1403. LDNAME=ldw
  1404. ARNAME=arw
  1405. endif
  1406. endif
  1407. endif
  1408. ifndef ASPROG
  1409. ifdef CROSSBINDIR
  1410. ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
  1411. else
  1412. ASPROG=$(ASNAME)
  1413. endif
  1414. endif
  1415. ifndef LDPROG
  1416. ifdef CROSSBINDIR
  1417. LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
  1418. else
  1419. LDPROG=$(LDNAME)
  1420. endif
  1421. endif
  1422. ifndef RCPROG
  1423. ifdef CROSSBINDIR
  1424. RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
  1425. else
  1426. RCPROG=$(RCNAME)
  1427. endif
  1428. endif
  1429. ifndef ARPROG
  1430. ifdef CROSSBINDIR
  1431. ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
  1432. else
  1433. ARPROG=$(ARNAME)
  1434. endif
  1435. endif
  1436. AS=$(ASPROG)
  1437. LD=$(LDPROG)
  1438. RC=$(RCPROG)
  1439. AR=$(ARPROG)
  1440. PPAS=ppas$(SRCBATCHEXT)
  1441. ifdef inUnix
  1442. LDCONFIG=ldconfig
  1443. else
  1444. LDCONFIG=
  1445. endif
  1446. ifdef DATE
  1447. DATESTR:=$(shell $(DATE) +%Y%m%d)
  1448. else
  1449. DATESTR=
  1450. endif
  1451. ifndef UPXPROG
  1452. ifeq ($(OS_TARGET),go32v2)
  1453. UPXPROG:=1
  1454. endif
  1455. ifeq ($(OS_TARGET),win32)
  1456. UPXPROG:=1
  1457. endif
  1458. ifdef UPXPROG
  1459. UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
  1460. ifeq ($(UPXPROG),)
  1461. UPXPROG=
  1462. else
  1463. UPXPROG:=$(firstword $(UPXPROG))
  1464. endif
  1465. else
  1466. UPXPROG=
  1467. endif
  1468. endif
  1469. export UPXPROG
  1470. ZIPOPT=-9
  1471. ZIPEXT=.zip
  1472. ifeq ($(USETAR),bz2)
  1473. TAROPT=vI
  1474. TAREXT=.tar.bz2
  1475. else
  1476. TAROPT=vz
  1477. TAREXT=.tar.gz
  1478. endif
  1479. ifndef NOCPUDEF
  1480. override FPCOPTDEF=$(CPU_TARGET)
  1481. endif
  1482. ifneq ($(OS_TARGET),$(OS_SOURCE))
  1483. override FPCOPT+=-T$(OS_TARGET)
  1484. endif
  1485. ifeq ($(OS_SOURCE),openbsd)
  1486. override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
  1487. endif
  1488. ifndef CROSSBOOTSTRAP
  1489. ifneq ($(BINUTILSPREFIX),)
  1490. override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
  1491. endif
  1492. ifneq ($(BINUTILSPREFIX),)
  1493. override FPCOPT+=-Xr$(RLINKPATH)
  1494. endif
  1495. endif
  1496. ifdef UNITDIR
  1497. override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
  1498. endif
  1499. ifdef LIBDIR
  1500. override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
  1501. endif
  1502. ifdef OBJDIR
  1503. override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
  1504. endif
  1505. ifdef INCDIR
  1506. override FPCOPT+=$(addprefix -Fi,$(INCDIR))
  1507. endif
  1508. ifdef LINKSMART
  1509. override FPCOPT+=-XX
  1510. endif
  1511. ifdef CREATESMART
  1512. override FPCOPT+=-CX
  1513. endif
  1514. ifdef DEBUG
  1515. override FPCOPT+=-gl
  1516. override FPCOPTDEF+=DEBUG
  1517. endif
  1518. ifdef RELEASE
  1519. ifeq ($(CPU_TARGET),i386)
  1520. FPCCPUOPT:=-OG2p3
  1521. else
  1522. ifeq ($(CPU_TARGET),powerpc)
  1523. FPCCPUOPT:=-O1
  1524. else
  1525. FPCCPUOPT:=
  1526. endif
  1527. endif
  1528. override FPCOPT+=-Xs $(FPCCPUOPT) -n
  1529. override FPCOPTDEF+=RELEASE
  1530. endif
  1531. ifdef STRIP
  1532. override FPCOPT+=-Xs
  1533. endif
  1534. ifdef OPTIMIZE
  1535. ifeq ($(CPU_TARGET),i386)
  1536. override FPCOPT+=-OG2p3
  1537. endif
  1538. endif
  1539. ifdef VERBOSE
  1540. override FPCOPT+=-vwni
  1541. endif
  1542. ifdef COMPILER_OPTIONS
  1543. override FPCOPT+=$(COMPILER_OPTIONS)
  1544. endif
  1545. ifdef COMPILER_UNITDIR
  1546. override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
  1547. endif
  1548. ifdef COMPILER_LIBRARYDIR
  1549. override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
  1550. endif
  1551. ifdef COMPILER_OBJECTDIR
  1552. override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
  1553. endif
  1554. ifdef COMPILER_INCLUDEDIR
  1555. override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
  1556. endif
  1557. ifdef CROSSBINDIR
  1558. override FPCOPT+=-FD$(CROSSBINDIR)
  1559. endif
  1560. ifdef COMPILER_TARGETDIR
  1561. override FPCOPT+=-FE$(COMPILER_TARGETDIR)
  1562. ifeq ($(COMPILER_TARGETDIR),.)
  1563. override TARGETDIRPREFIX=
  1564. else
  1565. override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
  1566. endif
  1567. endif
  1568. ifdef COMPILER_UNITTARGETDIR
  1569. override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
  1570. ifeq ($(COMPILER_UNITTARGETDIR),.)
  1571. override UNITTARGETDIRPREFIX=
  1572. else
  1573. override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
  1574. endif
  1575. else
  1576. ifdef COMPILER_TARGETDIR
  1577. override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
  1578. override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
  1579. endif
  1580. endif
  1581. ifeq ($(OS_TARGET),linux)
  1582. ifeq ($(FPC_VERSION),1.0.6)
  1583. override FPCOPTDEF+=HASUNIX
  1584. endif
  1585. endif
  1586. ifdef OPT
  1587. override FPCOPT+=$(OPT)
  1588. endif
  1589. ifdef FPCOPTDEF
  1590. override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
  1591. endif
  1592. ifdef CFGFILE
  1593. override FPCOPT+=@$(CFGFILE)
  1594. endif
  1595. ifdef USEENV
  1596. override FPCEXTCMD:=$(FPCOPT)
  1597. override FPCOPT:=!FPCEXTCMD
  1598. export FPCEXTCMD
  1599. endif
  1600. override COMPILER:=$(FPC) $(FPCOPT)
  1601. ifeq (,$(findstring -s ,$(COMPILER)))
  1602. EXECPPAS=
  1603. else
  1604. ifeq ($(FULL_SOURCE),$(FULL_TARGET))
  1605. EXECPPAS:=@$(PPAS)
  1606. endif
  1607. endif
  1608. .PHONY: fpc_loaders
  1609. ifneq ($(TARGET_LOADERS),)
  1610. override ALLTARGET+=fpc_loaders
  1611. override CLEANTARGET+=fpc_loaders_clean
  1612. override INSTALLTARGET+=fpc_loaders_install
  1613. override LOADEROFILES:=$(addsuffix $(OEXT),$(TARGET_LOADERS))
  1614. endif
  1615. %$(OEXT): %$(LOADEREXT)
  1616. ifdef COMPILER_UNITTARGETDIR
  1617. $(AS) -o $(COMPILER_UNITTARGETDIR)/$*$(OEXT) $<
  1618. else
  1619. $(AS) -o $*$(OEXT) $<
  1620. endif
  1621. fpc_loaders: $(COMPILER_UNITTARGETDIR) $(LOADEROFILES)
  1622. fpc_loaders_clean:
  1623. ifdef COMPILER_UNITTARGETDIR
  1624. -$(DEL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFILES))
  1625. else
  1626. -$(DEL) $(LOADEROFILES)
  1627. endif
  1628. fpc_loaders_install:
  1629. $(MKDIR) $(INSTALL_UNITDIR)
  1630. ifdef COMPILER_UNITTARGETDIR
  1631. $(INSTALL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFILES)) $(INSTALL_UNITDIR)
  1632. else
  1633. $(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
  1634. endif
  1635. .PHONY: fpc_units
  1636. ifneq ($(TARGET_UNITS),)
  1637. override ALLTARGET+=fpc_units
  1638. override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
  1639. override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
  1640. override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1641. override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1642. endif
  1643. fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
  1644. ifdef TARGET_RSTS
  1645. override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
  1646. override CLEANRSTFILES+=$(RSTFILES)
  1647. endif
  1648. .PHONY: fpc_all fpc_smart fpc_debug fpc_release
  1649. $(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
  1650. @$(ECHOREDIR) Compiled > $(FPCMADE)
  1651. fpc_all: $(FPCMADE)
  1652. fpc_smart:
  1653. $(MAKE) all LINKSMART=1 CREATESMART=1
  1654. fpc_debug:
  1655. $(MAKE) all DEBUG=1
  1656. fpc_release:
  1657. $(MAKE) all RELEASE=1
  1658. .SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
  1659. $(COMPILER_UNITTARGETDIR):
  1660. $(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
  1661. $(COMPILER_TARGETDIR):
  1662. $(MKDIRTREE) $(COMPILER_TARGETDIR)
  1663. %$(PPUEXT): %.pp
  1664. $(COMPILER) $<
  1665. $(EXECPPAS)
  1666. %$(PPUEXT): %.pas
  1667. $(COMPILER) $<
  1668. $(EXECPPAS)
  1669. %$(EXEEXT): %.pp
  1670. $(COMPILER) $<
  1671. $(EXECPPAS)
  1672. %$(EXEEXT): %.pas
  1673. $(COMPILER) $<
  1674. $(EXECPPAS)
  1675. %$(EXEEXT): %.lpr
  1676. $(COMPILER) $<
  1677. $(EXECPPAS)
  1678. %$(EXEEXT): %.dpr
  1679. $(COMPILER) $<
  1680. $(EXECPPAS)
  1681. %.res: %.rc
  1682. windres -i $< -o $@
  1683. vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1684. vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1685. vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1686. vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1687. vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
  1688. vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
  1689. .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
  1690. ifdef INSTALL_UNITS
  1691. override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
  1692. endif
  1693. ifdef INSTALL_BUILDUNIT
  1694. override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
  1695. endif
  1696. ifdef INSTALLPPUFILES
  1697. override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
  1698. override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
  1699. override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
  1700. override INSTALL_CREATEPACKAGEFPC=1
  1701. endif
  1702. ifdef INSTALLEXEFILES
  1703. override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
  1704. endif
  1705. fpc_install: all $(INSTALLTARGET)
  1706. ifdef INSTALLEXEFILES
  1707. $(MKDIR) $(INSTALL_BINDIR)
  1708. ifdef UPXPROG
  1709. -$(UPXPROG) $(INSTALLEXEFILES)
  1710. endif
  1711. $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
  1712. endif
  1713. ifdef INSTALL_CREATEPACKAGEFPC
  1714. ifdef FPCMAKE
  1715. ifdef PACKAGE_VERSION
  1716. ifneq ($(wildcard Makefile.fpc),)
  1717. $(FPCMAKE) -p -T$(OS_TARGET) Makefile.fpc
  1718. $(MKDIR) $(INSTALL_UNITDIR)
  1719. $(INSTALL) Package.fpc $(INSTALL_UNITDIR)
  1720. endif
  1721. endif
  1722. endif
  1723. endif
  1724. ifdef INSTALLPPUFILES
  1725. $(MKDIR) $(INSTALL_UNITDIR)
  1726. $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
  1727. ifneq ($(INSTALLPPULINKFILES),)
  1728. $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
  1729. endif
  1730. ifneq ($(wildcard $(LIB_FULLNAME)),)
  1731. $(MKDIR) $(INSTALL_LIBDIR)
  1732. $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
  1733. ifdef inUnix
  1734. ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
  1735. endif
  1736. endif
  1737. endif
  1738. ifdef INSTALL_FILES
  1739. $(MKDIR) $(INSTALL_DATADIR)
  1740. $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
  1741. endif
  1742. fpc_sourceinstall: distclean
  1743. $(MKDIR) $(INSTALL_SOURCEDIR)
  1744. $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
  1745. fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
  1746. ifdef HASEXAMPLES
  1747. $(MKDIR) $(INSTALL_EXAMPLEDIR)
  1748. endif
  1749. ifdef EXAMPLESOURCEFILES
  1750. $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
  1751. endif
  1752. ifdef TARGET_EXAMPLEDIRS
  1753. $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
  1754. endif
  1755. .PHONY: fpc_clean fpc_cleanall fpc_distclean
  1756. ifdef EXEFILES
  1757. override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
  1758. endif
  1759. ifdef CLEAN_UNITS
  1760. override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
  1761. endif
  1762. ifdef CLEANPPUFILES
  1763. override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
  1764. ifdef DEBUGSYMEXT
  1765. override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
  1766. endif
  1767. override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
  1768. override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
  1769. endif
  1770. fpc_clean: $(CLEANTARGET)
  1771. ifdef CLEANEXEFILES
  1772. -$(DEL) $(CLEANEXEFILES)
  1773. endif
  1774. ifdef CLEANPPUFILES
  1775. -$(DEL) $(CLEANPPUFILES)
  1776. endif
  1777. ifneq ($(CLEANPPULINKFILES),)
  1778. -$(DEL) $(CLEANPPULINKFILES)
  1779. endif
  1780. ifdef CLEANRSTFILES
  1781. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  1782. endif
  1783. ifdef CLEAN_FILES
  1784. -$(DEL) $(CLEAN_FILES)
  1785. endif
  1786. ifdef LIB_NAME
  1787. -$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
  1788. endif
  1789. -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1790. -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
  1791. fpc_cleanall: $(CLEANTARGET)
  1792. ifdef CLEANEXEFILES
  1793. -$(DEL) $(CLEANEXEFILES)
  1794. endif
  1795. ifdef COMPILER_UNITTARGETDIR
  1796. ifdef CLEANPPUFILES
  1797. -$(DEL) $(CLEANPPUFILES)
  1798. endif
  1799. ifneq ($(CLEANPPULINKFILES),)
  1800. -$(DEL) $(CLEANPPULINKFILES)
  1801. endif
  1802. ifdef CLEANRSTFILES
  1803. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  1804. endif
  1805. endif
  1806. -$(DELTREE) units
  1807. -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
  1808. ifneq ($(PPUEXT),.ppu)
  1809. -$(DEL) *.o *.ppu *.a
  1810. endif
  1811. -$(DELTREE) *$(SMARTEXT)
  1812. -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1813. -$(DEL) *_ppas$(BATCHEXT)
  1814. ifdef AOUTEXT
  1815. -$(DEL) *$(AOUTEXT)
  1816. endif
  1817. ifdef DEBUGSYMEXT
  1818. -$(DEL) *$(DEBUGSYMEXT)
  1819. endif
  1820. fpc_distclean: cleanall
  1821. .PHONY: fpc_baseinfo
  1822. override INFORULES+=fpc_baseinfo
  1823. fpc_baseinfo:
  1824. @$(ECHO)
  1825. @$(ECHO) == Package info ==
  1826. @$(ECHO) Package Name..... $(PACKAGE_NAME)
  1827. @$(ECHO) Package Version.. $(PACKAGE_VERSION)
  1828. @$(ECHO)
  1829. @$(ECHO) == Configuration info ==
  1830. @$(ECHO)
  1831. @$(ECHO) FPC.......... $(FPC)
  1832. @$(ECHO) FPC Version.. $(FPC_VERSION)
  1833. @$(ECHO) Source CPU... $(CPU_SOURCE)
  1834. @$(ECHO) Target CPU... $(CPU_TARGET)
  1835. @$(ECHO) Source OS.... $(OS_SOURCE)
  1836. @$(ECHO) Target OS.... $(OS_TARGET)
  1837. @$(ECHO) Full Source.. $(FULL_SOURCE)
  1838. @$(ECHO) Full Target.. $(FULL_TARGET)
  1839. @$(ECHO) SourceSuffix. $(SOURCESUFFIX)
  1840. @$(ECHO) TargetSuffix. $(TARGETSUFFIX)
  1841. @$(ECHO)
  1842. @$(ECHO) == Directory info ==
  1843. @$(ECHO)
  1844. @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
  1845. @$(ECHO)
  1846. @$(ECHO) Basedir......... $(BASEDIR)
  1847. @$(ECHO) FPCDir.......... $(FPCDIR)
  1848. @$(ECHO) CrossBinDir..... $(CROSSBINDIR)
  1849. @$(ECHO) UnitsDir........ $(UNITSDIR)
  1850. @$(ECHO) PackagesDir..... $(PACKAGESDIR)
  1851. @$(ECHO)
  1852. @$(ECHO) GCC library..... $(GCCLIBDIR)
  1853. @$(ECHO) Other library... $(OTHERLIBDIR)
  1854. @$(ECHO)
  1855. @$(ECHO) == Tools info ==
  1856. @$(ECHO)
  1857. @$(ECHO) As........ $(AS)
  1858. @$(ECHO) Ld........ $(LD)
  1859. @$(ECHO) Ar........ $(AR)
  1860. @$(ECHO) Rc........ $(RC)
  1861. @$(ECHO)
  1862. @$(ECHO) Mv........ $(MVPROG)
  1863. @$(ECHO) Cp........ $(CPPROG)
  1864. @$(ECHO) Rm........ $(RMPROG)
  1865. @$(ECHO) GInstall.. $(GINSTALL)
  1866. @$(ECHO) Echo...... $(ECHO)
  1867. @$(ECHO) Shell..... $(SHELL)
  1868. @$(ECHO) Date...... $(DATE)
  1869. @$(ECHO) FPCMake... $(FPCMAKE)
  1870. @$(ECHO) PPUMove... $(PPUMOVE)
  1871. @$(ECHO) Upx....... $(UPXPROG)
  1872. @$(ECHO) Zip....... $(ZIPPROG)
  1873. @$(ECHO)
  1874. @$(ECHO) == Object info ==
  1875. @$(ECHO)
  1876. @$(ECHO) Target Loaders........ $(TARGET_LOADERS)
  1877. @$(ECHO) Target Units.......... $(TARGET_UNITS)
  1878. @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
  1879. @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
  1880. @$(ECHO) Target Dirs........... $(TARGET_DIRS)
  1881. @$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
  1882. @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
  1883. @$(ECHO)
  1884. @$(ECHO) Clean Units......... $(CLEAN_UNITS)
  1885. @$(ECHO) Clean Files......... $(CLEAN_FILES)
  1886. @$(ECHO)
  1887. @$(ECHO) Install Units....... $(INSTALL_UNITS)
  1888. @$(ECHO) Install Files....... $(INSTALL_FILES)
  1889. @$(ECHO)
  1890. @$(ECHO) == Install info ==
  1891. @$(ECHO)
  1892. @$(ECHO) DateStr.............. $(DATESTR)
  1893. @$(ECHO) ZipName.............. $(ZIPNAME)
  1894. @$(ECHO) ZipPrefix............ $(ZIPPREFIX)
  1895. @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX)
  1896. @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
  1897. @$(ECHO) FullZipName.......... $(FULLZIPNAME)
  1898. @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
  1899. @$(ECHO)
  1900. @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
  1901. @$(ECHO) Install binary dir... $(INSTALL_BINDIR)
  1902. @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
  1903. @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
  1904. @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
  1905. @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
  1906. @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
  1907. @$(ECHO) Install data dir..... $(INSTALL_DATADIR)
  1908. @$(ECHO)
  1909. @$(ECHO) Dist destination dir. $(DIST_DESTDIR)
  1910. @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
  1911. @$(ECHO)
  1912. .PHONY: fpc_info
  1913. fpc_info: $(INFORULES)
  1914. .PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
  1915. fpc_makefile_dirs
  1916. fpc_makefile:
  1917. $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
  1918. fpc_makefile_sub1:
  1919. ifdef TARGET_DIRS
  1920. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
  1921. endif
  1922. ifdef TARGET_EXAMPLEDIRS
  1923. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
  1924. endif
  1925. fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
  1926. fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
  1927. fpc_makefiles: fpc_makefile fpc_makefile_dirs
  1928. all: fpc_all
  1929. debug: fpc_debug
  1930. smart: fpc_smart
  1931. release: fpc_release
  1932. units: fpc_units
  1933. examples:
  1934. shared:
  1935. install: fpc_install
  1936. sourceinstall: fpc_sourceinstall
  1937. exampleinstall: fpc_exampleinstall
  1938. distinstall:
  1939. zipinstall:
  1940. zipsourceinstall:
  1941. zipexampleinstall:
  1942. zipdistinstall:
  1943. clean: fpc_clean
  1944. distclean: fpc_distclean
  1945. cleanall: fpc_cleanall
  1946. info: fpc_info
  1947. makefiles: fpc_makefiles
  1948. .PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
  1949. ifneq ($(wildcard fpcmake.loc),)
  1950. include fpcmake.loc
  1951. endif
  1952. SYSTEMPPU=$(addsuffix $(PPUEXT),$(SYSTEMUNIT))
  1953. include $(INC)/makefile.inc
  1954. SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
  1955. include $(PROCINC)/makefile.cpu
  1956. SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
  1957. SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
  1958. wprt0$(OEXT) : $(PRT0).as
  1959. $(AS) -o $(UNITTARGETDIRPREFIX)wprt0$(OEXT) $(PRT0).as
  1960. gprt0$(OEXT) : gprt0.as
  1961. wdllprt0$(OEXT) : wdllprt0.as
  1962. wcygprt0$(OEXT) : wcygprt0.as
  1963. $(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pp win32.inc $(SYSDEPS)
  1964. $(COMPILER) -Us -Sg $(SYSTEMUNIT).pp
  1965. systhrds$(PPUEXT): systhrds.pp $(INC)/threadh.inc $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT)
  1966. objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT)
  1967. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
  1968. strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc\
  1969. $(PROCINC)/strings.inc $(PROCINC)/stringss.inc\
  1970. $(SYSTEMUNIT)$(PPUEXT)
  1971. windows$(PPUEXT) : windows.pp $(WINDOWS_SOURCE_FILES) $(SYSTEMUNIT)$(PPUEXT)
  1972. $(COMPILER) -I$(WININC) windows.pp
  1973. messages$(PPUEXT): messages.pp $(WININC)/messages.inc $(SYSTEMUNIT)$(PPUEXT)
  1974. $(COMPILER) -I$(WININC) messages.pp
  1975. ole2$(PPUEXT) : ole2.pp windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1976. activex$(PPUEXT) : activex.pp $(WININC)/objbase.inc windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) types$(PPUEXT)
  1977. opengl32$(PPUEXT) : opengl32.pp windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1978. winsock$(PPUEXT) : winsock.pp windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1979. sockets$(PPUEXT) : sockets.pp windows$(PPUEXT) winsock$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
  1980. $(INC)/sockets.inc $(INC)/socketsh.inc
  1981. initc$(PPUEXT) : initc.pp $(SYSTEMUNIT)$(PPUEXT)
  1982. wincrt$(PPUEXT) : wincrt.pp $(SYSTEMUNIT)$(PPUEXT) windows$(PPUEXT) graph$(PPUEXT)
  1983. winmouse$(PPUEXT) : winmouse.pp $(SYSTEMUNIT)$(PPUEXT) windows$(PPUEXT) graph$(PPUEXT)
  1984. dynlibs$(PPUEXT) : $(INC)/dynlibs.pp windows$(PPUEXT)
  1985. dos$(PPUEXT) : dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1986. crt$(PPUEXT) : crt.pp $(INC)/textrec.inc $(SYSTEMUNIT)$(PPUEXT) objpas$(PPUEXT) dos$(PPUEXT) windows$(PPUEXT)
  1987. objects$(PPUEXT) : $(INC)/objects.pp $(SYSTEMUNIT)$(PPUEXT)
  1988. include $(GRAPHDIR)/makefile.inc
  1989. GRAPHINCDEPS=$(addprefix $(GRAPHDIR)/,$(GRAPHINCNAMES))
  1990. graph$(PPUEXT) : graph.pp strings$(PPUEXT) windows$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
  1991. $(GRAPHINCDEPS)
  1992. $(COMPILER) -I$(GRAPHDIR) graph.pp
  1993. sysutils$(PPUEXT) : sysutils.pp $(wildcard $(OBJPASDIR)/sysutils/*.inc) \
  1994. objpas$(PPUEXT) dos$(PPUEXT) windows$(PPUEXT) sysconst$(PPUEXT)
  1995. $(COMPILER) -Fi$(OBJPASDIR)/sysutils sysutils.pp
  1996. classes$(PPUEXT) : classes.pp $(wildcard $(OBJPASDIR)/classes/*.inc) \
  1997. sysutils$(PPUEXT) typinfo$(PPUEXT) rtlconst$(PPUEXT) sysconst$(PPUEXT)
  1998. $(COMPILER) -Fi$(OBJPASDIR)/classes classes.pp
  1999. winsysut$(PPUEXT) : winsysut.pp sysutils$(PPUEXT)
  2000. $(COMPILER) winsysut.pp
  2001. typinfo$(PPUEXT): $(OBJPASDIR)/typinfo.pp objpas$(PPUEXT)
  2002. $(COMPILER) -Sg $(OBJPASDIR)/typinfo.pp
  2003. math$(PPUEXT): $(OBJPASDIR)/math.pp objpas$(PPUEXT) sysutils$(PPUEXT)
  2004. $(COMPILER) $(OBJPASDIR)/math.pp
  2005. varutils$(PPUEXT) : varutils.pp $(OBJPASDIR)/cvarutil.inc \
  2006. objpas$(PPUEXT) $(OBJPASDIR)/varutilh.inc
  2007. $(COMPILER) -I$(OBJPASDIR) varutils.pp
  2008. types$(PPUEXT) : $(OBJPASDIR)/types.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  2009. $(COMPILER) $(OBJPASDIR)/types.pp
  2010. comobj$(PPUEXT) : comobj.pp activex$(PPUEXT) sysutils$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) $(OBJPASDIR)/comobjh.inc $(OBJPASDIR)/comobj.inc
  2011. $(COMPILER) -I$(OBJPASDIR) comobj.pp
  2012. rtlconst$(PPUEXT) : $(OBJPASDIR)/rtlconst.pp
  2013. $(COMPILER) $(OBJPASDIR)/rtlconst.pp
  2014. sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  2015. $(COMPILER) $(OBJPASDIR)/sysconst.pp
  2016. dateutils$(PPUEXT) : $(OBJPASDIR)/dateutils.pp
  2017. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/dateutils.pp
  2018. convutils$(PPUEXT) : $(OBJPASDIR)/convutils.pp
  2019. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/convutils.pp
  2020. strutils$(PPUEXT) : $(OBJPASDIR)/strutils.pp
  2021. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/strutils.pp
  2022. macpas$(PPUEXT) : $(INC)/macpas.pp $(SYSTEMUNIT)$(PPUEXT)
  2023. $(COMPILER) $(INC)/macpas.pp $(REDIR)
  2024. cpu$(PPUEXT) : $(PROCINC)/cpu.pp $(SYSTEMUNIT)$(PPUEXT)
  2025. mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  2026. getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT)
  2027. heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT)
  2028. $(COMPILER) -Sg $(INC)/heaptrc.pp
  2029. lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT)
  2030. charset$(PPUEXT) : $(INC)/charset.pp $(SYSTEMUNIT)$(PPUEXT)
  2031. cmem$(PPUEXT) : $(INC)/cmem.pp $(SYSTEMUNIT)$(PPUEXT)
  2032. ucomplex$(PPUEXT) : $(INC)/ucomplex.pp math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  2033. callspec$(PPUEXT) : $(INC)/callspec.pp $(SYSTEMUNIT)$(PPUEXT)
  2034. ctypes$(PPUEXT) : $(INC)/ctypes.pp $(SYSTEMUNIT)$(PPUEXT)