Makefile 68 KB

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