Makefile 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542
  1. #
  2. # Don't edit, this file is generated by FPCMake Version 1.1 [2004/10/30]
  3. #
  4. default: all
  5. MAKEFILETARGETS=linux go32v2 win32 os2 freebsd beos netbsd amiga atari sunos qnx netware openbsd wdosx palmos macos darwin emx watcom morphos netwlibc
  6. BSDs = freebsd netbsd openbsd darwin
  7. UNIXs = linux $(BSDs) sunos qnx
  8. LIMIT83fs = go32v2 os2
  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=freebsd
  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=ppc386
  109. endif
  110. else
  111. override FPC=ppc386
  112. endif
  113. endif
  114. override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
  115. override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
  116. ifndef FPC_VERSION
  117. FPC_COMPILERINFO:=$(shell $(FPC) -iVSPTPSOTO)
  118. FPC_VERSION:=$(word 1,$(FPC_COMPILERINFO))
  119. endif
  120. export FPC FPC_VERSION FPC_COMPILERINFO
  121. unexport CHECKDEPEND ALLDEPENDENCIES
  122. ifndef CPU_TARGET
  123. ifdef CPU_TARGET_DEFAULT
  124. CPU_TARGET=$(CPU_TARGET_DEFAULT)
  125. endif
  126. endif
  127. ifndef OS_TARGET
  128. ifdef OS_TARGET_DEFAULT
  129. OS_TARGET=$(OS_TARGET_DEFAULT)
  130. endif
  131. endif
  132. ifneq ($(words $(FPC_COMPILERINFO)),5)
  133. FPC_COMPILERINFO+=$(shell $(FPC) -iSP)
  134. FPC_COMPILERINFO+=$(shell $(FPC) -iTP)
  135. FPC_COMPILERINFO+=$(shell $(FPC) -iSO)
  136. FPC_COMPILERINFO+=$(shell $(FPC) -iTO)
  137. endif
  138. ifndef CPU_SOURCE
  139. CPU_SOURCE:=$(word 2,$(FPC_COMPILERINFO))
  140. endif
  141. ifndef CPU_TARGET
  142. CPU_TARGET:=$(word 3,$(FPC_COMPILERINFO))
  143. endif
  144. ifndef OS_SOURCE
  145. OS_SOURCE:=$(word 4,$(FPC_COMPILERINFO))
  146. endif
  147. ifndef OS_TARGET
  148. OS_TARGET:=$(word 5,$(FPC_COMPILERINFO))
  149. endif
  150. ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
  151. FULL_TARGET=$(OS_TARGET)
  152. FULL_SOURCE=$(OS_SOURCE)
  153. else
  154. FULL_TARGET=$(CPU_TARGET)-$(OS_TARGET)
  155. FULL_SOURCE=$(CPU_SOURCE)-$(OS_SOURCE)
  156. endif
  157. ifneq ($(FULL_TARGET),$(FULL_SOURCE))
  158. CROSSCOMPILE=1
  159. endif
  160. ifeq ($(findstring makefile,$(MAKECMDGOALS)),)
  161. ifeq ($(findstring $(OS_TARGET),$(MAKEFILETARGETS)),)
  162. $(error The Makefile doesn't support target $(OS_TARGET), please run fpcmake first)
  163. endif
  164. endif
  165. ifneq ($(findstring $(OS_TARGET),$(BSDs)),)
  166. BSDhier=1
  167. endif
  168. ifeq ($(OS_TARGET),linux)
  169. linuxHier=1
  170. endif
  171. export OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FULL_TARGET FULL_SOURCE CROSSCOMPILE
  172. ifdef FPCDIR
  173. override FPCDIR:=$(subst \,/,$(FPCDIR))
  174. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  175. override FPCDIR=wrong
  176. endif
  177. else
  178. override FPCDIR=wrong
  179. endif
  180. ifdef DEFAULT_FPCDIR
  181. ifeq ($(FPCDIR),wrong)
  182. override FPCDIR:=$(subst \,/,$(DEFAULT_FPCDIR))
  183. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  184. override FPCDIR=wrong
  185. endif
  186. endif
  187. endif
  188. ifeq ($(FPCDIR),wrong)
  189. ifdef inUnix
  190. override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
  191. ifeq ($(wildcard $(FPCDIR)/units),)
  192. override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
  193. endif
  194. else
  195. override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
  196. override FPCDIR:=$(FPCDIR)/..
  197. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  198. override FPCDIR:=$(FPCDIR)/..
  199. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  200. override FPCDIR:=$(BASEDIR)
  201. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  202. override FPCDIR=c:/pp
  203. endif
  204. endif
  205. endif
  206. endif
  207. endif
  208. ifndef CROSSBINDIR
  209. CROSSBINDIR:=$(wildcard $(FPCDIR)/bin/$(FULL_TARGET))
  210. endif
  211. ifndef BINUTILSPREFIX
  212. ifndef CROSSBINDIR
  213. ifdef CROSSCOMPILE
  214. BINUTILSPREFIX=$(CPU_TARGET)-$(OS_TARGET)-
  215. endif
  216. endif
  217. endif
  218. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(FULL_TARGET))
  219. ifeq ($(UNITSDIR),)
  220. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
  221. endif
  222. PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages/base $(FPCDIR)/packages/extra)
  223. override PACKAGE_NAME=rtl
  224. PACKAGEDIR_MAIN:=$(firstword $(subst /Makefile.fpc,,$(strip $(wildcard $(addsuffix /rtl/Makefile.fpc,$(PACKAGESDIR))))))
  225. RTL=..
  226. INC=$(RTL)/inc
  227. PROCINC=$(RTL)/$(CPU_TARGET)
  228. OSPROCINC=$(RTL)/freebsd/$(CPU_TARGET)
  229. BSDINC=$(RTL)/bsd
  230. BSDPROCINC=$(BSDINC)/$(CPU_TARGET)
  231. UNIXINC=$(RTL)/unix
  232. UNITPREFIX=rtl
  233. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  234. SYSTEMUNIT=system
  235. override FPCOPT+=-dNOMOUSE
  236. loaders+=gprt0
  237. else
  238. SYSTEMUNIT=sysbsd
  239. override FPCOPT+=-dUNIX -dNOMOUSE
  240. endif
  241. ifdef RELEASE
  242. override FPCOPT+=-Ur
  243. endif
  244. OBJPASDIR=$(RTL)/objpas
  245. GRAPHDIR=$(INC)/graph
  246. ifndef USELIBGGI
  247. USELIBGGI=NO
  248. endif
  249. override TARGET_UNITS+=$(SYSTEMUNIT) objpas macpas strings syscall sysctl unixtype baseunix unixutil unix rtlconst initc cmem matrix dl termio printer sysutils typinfo systhrds types classes math varutils dynlibs cpu mmx charset ucomplex crt getopts heaptrc lineinfo errors sockets ipc terminfo video mouse keyboard console serial variants dateutils sysconst cthreads strutils convutils dos objects
  250. override TARGET_LOADERS+=prt0 cprt0 gprt0
  251. override TARGET_RSTS+=math varutils typinfo classes variants dateutils sysconst
  252. override INSTALL_FPCPACKAGE=y y
  253. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC) $(BSDPROCINC) $(OSPROCINC)
  254. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC) $(UNIXINC) $(BSDINC)
  255. ifdef REQUIRE_UNITSDIR
  256. override UNITSDIR+=$(REQUIRE_UNITSDIR)
  257. endif
  258. ifdef REQUIRE_PACKAGESDIR
  259. override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
  260. endif
  261. ifdef ZIPINSTALL
  262. ifneq ($(findstring $(OS_TARGET),$(UNIXs)),)
  263. UNIXHier=1
  264. endif
  265. else
  266. ifneq ($(findstring $(OS_SOURCE),$(UNIXs)),)
  267. UNIXHier=1
  268. endif
  269. endif
  270. ifndef INSTALL_PREFIX
  271. ifdef PREFIX
  272. INSTALL_PREFIX=$(PREFIX)
  273. endif
  274. endif
  275. ifndef INSTALL_PREFIX
  276. ifdef UNIXHier
  277. INSTALL_PREFIX=/usr/local
  278. else
  279. ifdef INSTALL_FPCPACKAGE
  280. INSTALL_BASEDIR:=/pp
  281. else
  282. INSTALL_BASEDIR:=/$(PACKAGE_NAME)
  283. endif
  284. endif
  285. endif
  286. export INSTALL_PREFIX
  287. ifdef INSTALL_FPCSUBDIR
  288. export INSTALL_FPCSUBDIR
  289. endif
  290. ifndef DIST_DESTDIR
  291. DIST_DESTDIR:=$(BASEDIR)
  292. endif
  293. export DIST_DESTDIR
  294. ifndef COMPILER_UNITTARGETDIR
  295. ifdef PACKAGEDIR_MAIN
  296. COMPILER_UNITTARGETDIR=$(PACKAGEDIR_MAIN)/units/$(FULL_TARGET)
  297. else
  298. COMPILER_UNITTARGETDIR=units/$(FULL_TARGET)
  299. endif
  300. endif
  301. ifndef COMPILER_TARGETDIR
  302. COMPILER_TARGETDIR=.
  303. endif
  304. ifndef INSTALL_BASEDIR
  305. ifdef UNIXHier
  306. ifdef INSTALL_FPCPACKAGE
  307. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
  308. else
  309. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
  310. endif
  311. else
  312. INSTALL_BASEDIR:=$(INSTALL_PREFIX)
  313. endif
  314. endif
  315. ifndef INSTALL_BINDIR
  316. ifdef UNIXHier
  317. INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
  318. else
  319. INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
  320. ifdef INSTALL_FPCPACKAGE
  321. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(FULL_SOURCE)
  322. endif
  323. endif
  324. endif
  325. ifndef INSTALL_UNITDIR
  326. INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(FULL_TARGET)
  327. ifdef INSTALL_FPCPACKAGE
  328. ifdef PACKAGE_NAME
  329. INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
  330. endif
  331. endif
  332. endif
  333. ifndef INSTALL_LIBDIR
  334. ifdef UNIXHier
  335. INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
  336. else
  337. INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
  338. endif
  339. endif
  340. ifndef INSTALL_SOURCEDIR
  341. ifdef UNIXHier
  342. ifdef BSDhier
  343. SRCPREFIXDIR=share/src
  344. else
  345. ifdef linuxHier
  346. SRCPREFIXDIR=share/src
  347. else
  348. SRCPREFIXDIR=src
  349. endif
  350. endif
  351. ifdef INSTALL_FPCPACKAGE
  352. ifdef INSTALL_FPCSUBDIR
  353. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  354. else
  355. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  356. endif
  357. else
  358. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/$(SRCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  359. endif
  360. else
  361. ifdef INSTALL_FPCPACKAGE
  362. ifdef INSTALL_FPCSUBDIR
  363. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(INSTALL_FPCSUBDIR)/$(PACKAGE_NAME)
  364. else
  365. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
  366. endif
  367. else
  368. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source
  369. endif
  370. endif
  371. endif
  372. ifndef INSTALL_DOCDIR
  373. ifdef UNIXHier
  374. ifdef BSDhier
  375. DOCPREFIXDIR=share/doc
  376. else
  377. ifdef linuxHier
  378. DOCPREFIXDIR=share/doc
  379. else
  380. DOCPREFIXDIR=doc
  381. endif
  382. endif
  383. ifdef INSTALL_FPCPACKAGE
  384. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  385. else
  386. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/$(DOCPREFIXDIR)/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  387. endif
  388. else
  389. ifdef INSTALL_FPCPACKAGE
  390. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
  391. else
  392. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
  393. endif
  394. endif
  395. endif
  396. ifndef INSTALL_EXAMPLEDIR
  397. ifdef UNIXHier
  398. ifdef INSTALL_FPCPACKAGE
  399. ifdef BSDhier
  400. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  401. else
  402. ifdef linuxHier
  403. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples
  404. else
  405. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
  406. endif
  407. endif
  408. else
  409. ifdef BSDhier
  410. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/share/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  411. else
  412. ifdef linuxHier
  413. INSTALL_EXAMPLEDIR:=$(INSTALL_DOCDIR)/examples/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  414. else
  415. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  416. endif
  417. endif
  418. endif
  419. else
  420. ifdef INSTALL_FPCPACKAGE
  421. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
  422. else
  423. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
  424. endif
  425. endif
  426. endif
  427. ifndef INSTALL_DATADIR
  428. INSTALL_DATADIR=$(INSTALL_BASEDIR)
  429. endif
  430. ifdef CROSSCOMPILE
  431. ifndef CROSSBINDIR
  432. CROSSBINDIR:=$(wildcard $(CROSSTARGETDIR)/bin/$(FULL_SOURCE))
  433. ifeq ($(CROSSBINDIR),)
  434. CROSSBINDIR:=$(wildcard $(INSTALL_BASEDIR)/cross/$(FULL_TARGET)/bin/$(FULL_SOURCE))
  435. endif
  436. endif
  437. else
  438. CROSSBINDIR=
  439. endif
  440. BATCHEXT=.bat
  441. LOADEREXT=.as
  442. EXEEXT=.exe
  443. PPLEXT=.ppl
  444. PPUEXT=.ppu
  445. OEXT=.o
  446. ASMEXT=.s
  447. SMARTEXT=.sl
  448. STATICLIBEXT=.a
  449. SHAREDLIBEXT=.so
  450. STATICLIBPREFIX=libp
  451. RSTEXT=.rst
  452. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  453. ifeq ($(OS_TARGET),go32v1)
  454. STATICLIBPREFIX=
  455. FPCMADEEXT=v1
  456. PACKAGESUFFIX=v1
  457. endif
  458. ifeq ($(OS_TARGET),go32v2)
  459. STATICLIBPREFIX=
  460. FPCMADEEXT=dos
  461. ZIPSUFFIX=go32
  462. endif
  463. ifeq ($(OS_TARGET),watcom)
  464. STATICLIBPREFIX=
  465. FPCMADEEXT=wat
  466. ZIPSUFFIX=watc
  467. OEXT=.obj
  468. ASMEXT=.asm
  469. SHAREDLIBEXT=.dll
  470. endif
  471. ifeq ($(OS_TARGET),linux)
  472. BATCHEXT=.sh
  473. EXEEXT=
  474. HASSHAREDLIB=1
  475. FPCMADEEXT=lnx
  476. ZIPSUFFIX=linux
  477. endif
  478. ifeq ($(OS_TARGET),freebsd)
  479. BATCHEXT=.sh
  480. EXEEXT=
  481. HASSHAREDLIB=1
  482. FPCMADEEXT=fbs
  483. ZIPSUFFIX=freebsd
  484. endif
  485. ifeq ($(OS_TARGET),netbsd)
  486. BATCHEXT=.sh
  487. EXEEXT=
  488. HASSHAREDLIB=1
  489. FPCMADEEXT=nbs
  490. ZIPSUFFIX=netbsd
  491. endif
  492. ifeq ($(OS_TARGET),openbsd)
  493. BATCHEXT=.sh
  494. EXEEXT=
  495. HASSHAREDLIB=1
  496. FPCMADEEXT=obs
  497. ZIPSUFFIX=openbsd
  498. endif
  499. ifeq ($(OS_TARGET),win32)
  500. SHAREDLIBEXT=.dll
  501. FPCMADEEXT=w32
  502. ZIPSUFFIX=w32
  503. endif
  504. ifeq ($(OS_TARGET),os2)
  505. BATCHEXT=.cmd
  506. AOUTEXT=.out
  507. STATICLIBPREFIX=
  508. SHAREDLIBEXT=.dll
  509. FPCMADEEXT=os2
  510. ZIPSUFFIX=os2
  511. ECHO=echo
  512. endif
  513. ifeq ($(OS_TARGET),emx)
  514. BATCHEXT=.cmd
  515. AOUTEXT=.out
  516. STATICLIBPREFIX=
  517. SHAREDLIBEXT=.dll
  518. FPCMADEEXT=emx
  519. ZIPSUFFIX=emx
  520. ECHO=echo
  521. endif
  522. ifeq ($(OS_TARGET),amiga)
  523. EXEEXT=
  524. SHAREDLIBEXT=.library
  525. FPCMADEEXT=amg
  526. endif
  527. ifeq ($(OS_TARGET),morphos)
  528. EXEEXT=
  529. SHAREDLIBEXT=.library
  530. FPCMADEEXT=mos
  531. endif
  532. ifeq ($(OS_TARGET),atari)
  533. EXEEXT=.ttp
  534. FPCMADEEXT=ata
  535. endif
  536. ifeq ($(OS_TARGET),beos)
  537. BATCHEXT=.sh
  538. EXEEXT=
  539. FPCMADEEXT=be
  540. ZIPSUFFIX=be
  541. endif
  542. ifeq ($(OS_TARGET),sunos)
  543. BATCHEXT=.sh
  544. EXEEXT=
  545. FPCMADEEXT=sun
  546. ZIPSUFFIX=sun
  547. endif
  548. ifeq ($(OS_TARGET),qnx)
  549. BATCHEXT=.sh
  550. EXEEXT=
  551. FPCMADEEXT=qnx
  552. ZIPSUFFIX=qnx
  553. endif
  554. ifeq ($(OS_TARGET),netware)
  555. EXEEXT=.nlm
  556. STATICLIBPREFIX=
  557. FPCMADEEXT=nw
  558. ZIPSUFFIX=nw
  559. endif
  560. ifeq ($(OS_TARGET),netwlibc)
  561. EXEEXT=.nlm
  562. STATICLIBPREFIX=
  563. FPCMADEEXT=nwl
  564. ZIPSUFFIX=nwl
  565. endif
  566. ifeq ($(OS_TARGET),macos)
  567. BATCHEXT=
  568. EXEEXT=
  569. FPCMADEEXT=mac
  570. ZIPSUFFIX=macos
  571. DEBUGSYMEXT=.xcoff
  572. endif
  573. ifeq ($(OS_TARGET),darwin)
  574. BATCHEXT=.sh
  575. EXEEXT=
  576. FPCMADEEXT=dwn
  577. HASSHAREDLIB=1
  578. ZIPSUFFIX=darwin
  579. endif
  580. ifneq ($(findstring $(OS_SOURCE),$(LIMIT83fs)),)
  581. FPCMADE=fpcmade$(FPCMADEEXT)
  582. else
  583. FPCMADE=fpcmade.$(FULL_TARGET)
  584. endif
  585. else
  586. ifeq ($(OS_TARGET),go32v1)
  587. PPUEXT=.pp1
  588. OEXT=.o1
  589. ASMEXT=.s1
  590. SMARTEXT=.sl1
  591. STATICLIBEXT=.a1
  592. SHAREDLIBEXT=.so1
  593. STATICLIBPREFIX=
  594. FPCMADE=fpcmade.v1
  595. PACKAGESUFFIX=v1
  596. endif
  597. ifeq ($(OS_TARGET),go32v2)
  598. STATICLIBPREFIX=
  599. FPCMADE=fpcmade.dos
  600. ZIPSUFFIX=go32
  601. endif
  602. ifeq ($(OS_TARGET),watcom)
  603. STATICLIBPREFIX=
  604. FPCMADE=fpcmade.dos
  605. ZIPSUFFIX=watcom
  606. endif
  607. ifeq ($(OS_TARGET),linux)
  608. BATCHEXT=.sh
  609. EXEEXT=
  610. HASSHAREDLIB=1
  611. FPCMADE=fpcmade.lnx
  612. ZIPSUFFIX=linux
  613. endif
  614. ifeq ($(OS_TARGET),freebsd)
  615. BATCHEXT=.sh
  616. EXEEXT=
  617. HASSHAREDLIB=1
  618. FPCMADE=fpcmade.freebsd
  619. ZIPSUFFIX=freebsd
  620. endif
  621. ifeq ($(OS_TARGET),netbsd)
  622. BATCHEXT=.sh
  623. EXEEXT=
  624. HASSHAREDLIB=1
  625. FPCMADE=fpcmade.netbsd
  626. ZIPSUFFIX=netbsd
  627. endif
  628. ifeq ($(OS_TARGET),openbsd)
  629. BATCHEXT=.sh
  630. EXEEXT=
  631. HASSHAREDLIB=1
  632. FPCMADE=fpcmade.openbsd
  633. ZIPSUFFIX=openbsd
  634. endif
  635. ifeq ($(OS_TARGET),win32)
  636. PPUEXT=.ppw
  637. OEXT=.ow
  638. ASMEXT=.sw
  639. SMARTEXT=.slw
  640. STATICLIBEXT=.aw
  641. SHAREDLIBEXT=.dll
  642. FPCMADE=fpcmade.w32
  643. ZIPSUFFIX=w32
  644. endif
  645. ifeq ($(OS_TARGET),os2)
  646. BATCHEXT=.cmd
  647. PPUEXT=.ppo
  648. ASMEXT=.so2
  649. OEXT=.oo2
  650. AOUTEXT=.out
  651. SMARTEXT=.sl2
  652. STATICLIBPREFIX=
  653. STATICLIBEXT=.ao2
  654. SHAREDLIBEXT=.dll
  655. FPCMADE=fpcmade.os2
  656. ZIPSUFFIX=emx
  657. ECHO=echo
  658. endif
  659. ifeq ($(OS_TARGET),amiga)
  660. EXEEXT=
  661. PPUEXT=.ppu
  662. ASMEXT=.asm
  663. OEXT=.o
  664. SMARTEXT=.sl
  665. STATICLIBEXT=.a
  666. SHAREDLIBEXT=.library
  667. FPCMADE=fpcmade.amg
  668. endif
  669. ifeq ($(OS_TARGET),atari)
  670. PPUEXT=.ppu
  671. ASMEXT=.s
  672. OEXT=.o
  673. SMARTEXT=.sl
  674. STATICLIBEXT=.a
  675. EXEEXT=.ttp
  676. FPCMADE=fpcmade.ata
  677. endif
  678. ifeq ($(OS_TARGET),beos)
  679. BATCHEXT=.sh
  680. PPUEXT=.ppu
  681. ASMEXT=.s
  682. OEXT=.o
  683. SMARTEXT=.sl
  684. STATICLIBEXT=.a
  685. EXEEXT=
  686. FPCMADE=fpcmade.be
  687. ZIPSUFFIX=be
  688. endif
  689. ifeq ($(OS_TARGET),sunos)
  690. BATCHEXT=.sh
  691. PPUEXT=.ppu
  692. ASMEXT=.s
  693. OEXT=.o
  694. SMARTEXT=.sl
  695. STATICLIBEXT=.a
  696. EXEEXT=
  697. FPCMADE=fpcmade.sun
  698. ZIPSUFFIX=sun
  699. endif
  700. ifeq ($(OS_TARGET),qnx)
  701. BATCHEXT=.sh
  702. PPUEXT=.ppu
  703. ASMEXT=.s
  704. OEXT=.o
  705. SMARTEXT=.sl
  706. STATICLIBEXT=.a
  707. EXEEXT=
  708. FPCMADE=fpcmade.qnx
  709. ZIPSUFFIX=qnx
  710. endif
  711. ifeq ($(OS_TARGET),netware)
  712. STATICLIBPREFIX=
  713. PPUEXT=.ppu
  714. OEXT=.o
  715. ASMEXT=.s
  716. SMARTEXT=.sl
  717. STATICLIBEXT=.a
  718. SHAREDLIBEXT=.nlm
  719. FPCMADE=fpcmade.nw
  720. ZIPSUFFIX=nw
  721. EXEEXT=.nlm
  722. endif
  723. ifeq ($(OS_TARGET),netwlibc)
  724. STATICLIBPREFIX=
  725. PPUEXT=.ppu
  726. OEXT=.o
  727. ASMEXT=.s
  728. SMARTEXT=.sl
  729. STATICLIBEXT=.a
  730. SHAREDLIBEXT=.nlm
  731. FPCMADE=fpcmade.nwl
  732. ZIPSUFFIX=nwl
  733. EXEEXT=.nlm
  734. endif
  735. ifeq ($(OS_TARGET),macos)
  736. BATCHEXT=
  737. PPUEXT=.ppu
  738. ASMEXT=.s
  739. OEXT=.o
  740. SMARTEXT=.sl
  741. STATICLIBEXT=.a
  742. EXEEXT=
  743. DEBUGSYMEXT=.xcoff
  744. FPCMADE=fpcmade.macos
  745. endif
  746. endif
  747. ifndef ECHO
  748. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  749. ifeq ($(ECHO),)
  750. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  751. ifeq ($(ECHO),)
  752. ECHO= __missing_command__
  753. else
  754. ECHO:=$(firstword $(ECHO))
  755. endif
  756. else
  757. ECHO:=$(firstword $(ECHO))
  758. endif
  759. endif
  760. export ECHO
  761. ifndef DATE
  762. DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
  763. ifeq ($(DATE),)
  764. DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
  765. ifeq ($(DATE),)
  766. DATE= __missing_command__
  767. else
  768. DATE:=$(firstword $(DATE))
  769. endif
  770. else
  771. DATE:=$(firstword $(DATE))
  772. endif
  773. endif
  774. export DATE
  775. ifndef GINSTALL
  776. GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
  777. ifeq ($(GINSTALL),)
  778. GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
  779. ifeq ($(GINSTALL),)
  780. GINSTALL= __missing_command__
  781. else
  782. GINSTALL:=$(firstword $(GINSTALL))
  783. endif
  784. else
  785. GINSTALL:=$(firstword $(GINSTALL))
  786. endif
  787. endif
  788. export GINSTALL
  789. ifndef CPPROG
  790. CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
  791. ifeq ($(CPPROG),)
  792. CPPROG= __missing_command__
  793. else
  794. CPPROG:=$(firstword $(CPPROG))
  795. endif
  796. endif
  797. export CPPROG
  798. ifndef RMPROG
  799. RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
  800. ifeq ($(RMPROG),)
  801. RMPROG= __missing_command__
  802. else
  803. RMPROG:=$(firstword $(RMPROG))
  804. endif
  805. endif
  806. export RMPROG
  807. ifndef MVPROG
  808. MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
  809. ifeq ($(MVPROG),)
  810. MVPROG= __missing_command__
  811. else
  812. MVPROG:=$(firstword $(MVPROG))
  813. endif
  814. endif
  815. export MVPROG
  816. ifndef MKDIRPROG
  817. MKDIRPROG:=$(strip $(wildcard $(addsuffix /gmkdir$(SRCEXEEXT),$(SEARCHPATH))))
  818. ifeq ($(MKDIRPROG),)
  819. MKDIRPROG:=$(strip $(wildcard $(addsuffix /mkdir$(SRCEXEEXT),$(SEARCHPATH))))
  820. ifeq ($(MKDIRPROG),)
  821. MKDIRPROG= __missing_command__
  822. else
  823. MKDIRPROG:=$(firstword $(MKDIRPROG))
  824. endif
  825. else
  826. MKDIRPROG:=$(firstword $(MKDIRPROG))
  827. endif
  828. endif
  829. export MKDIRPROG
  830. ifndef ECHOREDIR
  831. ifndef inUnix
  832. ECHOREDIR=echo
  833. else
  834. ECHOREDIR=$(ECHO)
  835. endif
  836. endif
  837. ifndef COPY
  838. COPY:=$(CPPROG) -fp
  839. endif
  840. ifndef COPYTREE
  841. COPYTREE:=$(CPPROG) -Rfp
  842. endif
  843. ifndef MKDIRTREE
  844. MKDIRTREE:=$(MKDIRPROG) -p
  845. endif
  846. ifndef MOVE
  847. MOVE:=$(MVPROG) -f
  848. endif
  849. ifndef DEL
  850. DEL:=$(RMPROG) -f
  851. endif
  852. ifndef DELTREE
  853. DELTREE:=$(RMPROG) -rf
  854. endif
  855. ifndef INSTALL
  856. ifdef inUnix
  857. INSTALL:=$(GINSTALL) -c -m 644
  858. else
  859. INSTALL:=$(COPY)
  860. endif
  861. endif
  862. ifndef INSTALLEXE
  863. ifdef inUnix
  864. INSTALLEXE:=$(GINSTALL) -c -m 755
  865. else
  866. INSTALLEXE:=$(COPY)
  867. endif
  868. endif
  869. ifndef MKDIR
  870. MKDIR:=$(GINSTALL) -m 755 -d
  871. endif
  872. export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
  873. ifndef PPUMOVE
  874. PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
  875. ifeq ($(PPUMOVE),)
  876. PPUMOVE= __missing_command__
  877. else
  878. PPUMOVE:=$(firstword $(PPUMOVE))
  879. endif
  880. endif
  881. export PPUMOVE
  882. ifndef FPCMAKE
  883. FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
  884. ifeq ($(FPCMAKE),)
  885. FPCMAKE= __missing_command__
  886. else
  887. FPCMAKE:=$(firstword $(FPCMAKE))
  888. endif
  889. endif
  890. export FPCMAKE
  891. ifndef ZIPPROG
  892. ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
  893. ifeq ($(ZIPPROG),)
  894. ZIPPROG= __missing_command__
  895. else
  896. ZIPPROG:=$(firstword $(ZIPPROG))
  897. endif
  898. endif
  899. export ZIPPROG
  900. ifndef TARPROG
  901. TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
  902. ifeq ($(TARPROG),)
  903. TARPROG= __missing_command__
  904. else
  905. TARPROG:=$(firstword $(TARPROG))
  906. endif
  907. endif
  908. export TARPROG
  909. ASNAME=$(BINUTILSPREFIX)as
  910. LDNAME=$(BINUTILSPREFIX)ld
  911. ARNAME=$(BINUTILSPREFIX)ar
  912. RCNAME=$(BINUTILSPREFIX)rc
  913. ifneq ($(findstring 1.0.,$(FPC_VERSION)),)
  914. ifeq ($(OS_TARGET),win32)
  915. ifeq ($(CROSSBINDIR),)
  916. ASNAME=asw
  917. LDNAME=ldw
  918. ARNAME=arw
  919. endif
  920. endif
  921. endif
  922. ifndef ASPROG
  923. ifdef CROSSBINDIR
  924. ASPROG=$(CROSSBINDIR)/$(ASNAME)$(SRCEXEEXT)
  925. else
  926. ASPROG=$(ASNAME)
  927. endif
  928. endif
  929. ifndef LDPROG
  930. ifdef CROSSBINDIR
  931. LDPROG=$(CROSSBINDIR)/$(LDNAME)$(SRCEXEEXT)
  932. else
  933. LDPROG=$(LDNAME)
  934. endif
  935. endif
  936. ifndef RCPROG
  937. ifdef CROSSBINDIR
  938. RCPROG=$(CROSSBINDIR)/$(RCNAME)$(SRCEXEEXT)
  939. else
  940. RCPROG=$(RCNAME)
  941. endif
  942. endif
  943. ifndef ARPROG
  944. ifdef CROSSBINDIR
  945. ARPROG=$(CROSSBINDIR)/$(ARNAME)$(SRCEXEEXT)
  946. else
  947. ARPROG=$(ARNAME)
  948. endif
  949. endif
  950. AS=$(ASPROG)
  951. LD=$(LDPROG)
  952. RC=$(RCPROG)
  953. AR=$(ARPROG)
  954. PPAS=ppas$(SRCBATCHEXT)
  955. ifdef inUnix
  956. LDCONFIG=ldconfig
  957. else
  958. LDCONFIG=
  959. endif
  960. ifdef DATE
  961. DATESTR:=$(shell $(DATE) +%Y%m%d)
  962. else
  963. DATESTR=
  964. endif
  965. ifndef UPXPROG
  966. ifeq ($(OS_TARGET),go32v2)
  967. UPXPROG:=1
  968. endif
  969. ifeq ($(OS_TARGET),win32)
  970. UPXPROG:=1
  971. endif
  972. ifdef UPXPROG
  973. UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
  974. ifeq ($(UPXPROG),)
  975. UPXPROG=
  976. else
  977. UPXPROG:=$(firstword $(UPXPROG))
  978. endif
  979. else
  980. UPXPROG=
  981. endif
  982. endif
  983. export UPXPROG
  984. ZIPOPT=-9
  985. ZIPEXT=.zip
  986. ifeq ($(USETAR),bz2)
  987. TAROPT=vI
  988. TAREXT=.tar.bz2
  989. else
  990. TAROPT=vz
  991. TAREXT=.tar.gz
  992. endif
  993. ifndef NOCPUDEF
  994. override FPCOPTDEF=$(CPU_TARGET)
  995. endif
  996. ifneq ($(OS_TARGET),$(OS_SOURCE))
  997. override FPCOPT+=-T$(OS_TARGET)
  998. endif
  999. ifeq ($(OS_SOURCE),openbsd)
  1000. override FPCOPT+=-FD$(NEW_BINUTILS_PATH)
  1001. endif
  1002. ifndef CROSSBOOTSTRAP
  1003. ifneq ($(BINUTILSPREFIX),)
  1004. override FPCOPT+=-XP$(BINUTILSPREFIX) -Xc
  1005. endif
  1006. ifneq ($(BINUTILSPREFIX),)
  1007. override FPCOPT+=-Xr$(RLINKPATH)
  1008. endif
  1009. endif
  1010. ifdef UNITDIR
  1011. override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
  1012. endif
  1013. ifdef LIBDIR
  1014. override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
  1015. endif
  1016. ifdef OBJDIR
  1017. override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
  1018. endif
  1019. ifdef INCDIR
  1020. override FPCOPT+=$(addprefix -Fi,$(INCDIR))
  1021. endif
  1022. ifdef LINKSMART
  1023. override FPCOPT+=-XX
  1024. endif
  1025. ifdef CREATESMART
  1026. override FPCOPT+=-CX
  1027. endif
  1028. ifdef DEBUG
  1029. override FPCOPT+=-gl
  1030. override FPCOPTDEF+=DEBUG
  1031. endif
  1032. ifdef RELEASE
  1033. ifeq ($(CPU_TARGET),i386)
  1034. FPCCPUOPT:=-OG2p3
  1035. else
  1036. ifeq ($(CPU_TARGET),powerpc)
  1037. FPCCPUOPT:=-O1
  1038. else
  1039. FPCCPUOPT:=
  1040. endif
  1041. endif
  1042. override FPCOPT+=-Xs $(FPCCPUOPT) -n
  1043. override FPCOPTDEF+=RELEASE
  1044. endif
  1045. ifdef STRIP
  1046. override FPCOPT+=-Xs
  1047. endif
  1048. ifdef OPTIMIZE
  1049. ifeq ($(CPU_TARGET),i386)
  1050. override FPCOPT+=-OG2p3
  1051. endif
  1052. endif
  1053. ifdef VERBOSE
  1054. override FPCOPT+=-vwni
  1055. endif
  1056. ifdef COMPILER_OPTIONS
  1057. override FPCOPT+=$(COMPILER_OPTIONS)
  1058. endif
  1059. ifdef COMPILER_UNITDIR
  1060. override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
  1061. endif
  1062. ifdef COMPILER_LIBRARYDIR
  1063. override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
  1064. endif
  1065. ifdef COMPILER_OBJECTDIR
  1066. override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
  1067. endif
  1068. ifdef COMPILER_INCLUDEDIR
  1069. override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
  1070. endif
  1071. ifdef CROSSBINDIR
  1072. override FPCOPT+=-FD$(CROSSBINDIR)
  1073. endif
  1074. ifdef COMPILER_TARGETDIR
  1075. override FPCOPT+=-FE$(COMPILER_TARGETDIR)
  1076. ifeq ($(COMPILER_TARGETDIR),.)
  1077. override TARGETDIRPREFIX=
  1078. else
  1079. override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
  1080. endif
  1081. endif
  1082. ifdef COMPILER_UNITTARGETDIR
  1083. override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
  1084. ifeq ($(COMPILER_UNITTARGETDIR),.)
  1085. override UNITTARGETDIRPREFIX=
  1086. else
  1087. override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
  1088. endif
  1089. else
  1090. ifdef COMPILER_TARGETDIR
  1091. override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
  1092. override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
  1093. endif
  1094. endif
  1095. ifeq ($(OS_TARGET),linux)
  1096. ifeq ($(FPC_VERSION),1.0.6)
  1097. override FPCOPTDEF+=HASUNIX
  1098. endif
  1099. endif
  1100. ifdef OPT
  1101. override FPCOPT+=$(OPT)
  1102. endif
  1103. ifdef FPCOPTDEF
  1104. override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
  1105. endif
  1106. ifdef CFGFILE
  1107. override FPCOPT+=@$(CFGFILE)
  1108. endif
  1109. ifdef USEENV
  1110. override FPCEXTCMD:=$(FPCOPT)
  1111. override FPCOPT:=!FPCEXTCMD
  1112. export FPCEXTCMD
  1113. endif
  1114. override COMPILER:=$(FPC) $(FPCOPT)
  1115. ifeq (,$(findstring -s ,$(COMPILER)))
  1116. EXECPPAS=
  1117. else
  1118. ifeq ($(FULL_SOURCE),$(FULL_TARGET))
  1119. EXECPPAS:=@$(PPAS)
  1120. endif
  1121. endif
  1122. .PHONY: fpc_loaders
  1123. ifneq ($(TARGET_LOADERS),)
  1124. override ALLTARGET+=fpc_loaders
  1125. override CLEANTARGET+=fpc_loaders_clean
  1126. override INSTALLTARGET+=fpc_loaders_install
  1127. override LOADEROFILES:=$(addsuffix $(OEXT),$(TARGET_LOADERS))
  1128. endif
  1129. %$(OEXT): %$(LOADEREXT)
  1130. ifdef COMPILER_UNITTARGETDIR
  1131. $(AS) -o $(COMPILER_UNITTARGETDIR)/$*$(OEXT) $<
  1132. else
  1133. $(AS) -o $*$(OEXT) $<
  1134. endif
  1135. fpc_loaders: $(COMPILER_UNITTARGETDIR) $(LOADEROFILES)
  1136. fpc_loaders_clean:
  1137. ifdef COMPILER_UNITTARGETDIR
  1138. -$(DEL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFILES))
  1139. else
  1140. -$(DEL) $(LOADEROFILES)
  1141. endif
  1142. fpc_loaders_install:
  1143. $(MKDIR) $(INSTALL_UNITDIR)
  1144. ifdef COMPILER_UNITTARGETDIR
  1145. $(INSTALL) $(addprefix $(COMPILER_UNITTARGETDIR)/,$(LOADEROFILES)) $(INSTALL_UNITDIR)
  1146. else
  1147. $(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
  1148. endif
  1149. .PHONY: fpc_units
  1150. ifneq ($(TARGET_UNITS),)
  1151. override ALLTARGET+=fpc_units
  1152. override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
  1153. override IMPLICITUNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_IMPLICITUNITS))
  1154. override INSTALLPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1155. override CLEANPPUFILES+=$(UNITPPUFILES) $(IMPLICITUNITPPUFILES)
  1156. endif
  1157. fpc_units: $(COMPILER_UNITTARGETDIR) $(UNITPPUFILES)
  1158. ifdef TARGET_RSTS
  1159. override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
  1160. override CLEANRSTFILES+=$(RSTFILES)
  1161. endif
  1162. .PHONY: fpc_all fpc_smart fpc_debug fpc_release
  1163. $(FPCMADE): $(ALLDEPENDENCIES) $(ALLTARGET)
  1164. @$(ECHOREDIR) Compiled > $(FPCMADE)
  1165. fpc_all: $(FPCMADE)
  1166. fpc_smart:
  1167. $(MAKE) all LINKSMART=1 CREATESMART=1
  1168. fpc_debug:
  1169. $(MAKE) all DEBUG=1
  1170. fpc_release:
  1171. $(MAKE) all RELEASE=1
  1172. .SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .lpr .dpr .pp .rc .res
  1173. $(COMPILER_UNITTARGETDIR):
  1174. $(MKDIRTREE) $(COMPILER_UNITTARGETDIR)
  1175. $(COMPILER_TARGETDIR):
  1176. $(MKDIRTREE) $(COMPILER_TARGETDIR)
  1177. %$(PPUEXT): %.pp
  1178. $(COMPILER) $<
  1179. $(EXECPPAS)
  1180. %$(PPUEXT): %.pas
  1181. $(COMPILER) $<
  1182. $(EXECPPAS)
  1183. %$(EXEEXT): %.pp
  1184. $(COMPILER) $<
  1185. $(EXECPPAS)
  1186. %$(EXEEXT): %.pas
  1187. $(COMPILER) $<
  1188. $(EXECPPAS)
  1189. %$(EXEEXT): %.lpr
  1190. $(COMPILER) $<
  1191. $(EXECPPAS)
  1192. %$(EXEEXT): %.dpr
  1193. $(COMPILER) $<
  1194. $(EXECPPAS)
  1195. %.res: %.rc
  1196. windres -i $< -o $@
  1197. vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1198. vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1199. vpath %.lpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1200. vpath %.dpr $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  1201. vpath %$(OEXT) $(COMPILER_UNITTARGETDIR)
  1202. vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
  1203. .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
  1204. ifdef INSTALL_UNITS
  1205. override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
  1206. endif
  1207. ifdef INSTALL_BUILDUNIT
  1208. override INSTALLPPUFILES:=$(filter-out $(INSTALL_BUILDUNIT)$(PPUEXT),$(INSTALLPPUFILES))
  1209. endif
  1210. ifdef INSTALLPPUFILES
  1211. override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
  1212. override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
  1213. override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
  1214. override INSTALL_CREATEPACKAGEFPC=1
  1215. endif
  1216. ifdef INSTALLEXEFILES
  1217. override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
  1218. endif
  1219. fpc_install: all $(INSTALLTARGET)
  1220. ifdef INSTALLEXEFILES
  1221. $(MKDIR) $(INSTALL_BINDIR)
  1222. ifdef UPXPROG
  1223. -$(UPXPROG) $(INSTALLEXEFILES)
  1224. endif
  1225. $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
  1226. endif
  1227. ifdef INSTALL_CREATEPACKAGEFPC
  1228. ifdef FPCMAKE
  1229. ifdef PACKAGE_VERSION
  1230. ifneq ($(wildcard Makefile.fpc),)
  1231. $(FPCMAKE) -p -T$(OS_TARGET) Makefile.fpc
  1232. $(MKDIR) $(INSTALL_UNITDIR)
  1233. $(INSTALL) Package.fpc $(INSTALL_UNITDIR)
  1234. endif
  1235. endif
  1236. endif
  1237. endif
  1238. ifdef INSTALLPPUFILES
  1239. $(MKDIR) $(INSTALL_UNITDIR)
  1240. $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
  1241. ifneq ($(INSTALLPPULINKFILES),)
  1242. $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
  1243. endif
  1244. ifneq ($(wildcard $(LIB_FULLNAME)),)
  1245. $(MKDIR) $(INSTALL_LIBDIR)
  1246. $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
  1247. ifdef inUnix
  1248. ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
  1249. endif
  1250. endif
  1251. endif
  1252. ifdef INSTALL_FILES
  1253. $(MKDIR) $(INSTALL_DATADIR)
  1254. $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
  1255. endif
  1256. fpc_sourceinstall: distclean
  1257. $(MKDIR) $(INSTALL_SOURCEDIR)
  1258. $(COPYTREE) $(BASEDIR)/* $(INSTALL_SOURCEDIR)
  1259. fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
  1260. ifdef HASEXAMPLES
  1261. $(MKDIR) $(INSTALL_EXAMPLEDIR)
  1262. endif
  1263. ifdef EXAMPLESOURCEFILES
  1264. $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
  1265. endif
  1266. ifdef TARGET_EXAMPLEDIRS
  1267. $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
  1268. endif
  1269. .PHONY: fpc_clean fpc_cleanall fpc_distclean
  1270. ifdef EXEFILES
  1271. override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
  1272. endif
  1273. ifdef CLEAN_UNITS
  1274. override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
  1275. endif
  1276. ifdef CLEANPPUFILES
  1277. override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
  1278. ifdef DEBUGSYMEXT
  1279. override CLEANPPULINKFILES+=$(subst $(PPUEXT),$(DEBUGSYMEXT),$(CLEANPPUFILES))
  1280. endif
  1281. override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
  1282. override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
  1283. endif
  1284. fpc_clean: $(CLEANTARGET)
  1285. ifdef CLEANEXEFILES
  1286. -$(DEL) $(CLEANEXEFILES)
  1287. endif
  1288. ifdef CLEANPPUFILES
  1289. -$(DEL) $(CLEANPPUFILES)
  1290. endif
  1291. ifneq ($(CLEANPPULINKFILES),)
  1292. -$(DEL) $(CLEANPPULINKFILES)
  1293. endif
  1294. ifdef CLEANRSTFILES
  1295. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  1296. endif
  1297. ifdef CLEAN_FILES
  1298. -$(DEL) $(CLEAN_FILES)
  1299. endif
  1300. ifdef LIB_NAME
  1301. -$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
  1302. endif
  1303. -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1304. -$(DEL) *$(ASMEXT) *_ppas$(BATCHEXT)
  1305. fpc_cleanall: $(CLEANTARGET)
  1306. ifdef CLEANEXEFILES
  1307. -$(DEL) $(CLEANEXEFILES)
  1308. endif
  1309. ifdef COMPILER_UNITTARGETDIR
  1310. ifdef CLEANPPUFILES
  1311. -$(DEL) $(CLEANPPUFILES)
  1312. endif
  1313. ifneq ($(CLEANPPULINKFILES),)
  1314. -$(DEL) $(CLEANPPULINKFILES)
  1315. endif
  1316. ifdef CLEANRSTFILES
  1317. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  1318. endif
  1319. endif
  1320. -$(DELTREE) units
  1321. -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
  1322. ifneq ($(PPUEXT),.ppu)
  1323. -$(DEL) *.o *.ppu *.a
  1324. endif
  1325. -$(DELTREE) *$(SMARTEXT)
  1326. -$(DEL) fpcmade.* Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  1327. -$(DEL) *_ppas$(BATCHEXT)
  1328. ifdef AOUTEXT
  1329. -$(DEL) *$(AOUTEXT)
  1330. endif
  1331. ifdef DEBUGSYMEXT
  1332. -$(DEL) *$(DEBUGSYMEXT)
  1333. endif
  1334. fpc_distclean: cleanall
  1335. .PHONY: fpc_baseinfo
  1336. override INFORULES+=fpc_baseinfo
  1337. fpc_baseinfo:
  1338. @$(ECHO)
  1339. @$(ECHO) == Package info ==
  1340. @$(ECHO) Package Name..... $(PACKAGE_NAME)
  1341. @$(ECHO) Package Version.. $(PACKAGE_VERSION)
  1342. @$(ECHO)
  1343. @$(ECHO) == Configuration info ==
  1344. @$(ECHO)
  1345. @$(ECHO) FPC.......... $(FPC)
  1346. @$(ECHO) FPC Version.. $(FPC_VERSION)
  1347. @$(ECHO) Source CPU... $(CPU_SOURCE)
  1348. @$(ECHO) Target CPU... $(CPU_TARGET)
  1349. @$(ECHO) Source OS.... $(OS_SOURCE)
  1350. @$(ECHO) Target OS.... $(OS_TARGET)
  1351. @$(ECHO) Full Source.. $(FULL_SOURCE)
  1352. @$(ECHO) Full Target.. $(FULL_TARGET)
  1353. @$(ECHO)
  1354. @$(ECHO) == Directory info ==
  1355. @$(ECHO)
  1356. @$(ECHO) Required pkgs... $(REQUIRE_PACKAGES)
  1357. @$(ECHO)
  1358. @$(ECHO) Basedir......... $(BASEDIR)
  1359. @$(ECHO) FPCDir.......... $(FPCDIR)
  1360. @$(ECHO) CrossBinDir..... $(CROSSBINDIR)
  1361. @$(ECHO) UnitsDir........ $(UNITSDIR)
  1362. @$(ECHO) PackagesDir..... $(PACKAGESDIR)
  1363. @$(ECHO)
  1364. @$(ECHO) GCC library..... $(GCCLIBDIR)
  1365. @$(ECHO) Other library... $(OTHERLIBDIR)
  1366. @$(ECHO)
  1367. @$(ECHO) == Tools info ==
  1368. @$(ECHO)
  1369. @$(ECHO) As........ $(AS)
  1370. @$(ECHO) Ld........ $(LD)
  1371. @$(ECHO) Ar........ $(AR)
  1372. @$(ECHO) Rc........ $(RC)
  1373. @$(ECHO)
  1374. @$(ECHO) Mv........ $(MVPROG)
  1375. @$(ECHO) Cp........ $(CPPROG)
  1376. @$(ECHO) Rm........ $(RMPROG)
  1377. @$(ECHO) GInstall.. $(GINSTALL)
  1378. @$(ECHO) Echo...... $(ECHO)
  1379. @$(ECHO) Shell..... $(SHELL)
  1380. @$(ECHO) Date...... $(DATE)
  1381. @$(ECHO) FPCMake... $(FPCMAKE)
  1382. @$(ECHO) PPUMove... $(PPUMOVE)
  1383. @$(ECHO) Upx....... $(UPXPROG)
  1384. @$(ECHO) Zip....... $(ZIPPROG)
  1385. @$(ECHO)
  1386. @$(ECHO) == Object info ==
  1387. @$(ECHO)
  1388. @$(ECHO) Target Loaders........ $(TARGET_LOADERS)
  1389. @$(ECHO) Target Units.......... $(TARGET_UNITS)
  1390. @$(ECHO) Target Implicit Units. $(TARGET_IMPLICITUNITS)
  1391. @$(ECHO) Target Programs....... $(TARGET_PROGRAMS)
  1392. @$(ECHO) Target Dirs........... $(TARGET_DIRS)
  1393. @$(ECHO) Target Examples....... $(TARGET_EXAMPLES)
  1394. @$(ECHO) Target ExampleDirs.... $(TARGET_EXAMPLEDIRS)
  1395. @$(ECHO)
  1396. @$(ECHO) Clean Units......... $(CLEAN_UNITS)
  1397. @$(ECHO) Clean Files......... $(CLEAN_FILES)
  1398. @$(ECHO)
  1399. @$(ECHO) Install Units....... $(INSTALL_UNITS)
  1400. @$(ECHO) Install Files....... $(INSTALL_FILES)
  1401. @$(ECHO)
  1402. @$(ECHO) == Install info ==
  1403. @$(ECHO)
  1404. @$(ECHO) DateStr.............. $(DATESTR)
  1405. @$(ECHO) ZipPrefix............ $(ZIPPREFIX)
  1406. @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
  1407. @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
  1408. @$(ECHO)
  1409. @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
  1410. @$(ECHO) Install binary dir... $(INSTALL_BINDIR)
  1411. @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
  1412. @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
  1413. @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
  1414. @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
  1415. @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
  1416. @$(ECHO) Install data dir..... $(INSTALL_DATADIR)
  1417. @$(ECHO)
  1418. @$(ECHO) Dist destination dir. $(DIST_DESTDIR)
  1419. @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
  1420. @$(ECHO)
  1421. .PHONY: fpc_info
  1422. fpc_info: $(INFORULES)
  1423. .PHONY: fpc_makefile fpc_makefiles fpc_makefile_sub1 fpc_makefile_sub2 \
  1424. fpc_makefile_dirs
  1425. fpc_makefile:
  1426. $(FPCMAKE) -w -T$(OS_TARGET) Makefile.fpc
  1427. fpc_makefile_sub1:
  1428. ifdef TARGET_DIRS
  1429. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_DIRS))
  1430. endif
  1431. ifdef TARGET_EXAMPLEDIRS
  1432. $(FPCMAKE) -w -T$(OS_TARGET) $(addsuffix /Makefile.fpc,$(TARGET_EXAMPLEDIRS))
  1433. endif
  1434. fpc_makefile_sub2: $(addsuffix _makefile_dirs,$(TARGET_DIRS) $(TARGET_EXAMPLEDIRS))
  1435. fpc_makefile_dirs: fpc_makefile_sub1 fpc_makefile_sub2
  1436. fpc_makefiles: fpc_makefile fpc_makefile_dirs
  1437. all: fpc_all
  1438. debug: fpc_debug
  1439. smart: fpc_smart
  1440. release: fpc_release
  1441. units: fpc_units
  1442. examples:
  1443. shared:
  1444. install: fpc_install
  1445. sourceinstall: fpc_sourceinstall
  1446. exampleinstall: fpc_exampleinstall
  1447. distinstall:
  1448. zipinstall:
  1449. zipsourceinstall:
  1450. zipexampleinstall:
  1451. zipdistinstall:
  1452. clean: fpc_clean
  1453. distclean: fpc_distclean
  1454. cleanall: fpc_cleanall
  1455. info: fpc_info
  1456. makefiles: fpc_makefiles
  1457. .PHONY: all debug smart release units examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info makefiles
  1458. ifneq ($(wildcard fpcmake.loc),)
  1459. include fpcmake.loc
  1460. endif
  1461. include $(INC)/makefile.inc
  1462. SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
  1463. include $(PROCINC)/makefile.cpu
  1464. SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
  1465. SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
  1466. prt0$(OEXT) : $(CPU_TARGET)/prt0.as
  1467. $(AS) -o $(UNITTARGETDIRPREFIX)prt0$(OEXT) $(CPU_TARGET)/prt0.as
  1468. cprt0$(OEXT) : $(CPU_TARGET)/cprt0.as
  1469. $(AS) -o $(UNITTARGETDIRPREFIX)cprt0$(OEXT) $(CPU_TARGET)/cprt0.as
  1470. gprt0$(OEXT) : $(CPU_TARGET)/gprt0.as
  1471. $(AS) -o $(UNITTARGETDIRPREFIX)gprt0$(OEXT) $(CPU_TARGET)/gprt0.as
  1472. $(SYSTEMUNIT)$(PPUEXT) : $(BSDINC)/$(SYSTEMUNIT).pp sysconst.inc systypes.inc syscalls.inc $(SYSDEPS)
  1473. $(COMPILER) -Us -Sg $(BSDINC)/$(SYSTEMUNIT).pp
  1474. objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT)
  1475. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp
  1476. dateutils$(PPUEXT): $(OBJPASDIR)/dateutils.pp baseunix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1477. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/dateutils.pp
  1478. strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc\
  1479. $(PROCINC)/strings.inc $(PROCINC)/stringss.inc\
  1480. $(SYSTEMUNIT)$(PPUEXT)
  1481. unixtype$(PPUEXT): $(UNIXINC)/unixtype.pp $(BSDINC)/ctypes.inc ptypes.inc $(SYSTEMUNIT)$(PPUEXT)
  1482. baseunix$(PPUEXT) : errno.inc $(BSDINC)/bunxtype.inc ptypes.inc $(BSDINC)/ctypes.inc \
  1483. signal.inc $(UNIXINC)/bunxh.inc $(BSDINC)/bunxmain.inc $(BSDINC)/ostypes.inc \
  1484. $(BSDINC)/bunxfunc.inc $(BSDPROCINC)/syscallh.inc sysnr.inc \
  1485. $(BSDINC)/ostypes.inc $(BSDINC)/ossysch.inc $(BSDINC)/bunxmacr.inc $(UNIXINC)/gensigset.inc \
  1486. $(UNIXINC)/genfuncs.inc $(SYSTEMUNIT)$(PPUEXT)
  1487. unix$(PPUEXT) : $(UNIXINC)/unix.pp strings$(PPUEXT) $(INC)/textrec.inc $(INC)/filerec.inc \
  1488. syscalls.inc systypes.inc sysconst.inc $(UNIXINC)/timezone.inc \
  1489. unixsysc.inc baseunix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1490. linux$(PPUEXT) : baseunix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1491. dos$(PPUEXT) : $(UNIXINC)/dos.pp $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) \
  1492. unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1493. crt$(PPUEXT) : $(UNIXINC)/crt.pp $(INC)/textrec.inc unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1494. objects$(PPUEXT) : $(INC)/objects.pp $(SYSTEMUNIT)$(PPUEXT)
  1495. printer$(PPUEXT) : $(UNIXINC)/printer.pp $(INC)/textrec.inc unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1496. sysutils$(PPUEXT) : $(UNIXINC)/sysutils.pp $(wildcard $(OBJPASDIR)/sysutils/*.inc) \
  1497. objpas$(PPUEXT) unix$(PPUEXT) errors$(PPUEXT) sysconst$(PPUEXT)
  1498. $(COMPILER) -Fi$(OBJPASDIR)/sysutils $(UNIXINC)/sysutils.pp
  1499. rtlconst$(PPUEXT) : $(OBJPASDIR)/rtlconst.pp
  1500. $(COMPILER): $(OBJPASDIR)/rtlconst.pp
  1501. classes$(PPUEXT) : classes.pp $(wildcard $(OBJPASDIR)/classes/*.inc) \
  1502. sysutils$(PPUEXT) typinfo$(PPUEXT) rtlconst$(PPUEXT)
  1503. $(COMPILER) -Fi$(OBJPASDIR)/classes classes.pp
  1504. typinfo$(PPUEXT): $(OBJPASDIR)/typinfo.pp objpas$(PPUEXT)
  1505. $(COMPILER) -Sg $(OBJPASDIR)/typinfo.pp
  1506. math$(PPUEXT): $(OBJPASDIR)/math.pp objpas$(PPUEXT) sysutils$(PPUEXT)
  1507. $(COMPILER) $(OBJPASDIR)/math.pp
  1508. gettext$(PPUEXT): $(OBJPASDIR)/gettext.pp objpas$(PPUEXT) sysutils$(PPUEXT)
  1509. $(COMPILER) $(OBJPASDIR)/gettext.pp
  1510. varutils$(PPUEXT) : $(OBJPASDIR)/cvarutil.inc $(OBJPASDIR)/varutils.inc \
  1511. $(OBJPASDIR)/varutilh.inc varutils.pp
  1512. $(COMPILER) -I$(OBJPASDIR) $(UNIXINC)/varutils.pp
  1513. types$(PPUEXT) : $(OBJPASDIR)/types.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1514. $(COMPILER) $(OBJPASDIR)/types.pp
  1515. sysconst$(PPUEXT) : $(OBJPASDIR)/sysconst.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1516. $(COMPILER) $(OBJPASDIR)/sysconst.pp
  1517. macpas$(PPUEXT) : $(INC)/macpas.pp $(SYSTEMUNIT)$(PPUEXT)
  1518. $(COMPILER) $(INC)/macpas.pp $(REDIR)
  1519. cpu$(PPUEXT) : $(PROCINC)/cpu.pp $(SYSTEMUNIT)$(PPUEXT)
  1520. mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1521. getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT)
  1522. heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT)
  1523. $(COMPILER) -Sg $(INC)/heaptrc.pp
  1524. lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT)
  1525. charset$(PPUEXT) : $(INC)/charset.pp $(SYSTEMUNIT)$(PPUEXT)
  1526. ucomplex$(PPUEXT) : $(INC)/ucomplex.pp math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1527. sockets$(PPUEXT) : $(UNIXINC)/sockets.pp $(INC)/textrec.inc $(INC)/filerec.inc \
  1528. unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1529. errors$(PPUEXT) : $(UNIXINC)/errors.pp strings$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1530. ipc$(PPUEXT) : $(UNIXINC)/ipc.pp unix$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  1531. terminfo$(PPUEXT) : terminfo.pp unix$(PPUEXT)
  1532. callspec$(PPUEXT) : $(INC)/callspec.pp $(SYSTEMUNIT)$(PPUEXT)
  1533. cmem$(PPUEXT) : $(INC)/cmem.pp $(SYSTEMUNIT)$(PPUEXT)
  1534. sysctl$(PPUEXT) : $(BSDINC)/sysctl.pp $(SYSTEMUNIT)$(PPUEXT)
  1535. cthreads$(PPUEXT) : $(UNIXINC)/cthreads.pp systhrds$(PPUEXT)
  1536. strutils$(PPUEXT) : $(OBJPASDIR)/strutils.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
  1537. sysutils$(PPUEXT)
  1538. $(COMPILER) $(OBJPASDIR)/strutils.pp
  1539. convutils$(PPUEXT) : $(OBJPASDIR)/convutils.pp objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT) \
  1540. sysutils$(PPUEXT)
  1541. $(COMPILER) $(OBJPASDIR)/convutils.pp
  1542. dynlibs$(PPUEXT) : $(INC)/dynlibs.pp $(UNIXINC)/dynlibs.inc dl$(PPUEXT) objpas$(PPUEXT)