Makefile 81 KB

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