Makefile 88 KB

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