Makefile 60 KB

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