Makefile 90 KB

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