Makefile 65 KB

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