Makefile 100 KB

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