Makefile 35 KB

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