Makefile 72 KB

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