Makefile 67 KB

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