Makefile 62 KB

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