Makefile 119 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169
  1. #
  2. # Don't edit, this file is generated by FPCMake Version 2.0.0 [2017-05-01 rev 36045]
  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 i386-nativent i386-iphonesim i386-android i386-aros i386-uefi 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 powerpc-wii powerpc-aix sparc-linux sparc-netbsd sparc-solaris sparc-embedded x86_64-linux x86_64-freebsd x86_64-netbsd x86_64-solaris x86_64-openbsd x86_64-darwin x86_64-win64 x86_64-embedded x86_64-iphonesim x86_64-aros x86_64-dragonfly x86_64-uefi arm-linux arm-palmos arm-darwin arm-wince arm-gba arm-nds arm-embedded arm-symbian arm-android arm-aros powerpc64-linux powerpc64-darwin powerpc64-embedded powerpc64-aix avr-embedded armeb-linux armeb-embedded mips-linux mipsel-linux mipsel-embedded mipsel-android jvm-java jvm-android i8086-embedded i8086-msdos i8086-win16 aarch64-linux aarch64-darwin wasm-wasm
  6. BSDs = freebsd netbsd openbsd darwin dragonfly
  7. UNIXs = linux $(BSDs) solaris qnx haiku aix
  8. LIMIT83fs = go32v2 os2 emx watcom msdos win16
  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=win64
  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. ifndef CPU_SOURCE
  158. CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
  159. endif
  160. ifndef CPU_TARGET
  161. CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
  162. endif
  163. ifndef OS_SOURCE
  164. OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
  165. endif
  166. ifndef OS_TARGET
  167. OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
  168. endif
  169. FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
  170. FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
  171. ifeq ($(CPU_TARGET),armeb)
  172. ARCH=arm
  173. override FPCOPT+=-Cb
  174. else
  175. ifeq ($(CPU_TARGET),armel)
  176. ARCH=arm
  177. override FPCOPT+=-CaEABI
  178. else
  179. ARCH=$(CPU_TARGET)
  180. endif
  181. endif
  182. ifeq ($(FULL_TARGET),arm-embedded)
  183. ifeq ($(SUBARCH),)
  184. $(error When compiling for arm-embedded, a sub-architecture (e.g. SUBARCH=armv4t or SUBARCH=armv7m) must be defined)
  185. endif
  186. override FPCOPT+=-Cp$(SUBARCH)
  187. endif
  188. ifeq ($(FULL_TARGET),avr-embedded)
  189. ifeq ($(SUBARCH),)
  190. $(error When compiling for avr-embedded, a sub-architecture (e.g. SUBARCH=avr25 or SUBARCH=avr35) must be defined)
  191. endif
  192. override FPCOPT+=-Cp$(SUBARCH)
  193. endif
  194. ifeq ($(FULL_TARGET),mipsel-embedded)
  195. ifeq ($(SUBARCH),)
  196. $(error When compiling for mipsel-embedded, a sub-architecture (e.g. SUBARCH=pic32mx) must be defined)
  197. endif
  198. override FPCOPT+=-Cp$(SUBARCH)
  199. endif
  200. ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
  201. TARGETSUFFIX=$(OS_TARGET)
  202. SOURCESUFFIX=$(OS_SOURCE)
  203. else
  204. ifneq ($(findstring $(OS_TARGET),$(LIMIT83fs)),)
  205. TARGETSUFFIX=$(OS_TARGET)
  206. else
  207. TARGETSUFFIX=$(FULL_TARGET)
  208. endif
  209. SOURCESUFFIX=$(FULL_SOURCE)
  210. endif
  211. ifneq ($(FULL_TARGET),$(FULL_SOURCE))
  212. CROSSCOMPILE=1
  213. endif
  214. ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
  215. ifeq ($(findstring $(FULL_TARGET),$(MAKEFILETARGETS)),)
  216. $(error The Makefile doesn't support target $(FULL_TARGET), please run fpcmake first)
  217. endif
  218. endif
  219. ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
  220. BSDhier=1
  221. endif
  222. ifeq ($(OS_TARGET),linux)
  223. linuxHier=1
  224. endif
  225. ifndef CROSSCOMPILE
  226. BUILDFULLNATIVE=1
  227. export BUILDFULLNATIVE
  228. endif
  229. ifdef BUILDFULLNATIVE
  230. BUILDNATIVE=1
  231. export BUILDNATIVE
  232. endif
  233. export OS_TARGET OS_SOURCE ARCH CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE TARGETSUFFIX SOURCESUFFIX CROSSCOMPILE
  234. ifdef FPCDIR
  235. override FPCDIR:=$(subst \,/,$(FPCDIR))
  236. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),)
  237. override FPCDIR=wrong
  238. endif
  239. else
  240. override FPCDIR=wrong
  241. endif
  242. ifdef DEFAULT_FPCDIR
  243. ifeq ($(FPCDIR),wrong)
  244. override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
  245. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),)
  246. override FPCDIR=wrong
  247. endif
  248. endif
  249. endif
  250. ifeq ($(FPCDIR),wrong)
  251. ifdef inUnix
  252. override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
  253. ifeq ($(wildcard $(FPCDIR)/units),)
  254. override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
  255. endif
  256. else
  257. override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
  258. override FPCDIR:=$(FPCDIR)/..
  259. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),)
  260. override FPCDIR:=$(FPCDIR)/..
  261. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),)
  262. override FPCDIR:=$(BASEDIR)
  263. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl)),)
  264. override FPCDIR=c:/pp
  265. endif
  266. endif
  267. endif
  268. endif
  269. endif
  270. ifndef CROSSBINDIR
  271. CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(TARGETSUFFIX))
  272. endif
  273. ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
  274. ifeq ($(OS_SOURCE),darwin)
  275. DARWIN2DARWIN=1
  276. endif
  277. endif
  278. ifndef BINUTILSPREFIX
  279. ifndef CROSSBINDIR
  280. ifdef CROSSCOMPILE
  281. ifneq ($(OS_TARGET),msdos)
  282. ifndef DARWIN2DARWIN
  283. ifneq ($(CPU_TARGET),jvm)
  284. BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
  285. ifeq ($(OS_TARGET),android)
  286. ifeq ($(CPU_TARGET),arm)
  287. BINUTILSPREFIX=arm-linux-androideabi-
  288. else
  289. ifeq ($(CPU_TARGET),i386)
  290. BINUTILSPREFIX=i686-linux-android-
  291. else
  292. ifeq ($(CPU_TARGET),mipsel)
  293. BINUTILSPREFIX=mipsel-linux-android-
  294. endif
  295. endif
  296. endif
  297. endif
  298. endif
  299. endif
  300. else
  301. BINUTILSPREFIX=$(OS_TARGET)-
  302. endif
  303. endif
  304. endif
  305. endif
  306. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(TARGETSUFFIX))
  307. ifeq ($(UNITSDIR),)
  308. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
  309. endif
  310. PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
  311. ifndef FPCFPMAKE
  312. ifdef CROSSCOMPILE
  313. ifeq ($(strip $(wildcard $(addsuffix /compiler/ppc$(SRCEXEEXT),$(FPCDIR)))),)
  314. FPCPROG:=$(strip $(wildcard $(addsuffix /fpc$(SRCEXEEXT),$(SEARCHPATH))))
  315. ifneq ($(FPCPROG),)
  316. FPCPROG:=$(firstword $(FPCPROG))
  317. FPCFPMAKE:=$(shell $(FPCPROG) -PB)
  318. ifeq ($(strip $(wildcard $(FPCFPMAKE))),)
  319. FPCFPMAKE:=$(firstword $(FPCPROG))
  320. endif
  321. else
  322. override FPCFPMAKE=$(firstword $(strip $(wildcard $(addsuffix /ppc386$(SRCEXEEXT),$(SEARCHPATH)))))
  323. endif
  324. else
  325. FPCFPMAKE=$(strip $(wildcard $(addsuffix /compiler/ppc$(SRCEXEEXT),$(FPCDIR))))
  326. FPMAKE_SKIP_CONFIG=-n
  327. export FPCFPMAKE
  328. export FPMAKE_SKIP_CONFIG
  329. endif
  330. else
  331. FPMAKE_SKIP_CONFIG=-n
  332. FPCFPMAKE=$(FPC)
  333. endif
  334. endif
  335. override PACKAGE_NAME=rtl
  336. PACKAGEDIR_MAIN:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
  337. RTL=..
  338. INC=$(RTL)/inc
  339. COMMON=$(RTL)/common
  340. PROCINC=$(RTL)/$(CPU_TARGET)
  341. WININC=../win/wininc
  342. WINDIR=../win
  343. UNITPREFIX=rtl
  344. SYSTEMUNIT=system
  345. ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
  346. LOADERS=wprt0 wdllprt0 gprt0 wcygprt0
  347. endif
  348. OBJPASDIR=$(RTL)/objpas
  349. WINDOWS_SOURCE_FILES=$(addprefix $(WININC)/,$(addsuffix .inc,$(WINDOWS_FILES)))
  350. ifeq ($(FULL_TARGET),i386-linux)
  351. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  352. endif
  353. ifeq ($(FULL_TARGET),i386-go32v2)
  354. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  355. endif
  356. ifeq ($(FULL_TARGET),i386-win32)
  357. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  358. endif
  359. ifeq ($(FULL_TARGET),i386-os2)
  360. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  361. endif
  362. ifeq ($(FULL_TARGET),i386-freebsd)
  363. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  364. endif
  365. ifeq ($(FULL_TARGET),i386-beos)
  366. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  367. endif
  368. ifeq ($(FULL_TARGET),i386-haiku)
  369. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  370. endif
  371. ifeq ($(FULL_TARGET),i386-netbsd)
  372. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  373. endif
  374. ifeq ($(FULL_TARGET),i386-solaris)
  375. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  376. endif
  377. ifeq ($(FULL_TARGET),i386-qnx)
  378. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  379. endif
  380. ifeq ($(FULL_TARGET),i386-netware)
  381. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  382. endif
  383. ifeq ($(FULL_TARGET),i386-openbsd)
  384. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  385. endif
  386. ifeq ($(FULL_TARGET),i386-wdosx)
  387. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  388. endif
  389. ifeq ($(FULL_TARGET),i386-darwin)
  390. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  391. endif
  392. ifeq ($(FULL_TARGET),i386-emx)
  393. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  394. endif
  395. ifeq ($(FULL_TARGET),i386-watcom)
  396. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  397. endif
  398. ifeq ($(FULL_TARGET),i386-netwlibc)
  399. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  400. endif
  401. ifeq ($(FULL_TARGET),i386-wince)
  402. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  403. endif
  404. ifeq ($(FULL_TARGET),i386-embedded)
  405. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  406. endif
  407. ifeq ($(FULL_TARGET),i386-symbian)
  408. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  409. endif
  410. ifeq ($(FULL_TARGET),i386-nativent)
  411. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  412. endif
  413. ifeq ($(FULL_TARGET),i386-iphonesim)
  414. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  415. endif
  416. ifeq ($(FULL_TARGET),i386-android)
  417. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  418. endif
  419. ifeq ($(FULL_TARGET),i386-aros)
  420. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  421. endif
  422. ifeq ($(FULL_TARGET),i386-uefi)
  423. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  424. endif
  425. ifeq ($(FULL_TARGET),m68k-linux)
  426. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  427. endif
  428. ifeq ($(FULL_TARGET),m68k-freebsd)
  429. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  430. endif
  431. ifeq ($(FULL_TARGET),m68k-netbsd)
  432. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  433. endif
  434. ifeq ($(FULL_TARGET),m68k-amiga)
  435. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  436. endif
  437. ifeq ($(FULL_TARGET),m68k-atari)
  438. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  439. endif
  440. ifeq ($(FULL_TARGET),m68k-openbsd)
  441. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  442. endif
  443. ifeq ($(FULL_TARGET),m68k-palmos)
  444. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  445. endif
  446. ifeq ($(FULL_TARGET),m68k-embedded)
  447. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  448. endif
  449. ifeq ($(FULL_TARGET),powerpc-linux)
  450. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  451. endif
  452. ifeq ($(FULL_TARGET),powerpc-netbsd)
  453. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  454. endif
  455. ifeq ($(FULL_TARGET),powerpc-amiga)
  456. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  457. endif
  458. ifeq ($(FULL_TARGET),powerpc-macos)
  459. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  460. endif
  461. ifeq ($(FULL_TARGET),powerpc-darwin)
  462. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  463. endif
  464. ifeq ($(FULL_TARGET),powerpc-morphos)
  465. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  466. endif
  467. ifeq ($(FULL_TARGET),powerpc-embedded)
  468. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  469. endif
  470. ifeq ($(FULL_TARGET),powerpc-wii)
  471. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  472. endif
  473. ifeq ($(FULL_TARGET),powerpc-aix)
  474. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  475. endif
  476. ifeq ($(FULL_TARGET),sparc-linux)
  477. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  478. endif
  479. ifeq ($(FULL_TARGET),sparc-netbsd)
  480. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  481. endif
  482. ifeq ($(FULL_TARGET),sparc-solaris)
  483. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  484. endif
  485. ifeq ($(FULL_TARGET),sparc-embedded)
  486. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  487. endif
  488. ifeq ($(FULL_TARGET),x86_64-linux)
  489. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  490. endif
  491. ifeq ($(FULL_TARGET),x86_64-freebsd)
  492. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  493. endif
  494. ifeq ($(FULL_TARGET),x86_64-netbsd)
  495. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  496. endif
  497. ifeq ($(FULL_TARGET),x86_64-solaris)
  498. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  499. endif
  500. ifeq ($(FULL_TARGET),x86_64-openbsd)
  501. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  502. endif
  503. ifeq ($(FULL_TARGET),x86_64-darwin)
  504. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  505. endif
  506. ifeq ($(FULL_TARGET),x86_64-win64)
  507. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  508. endif
  509. ifeq ($(FULL_TARGET),x86_64-embedded)
  510. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  511. endif
  512. ifeq ($(FULL_TARGET),x86_64-iphonesim)
  513. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  514. endif
  515. ifeq ($(FULL_TARGET),x86_64-aros)
  516. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  517. endif
  518. ifeq ($(FULL_TARGET),x86_64-dragonfly)
  519. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  520. endif
  521. ifeq ($(FULL_TARGET),x86_64-uefi)
  522. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  523. endif
  524. ifeq ($(FULL_TARGET),arm-linux)
  525. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  526. endif
  527. ifeq ($(FULL_TARGET),arm-palmos)
  528. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  529. endif
  530. ifeq ($(FULL_TARGET),arm-darwin)
  531. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  532. endif
  533. ifeq ($(FULL_TARGET),arm-wince)
  534. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  535. endif
  536. ifeq ($(FULL_TARGET),arm-gba)
  537. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  538. endif
  539. ifeq ($(FULL_TARGET),arm-nds)
  540. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  541. endif
  542. ifeq ($(FULL_TARGET),arm-embedded)
  543. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  544. endif
  545. ifeq ($(FULL_TARGET),arm-symbian)
  546. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  547. endif
  548. ifeq ($(FULL_TARGET),arm-android)
  549. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  550. endif
  551. ifeq ($(FULL_TARGET),arm-aros)
  552. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  553. endif
  554. ifeq ($(FULL_TARGET),powerpc64-linux)
  555. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  556. endif
  557. ifeq ($(FULL_TARGET),powerpc64-darwin)
  558. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  559. endif
  560. ifeq ($(FULL_TARGET),powerpc64-embedded)
  561. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  562. endif
  563. ifeq ($(FULL_TARGET),powerpc64-aix)
  564. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  565. endif
  566. ifeq ($(FULL_TARGET),avr-embedded)
  567. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  568. endif
  569. ifeq ($(FULL_TARGET),armeb-linux)
  570. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  571. endif
  572. ifeq ($(FULL_TARGET),armeb-embedded)
  573. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  574. endif
  575. ifeq ($(FULL_TARGET),mips-linux)
  576. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  577. endif
  578. ifeq ($(FULL_TARGET),mipsel-linux)
  579. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  580. endif
  581. ifeq ($(FULL_TARGET),mipsel-embedded)
  582. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  583. endif
  584. ifeq ($(FULL_TARGET),mipsel-android)
  585. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  586. endif
  587. ifeq ($(FULL_TARGET),jvm-java)
  588. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  589. endif
  590. ifeq ($(FULL_TARGET),jvm-android)
  591. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  592. endif
  593. ifeq ($(FULL_TARGET),i8086-embedded)
  594. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  595. endif
  596. ifeq ($(FULL_TARGET),i8086-msdos)
  597. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  598. endif
  599. ifeq ($(FULL_TARGET),i8086-win16)
  600. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  601. endif
  602. ifeq ($(FULL_TARGET),aarch64-linux)
  603. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  604. endif
  605. ifeq ($(FULL_TARGET),aarch64-darwin)
  606. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  607. endif
  608. ifeq ($(FULL_TARGET),wasm-wasm)
  609. override TARGET_UNITS+=system uuchar objpas macpas iso7185 buildrtl cpall lineinfo lnfodwrf
  610. endif
  611. ifeq ($(FULL_TARGET),i386-linux)
  612. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  613. endif
  614. ifeq ($(FULL_TARGET),i386-go32v2)
  615. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  616. endif
  617. ifeq ($(FULL_TARGET),i386-win32)
  618. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  619. endif
  620. ifeq ($(FULL_TARGET),i386-os2)
  621. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  622. endif
  623. ifeq ($(FULL_TARGET),i386-freebsd)
  624. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  625. endif
  626. ifeq ($(FULL_TARGET),i386-beos)
  627. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  628. endif
  629. ifeq ($(FULL_TARGET),i386-haiku)
  630. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  631. endif
  632. ifeq ($(FULL_TARGET),i386-netbsd)
  633. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  634. endif
  635. ifeq ($(FULL_TARGET),i386-solaris)
  636. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  637. endif
  638. ifeq ($(FULL_TARGET),i386-qnx)
  639. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  640. endif
  641. ifeq ($(FULL_TARGET),i386-netware)
  642. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  643. endif
  644. ifeq ($(FULL_TARGET),i386-openbsd)
  645. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  646. endif
  647. ifeq ($(FULL_TARGET),i386-wdosx)
  648. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  649. endif
  650. ifeq ($(FULL_TARGET),i386-darwin)
  651. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  652. endif
  653. ifeq ($(FULL_TARGET),i386-emx)
  654. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  655. endif
  656. ifeq ($(FULL_TARGET),i386-watcom)
  657. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  658. endif
  659. ifeq ($(FULL_TARGET),i386-netwlibc)
  660. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  661. endif
  662. ifeq ($(FULL_TARGET),i386-wince)
  663. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  664. endif
  665. ifeq ($(FULL_TARGET),i386-embedded)
  666. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  667. endif
  668. ifeq ($(FULL_TARGET),i386-symbian)
  669. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  670. endif
  671. ifeq ($(FULL_TARGET),i386-nativent)
  672. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  673. endif
  674. ifeq ($(FULL_TARGET),i386-iphonesim)
  675. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  676. endif
  677. ifeq ($(FULL_TARGET),i386-android)
  678. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  679. endif
  680. ifeq ($(FULL_TARGET),i386-aros)
  681. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  682. endif
  683. ifeq ($(FULL_TARGET),i386-uefi)
  684. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  685. endif
  686. ifeq ($(FULL_TARGET),m68k-linux)
  687. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  688. endif
  689. ifeq ($(FULL_TARGET),m68k-freebsd)
  690. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  691. endif
  692. ifeq ($(FULL_TARGET),m68k-netbsd)
  693. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  694. endif
  695. ifeq ($(FULL_TARGET),m68k-amiga)
  696. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  697. endif
  698. ifeq ($(FULL_TARGET),m68k-atari)
  699. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  700. endif
  701. ifeq ($(FULL_TARGET),m68k-openbsd)
  702. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  703. endif
  704. ifeq ($(FULL_TARGET),m68k-palmos)
  705. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  706. endif
  707. ifeq ($(FULL_TARGET),m68k-embedded)
  708. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  709. endif
  710. ifeq ($(FULL_TARGET),powerpc-linux)
  711. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  712. endif
  713. ifeq ($(FULL_TARGET),powerpc-netbsd)
  714. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  715. endif
  716. ifeq ($(FULL_TARGET),powerpc-amiga)
  717. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  718. endif
  719. ifeq ($(FULL_TARGET),powerpc-macos)
  720. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  721. endif
  722. ifeq ($(FULL_TARGET),powerpc-darwin)
  723. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  724. endif
  725. ifeq ($(FULL_TARGET),powerpc-morphos)
  726. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  727. endif
  728. ifeq ($(FULL_TARGET),powerpc-embedded)
  729. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  730. endif
  731. ifeq ($(FULL_TARGET),powerpc-wii)
  732. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  733. endif
  734. ifeq ($(FULL_TARGET),powerpc-aix)
  735. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  736. endif
  737. ifeq ($(FULL_TARGET),sparc-linux)
  738. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  739. endif
  740. ifeq ($(FULL_TARGET),sparc-netbsd)
  741. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  742. endif
  743. ifeq ($(FULL_TARGET),sparc-solaris)
  744. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  745. endif
  746. ifeq ($(FULL_TARGET),sparc-embedded)
  747. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  748. endif
  749. ifeq ($(FULL_TARGET),x86_64-linux)
  750. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  751. endif
  752. ifeq ($(FULL_TARGET),x86_64-freebsd)
  753. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  754. endif
  755. ifeq ($(FULL_TARGET),x86_64-netbsd)
  756. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  757. endif
  758. ifeq ($(FULL_TARGET),x86_64-solaris)
  759. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  760. endif
  761. ifeq ($(FULL_TARGET),x86_64-openbsd)
  762. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  763. endif
  764. ifeq ($(FULL_TARGET),x86_64-darwin)
  765. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  766. endif
  767. ifeq ($(FULL_TARGET),x86_64-win64)
  768. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  769. endif
  770. ifeq ($(FULL_TARGET),x86_64-embedded)
  771. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  772. endif
  773. ifeq ($(FULL_TARGET),x86_64-iphonesim)
  774. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  775. endif
  776. ifeq ($(FULL_TARGET),x86_64-aros)
  777. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  778. endif
  779. ifeq ($(FULL_TARGET),x86_64-dragonfly)
  780. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  781. endif
  782. ifeq ($(FULL_TARGET),x86_64-uefi)
  783. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  784. endif
  785. ifeq ($(FULL_TARGET),arm-linux)
  786. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  787. endif
  788. ifeq ($(FULL_TARGET),arm-palmos)
  789. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  790. endif
  791. ifeq ($(FULL_TARGET),arm-darwin)
  792. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  793. endif
  794. ifeq ($(FULL_TARGET),arm-wince)
  795. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  796. endif
  797. ifeq ($(FULL_TARGET),arm-gba)
  798. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  799. endif
  800. ifeq ($(FULL_TARGET),arm-nds)
  801. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  802. endif
  803. ifeq ($(FULL_TARGET),arm-embedded)
  804. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  805. endif
  806. ifeq ($(FULL_TARGET),arm-symbian)
  807. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  808. endif
  809. ifeq ($(FULL_TARGET),arm-android)
  810. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  811. endif
  812. ifeq ($(FULL_TARGET),arm-aros)
  813. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  814. endif
  815. ifeq ($(FULL_TARGET),powerpc64-linux)
  816. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  817. endif
  818. ifeq ($(FULL_TARGET),powerpc64-darwin)
  819. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  820. endif
  821. ifeq ($(FULL_TARGET),powerpc64-embedded)
  822. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  823. endif
  824. ifeq ($(FULL_TARGET),powerpc64-aix)
  825. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  826. endif
  827. ifeq ($(FULL_TARGET),avr-embedded)
  828. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  829. endif
  830. ifeq ($(FULL_TARGET),armeb-linux)
  831. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  832. endif
  833. ifeq ($(FULL_TARGET),armeb-embedded)
  834. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  835. endif
  836. ifeq ($(FULL_TARGET),mips-linux)
  837. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  838. endif
  839. ifeq ($(FULL_TARGET),mipsel-linux)
  840. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  841. endif
  842. ifeq ($(FULL_TARGET),mipsel-embedded)
  843. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  844. endif
  845. ifeq ($(FULL_TARGET),mipsel-android)
  846. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  847. endif
  848. ifeq ($(FULL_TARGET),jvm-java)
  849. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  850. endif
  851. ifeq ($(FULL_TARGET),jvm-android)
  852. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  853. endif
  854. ifeq ($(FULL_TARGET),i8086-embedded)
  855. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  856. endif
  857. ifeq ($(FULL_TARGET),i8086-msdos)
  858. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  859. endif
  860. ifeq ($(FULL_TARGET),i8086-win16)
  861. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  862. endif
  863. ifeq ($(FULL_TARGET),aarch64-linux)
  864. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  865. endif
  866. ifeq ($(FULL_TARGET),aarch64-darwin)
  867. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  868. endif
  869. ifeq ($(FULL_TARGET),wasm-wasm)
  870. override TARGET_IMPLICITUNITS+=sysinit ctypes strings extpas heaptrc dos messages windows cmem dynlibs rtlconsts sysconst sysutils math types typinfo fgl classes getopts charset character fpwidestring sharemem exeinfo fpintres windirs cpu signals cp1250 cp1251 cp1252 cp1253 cp1254 cp1255 cp1256 cp1257 cp1258 cp437 cp646 cp850 cp856 cp866 cp874 cp8859_1 cp8859_5 cp8859_2 cp852 unicodedata unicodenumtable
  871. endif
  872. ifeq ($(FULL_TARGET),i386-linux)
  873. override TARGET_LOADERS+=$(LOADERS)
  874. endif
  875. ifeq ($(FULL_TARGET),i386-go32v2)
  876. override TARGET_LOADERS+=$(LOADERS)
  877. endif
  878. ifeq ($(FULL_TARGET),i386-win32)
  879. override TARGET_LOADERS+=$(LOADERS)
  880. endif
  881. ifeq ($(FULL_TARGET),i386-os2)
  882. override TARGET_LOADERS+=$(LOADERS)
  883. endif
  884. ifeq ($(FULL_TARGET),i386-freebsd)
  885. override TARGET_LOADERS+=$(LOADERS)
  886. endif
  887. ifeq ($(FULL_TARGET),i386-beos)
  888. override TARGET_LOADERS+=$(LOADERS)
  889. endif
  890. ifeq ($(FULL_TARGET),i386-haiku)
  891. override TARGET_LOADERS+=$(LOADERS)
  892. endif
  893. ifeq ($(FULL_TARGET),i386-netbsd)
  894. override TARGET_LOADERS+=$(LOADERS)
  895. endif
  896. ifeq ($(FULL_TARGET),i386-solaris)
  897. override TARGET_LOADERS+=$(LOADERS)
  898. endif
  899. ifeq ($(FULL_TARGET),i386-qnx)
  900. override TARGET_LOADERS+=$(LOADERS)
  901. endif
  902. ifeq ($(FULL_TARGET),i386-netware)
  903. override TARGET_LOADERS+=$(LOADERS)
  904. endif
  905. ifeq ($(FULL_TARGET),i386-openbsd)
  906. override TARGET_LOADERS+=$(LOADERS)
  907. endif
  908. ifeq ($(FULL_TARGET),i386-wdosx)
  909. override TARGET_LOADERS+=$(LOADERS)
  910. endif
  911. ifeq ($(FULL_TARGET),i386-darwin)
  912. override TARGET_LOADERS+=$(LOADERS)
  913. endif
  914. ifeq ($(FULL_TARGET),i386-emx)
  915. override TARGET_LOADERS+=$(LOADERS)
  916. endif
  917. ifeq ($(FULL_TARGET),i386-watcom)
  918. override TARGET_LOADERS+=$(LOADERS)
  919. endif
  920. ifeq ($(FULL_TARGET),i386-netwlibc)
  921. override TARGET_LOADERS+=$(LOADERS)
  922. endif
  923. ifeq ($(FULL_TARGET),i386-wince)
  924. override TARGET_LOADERS+=$(LOADERS)
  925. endif
  926. ifeq ($(FULL_TARGET),i386-embedded)
  927. override TARGET_LOADERS+=$(LOADERS)
  928. endif
  929. ifeq ($(FULL_TARGET),i386-symbian)
  930. override TARGET_LOADERS+=$(LOADERS)
  931. endif
  932. ifeq ($(FULL_TARGET),i386-nativent)
  933. override TARGET_LOADERS+=$(LOADERS)
  934. endif
  935. ifeq ($(FULL_TARGET),i386-iphonesim)
  936. override TARGET_LOADERS+=$(LOADERS)
  937. endif
  938. ifeq ($(FULL_TARGET),i386-android)
  939. override TARGET_LOADERS+=$(LOADERS)
  940. endif
  941. ifeq ($(FULL_TARGET),i386-aros)
  942. override TARGET_LOADERS+=$(LOADERS)
  943. endif
  944. ifeq ($(FULL_TARGET),i386-uefi)
  945. override TARGET_LOADERS+=$(LOADERS)
  946. endif
  947. ifeq ($(FULL_TARGET),m68k-linux)
  948. override TARGET_LOADERS+=$(LOADERS)
  949. endif
  950. ifeq ($(FULL_TARGET),m68k-freebsd)
  951. override TARGET_LOADERS+=$(LOADERS)
  952. endif
  953. ifeq ($(FULL_TARGET),m68k-netbsd)
  954. override TARGET_LOADERS+=$(LOADERS)
  955. endif
  956. ifeq ($(FULL_TARGET),m68k-amiga)
  957. override TARGET_LOADERS+=$(LOADERS)
  958. endif
  959. ifeq ($(FULL_TARGET),m68k-atari)
  960. override TARGET_LOADERS+=$(LOADERS)
  961. endif
  962. ifeq ($(FULL_TARGET),m68k-openbsd)
  963. override TARGET_LOADERS+=$(LOADERS)
  964. endif
  965. ifeq ($(FULL_TARGET),m68k-palmos)
  966. override TARGET_LOADERS+=$(LOADERS)
  967. endif
  968. ifeq ($(FULL_TARGET),m68k-embedded)
  969. override TARGET_LOADERS+=$(LOADERS)
  970. endif
  971. ifeq ($(FULL_TARGET),powerpc-linux)
  972. override TARGET_LOADERS+=$(LOADERS)
  973. endif
  974. ifeq ($(FULL_TARGET),powerpc-netbsd)
  975. override TARGET_LOADERS+=$(LOADERS)
  976. endif
  977. ifeq ($(FULL_TARGET),powerpc-amiga)
  978. override TARGET_LOADERS+=$(LOADERS)
  979. endif
  980. ifeq ($(FULL_TARGET),powerpc-macos)
  981. override TARGET_LOADERS+=$(LOADERS)
  982. endif
  983. ifeq ($(FULL_TARGET),powerpc-darwin)
  984. override TARGET_LOADERS+=$(LOADERS)
  985. endif
  986. ifeq ($(FULL_TARGET),powerpc-morphos)
  987. override TARGET_LOADERS+=$(LOADERS)
  988. endif
  989. ifeq ($(FULL_TARGET),powerpc-embedded)
  990. override TARGET_LOADERS+=$(LOADERS)
  991. endif
  992. ifeq ($(FULL_TARGET),powerpc-wii)
  993. override TARGET_LOADERS+=$(LOADERS)
  994. endif
  995. ifeq ($(FULL_TARGET),powerpc-aix)
  996. override TARGET_LOADERS+=$(LOADERS)
  997. endif
  998. ifeq ($(FULL_TARGET),sparc-linux)
  999. override TARGET_LOADERS+=$(LOADERS)
  1000. endif
  1001. ifeq ($(FULL_TARGET),sparc-netbsd)
  1002. override TARGET_LOADERS+=$(LOADERS)
  1003. endif
  1004. ifeq ($(FULL_TARGET),sparc-solaris)
  1005. override TARGET_LOADERS+=$(LOADERS)
  1006. endif
  1007. ifeq ($(FULL_TARGET),sparc-embedded)
  1008. override TARGET_LOADERS+=$(LOADERS)
  1009. endif
  1010. ifeq ($(FULL_TARGET),x86_64-linux)
  1011. override TARGET_LOADERS+=$(LOADERS)
  1012. endif
  1013. ifeq ($(FULL_TARGET),x86_64-freebsd)
  1014. override TARGET_LOADERS+=$(LOADERS)
  1015. endif
  1016. ifeq ($(FULL_TARGET),x86_64-netbsd)
  1017. override TARGET_LOADERS+=$(LOADERS)
  1018. endif
  1019. ifeq ($(FULL_TARGET),x86_64-solaris)
  1020. override TARGET_LOADERS+=$(LOADERS)
  1021. endif
  1022. ifeq ($(FULL_TARGET),x86_64-openbsd)
  1023. override TARGET_LOADERS+=$(LOADERS)
  1024. endif
  1025. ifeq ($(FULL_TARGET),x86_64-darwin)
  1026. override TARGET_LOADERS+=$(LOADERS)
  1027. endif
  1028. ifeq ($(FULL_TARGET),x86_64-win64)
  1029. override TARGET_LOADERS+=$(LOADERS)
  1030. endif
  1031. ifeq ($(FULL_TARGET),x86_64-embedded)
  1032. override TARGET_LOADERS+=$(LOADERS)
  1033. endif
  1034. ifeq ($(FULL_TARGET),x86_64-iphonesim)
  1035. override TARGET_LOADERS+=$(LOADERS)
  1036. endif
  1037. ifeq ($(FULL_TARGET),x86_64-aros)
  1038. override TARGET_LOADERS+=$(LOADERS)
  1039. endif
  1040. ifeq ($(FULL_TARGET),x86_64-dragonfly)
  1041. override TARGET_LOADERS+=$(LOADERS)
  1042. endif
  1043. ifeq ($(FULL_TARGET),x86_64-uefi)
  1044. override TARGET_LOADERS+=$(LOADERS)
  1045. endif
  1046. ifeq ($(FULL_TARGET),arm-linux)
  1047. override TARGET_LOADERS+=$(LOADERS)
  1048. endif
  1049. ifeq ($(FULL_TARGET),arm-palmos)
  1050. override TARGET_LOADERS+=$(LOADERS)
  1051. endif
  1052. ifeq ($(FULL_TARGET),arm-darwin)
  1053. override TARGET_LOADERS+=$(LOADERS)
  1054. endif
  1055. ifeq ($(FULL_TARGET),arm-wince)
  1056. override TARGET_LOADERS+=$(LOADERS)
  1057. endif
  1058. ifeq ($(FULL_TARGET),arm-gba)
  1059. override TARGET_LOADERS+=$(LOADERS)
  1060. endif
  1061. ifeq ($(FULL_TARGET),arm-nds)
  1062. override TARGET_LOADERS+=$(LOADERS)
  1063. endif
  1064. ifeq ($(FULL_TARGET),arm-embedded)
  1065. override TARGET_LOADERS+=$(LOADERS)
  1066. endif
  1067. ifeq ($(FULL_TARGET),arm-symbian)
  1068. override TARGET_LOADERS+=$(LOADERS)
  1069. endif
  1070. ifeq ($(FULL_TARGET),arm-android)
  1071. override TARGET_LOADERS+=$(LOADERS)
  1072. endif
  1073. ifeq ($(FULL_TARGET),arm-aros)
  1074. override TARGET_LOADERS+=$(LOADERS)
  1075. endif
  1076. ifeq ($(FULL_TARGET),powerpc64-linux)
  1077. override TARGET_LOADERS+=$(LOADERS)
  1078. endif
  1079. ifeq ($(FULL_TARGET),powerpc64-darwin)
  1080. override TARGET_LOADERS+=$(LOADERS)
  1081. endif
  1082. ifeq ($(FULL_TARGET),powerpc64-embedded)
  1083. override TARGET_LOADERS+=$(LOADERS)
  1084. endif
  1085. ifeq ($(FULL_TARGET),powerpc64-aix)
  1086. override TARGET_LOADERS+=$(LOADERS)
  1087. endif
  1088. ifeq ($(FULL_TARGET),avr-embedded)
  1089. override TARGET_LOADERS+=$(LOADERS)
  1090. endif
  1091. ifeq ($(FULL_TARGET),armeb-linux)
  1092. override TARGET_LOADERS+=$(LOADERS)
  1093. endif
  1094. ifeq ($(FULL_TARGET),armeb-embedded)
  1095. override TARGET_LOADERS+=$(LOADERS)
  1096. endif
  1097. ifeq ($(FULL_TARGET),mips-linux)
  1098. override TARGET_LOADERS+=$(LOADERS)
  1099. endif
  1100. ifeq ($(FULL_TARGET),mipsel-linux)
  1101. override TARGET_LOADERS+=$(LOADERS)
  1102. endif
  1103. ifeq ($(FULL_TARGET),mipsel-embedded)
  1104. override TARGET_LOADERS+=$(LOADERS)
  1105. endif
  1106. ifeq ($(FULL_TARGET),mipsel-android)
  1107. override TARGET_LOADERS+=$(LOADERS)
  1108. endif
  1109. ifeq ($(FULL_TARGET),jvm-java)
  1110. override TARGET_LOADERS+=$(LOADERS)
  1111. endif
  1112. ifeq ($(FULL_TARGET),jvm-android)
  1113. override TARGET_LOADERS+=$(LOADERS)
  1114. endif
  1115. ifeq ($(FULL_TARGET),i8086-embedded)
  1116. override TARGET_LOADERS+=$(LOADERS)
  1117. endif
  1118. ifeq ($(FULL_TARGET),i8086-msdos)
  1119. override TARGET_LOADERS+=$(LOADERS)
  1120. endif
  1121. ifeq ($(FULL_TARGET),i8086-win16)
  1122. override TARGET_LOADERS+=$(LOADERS)
  1123. endif
  1124. ifeq ($(FULL_TARGET),aarch64-linux)
  1125. override TARGET_LOADERS+=$(LOADERS)
  1126. endif
  1127. ifeq ($(FULL_TARGET),aarch64-darwin)
  1128. override TARGET_LOADERS+=$(LOADERS)
  1129. endif
  1130. ifeq ($(FULL_TARGET),wasm-wasm)
  1131. override TARGET_LOADERS+=$(LOADERS)
  1132. endif
  1133. ifeq ($(FULL_TARGET),i386-linux)
  1134. override TARGET_RSTS+=math typinfo classes sysconst
  1135. endif
  1136. ifeq ($(FULL_TARGET),i386-go32v2)
  1137. override TARGET_RSTS+=math typinfo classes sysconst
  1138. endif
  1139. ifeq ($(FULL_TARGET),i386-win32)
  1140. override TARGET_RSTS+=math typinfo classes sysconst
  1141. endif
  1142. ifeq ($(FULL_TARGET),i386-os2)
  1143. override TARGET_RSTS+=math typinfo classes sysconst
  1144. endif
  1145. ifeq ($(FULL_TARGET),i386-freebsd)
  1146. override TARGET_RSTS+=math typinfo classes sysconst
  1147. endif
  1148. ifeq ($(FULL_TARGET),i386-beos)
  1149. override TARGET_RSTS+=math typinfo classes sysconst
  1150. endif
  1151. ifeq ($(FULL_TARGET),i386-haiku)
  1152. override TARGET_RSTS+=math typinfo classes sysconst
  1153. endif
  1154. ifeq ($(FULL_TARGET),i386-netbsd)
  1155. override TARGET_RSTS+=math typinfo classes sysconst
  1156. endif
  1157. ifeq ($(FULL_TARGET),i386-solaris)
  1158. override TARGET_RSTS+=math typinfo classes sysconst
  1159. endif
  1160. ifeq ($(FULL_TARGET),i386-qnx)
  1161. override TARGET_RSTS+=math typinfo classes sysconst
  1162. endif
  1163. ifeq ($(FULL_TARGET),i386-netware)
  1164. override TARGET_RSTS+=math typinfo classes sysconst
  1165. endif
  1166. ifeq ($(FULL_TARGET),i386-openbsd)
  1167. override TARGET_RSTS+=math typinfo classes sysconst
  1168. endif
  1169. ifeq ($(FULL_TARGET),i386-wdosx)
  1170. override TARGET_RSTS+=math typinfo classes sysconst
  1171. endif
  1172. ifeq ($(FULL_TARGET),i386-darwin)
  1173. override TARGET_RSTS+=math typinfo classes sysconst
  1174. endif
  1175. ifeq ($(FULL_TARGET),i386-emx)
  1176. override TARGET_RSTS+=math typinfo classes sysconst
  1177. endif
  1178. ifeq ($(FULL_TARGET),i386-watcom)
  1179. override TARGET_RSTS+=math typinfo classes sysconst
  1180. endif
  1181. ifeq ($(FULL_TARGET),i386-netwlibc)
  1182. override TARGET_RSTS+=math typinfo classes sysconst
  1183. endif
  1184. ifeq ($(FULL_TARGET),i386-wince)
  1185. override TARGET_RSTS+=math typinfo classes sysconst
  1186. endif
  1187. ifeq ($(FULL_TARGET),i386-embedded)
  1188. override TARGET_RSTS+=math typinfo classes sysconst
  1189. endif
  1190. ifeq ($(FULL_TARGET),i386-symbian)
  1191. override TARGET_RSTS+=math typinfo classes sysconst
  1192. endif
  1193. ifeq ($(FULL_TARGET),i386-nativent)
  1194. override TARGET_RSTS+=math typinfo classes sysconst
  1195. endif
  1196. ifeq ($(FULL_TARGET),i386-iphonesim)
  1197. override TARGET_RSTS+=math typinfo classes sysconst
  1198. endif
  1199. ifeq ($(FULL_TARGET),i386-android)
  1200. override TARGET_RSTS+=math typinfo classes sysconst
  1201. endif
  1202. ifeq ($(FULL_TARGET),i386-aros)
  1203. override TARGET_RSTS+=math typinfo classes sysconst
  1204. endif
  1205. ifeq ($(FULL_TARGET),i386-uefi)
  1206. override TARGET_RSTS+=math typinfo classes sysconst
  1207. endif
  1208. ifeq ($(FULL_TARGET),m68k-linux)
  1209. override TARGET_RSTS+=math typinfo classes sysconst
  1210. endif
  1211. ifeq ($(FULL_TARGET),m68k-freebsd)
  1212. override TARGET_RSTS+=math typinfo classes sysconst
  1213. endif
  1214. ifeq ($(FULL_TARGET),m68k-netbsd)
  1215. override TARGET_RSTS+=math typinfo classes sysconst
  1216. endif
  1217. ifeq ($(FULL_TARGET),m68k-amiga)
  1218. override TARGET_RSTS+=math typinfo classes sysconst
  1219. endif
  1220. ifeq ($(FULL_TARGET),m68k-atari)
  1221. override TARGET_RSTS+=math typinfo classes sysconst
  1222. endif
  1223. ifeq ($(FULL_TARGET),m68k-openbsd)
  1224. override TARGET_RSTS+=math typinfo classes sysconst
  1225. endif
  1226. ifeq ($(FULL_TARGET),m68k-palmos)
  1227. override TARGET_RSTS+=math typinfo classes sysconst
  1228. endif
  1229. ifeq ($(FULL_TARGET),m68k-embedded)
  1230. override TARGET_RSTS+=math typinfo classes sysconst
  1231. endif
  1232. ifeq ($(FULL_TARGET),powerpc-linux)
  1233. override TARGET_RSTS+=math typinfo classes sysconst
  1234. endif
  1235. ifeq ($(FULL_TARGET),powerpc-netbsd)
  1236. override TARGET_RSTS+=math typinfo classes sysconst
  1237. endif
  1238. ifeq ($(FULL_TARGET),powerpc-amiga)
  1239. override TARGET_RSTS+=math typinfo classes sysconst
  1240. endif
  1241. ifeq ($(FULL_TARGET),powerpc-macos)
  1242. override TARGET_RSTS+=math typinfo classes sysconst
  1243. endif
  1244. ifeq ($(FULL_TARGET),powerpc-darwin)
  1245. override TARGET_RSTS+=math typinfo classes sysconst
  1246. endif
  1247. ifeq ($(FULL_TARGET),powerpc-morphos)
  1248. override TARGET_RSTS+=math typinfo classes sysconst
  1249. endif
  1250. ifeq ($(FULL_TARGET),powerpc-embedded)
  1251. override TARGET_RSTS+=math typinfo classes sysconst
  1252. endif
  1253. ifeq ($(FULL_TARGET),powerpc-wii)
  1254. override TARGET_RSTS+=math typinfo classes sysconst
  1255. endif
  1256. ifeq ($(FULL_TARGET),powerpc-aix)
  1257. override TARGET_RSTS+=math typinfo classes sysconst
  1258. endif
  1259. ifeq ($(FULL_TARGET),sparc-linux)
  1260. override TARGET_RSTS+=math typinfo classes sysconst
  1261. endif
  1262. ifeq ($(FULL_TARGET),sparc-netbsd)
  1263. override TARGET_RSTS+=math typinfo classes sysconst
  1264. endif
  1265. ifeq ($(FULL_TARGET),sparc-solaris)
  1266. override TARGET_RSTS+=math typinfo classes sysconst
  1267. endif
  1268. ifeq ($(FULL_TARGET),sparc-embedded)
  1269. override TARGET_RSTS+=math typinfo classes sysconst
  1270. endif
  1271. ifeq ($(FULL_TARGET),x86_64-linux)
  1272. override TARGET_RSTS+=math typinfo classes sysconst
  1273. endif
  1274. ifeq ($(FULL_TARGET),x86_64-freebsd)
  1275. override TARGET_RSTS+=math typinfo classes sysconst
  1276. endif
  1277. ifeq ($(FULL_TARGET),x86_64-netbsd)
  1278. override TARGET_RSTS+=math typinfo classes sysconst
  1279. endif
  1280. ifeq ($(FULL_TARGET),x86_64-solaris)
  1281. override TARGET_RSTS+=math typinfo classes sysconst
  1282. endif
  1283. ifeq ($(FULL_TARGET),x86_64-openbsd)
  1284. override TARGET_RSTS+=math typinfo classes sysconst
  1285. endif
  1286. ifeq ($(FULL_TARGET),x86_64-darwin)
  1287. override TARGET_RSTS+=math typinfo classes sysconst
  1288. endif
  1289. ifeq ($(FULL_TARGET),x86_64-win64)
  1290. override TARGET_RSTS+=math typinfo classes sysconst
  1291. endif
  1292. ifeq ($(FULL_TARGET),x86_64-embedded)
  1293. override TARGET_RSTS+=math typinfo classes sysconst
  1294. endif
  1295. ifeq ($(FULL_TARGET),x86_64-iphonesim)
  1296. override TARGET_RSTS+=math typinfo classes sysconst
  1297. endif
  1298. ifeq ($(FULL_TARGET),x86_64-aros)
  1299. override TARGET_RSTS+=math typinfo classes sysconst
  1300. endif
  1301. ifeq ($(FULL_TARGET),x86_64-dragonfly)
  1302. override TARGET_RSTS+=math typinfo classes sysconst
  1303. endif
  1304. ifeq ($(FULL_TARGET),x86_64-uefi)
  1305. override TARGET_RSTS+=math typinfo classes sysconst
  1306. endif
  1307. ifeq ($(FULL_TARGET),arm-linux)
  1308. override TARGET_RSTS+=math typinfo classes sysconst
  1309. endif
  1310. ifeq ($(FULL_TARGET),arm-palmos)
  1311. override TARGET_RSTS+=math typinfo classes sysconst
  1312. endif
  1313. ifeq ($(FULL_TARGET),arm-darwin)
  1314. override TARGET_RSTS+=math typinfo classes sysconst
  1315. endif
  1316. ifeq ($(FULL_TARGET),arm-wince)
  1317. override TARGET_RSTS+=math typinfo classes sysconst
  1318. endif
  1319. ifeq ($(FULL_TARGET),arm-gba)
  1320. override TARGET_RSTS+=math typinfo classes sysconst
  1321. endif
  1322. ifeq ($(FULL_TARGET),arm-nds)
  1323. override TARGET_RSTS+=math typinfo classes sysconst
  1324. endif
  1325. ifeq ($(FULL_TARGET),arm-embedded)
  1326. override TARGET_RSTS+=math typinfo classes sysconst
  1327. endif
  1328. ifeq ($(FULL_TARGET),arm-symbian)
  1329. override TARGET_RSTS+=math typinfo classes sysconst
  1330. endif
  1331. ifeq ($(FULL_TARGET),arm-android)
  1332. override TARGET_RSTS+=math typinfo classes sysconst
  1333. endif
  1334. ifeq ($(FULL_TARGET),arm-aros)
  1335. override TARGET_RSTS+=math typinfo classes sysconst
  1336. endif
  1337. ifeq ($(FULL_TARGET),powerpc64-linux)
  1338. override TARGET_RSTS+=math typinfo classes sysconst
  1339. endif
  1340. ifeq ($(FULL_TARGET),powerpc64-darwin)
  1341. override TARGET_RSTS+=math typinfo classes sysconst
  1342. endif
  1343. ifeq ($(FULL_TARGET),powerpc64-embedded)
  1344. override TARGET_RSTS+=math typinfo classes sysconst
  1345. endif
  1346. ifeq ($(FULL_TARGET),powerpc64-aix)
  1347. override TARGET_RSTS+=math typinfo classes sysconst
  1348. endif
  1349. ifeq ($(FULL_TARGET),avr-embedded)
  1350. override TARGET_RSTS+=math typinfo classes sysconst
  1351. endif
  1352. ifeq ($(FULL_TARGET),armeb-linux)
  1353. override TARGET_RSTS+=math typinfo classes sysconst
  1354. endif
  1355. ifeq ($(FULL_TARGET),armeb-embedded)
  1356. override TARGET_RSTS+=math typinfo classes sysconst
  1357. endif
  1358. ifeq ($(FULL_TARGET),mips-linux)
  1359. override TARGET_RSTS+=math typinfo classes sysconst
  1360. endif
  1361. ifeq ($(FULL_TARGET),mipsel-linux)
  1362. override TARGET_RSTS+=math typinfo classes sysconst
  1363. endif
  1364. ifeq ($(FULL_TARGET),mipsel-embedded)
  1365. override TARGET_RSTS+=math typinfo classes sysconst
  1366. endif
  1367. ifeq ($(FULL_TARGET),mipsel-android)
  1368. override TARGET_RSTS+=math typinfo classes sysconst
  1369. endif
  1370. ifeq ($(FULL_TARGET),jvm-java)
  1371. override TARGET_RSTS+=math typinfo classes sysconst
  1372. endif
  1373. ifeq ($(FULL_TARGET),jvm-android)
  1374. override TARGET_RSTS+=math typinfo classes sysconst
  1375. endif
  1376. ifeq ($(FULL_TARGET),i8086-embedded)
  1377. override TARGET_RSTS+=math typinfo classes sysconst
  1378. endif
  1379. ifeq ($(FULL_TARGET),i8086-msdos)
  1380. override TARGET_RSTS+=math typinfo classes sysconst
  1381. endif
  1382. ifeq ($(FULL_TARGET),i8086-win16)
  1383. override TARGET_RSTS+=math typinfo classes sysconst
  1384. endif
  1385. ifeq ($(FULL_TARGET),aarch64-linux)
  1386. override TARGET_RSTS+=math typinfo classes sysconst
  1387. endif
  1388. ifeq ($(FULL_TARGET),aarch64-darwin)
  1389. override TARGET_RSTS+=math typinfo classes sysconst
  1390. endif
  1391. ifeq ($(FULL_TARGET),wasm-wasm)
  1392. override TARGET_RSTS+=math typinfo classes sysconst
  1393. endif
  1394. override INSTALL_BUILDUNIT=buildrtl
  1395. override INSTALL_FPCPACKAGE=y
  1396. ifeq ($(FULL_TARGET),i386-linux)
  1397. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1398. endif
  1399. ifeq ($(FULL_TARGET),i386-go32v2)
  1400. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1401. endif
  1402. ifeq ($(FULL_TARGET),i386-win32)
  1403. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1404. endif
  1405. ifeq ($(FULL_TARGET),i386-os2)
  1406. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1407. endif
  1408. ifeq ($(FULL_TARGET),i386-freebsd)
  1409. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1410. endif
  1411. ifeq ($(FULL_TARGET),i386-beos)
  1412. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1413. endif
  1414. ifeq ($(FULL_TARGET),i386-haiku)
  1415. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1416. endif
  1417. ifeq ($(FULL_TARGET),i386-netbsd)
  1418. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1419. endif
  1420. ifeq ($(FULL_TARGET),i386-solaris)
  1421. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1422. endif
  1423. ifeq ($(FULL_TARGET),i386-qnx)
  1424. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1425. endif
  1426. ifeq ($(FULL_TARGET),i386-netware)
  1427. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1428. endif
  1429. ifeq ($(FULL_TARGET),i386-openbsd)
  1430. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1431. endif
  1432. ifeq ($(FULL_TARGET),i386-wdosx)
  1433. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1434. endif
  1435. ifeq ($(FULL_TARGET),i386-darwin)
  1436. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1437. endif
  1438. ifeq ($(FULL_TARGET),i386-emx)
  1439. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1440. endif
  1441. ifeq ($(FULL_TARGET),i386-watcom)
  1442. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1443. endif
  1444. ifeq ($(FULL_TARGET),i386-netwlibc)
  1445. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1446. endif
  1447. ifeq ($(FULL_TARGET),i386-wince)
  1448. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1449. endif
  1450. ifeq ($(FULL_TARGET),i386-embedded)
  1451. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1452. endif
  1453. ifeq ($(FULL_TARGET),i386-symbian)
  1454. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1455. endif
  1456. ifeq ($(FULL_TARGET),i386-nativent)
  1457. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1458. endif
  1459. ifeq ($(FULL_TARGET),i386-iphonesim)
  1460. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1461. endif
  1462. ifeq ($(FULL_TARGET),i386-android)
  1463. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1464. endif
  1465. ifeq ($(FULL_TARGET),i386-aros)
  1466. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1467. endif
  1468. ifeq ($(FULL_TARGET),i386-uefi)
  1469. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1470. endif
  1471. ifeq ($(FULL_TARGET),m68k-linux)
  1472. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1473. endif
  1474. ifeq ($(FULL_TARGET),m68k-freebsd)
  1475. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1476. endif
  1477. ifeq ($(FULL_TARGET),m68k-netbsd)
  1478. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1479. endif
  1480. ifeq ($(FULL_TARGET),m68k-amiga)
  1481. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1482. endif
  1483. ifeq ($(FULL_TARGET),m68k-atari)
  1484. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1485. endif
  1486. ifeq ($(FULL_TARGET),m68k-openbsd)
  1487. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1488. endif
  1489. ifeq ($(FULL_TARGET),m68k-palmos)
  1490. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1491. endif
  1492. ifeq ($(FULL_TARGET),m68k-embedded)
  1493. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1494. endif
  1495. ifeq ($(FULL_TARGET),powerpc-linux)
  1496. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1497. endif
  1498. ifeq ($(FULL_TARGET),powerpc-netbsd)
  1499. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1500. endif
  1501. ifeq ($(FULL_TARGET),powerpc-amiga)
  1502. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1503. endif
  1504. ifeq ($(FULL_TARGET),powerpc-macos)
  1505. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1506. endif
  1507. ifeq ($(FULL_TARGET),powerpc-darwin)
  1508. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1509. endif
  1510. ifeq ($(FULL_TARGET),powerpc-morphos)
  1511. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1512. endif
  1513. ifeq ($(FULL_TARGET),powerpc-embedded)
  1514. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1515. endif
  1516. ifeq ($(FULL_TARGET),powerpc-wii)
  1517. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1518. endif
  1519. ifeq ($(FULL_TARGET),powerpc-aix)
  1520. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1521. endif
  1522. ifeq ($(FULL_TARGET),sparc-linux)
  1523. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1524. endif
  1525. ifeq ($(FULL_TARGET),sparc-netbsd)
  1526. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1527. endif
  1528. ifeq ($(FULL_TARGET),sparc-solaris)
  1529. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1530. endif
  1531. ifeq ($(FULL_TARGET),sparc-embedded)
  1532. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1533. endif
  1534. ifeq ($(FULL_TARGET),x86_64-linux)
  1535. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1536. endif
  1537. ifeq ($(FULL_TARGET),x86_64-freebsd)
  1538. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1539. endif
  1540. ifeq ($(FULL_TARGET),x86_64-netbsd)
  1541. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1542. endif
  1543. ifeq ($(FULL_TARGET),x86_64-solaris)
  1544. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1545. endif
  1546. ifeq ($(FULL_TARGET),x86_64-openbsd)
  1547. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1548. endif
  1549. ifeq ($(FULL_TARGET),x86_64-darwin)
  1550. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1551. endif
  1552. ifeq ($(FULL_TARGET),x86_64-win64)
  1553. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1554. endif
  1555. ifeq ($(FULL_TARGET),x86_64-embedded)
  1556. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1557. endif
  1558. ifeq ($(FULL_TARGET),x86_64-iphonesim)
  1559. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1560. endif
  1561. ifeq ($(FULL_TARGET),x86_64-aros)
  1562. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1563. endif
  1564. ifeq ($(FULL_TARGET),x86_64-dragonfly)
  1565. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1566. endif
  1567. ifeq ($(FULL_TARGET),x86_64-uefi)
  1568. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1569. endif
  1570. ifeq ($(FULL_TARGET),arm-linux)
  1571. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1572. endif
  1573. ifeq ($(FULL_TARGET),arm-palmos)
  1574. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1575. endif
  1576. ifeq ($(FULL_TARGET),arm-darwin)
  1577. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1578. endif
  1579. ifeq ($(FULL_TARGET),arm-wince)
  1580. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1581. endif
  1582. ifeq ($(FULL_TARGET),arm-gba)
  1583. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1584. endif
  1585. ifeq ($(FULL_TARGET),arm-nds)
  1586. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1587. endif
  1588. ifeq ($(FULL_TARGET),arm-embedded)
  1589. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1590. endif
  1591. ifeq ($(FULL_TARGET),arm-symbian)
  1592. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1593. endif
  1594. ifeq ($(FULL_TARGET),arm-android)
  1595. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1596. endif
  1597. ifeq ($(FULL_TARGET),arm-aros)
  1598. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1599. endif
  1600. ifeq ($(FULL_TARGET),powerpc64-linux)
  1601. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1602. endif
  1603. ifeq ($(FULL_TARGET),powerpc64-darwin)
  1604. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1605. endif
  1606. ifeq ($(FULL_TARGET),powerpc64-embedded)
  1607. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1608. endif
  1609. ifeq ($(FULL_TARGET),powerpc64-aix)
  1610. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1611. endif
  1612. ifeq ($(FULL_TARGET),avr-embedded)
  1613. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1614. endif
  1615. ifeq ($(FULL_TARGET),armeb-linux)
  1616. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1617. endif
  1618. ifeq ($(FULL_TARGET),armeb-embedded)
  1619. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1620. endif
  1621. ifeq ($(FULL_TARGET),mips-linux)
  1622. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1623. endif
  1624. ifeq ($(FULL_TARGET),mipsel-linux)
  1625. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1626. endif
  1627. ifeq ($(FULL_TARGET),mipsel-embedded)
  1628. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1629. endif
  1630. ifeq ($(FULL_TARGET),mipsel-android)
  1631. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1632. endif
  1633. ifeq ($(FULL_TARGET),jvm-java)
  1634. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1635. endif
  1636. ifeq ($(FULL_TARGET),jvm-android)
  1637. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1638. endif
  1639. ifeq ($(FULL_TARGET),i8086-embedded)
  1640. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1641. endif
  1642. ifeq ($(FULL_TARGET),i8086-msdos)
  1643. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1644. endif
  1645. ifeq ($(FULL_TARGET),i8086-win16)
  1646. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1647. endif
  1648. ifeq ($(FULL_TARGET),aarch64-linux)
  1649. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1650. endif
  1651. ifeq ($(FULL_TARGET),aarch64-darwin)
  1652. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1653. endif
  1654. ifeq ($(FULL_TARGET),wasm-wasm)
  1655. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  1656. endif
  1657. ifeq ($(FULL_TARGET),i386-linux)
  1658. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1659. endif
  1660. ifeq ($(FULL_TARGET),i386-go32v2)
  1661. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1662. endif
  1663. ifeq ($(FULL_TARGET),i386-win32)
  1664. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1665. endif
  1666. ifeq ($(FULL_TARGET),i386-os2)
  1667. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1668. endif
  1669. ifeq ($(FULL_TARGET),i386-freebsd)
  1670. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1671. endif
  1672. ifeq ($(FULL_TARGET),i386-beos)
  1673. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1674. endif
  1675. ifeq ($(FULL_TARGET),i386-haiku)
  1676. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1677. endif
  1678. ifeq ($(FULL_TARGET),i386-netbsd)
  1679. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1680. endif
  1681. ifeq ($(FULL_TARGET),i386-solaris)
  1682. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1683. endif
  1684. ifeq ($(FULL_TARGET),i386-qnx)
  1685. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1686. endif
  1687. ifeq ($(FULL_TARGET),i386-netware)
  1688. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1689. endif
  1690. ifeq ($(FULL_TARGET),i386-openbsd)
  1691. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1692. endif
  1693. ifeq ($(FULL_TARGET),i386-wdosx)
  1694. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1695. endif
  1696. ifeq ($(FULL_TARGET),i386-darwin)
  1697. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1698. endif
  1699. ifeq ($(FULL_TARGET),i386-emx)
  1700. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1701. endif
  1702. ifeq ($(FULL_TARGET),i386-watcom)
  1703. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1704. endif
  1705. ifeq ($(FULL_TARGET),i386-netwlibc)
  1706. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1707. endif
  1708. ifeq ($(FULL_TARGET),i386-wince)
  1709. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1710. endif
  1711. ifeq ($(FULL_TARGET),i386-embedded)
  1712. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1713. endif
  1714. ifeq ($(FULL_TARGET),i386-symbian)
  1715. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1716. endif
  1717. ifeq ($(FULL_TARGET),i386-nativent)
  1718. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1719. endif
  1720. ifeq ($(FULL_TARGET),i386-iphonesim)
  1721. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1722. endif
  1723. ifeq ($(FULL_TARGET),i386-android)
  1724. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1725. endif
  1726. ifeq ($(FULL_TARGET),i386-aros)
  1727. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1728. endif
  1729. ifeq ($(FULL_TARGET),i386-uefi)
  1730. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1731. endif
  1732. ifeq ($(FULL_TARGET),m68k-linux)
  1733. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1734. endif
  1735. ifeq ($(FULL_TARGET),m68k-freebsd)
  1736. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1737. endif
  1738. ifeq ($(FULL_TARGET),m68k-netbsd)
  1739. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1740. endif
  1741. ifeq ($(FULL_TARGET),m68k-amiga)
  1742. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1743. endif
  1744. ifeq ($(FULL_TARGET),m68k-atari)
  1745. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1746. endif
  1747. ifeq ($(FULL_TARGET),m68k-openbsd)
  1748. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1749. endif
  1750. ifeq ($(FULL_TARGET),m68k-palmos)
  1751. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1752. endif
  1753. ifeq ($(FULL_TARGET),m68k-embedded)
  1754. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1755. endif
  1756. ifeq ($(FULL_TARGET),powerpc-linux)
  1757. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1758. endif
  1759. ifeq ($(FULL_TARGET),powerpc-netbsd)
  1760. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1761. endif
  1762. ifeq ($(FULL_TARGET),powerpc-amiga)
  1763. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1764. endif
  1765. ifeq ($(FULL_TARGET),powerpc-macos)
  1766. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1767. endif
  1768. ifeq ($(FULL_TARGET),powerpc-darwin)
  1769. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1770. endif
  1771. ifeq ($(FULL_TARGET),powerpc-morphos)
  1772. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1773. endif
  1774. ifeq ($(FULL_TARGET),powerpc-embedded)
  1775. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1776. endif
  1777. ifeq ($(FULL_TARGET),powerpc-wii)
  1778. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1779. endif
  1780. ifeq ($(FULL_TARGET),powerpc-aix)
  1781. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1782. endif
  1783. ifeq ($(FULL_TARGET),sparc-linux)
  1784. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1785. endif
  1786. ifeq ($(FULL_TARGET),sparc-netbsd)
  1787. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1788. endif
  1789. ifeq ($(FULL_TARGET),sparc-solaris)
  1790. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1791. endif
  1792. ifeq ($(FULL_TARGET),sparc-embedded)
  1793. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1794. endif
  1795. ifeq ($(FULL_TARGET),x86_64-linux)
  1796. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1797. endif
  1798. ifeq ($(FULL_TARGET),x86_64-freebsd)
  1799. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1800. endif
  1801. ifeq ($(FULL_TARGET),x86_64-netbsd)
  1802. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1803. endif
  1804. ifeq ($(FULL_TARGET),x86_64-solaris)
  1805. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1806. endif
  1807. ifeq ($(FULL_TARGET),x86_64-openbsd)
  1808. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1809. endif
  1810. ifeq ($(FULL_TARGET),x86_64-darwin)
  1811. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1812. endif
  1813. ifeq ($(FULL_TARGET),x86_64-win64)
  1814. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1815. endif
  1816. ifeq ($(FULL_TARGET),x86_64-embedded)
  1817. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1818. endif
  1819. ifeq ($(FULL_TARGET),x86_64-iphonesim)
  1820. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1821. endif
  1822. ifeq ($(FULL_TARGET),x86_64-aros)
  1823. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1824. endif
  1825. ifeq ($(FULL_TARGET),x86_64-dragonfly)
  1826. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1827. endif
  1828. ifeq ($(FULL_TARGET),x86_64-uefi)
  1829. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1830. endif
  1831. ifeq ($(FULL_TARGET),arm-linux)
  1832. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1833. endif
  1834. ifeq ($(FULL_TARGET),arm-palmos)
  1835. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1836. endif
  1837. ifeq ($(FULL_TARGET),arm-darwin)
  1838. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1839. endif
  1840. ifeq ($(FULL_TARGET),arm-wince)
  1841. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1842. endif
  1843. ifeq ($(FULL_TARGET),arm-gba)
  1844. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1845. endif
  1846. ifeq ($(FULL_TARGET),arm-nds)
  1847. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1848. endif
  1849. ifeq ($(FULL_TARGET),arm-embedded)
  1850. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1851. endif
  1852. ifeq ($(FULL_TARGET),arm-symbian)
  1853. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1854. endif
  1855. ifeq ($(FULL_TARGET),arm-android)
  1856. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1857. endif
  1858. ifeq ($(FULL_TARGET),arm-aros)
  1859. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1860. endif
  1861. ifeq ($(FULL_TARGET),powerpc64-linux)
  1862. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1863. endif
  1864. ifeq ($(FULL_TARGET),powerpc64-darwin)
  1865. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1866. endif
  1867. ifeq ($(FULL_TARGET),powerpc64-embedded)
  1868. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1869. endif
  1870. ifeq ($(FULL_TARGET),powerpc64-aix)
  1871. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1872. endif
  1873. ifeq ($(FULL_TARGET),avr-embedded)
  1874. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1875. endif
  1876. ifeq ($(FULL_TARGET),armeb-linux)
  1877. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1878. endif
  1879. ifeq ($(FULL_TARGET),armeb-embedded)
  1880. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1881. endif
  1882. ifeq ($(FULL_TARGET),mips-linux)
  1883. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1884. endif
  1885. ifeq ($(FULL_TARGET),mipsel-linux)
  1886. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1887. endif
  1888. ifeq ($(FULL_TARGET),mipsel-embedded)
  1889. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1890. endif
  1891. ifeq ($(FULL_TARGET),mipsel-android)
  1892. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1893. endif
  1894. ifeq ($(FULL_TARGET),jvm-java)
  1895. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1896. endif
  1897. ifeq ($(FULL_TARGET),jvm-android)
  1898. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1899. endif
  1900. ifeq ($(FULL_TARGET),i8086-embedded)
  1901. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1902. endif
  1903. ifeq ($(FULL_TARGET),i8086-msdos)
  1904. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1905. endif
  1906. ifeq ($(FULL_TARGET),i8086-win16)
  1907. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1908. endif
  1909. ifeq ($(FULL_TARGET),aarch64-linux)
  1910. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1911. endif
  1912. ifeq ($(FULL_TARGET),aarch64-darwin)
  1913. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1914. endif
  1915. ifeq ($(FULL_TARGET),wasm-wasm)
  1916. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(COMMON) $(WINDIR)
  1917. endif
  1918. ifdef REQUIRE_UNITSDIR
  1919. override UNITSDIR+=$(REQUIRE_UNITSDIR)
  1920. endif
  1921. ifdef REQUIRE_PACKAGESDIR
  1922. override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
  1923. endif
  1924. ifdef ZIPINSTALL
  1925. ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
  1926. UNIXHier=1
  1927. endif
  1928. else
  1929. ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
  1930. UNIXHier=1
  1931. endif
  1932. endif
  1933. ifndef INSTALL_PREFIX
  1934. ifdef PREFIX
  1935. INSTALL_PREFIX=$(PREFIX)
  1936. endif
  1937. endif
  1938. ifndef INSTALL_PREFIX
  1939. ifdef UNIXHier
  1940. INSTALL_PREFIX=/usr/local
  1941. else
  1942. ifdef INSTALL_FPCPACKAGE
  1943. INSTALL_BASEDIR:=/pp
  1944. else
  1945. INSTALL_BASEDIR:=/$(PACKAGE_NAME)
  1946. endif
  1947. endif
  1948. endif
  1949. export INSTALL_PREFIX
  1950. ifdef INSTALL_FPCSUBDIR
  1951. export INSTALL_FPCSUBDIR
  1952. endif
  1953. ifndef DIST_DESTDIR
  1954. DIST_DESTDIR:=$(BASEDIR)
  1955. endif
  1956. export DIST_DESTDIR
  1957. ifndef COMPILER_UNITTARGETDIR
  1958. ifdef PACKAGEDIR_MAIN
  1959. COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(TARGETSUFFIX)
  1960. else
  1961. COMPILER_UNITTARGETDIR=units/$(TARGETSUFFIX)
  1962. endif
  1963. endif
  1964. ifndef COMPILER_TARGETDIR
  1965. COMPILER_TARGETDIR=.
  1966. endif
  1967. ifndef INSTALL_BASEDIR
  1968. ifdef UNIXHier
  1969. ifdef INSTALL_FPCPACKAGE
  1970. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
  1971. else
  1972. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
  1973. endif
  1974. else
  1975. INSTALL_BASEDIR:=$(INSTALL_PREFIX)
  1976. endif
  1977. endif
  1978. ifndef INSTALL_BINDIR
  1979. ifdef UNIXHier
  1980. INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
  1981. else
  1982. INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
  1983. ifdef INSTALL_FPCPACKAGE
  1984. ifdef CROSSCOMPILE
  1985. ifdef CROSSINSTALL
  1986. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(SOURCESUFFIX)
  1987. else
  1988. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
  1989. endif
  1990. else
  1991. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(TARGETSUFFIX)
  1992. endif
  1993. endif
  1994. endif
  1995. endif
  1996. ifndef INSTALL_UNITDIR
  1997. INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(TARGETSUFFIX)
  1998. ifdef INSTALL_FPCPACKAGE
  1999. ifdef PACKAGE_NAME
  2000. INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
  2001. endif
  2002. endif
  2003. endif
  2004. ifndef INSTALL_LIBDIR
  2005. ifdef UNIXHier
  2006. INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
  2007. else
  2008. INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
  2009. endif
  2010. endif
  2011. ifndef INSTALL_SOURCEDIR
  2012. ifdef UNIXHier
  2013. ifdef BSDhier
  2014. SRCPREFIXDIR=share/src
  2015. else
  2016. ifdef linuxHier
  2017. SRCPREFIXDIR=share/src
  2018. else
  2019. SRCPREFIXDIR=src
  2020. endif
  2021. endif
  2022. ifdef INSTALL_FPCPACKAGE
  2023. ifdef INSTALL_FPCSUBDIR
  2024. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  2025. else
  2026. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  2027. endif
  2028. else
  2029. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  2030. endif
  2031. else
  2032. ifdef INSTALL_FPCPACKAGE
  2033. ifdef INSTALL_FPCSUBDIR
  2034. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  2035. else
  2036. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
  2037. endif
  2038. else
  2039. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
  2040. endif
  2041. endif
  2042. endif
  2043. ifndef INSTALL_DOCDIR
  2044. ifdef UNIXHier
  2045. ifdef BSDhier
  2046. DOCPREFIXDIR=share/doc
  2047. else
  2048. ifdef linuxHier
  2049. DOCPREFIXDIR=share/doc
  2050. else
  2051. DOCPREFIXDIR=doc
  2052. endif
  2053. endif
  2054. ifdef INSTALL_FPCPACKAGE
  2055. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  2056. else
  2057. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  2058. endif
  2059. else
  2060. ifdef INSTALL_FPCPACKAGE
  2061. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
  2062. else
  2063. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
  2064. endif
  2065. endif
  2066. endif
  2067. ifndef INSTALL_EXAMPLEDIR
  2068. ifdef UNIXHier
  2069. ifdef INSTALL_FPCPACKAGE
  2070. ifdef BSDhier
  2071. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  2072. else
  2073. ifdef linuxHier
  2074. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
  2075. else
  2076. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
  2077. endif
  2078. endif
  2079. else
  2080. ifdef BSDhier
  2081. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  2082. else
  2083. ifdef linuxHier
  2084. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  2085. else
  2086. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  2087. endif
  2088. endif
  2089. endif
  2090. else
  2091. ifdef INSTALL_FPCPACKAGE
  2092. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
  2093. else
  2094. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
  2095. endif
  2096. endif
  2097. endif
  2098. ifndef INSTALL_DATADIR
  2099. INSTALL_DATADIR=$(INSTALL_BASEDIR)
  2100. endif
  2101. ifndef INSTALL_SHAREDDIR
  2102. INSTALL_SHAREDDIR=$(INSTALL_PREFIX)/lib
  2103. endif
  2104. ifdef CROSSCOMPILE
  2105. ifndef CROSSBINDIR
  2106. CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(SOURCESUFFIX))
  2107. ifeq ($(CROSSBINDIR),)
  2108. CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(TARGETSUFFIX)/bin/$(FULL_SOURCE))
  2109. endif
  2110. endif
  2111. else
  2112. CROSSBINDIR=
  2113. endif
  2114. BATCHEXT=.bat
  2115. LOADEREXT=.as
  2116. EXEEXT=.exe
  2117. PPLEXT=.ppl
  2118. PPUEXT=.ppu
  2119. OEXT=.o
  2120. ASMEXT=.s
  2121. SMARTEXT=.sl
  2122. STATICLIBEXT=.a
  2123. SHAREDLIBEXT=.so
  2124. SHAREDLIBPREFIX=libfp
  2125. STATICLIBPREFIX=libp
  2126. IMPORTLIBPREFIX=libimp
  2127. RSTEXT=.rst
  2128. EXEDBGEXT=.dbg
  2129. ifeq ($(OS_TARGET),go32v1)
  2130. STATICLIBPREFIX=
  2131. SHORTSUFFIX=v1
  2132. endif
  2133. ifeq ($(OS_TARGET),go32v2)
  2134. STATICLIBPREFIX=
  2135. SHORTSUFFIX=dos
  2136. IMPORTLIBPREFIX=
  2137. endif
  2138. ifeq ($(OS_TARGET),watcom)
  2139. STATICLIBPREFIX=
  2140. OEXT=.obj
  2141. ASMEXT=.asm
  2142. SHAREDLIBEXT=.dll
  2143. SHORTSUFFIX=wat
  2144. IMPORTLIBPREFIX=
  2145. endif
  2146. ifneq ($(CPU_TARGET),jvm)
  2147. ifeq ($(OS_TARGET),android)
  2148. BATCHEXT=.sh
  2149. EXEEXT=
  2150. HASSHAREDLIB=1
  2151. SHORTSUFFIX=lnx
  2152. endif
  2153. endif
  2154. ifeq ($(OS_TARGET),linux)
  2155. BATCHEXT=.sh
  2156. EXEEXT=
  2157. HASSHAREDLIB=1
  2158. SHORTSUFFIX=lnx
  2159. endif
  2160. ifeq ($(OS_TARGET),dragonfly)
  2161. BATCHEXT=.sh
  2162. EXEEXT=
  2163. HASSHAREDLIB=1
  2164. SHORTSUFFIX=df
  2165. endif
  2166. ifeq ($(OS_TARGET),freebsd)
  2167. BATCHEXT=.sh
  2168. EXEEXT=
  2169. HASSHAREDLIB=1
  2170. SHORTSUFFIX=fbs
  2171. endif
  2172. ifeq ($(OS_TARGET),netbsd)
  2173. BATCHEXT=.sh
  2174. EXEEXT=
  2175. HASSHAREDLIB=1
  2176. SHORTSUFFIX=nbs
  2177. endif
  2178. ifeq ($(OS_TARGET),openbsd)
  2179. BATCHEXT=.sh
  2180. EXEEXT=
  2181. HASSHAREDLIB=1
  2182. SHORTSUFFIX=obs
  2183. endif
  2184. ifeq ($(OS_TARGET),win32)
  2185. SHAREDLIBEXT=.dll
  2186. SHORTSUFFIX=w32
  2187. endif
  2188. ifeq ($(OS_TARGET),os2)
  2189. BATCHEXT=.cmd
  2190. AOUTEXT=.out
  2191. STATICLIBPREFIX=
  2192. SHAREDLIBEXT=.dll
  2193. SHORTSUFFIX=os2
  2194. ECHO=echo
  2195. IMPORTLIBPREFIX=
  2196. endif
  2197. ifeq ($(OS_TARGET),emx)
  2198. BATCHEXT=.cmd
  2199. AOUTEXT=.out
  2200. STATICLIBPREFIX=
  2201. SHAREDLIBEXT=.dll
  2202. SHORTSUFFIX=emx
  2203. ECHO=echo
  2204. IMPORTLIBPREFIX=
  2205. endif
  2206. ifeq ($(OS_TARGET),amiga)
  2207. EXEEXT=
  2208. SHAREDLIBEXT=.library
  2209. SHORTSUFFIX=amg
  2210. endif
  2211. ifeq ($(OS_TARGET),aros)
  2212. EXEEXT=
  2213. SHAREDLIBEXT=.library
  2214. SHORTSUFFIX=aros
  2215. endif
  2216. ifeq ($(OS_TARGET),morphos)
  2217. EXEEXT=
  2218. SHAREDLIBEXT=.library
  2219. SHORTSUFFIX=mos
  2220. endif
  2221. ifeq ($(OS_TARGET),atari)
  2222. EXEEXT=.ttp
  2223. SHORTSUFFIX=ata
  2224. endif
  2225. ifeq ($(OS_TARGET),beos)
  2226. BATCHEXT=.sh
  2227. EXEEXT=
  2228. SHORTSUFFIX=be
  2229. endif
  2230. ifeq ($(OS_TARGET),haiku)
  2231. BATCHEXT=.sh
  2232. EXEEXT=
  2233. SHORTSUFFIX=hai
  2234. endif
  2235. ifeq ($(OS_TARGET),solaris)
  2236. BATCHEXT=.sh
  2237. EXEEXT=
  2238. SHORTSUFFIX=sun
  2239. endif
  2240. ifeq ($(OS_TARGET),qnx)
  2241. BATCHEXT=.sh
  2242. EXEEXT=
  2243. SHORTSUFFIX=qnx
  2244. endif
  2245. ifeq ($(OS_TARGET),netware)
  2246. EXEEXT=.nlm
  2247. STATICLIBPREFIX=
  2248. SHORTSUFFIX=nw
  2249. IMPORTLIBPREFIX=imp
  2250. endif
  2251. ifeq ($(OS_TARGET),netwlibc)
  2252. EXEEXT=.nlm
  2253. STATICLIBPREFIX=
  2254. SHORTSUFFIX=nwl
  2255. IMPORTLIBPREFIX=imp
  2256. endif
  2257. ifeq ($(OS_TARGET),macos)
  2258. BATCHEXT=
  2259. EXEEXT=
  2260. DEBUGSYMEXT=.xcoff
  2261. SHORTSUFFIX=mac
  2262. IMPORTLIBPREFIX=imp
  2263. endif
  2264. ifneq ($(findstring $(OS_TARGET),darwin iphonesim),)
  2265. BATCHEXT=.sh
  2266. EXEEXT=
  2267. HASSHAREDLIB=1
  2268. SHORTSUFFIX=dwn
  2269. EXEDBGEXT=.dSYM
  2270. endif
  2271. ifeq ($(OS_TARGET),gba)
  2272. EXEEXT=.gba
  2273. SHAREDLIBEXT=.so
  2274. SHORTSUFFIX=gba
  2275. endif
  2276. ifeq ($(OS_TARGET),symbian)
  2277. SHAREDLIBEXT=.dll
  2278. SHORTSUFFIX=symbian
  2279. endif
  2280. ifeq ($(OS_TARGET),NativeNT)
  2281. SHAREDLIBEXT=.dll
  2282. SHORTSUFFIX=nativent
  2283. endif
  2284. ifeq ($(OS_TARGET),wii)
  2285. EXEEXT=.dol
  2286. SHAREDLIBEXT=.so
  2287. SHORTSUFFIX=wii
  2288. endif
  2289. ifeq ($(OS_TARGET),aix)
  2290. BATCHEXT=.sh
  2291. EXEEXT=
  2292. SHORTSUFFIX=aix
  2293. endif
  2294. ifeq ($(OS_TARGET),java)
  2295. OEXT=.class
  2296. ASMEXT=.j
  2297. SHAREDLIBEXT=.jar
  2298. SHORTSUFFIX=java
  2299. endif
  2300. ifeq ($(CPU_TARGET),jvm)
  2301. ifeq ($(OS_TARGET),android)
  2302. OEXT=.class
  2303. ASMEXT=.j
  2304. SHAREDLIBEXT=.jar
  2305. SHORTSUFFIX=android
  2306. endif
  2307. endif
  2308. ifeq ($(OS_TARGET),msdos)
  2309. STATICLIBPREFIX=
  2310. STATICLIBEXT=.a
  2311. SHORTSUFFIX=d16
  2312. endif
  2313. ifeq ($(OS_TARGET),embedded)
  2314. ifeq ($(CPU_TARGET),i8086)
  2315. STATICLIBPREFIX=
  2316. STATICLIBEXT=.a
  2317. else
  2318. EXEEXT=.bin
  2319. endif
  2320. SHORTSUFFIX=emb
  2321. endif
  2322. ifeq ($(OS_TARGET),win16)
  2323. STATICLIBPREFIX=
  2324. STATICLIBEXT=.a
  2325. SHAREDLIBEXT=.dll
  2326. SHORTSUFFIX=w16
  2327. endif
  2328. ifeq ($(OS_TARGET),uefi)
  2329. SHAREDLIBEXT=.efi
  2330. SHORTSUFFIX=efi
  2331. EXEEXT=.efi
  2332. endif
  2333. ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
  2334. FPCMADE=fpcmade.$(SHORTSUFFIX)
  2335. ZIPSUFFIX=$(SHORTSUFFIX)
  2336. ZIPCROSSPREFIX=
  2337. ZIPSOURCESUFFIX=src
  2338. ZIPEXAMPLESUFFIX=exm
  2339. else
  2340. FPCMADE=fpcmade.$(TARGETSUFFIX)
  2341. ZIPSOURCESUFFIX=.source
  2342. ZIPEXAMPLESUFFIX=.examples
  2343. ifdef CROSSCOMPILE
  2344. ZIPSUFFIX=.$(SOURCESUFFIX)
  2345. ZIPCROSSPREFIX=$(TARGETSUFFIX)-
  2346. else
  2347. ZIPSUFFIX=.$(TARGETSUFFIX)
  2348. ZIPCROSSPREFIX=
  2349. endif
  2350. endif
  2351. ifndef ECHO
  2352. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  2353. ifeq ($(ECHO),)
  2354. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  2355. ifeq ($(ECHO),)
  2356. ECHO= __missing_command_ECHO
  2357. else
  2358. ECHO:=$(firstword $(ECHO))
  2359. endif
  2360. else
  2361. ECHO:=$(firstword $(ECHO))
  2362. endif
  2363. endif
  2364. export ECHO
  2365. ifndef DATE
  2366. DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
  2367. ifeq ($(DATE),)
  2368. DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
  2369. ifeq ($(DATE),)
  2370. DATE= __missing_command_DATE
  2371. else
  2372. DATE:=$(firstword $(DATE))
  2373. endif
  2374. else
  2375. DATE:=$(firstword $(DATE))
  2376. endif
  2377. endif
  2378. export DATE
  2379. ifndef GINSTALL
  2380. GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
  2381. ifeq ($(GINSTALL),)
  2382. GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
  2383. ifeq ($(GINSTALL),)
  2384. GINSTALL= __missing_command_GINSTALL
  2385. else
  2386. GINSTALL:=$(firstword $(GINSTALL))
  2387. endif
  2388. else
  2389. GINSTALL:=$(firstword $(GINSTALL))
  2390. endif
  2391. endif
  2392. export GINSTALL
  2393. ifndef CPPROG
  2394. CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
  2395. ifeq ($(CPPROG),)
  2396. CPPROG= __missing_command_CPPROG
  2397. else
  2398. CPPROG:=$(firstword $(CPPROG))
  2399. endif
  2400. endif
  2401. export CPPROG
  2402. ifndef RMPROG
  2403. RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
  2404. ifeq ($(RMPROG),)
  2405. RMPROG= __missing_command_RMPROG
  2406. else
  2407. RMPROG:=$(firstword $(RMPROG))
  2408. endif
  2409. endif
  2410. export RMPROG
  2411. ifndef MVPROG
  2412. MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
  2413. ifeq ($(MVPROG),)
  2414. MVPROG= __missing_command_MVPROG
  2415. else
  2416. MVPROG:=$(firstword $(MVPROG))
  2417. endif
  2418. endif
  2419. export MVPROG
  2420. ifndef MKDIRPROG
  2421. MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
  2422. ifeq ($(MKDIRPROG),)
  2423. MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
  2424. ifeq ($(MKDIRPROG),)
  2425. MKDIRPROG= __missing_command_MKDIRPROG
  2426. else
  2427. MKDIRPROG:=$(firstword $(MKDIRPROG))
  2428. endif
  2429. else
  2430. MKDIRPROG:=$(firstword $(MKDIRPROG))
  2431. endif
  2432. endif
  2433. export MKDIRPROG
  2434. ifndef ECHOREDIR
  2435. ifndef inUnix
  2436. ECHOREDIR=echo
  2437. else
  2438. ECHOREDIR=$(ECHO)
  2439. endif
  2440. endif
  2441. ifndef COPY
  2442. COPY:=$(CPPROG) -fp
  2443. endif
  2444. ifndef COPYTREE
  2445. COPYTREE:=$(CPPROG) -Rfp
  2446. endif
  2447. ifndef MKDIRTREE
  2448. MKDIRTREE:=$(MKDIRPROG) -p
  2449. endif
  2450. ifndef MOVE
  2451. MOVE:=$(MVPROG) -f
  2452. endif
  2453. ifndef DEL
  2454. DEL:=$(RMPROG) -f
  2455. endif
  2456. ifndef DELTREE
  2457. DELTREE:=$(RMPROG) -rf
  2458. endif
  2459. ifndef INSTALL
  2460. ifdef inUnix
  2461. INSTALL:=$(GINSTALL) -c -m 644
  2462. else
  2463. INSTALL:=$(COPY)
  2464. endif
  2465. endif
  2466. ifndef INSTALLEXE
  2467. ifdef inUnix
  2468. INSTALLEXE:=$(GINSTALL) -c -m 755
  2469. else
  2470. INSTALLEXE:=$(COPY)
  2471. endif
  2472. endif
  2473. ifndef MKDIR
  2474. MKDIR:=$(GINSTALL) -m 755 -d
  2475. endif
  2476. export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
  2477. ifndef PPUMOVE
  2478. PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
  2479. ifeq ($(PPUMOVE),)
  2480. PPUMOVE= __missing_command_PPUMOVE
  2481. else
  2482. PPUMOVE:=$(firstword $(PPUMOVE))
  2483. endif
  2484. endif
  2485. export PPUMOVE
  2486. ifndef FPCMAKE
  2487. FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
  2488. ifeq ($(FPCMAKE),)
  2489. FPCMAKE= __missing_command_FPCMAKE
  2490. else
  2491. FPCMAKE:=$(firstword $(FPCMAKE))
  2492. endif
  2493. endif
  2494. export FPCMAKE
  2495. ifndef ZIPPROG
  2496. ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
  2497. ifeq ($(ZIPPROG),)
  2498. ZIPPROG= __missing_command_ZIPPROG
  2499. else
  2500. ZIPPROG:=$(firstword $(ZIPPROG))
  2501. endif
  2502. endif
  2503. export ZIPPROG
  2504. ifndef TARPROG
  2505. TARPROG:=$(strip $(wildcard $(addsuffix /gtar$(SRCEXEEXT),$(SEARCHPATH))))
  2506. ifeq ($(TARPROG),)
  2507. TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
  2508. ifeq ($(TARPROG),)
  2509. TARPROG= __missing_command_TARPROG
  2510. else
  2511. TARPROG:=$(firstword $(TARPROG))
  2512. endif
  2513. else
  2514. TARPROG:=$(firstword $(TARPROG))
  2515. endif
  2516. endif
  2517. export TARPROG
  2518. ASNAME=$(BINUTILSPREFIX)as
  2519. LDNAME=$(BINUTILSPREFIX)ld
  2520. ARNAME=$(BINUTILSPREFIX)ar
  2521. RCNAME=$(BINUTILSPREFIX)rc
  2522. NASMNAME=$(BINUTILSPREFIX)nasm
  2523. ifndef ASPROG
  2524. ifdef CROSSBINDIR
  2525. ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
  2526. else
  2527. ASPROG=$(ASNAME)
  2528. endif
  2529. endif
  2530. ifndef LDPROG
  2531. ifdef CROSSBINDIR
  2532. LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
  2533. else
  2534. LDPROG=$(LDNAME)
  2535. endif
  2536. endif
  2537. ifndef RCPROG
  2538. ifdef CROSSBINDIR
  2539. RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
  2540. else
  2541. RCPROG=$(RCNAME)
  2542. endif
  2543. endif
  2544. ifndef ARPROG
  2545. ifdef CROSSBINDIR
  2546. ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
  2547. else
  2548. ARPROG=$(ARNAME)
  2549. endif
  2550. endif
  2551. ifndef NASMPROG
  2552. ifdef CROSSBINDIR
  2553. NASMPROG=$(CROSSBINDIR)/$(NASMNAME)$(SRCEXEEXT)
  2554. else
  2555. NASMPROG=$(NASMNAME)
  2556. endif
  2557. endif
  2558. AS=$(ASPROG)
  2559. LD=$(LDPROG)
  2560. RC=$(RCPROG)
  2561. AR=$(ARPROG)
  2562. NASM=$(NASMPROG)
  2563. ifdef inUnix
  2564. PPAS=./ppas$(SRCBATCHEXT)
  2565. else
  2566. PPAS=ppas$(SRCBATCHEXT)
  2567. endif
  2568. ifdef inUnix
  2569. LDCONFIG=ldconfig
  2570. else
  2571. LDCONFIG=
  2572. endif
  2573. ifdef DATE
  2574. DATESTR:=$(shell $(DATE) +%Y%m%d)
  2575. else
  2576. DATESTR=
  2577. endif
  2578. ZIPOPT=-9
  2579. ZIPEXT=.zip
  2580. ifeq ($(USETAR),bz2)
  2581. TAROPT=vj
  2582. TAREXT=.tar.bz2
  2583. else
  2584. TAROPT=vz
  2585. TAREXT=.tar.gz
  2586. endif
  2587. ifndef NOCPUDEF
  2588. override FPCOPTDEF=$(ARCH)
  2589. endif
  2590. ifneq ($(OS_TARGET),$(OS_SOURCE))
  2591. override FPCOPT+=-T$(OS_TARGET)
  2592. endif
  2593. ifneq ($(CPU_TARGET),$(CPU_SOURCE))
  2594. override FPCOPT+=-P$(ARCH)
  2595. endif
  2596. ifeq ($(OS_SOURCE),openbsd)
  2597. override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
  2598. override FPCMAKEOPT+=-FD$(NEW_BINUTILS_PATH)
  2599. override FPMAKE_BUILD_OPT+=-FD$(NEW_BINUTILS_PATH)
  2600. endif
  2601. ifndef CROSSBOOTSTRAP
  2602. ifneq ($(BINUTILSPREFIX),)
  2603. override FPCOPT+=-XP$(BINUTILSPREFIX)
  2604. endif
  2605. ifneq ($(BINUTILSPREFIX),)
  2606. override FPCOPT+=-Xr$(RLINKPATH)
  2607. endif
  2608. endif
  2609. ifndef CROSSCOMPILE
  2610. ifneq ($(BINUTILSPREFIX),)
  2611. override FPCMAKEOPT+=-XP$(BINUTILSPREFIX)
  2612. override FPMAKE_BUILD_OPT+=-XP$(BINUTILSPREFIX)
  2613. endif
  2614. endif
  2615. ifdef UNITDIR
  2616. override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
  2617. endif
  2618. ifdef LIBDIR
  2619. override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
  2620. endif
  2621. ifdef OBJDIR
  2622. override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
  2623. endif
  2624. ifdef INCDIR
  2625. override FPCOPT+=$(addprefix -Fi,$(INCDIR))
  2626. endif
  2627. ifdef LINKSMART
  2628. override FPCOPT+=-XX
  2629. endif
  2630. ifdef CREATESMART
  2631. override FPCOPT+=-CX
  2632. endif
  2633. ifdef DEBUG
  2634. override FPCOPT+=-gl
  2635. override FPCOPTDEF+=DEBUG
  2636. endif
  2637. ifdef RELEASE
  2638. ifneq ($(findstring 2.0.,$(FPC_VERSION)),)
  2639. ifeq ($(CPU_TARGET),i386)
  2640. FPCCPUOPT:=-OG2p3
  2641. endif
  2642. ifeq ($(CPU_TARGET),powerpc)
  2643. FPCCPUOPT:=-O1r
  2644. endif
  2645. else
  2646. FPCCPUOPT:=-O2
  2647. endif
  2648. override FPCOPT+=-Ur -Xs $(FPCCPUOPT) -n
  2649. override FPCOPTDEF+=RELEASE
  2650. endif
  2651. ifdef STRIP
  2652. override FPCOPT+=-Xs
  2653. endif
  2654. ifdef OPTIMIZE
  2655. override FPCOPT+=-O2
  2656. endif
  2657. ifdef VERBOSE
  2658. override FPCOPT+=-vwni
  2659. endif
  2660. ifdef COMPILER_OPTIONS
  2661. override FPCOPT+=$(COMPILER_OPTIONS)
  2662. endif
  2663. ifdef COMPILER_UNITDIR
  2664. override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
  2665. endif
  2666. ifdef COMPILER_LIBRARYDIR
  2667. override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
  2668. endif
  2669. ifdef COMPILER_OBJECTDIR
  2670. override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
  2671. endif
  2672. ifdef COMPILER_INCLUDEDIR
  2673. override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
  2674. endif
  2675. ifdef CROSSBINDIR
  2676. override FPCOPT+=-FD$(CROSSBINDIR)
  2677. endif
  2678. ifdef COMPILER_TARGETDIR
  2679. override FPCOPT+=-FE$(COMPILER_TARGETDIR)
  2680. ifeq ($(COMPILER_TARGETDIR),.)
  2681. override TARGETDIRPREFIX=
  2682. else
  2683. override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
  2684. endif
  2685. endif
  2686. ifdef COMPILER_UNITTARGETDIR
  2687. override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
  2688. ifeq ($(COMPILER_UNITTARGETDIR),.)
  2689. override UNITTARGETDIRPREFIX=
  2690. else
  2691. override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
  2692. endif
  2693. else
  2694. ifdef COMPILER_TARGETDIR
  2695. override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
  2696. override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
  2697. endif
  2698. endif
  2699. ifdef CREATESHARED
  2700. override FPCOPT+=-Cg
  2701. endif
  2702. ifneq ($(findstring $(OS_TARGET),dragonfly freebsd openbsd netbsd linux solaris),)
  2703. ifneq ($(findstring $(CPU_TARGET),x86_64 mips mipsel),)
  2704. override FPCOPT+=-Cg
  2705. endif
  2706. endif
  2707. ifdef LINKSHARED
  2708. endif
  2709. ifdef OPT
  2710. override FPCOPT+=$(OPT)
  2711. endif
  2712. ifdef FPMAKEBUILDOPT
  2713. override FPMAKE_BUILD_OPT+=$(FPMAKEBUILDOPT)
  2714. endif
  2715. ifdef FPCOPTDEF
  2716. override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
  2717. endif
  2718. ifdef CFGFILE
  2719. override FPCOPT+=@$(CFGFILE)
  2720. endif
  2721. ifdef USEENV
  2722. override FPCEXTCMD:=$(FPCOPT)
  2723. override FPCOPT:=!FPCEXTCMD
  2724. export FPCEXTCMD
  2725. endif
  2726. override AFULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
  2727. override AFULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
  2728. ifneq ($(AFULL_TARGET),$(AFULL_SOURCE))
  2729. override ACROSSCOMPILE=1
  2730. endif
  2731. ifdef ACROSSCOMPILE
  2732. override FPCOPT+=$(CROSSOPT)
  2733. endif
  2734. override COMPILER:=$(strip $(FPC) $(FPCOPT))
  2735. ifneq (,$(findstring -sh ,$(COMPILER)))
  2736. UseEXECPPAS=1
  2737. endif
  2738. ifneq (,$(findstring -s ,$(COMPILER)))
  2739. ifeq ($(FULL_SOURCE),$(FULL_TARGET))
  2740. UseEXECPPAS=1
  2741. endif
  2742. endif
  2743. ifneq ($(UseEXECPPAS),1)
  2744. EXECPPAS=
  2745. else
  2746. ifdef RUNBATCH
  2747. EXECPPAS:=@$(RUNBATCH) $(PPAS)
  2748. else
  2749. EXECPPAS:=@$(PPAS)
  2750. endif
  2751. endif
  2752. .PHONY: fpc_loaders
  2753. ifneq ($(TARGET_LOADERS),)
  2754. override ALLTARGET+=fpc_loaders
  2755. override CLEANTARGET+=fpc_loaders_clean
  2756. override INSTALLTARGET+=fpc_loaders_install
  2757. override LOADEROFILES:=$(addsuffix $(OEXT),$(TARGET_LOADERS))
  2758. endif
  2759. %$(OEXT): %$(LOADEREXT)
  2760. ifdef COMPILER_UNITTARGETDIR
  2761. $(AS) -o $(COMPILER_UNITTARGETDIR)/$*$(OEXT) $<
  2762. else
  2763. $(AS) -o $*$(OEXT) $<
  2764. endif
  2765. fpc_loaders: $(COMPILER_UNITTARGETDIR) $(LOADEROFILES)
  2766. fpc_loaders_clean:
  2767. ifdef COMPILER_UNITTARGETDIR
  2768. -$(DEL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFILES))
  2769. else
  2770. -$(DEL) $(LOADEROFILES)
  2771. endif
  2772. fpc_loaders_install:
  2773. $(MKDIR) $(INSTALL_UNITDIR)
  2774. ifdef COMPILER_UNITTARGETDIR
  2775. $(INSTALL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFILES)) $(INSTALL_UNITDIR)
  2776. else
  2777. $(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
  2778. endif
  2779. .PHONY: fpc_units
  2780. ifneq ($(TARGET_UNITS)$(TARGET_IMPLICITUNITS),)
  2781. override ALLTARGET+=fpc_units
  2782. override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
  2783. override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
  2784. override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  2785. override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  2786. endif
  2787. fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
  2788. ifdef TARGET_RSTS
  2789. override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
  2790. override CLEANRSTFILES+=$(RSTFILES)
  2791. endif
  2792. .PHONY: fpc_all fpc_smart fpc_debug fpc_release fpc_shared
  2793. $(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
  2794. @$(ECHOREDIR) Compiled > $(FPCMADE)
  2795. fpc_all: $(FPCMADE)
  2796. fpc_smart:
  2797. $(MAKE) all LINKSMART=1 CREATESMART=1
  2798. fpc_debug:
  2799. $(MAKE) all DEBUG=1
  2800. fpc_release:
  2801. $(MAKE) all RELEASE=1
  2802. .SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
  2803. $(COMPILER_UNITTARGETDIR):
  2804. $(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
  2805. $(COMPILER_TARGETDIR):
  2806. $(MKDIRTREE) $(COMPILER_TARGETDIR)
  2807. %$(PPUEXT): %.pp
  2808. $(COMPILER) $<
  2809. $(EXECPPAS)
  2810. %$(PPUEXT): %.pas
  2811. $(COMPILER) $<
  2812. $(EXECPPAS)
  2813. %$(EXEEXT): %.pp
  2814. $(COMPILER) $<
  2815. $(EXECPPAS)
  2816. %$(EXEEXT): %.pas
  2817. $(COMPILER) $<
  2818. $(EXECPPAS)
  2819. %$(EXEEXT): %.lpr
  2820. $(COMPILER) $<
  2821. $(EXECPPAS)
  2822. %$(EXEEXT): %.dpr
  2823. $(COMPILER) $<
  2824. $(EXECPPAS)
  2825. %.res: %.rc
  2826. windres -i $< -o $@
  2827. vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  2828. vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  2829. vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  2830. vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  2831. vpath %.inc $(COMPILER_INCLUDEDIR)
  2832. vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
  2833. vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
  2834. .PHONY: fpc_shared
  2835. override INSTALLTARGET+=fpc_shared_install
  2836. ifndef SHARED_LIBVERSION
  2837. SHARED_LIBVERSION=$(FPC_VERSION)
  2838. endif
  2839. ifndef SHARED_LIBNAME
  2840. SHARED_LIBNAME=$(PACKAGE_NAME)
  2841. endif
  2842. ifndef SHARED_FULLNAME
  2843. SHARED_FULLNAME=$(SHAREDLIBPREFIX)$(SHARED_LIBNAME)-$(SHARED_LIBVERSION)$(SHAREDLIBEXT)
  2844. endif
  2845. ifndef SHARED_LIBUNITS
  2846. SHARED_LIBUNITS:=$(TARGET_UNITS) $(TARGET_IMPLICITUNITS)
  2847. override SHARED_LIBUNITS:=$(filter-out $(INSTALL_BUILDUNIT),$(SHARED_LIBUNITS))
  2848. endif
  2849. fpc_shared:
  2850. ifdef HASSHAREDLIB
  2851. $(MAKE) all CREATESHARED=1 LINKSHARED=1 CREATESMART=1
  2852. ifneq ($(SHARED_BUILD),n)
  2853. $(PPUMOVE) -q $(SHARED_LIBUNITS) -i$(COMPILER_UNITTARGETDIR) -o$(SHARED_FULLNAME) -d$(COMPILER_UNITTARGETDIR)
  2854. endif
  2855. else
  2856. @$(ECHO) Shared Libraries not supported
  2857. endif
  2858. fpc_shared_install:
  2859. ifneq ($(SHARED_BUILD),n)
  2860. ifneq ($(SHARED_LIBUNITS),)
  2861. ifneq ($(wildcard $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME)),)
  2862. $(INSTALL) $(COMPILER_UNITTARGETDIR)/$(SHARED_FULLNAME) $(INSTALL_SHAREDDIR)
  2863. endif
  2864. endif
  2865. endif
  2866. .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
  2867. ifdef INSTALL_UNITS
  2868. override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
  2869. endif
  2870. ifdef INSTALL_BUILDUNIT
  2871. override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
  2872. endif
  2873. ifdef INSTALLPPUFILES
  2874. override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
  2875. ifneq ($(UNITTARGETDIRPREFIX),)
  2876. override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPUFILES)))
  2877. override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(notdir $(INSTALLPPULINKFILES))))
  2878. endif
  2879. override INSTALL_CREATEPACKAGEFPC=1
  2880. endif
  2881. ifdef INSTALLEXEFILES
  2882. ifneq ($(TARGETDIRPREFIX),)
  2883. override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(notdir $(INSTALLEXEFILES)))
  2884. endif
  2885. endif
  2886. fpc_install: all $(INSTALLTARGET)
  2887. ifdef INSTALLEXEFILES
  2888. $(MKDIR) $(INSTALL_BINDIR)
  2889. $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
  2890. endif
  2891. ifdef INSTALL_CREATEPACKAGEFPC
  2892. ifdef FPCMAKE
  2893. ifdef PACKAGE_VERSION
  2894. ifneq ($(wildcard Makefile.fpc),)
  2895. $(FPCMAKE) -p -T$(CPU_TARGET)-$(OS_TARGET) Makefile.fpc
  2896. $(MKDIR) $(INSTALL_UNITDIR)
  2897. $(INSTALL) Package.fpc $(INSTALL_UNITDIR)
  2898. endif
  2899. endif
  2900. endif
  2901. endif
  2902. ifdef INSTALLPPUFILES
  2903. $(MKDIR) $(INSTALL_UNITDIR)
  2904. $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
  2905. ifneq ($(INSTALLPPULINKFILES),)
  2906. $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
  2907. endif
  2908. ifneq ($(wildcard $(LIB_FULLNAME)),)
  2909. $(MKDIR) $(INSTALL_LIBDIR)
  2910. $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
  2911. ifdef inUnix
  2912. ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
  2913. endif
  2914. endif
  2915. endif
  2916. ifdef INSTALL_FILES
  2917. $(MKDIR) $(INSTALL_DATADIR)
  2918. $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
  2919. endif
  2920. fpc_sourceinstall: distclean
  2921. $(MKDIR) $(INSTALL_SOURCEDIR)
  2922. $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
  2923. fpc_exampleinstall: $(EXAMPLEINSTALLTARGET) $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
  2924. ifdef HASEXAMPLES
  2925. $(MKDIR) $(INSTALL_EXAMPLEDIR)
  2926. endif
  2927. ifdef EXAMPLESOURCEFILES
  2928. $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
  2929. endif
  2930. ifdef TARGET_EXAMPLEDIRS
  2931. $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
  2932. endif
  2933. .PHONY: fpc_clean fpc_cleanall fpc_distclean
  2934. ifdef EXEFILES
  2935. override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
  2936. override CLEANEXEDBGFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEDBGFILES))
  2937. endif
  2938. ifdef CLEAN_PROGRAMS
  2939. override CLEANEXEFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEEXT), $(CLEAN_PROGRAMS)))
  2940. override CLEANEXEDBGFILES+=$(addprefix $(TARGETDIRPREFIX),$(addsuffix $(EXEDBGEXT), $(CLEAN_PROGRAMS)))
  2941. endif
  2942. ifdef CLEAN_UNITS
  2943. override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
  2944. endif
  2945. ifdef CLEANPPUFILES
  2946. override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES))) $(addprefix $(IMPORTLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
  2947. ifdef DEBUGSYMEXT
  2948. override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
  2949. endif
  2950. override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
  2951. override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
  2952. endif
  2953. fpc_clean: $(CLEANTARGET)
  2954. ifdef CLEANEXEFILES
  2955. -$(DEL) $(CLEANEXEFILES)
  2956. endif
  2957. ifdef CLEANEXEDBGFILES
  2958. -$(DELTREE) $(CLEANEXEDBGFILES)
  2959. endif
  2960. ifdef CLEANPPUFILES
  2961. -$(DEL) $(CLEANPPUFILES)
  2962. endif
  2963. ifneq ($(CLEANPPULINKFILES),)
  2964. -$(DEL) $(CLEANPPULINKFILES)
  2965. endif
  2966. ifdef CLEANRSTFILES
  2967. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  2968. endif
  2969. ifdef CLEAN_FILES
  2970. -$(DEL) $(CLEAN_FILES)
  2971. endif
  2972. ifdef LIB_NAME
  2973. -$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
  2974. endif
  2975. -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  2976. -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
  2977. fpc_cleanall: $(CLEANTARGET)
  2978. ifdef CLEANEXEFILES
  2979. -$(DEL) $(CLEANEXEFILES)
  2980. endif
  2981. ifdef COMPILER_UNITTARGETDIR
  2982. ifdef CLEANPPUFILES
  2983. -$(DEL) $(CLEANPPUFILES)
  2984. endif
  2985. ifneq ($(CLEANPPULINKFILES),)
  2986. -$(DEL) $(CLEANPPULINKFILES)
  2987. endif
  2988. ifdef CLEANRSTFILES
  2989. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  2990. endif
  2991. endif
  2992. ifdef CLEAN_FILES
  2993. -$(DEL) $(CLEAN_FILES)
  2994. endif
  2995. -$(DELTREE) units
  2996. -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
  2997. ifneq ($(PPUEXT),.ppu)
  2998. -$(DEL) *.o *.ppu *.a
  2999. endif
  3000. -$(DELTREE) *$(SMARTEXT)
  3001. -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  3002. -$(DEL) *_ppas$(BATCHEXT)
  3003. ifdef AOUTEXT
  3004. -$(DEL) *$(AOUTEXT)
  3005. endif
  3006. ifdef DEBUGSYMEXT
  3007. -$(DEL) *$(DEBUGSYMEXT)
  3008. endif
  3009. ifdef LOCALFPMAKEBIN
  3010. -$(DEL) $(LOCALFPMAKEBIN)
  3011. -$(DEL) $(FPMAKEBINOBJ)
  3012. endif
  3013. fpc_distclean: cleanall
  3014. .PHONY: fpc_baseinfo
  3015. override INFORULES+=fpc_baseinfo
  3016. fpc_baseinfo:
  3017. @$(ECHO)
  3018. @$(ECHO) == Package info ==
  3019. @$(ECHO) Package Name..... $(PACKAGE_NAME)
  3020. @$(ECHO) Package Version.. $(PACKAGE_VERSION)
  3021. @$(ECHO)
  3022. @$(ECHO) == Configuration info ==
  3023. @$(ECHO)
  3024. @$(ECHO) FPC.......... $(FPC)
  3025. @$(ECHO) FPC Version.. $(FPC_VERSION)
  3026. @$(ECHO) Source CPU... $(CPU_SOURCE)
  3027. @$(ECHO) Target CPU... $(CPU_TARGET)
  3028. @$(ECHO) Source OS.... $(OS_SOURCE)
  3029. @$(ECHO) Target OS.... $(OS_TARGET)
  3030. @$(ECHO) Full Source.. $(FULL_SOURCE)
  3031. @$(ECHO) Full Target.. $(FULL_TARGET)
  3032. @$(ECHO) SourceSuffix. $(SOURCESUFFIX)
  3033. @$(ECHO) TargetSuffix. $(TARGETSUFFIX)
  3034. @$(ECHO) FPC fpmake... $(FPCFPMAKE)
  3035. @$(ECHO)
  3036. @$(ECHO) == Directory info ==
  3037. @$(ECHO)
  3038. @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
  3039. @$(ECHO)
  3040. @$(ECHO) Basedir......... $(BASEDIR)
  3041. @$(ECHO) FPCDir.......... $(FPCDIR)
  3042. @$(ECHO) CrossBinDir..... $(CROSSBINDIR)
  3043. @$(ECHO) UnitsDir........ $(UNITSDIR)
  3044. @$(ECHO) PackagesDir..... $(PACKAGESDIR)
  3045. @$(ECHO)
  3046. @$(ECHO) GCC library..... $(GCCLIBDIR)
  3047. @$(ECHO) Other library... $(OTHERLIBDIR)
  3048. @$(ECHO)
  3049. @$(ECHO) == Tools info ==
  3050. @$(ECHO)
  3051. @$(ECHO) As........ $(AS)
  3052. @$(ECHO) Ld........ $(LD)
  3053. @$(ECHO) Ar........ $(AR)
  3054. @$(ECHO) Rc........ $(RC)
  3055. @$(ECHO)
  3056. @$(ECHO) Mv........ $(MVPROG)
  3057. @$(ECHO) Cp........ $(CPPROG)
  3058. @$(ECHO) Rm........ $(RMPROG)
  3059. @$(ECHO) GInstall.. $(GINSTALL)
  3060. @$(ECHO) Echo...... $(ECHO)
  3061. @$(ECHO) Shell..... $(SHELL)
  3062. @$(ECHO) Date...... $(DATE)
  3063. @$(ECHO) FPCMake... $(FPCMAKE)
  3064. @$(ECHO) PPUMove... $(PPUMOVE)
  3065. @$(ECHO) Zip....... $(ZIPPROG)
  3066. @$(ECHO)
  3067. @$(ECHO) == Object info ==
  3068. @$(ECHO)
  3069. @$(ECHO) Target Loaders........ $(TARGET_LOADERS)
  3070. @$(ECHO) Target Units.......... $(TARGET_UNITS)
  3071. @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
  3072. @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
  3073. @$(ECHO) Target Dirs........... $(TARGET_DIRS)
  3074. @$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
  3075. @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
  3076. @$(ECHO)
  3077. @$(ECHO) Clean Units......... $(CLEAN_UNITS)
  3078. @$(ECHO) Clean Files......... $(CLEAN_FILES)
  3079. @$(ECHO)
  3080. @$(ECHO) Install Units....... $(INSTALL_UNITS)
  3081. @$(ECHO) Install Files....... $(INSTALL_FILES)
  3082. @$(ECHO)
  3083. @$(ECHO) == Install info ==
  3084. @$(ECHO)
  3085. @$(ECHO) DateStr.............. $(DATESTR)
  3086. @$(ECHO) ZipName.............. $(ZIPNAME)
  3087. @$(ECHO) ZipPrefix............ $(ZIPPREFIX)
  3088. @$(ECHO) ZipCrossPrefix....... $(ZIPCROSSPREFIX)
  3089. @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
  3090. @$(ECHO) FullZipName.......... $(FULLZIPNAME)
  3091. @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
  3092. @$(ECHO)
  3093. @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
  3094. @$(ECHO) Install binary dir... $(INSTALL_BINDIR)
  3095. @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
  3096. @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
  3097. @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
  3098. @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
  3099. @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
  3100. @$(ECHO) Install data dir..... $(INSTALL_DATADIR)
  3101. @$(ECHO)
  3102. @$(ECHO) Dist destination dir. $(DIST_DESTDIR)
  3103. @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
  3104. @$(ECHO)
  3105. .PHONY: fpc_info
  3106. fpc_info: $(INFORULES)
  3107. .PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
  3108. fpc_makefile_dirs
  3109. fpc_makefile:
  3110. $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
  3111. fpc_makefile_sub1:
  3112. ifdef TARGET_DIRS
  3113. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
  3114. endif
  3115. ifdef TARGET_EXAMPLEDIRS
  3116. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
  3117. endif
  3118. fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
  3119. fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
  3120. fpc_makefiles: fpc_makefile fpc_makefile_dirs
  3121. all: fpc_all
  3122. debug: fpc_debug
  3123. smart: fpc_smart
  3124. release: fpc_release
  3125. units: fpc_units
  3126. examples:
  3127. shared: fpc_shared
  3128. install: fpc_install
  3129. sourceinstall: fpc_sourceinstall
  3130. exampleinstall: fpc_exampleinstall
  3131. distinstall:
  3132. zipinstall:
  3133. zipsourceinstall:
  3134. zipexampleinstall:
  3135. zipdistinstall:
  3136. clean: fpc_clean
  3137. distclean: fpc_distclean
  3138. cleanall: fpc_cleanall
  3139. info: fpc_info
  3140. makefiles: fpc_makefiles
  3141. .PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
  3142. ifneq ($(wildcard fpcmake.loc),)
  3143. include fpcmake.loc
  3144. endif
  3145. .NOTPARALLEL:
  3146. SYSTEMPPU=$(addsuffix $(PPUEXT),system)
  3147. include $(INC)/makefile.inc
  3148. SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
  3149. include $(PROCINC)/makefile.cpu
  3150. SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
  3151. SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
  3152. system$(PPUEXT) : system.pp $(SYSDEPS)
  3153. $(COMPILER) -Us -Sg system.pp -Fi../win
  3154. uuchar$(PPUEXT): $(SYSTEMUNIT)$(PPUEXT) $(INC)/uuchar.pp
  3155. $(COMPILER) $(INC)/uuchar.pp
  3156. objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc system$(PPUEXT)
  3157. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
  3158. macpas$(PPUEXT) : $(INC)/macpas.pp objpas$(PPUEXT) buildrtl$(PPUEXT)
  3159. $(COMPILER) $(INC)/macpas.pp $(REDIR)
  3160. buildrtl$(PPUEXT): buildrtl.pp system$(PPUEXT) objpas$(PPUEXT)
  3161. $(COMPILER) -Fi$(OBJPASDIR)/sysutils -Fi$(OBJPASDIR)/classes -Fu$(PROCINC) -I$(WINDIR) -I$(OBJPASDIR) -I$(WININC) -Fu$(WININC) -Fu$(WINDIR) -I$(INC) -Fu$(INC) -Fu$(OBJPASDIR) buildrtl
  3162. cpall$(PPUEXT): $(RTL)/charmaps/cpall.pas system$(PPUEXT) objpas$(PPUEXT)
  3163. $(COMPILER) -Fu$(INC) -Fi$(RTL)/charmaps $(RTL)/charmaps/cpall.pas
  3164. iso7185$(PPUEXT) : $(INC)/iso7185.pp $(SYSTEMUNIT)$(PPUEXT)
  3165. $(COMPILER) $(INC)/iso7185.pp
  3166. lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT)
  3167. $(COMPILER) $(INC)/lineinfo.pp
  3168. lnfodwrf$(PPUEXT) : $(INC)/lnfodwrf.pp $(SYSTEMUNIT)$(PPUEXT)
  3169. $(COMPILER) $(INC)/lnfodwrf.pp