Makefile 60 KB

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