Makefile 33 KB

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