Makefile 87 KB

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