Makefile 72 KB

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