Makefile 58 KB

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