Makefile 92 KB

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