Makefile 60 KB

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