Makefile 36 KB

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