Makefile 120 KB

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