Makefile 70 KB

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