Makefile 73 KB

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