Makefile 69 KB

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