Makefile 70 KB

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