Makefile 69 KB

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