Makefile 61 KB

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