Makefile 69 KB

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