Makefile 67 KB

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