Makefile 72 KB

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