Makefile 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968
  1. #
  2. # Don't edit, this file is generated by FPCMake Version 1.1 [2001/08/30]
  3. #
  4. default: all
  5. override PATH:=$(subst \,/,$(PATH))
  6. ifeq ($(findstring ;,$(PATH)),)
  7. inUnix=1
  8. SEARCHPATH:=$(filter-out .,$(subst :, ,$(PATH)))
  9. else
  10. SEARCHPATH:=$(subst ;, ,$(PATH))
  11. endif
  12. PWD:=$(strip $(wildcard $(addsuffix /pwd.exe,$(SEARCHPATH))))
  13. ifeq ($(PWD),)
  14. PWD:=$(strip $(wildcard $(addsuffix /pwd,$(SEARCHPATH))))
  15. ifeq ($(PWD),)
  16. nopwd:
  17. @echo You need the GNU utils package to use this Makefile!
  18. @echo Get ftp://ftp.freepascal.org/pub/fpc/dist/go32v2/utilgo32.zip
  19. @exit
  20. else
  21. PWD:=$(firstword $(PWD))
  22. SRCEXEEXT=
  23. endif
  24. else
  25. PWD:=$(firstword $(PWD))
  26. SRCEXEEXT=.exe
  27. endif
  28. ifndef inUnix
  29. ifeq ($(OS),Windows_NT)
  30. inWinNT=1
  31. else
  32. ifdef OS2_SHELL
  33. inOS2=1
  34. endif
  35. endif
  36. else
  37. ifneq ($(findstring cygwin,$(MACHTYPE)),)
  38. inCygWin=1
  39. endif
  40. endif
  41. ifdef inUnix
  42. BATCHEXT=.sh
  43. else
  44. ifdef inOS2
  45. BATCHEXT=.cmd
  46. else
  47. BATCHEXT=.bat
  48. endif
  49. endif
  50. ifdef inUnix
  51. PATHSEP=/
  52. else
  53. PATHSEP:=$(subst /,\,/)
  54. endif
  55. ifdef PWD
  56. BASEDIR:=$(subst \,/,$(shell $(PWD)))
  57. ifdef inCygWin
  58. ifneq ($(findstring /cygdrive/,$(BASEDIR)),)
  59. BASENODIR:=$(patsubst /cygdrive%,%,$(BASEDIR))
  60. BASEDRIVE:=$(firstword $(subst /, ,$(BASENODIR)))
  61. BASEDIR:=$(subst /cygdrive/$(BASEDRIVE)/,$(BASEDRIVE):/,$(BASEDIR))
  62. endif
  63. endif
  64. else
  65. BASEDIR=.
  66. endif
  67. override OS_TARGET=os2
  68. override CPU_TARGET=i386
  69. ifndef FPC
  70. ifdef PP
  71. FPC=$(PP)
  72. else
  73. ifdef inUnix
  74. CPU_SOURCE=$(shell uname -m)
  75. ifeq (m68k,$(CPU_SOURCE))
  76. FPC=ppc68k
  77. else
  78. FPC=ppc386
  79. endif
  80. else
  81. FPC=ppc386
  82. endif
  83. endif
  84. endif
  85. override FPC:=$(subst $(SRCEXEEXT),,$(FPC))
  86. override FPC:=$(subst \,/,$(FPC))$(SRCEXEEXT)
  87. ifndef OS_TARGET
  88. OS_TARGET:=$(shell $(FPC) -iTO)
  89. endif
  90. ifndef OS_SOURCE
  91. OS_SOURCE:=$(shell $(FPC) -iSO)
  92. endif
  93. ifndef CPU_TARGET
  94. CPU_TARGET:=$(shell $(FPC) -iTP)
  95. endif
  96. ifndef CPU_SOURCE
  97. CPU_SOURCE:=$(shell $(FPC) -iSP)
  98. endif
  99. ifndef FPC_VERSION
  100. FPC_VERSION:=$(shell $(FPC) -iV)
  101. endif
  102. export FPC OS_TARGET OS_SOURCE CPU_TARGET CPU_SOURCE FPC_VERSION
  103. ifdef FPCDIR
  104. override FPCDIR:=$(subst \,/,$(FPCDIR))
  105. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  106. override FPCDIR=wrong
  107. endif
  108. else
  109. override FPCDIR=wrong
  110. endif
  111. ifeq ($(FPCDIR),wrong)
  112. override FPCDIR=../..
  113. ifeq ($(wildcard $(FPCDIR)/rtl),)
  114. ifeq ($(wildcard $(FPCDIR)/units),)
  115. override FPCDIR=wrong
  116. endif
  117. endif
  118. endif
  119. ifeq ($(FPCDIR),wrong)
  120. ifdef inUnix
  121. override FPCDIR=/usr/local/lib/fpc/$(FPC_VERSION)
  122. ifeq ($(wildcard $(FPCDIR)/units),)
  123. override FPCDIR=/usr/lib/fpc/$(FPC_VERSION)
  124. endif
  125. else
  126. override FPCDIR:=$(subst /$(FPC),,$(firstword $(strip $(wildcard $(addsuffix /$(FPC),$(SEARCHPATH))))))
  127. override FPCDIR:=$(FPCDIR)/..
  128. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  129. override FPCDIR:=$(FPCDIR)/..
  130. ifeq ($(wildcard $(addprefix $(FPCDIR)/,rtl units)),)
  131. override FPCDIR=c:/pp
  132. endif
  133. endif
  134. endif
  135. endif
  136. UNITSDIR:=$(wildcard $(FPCDIR)/units/$(OS_TARGET))
  137. PACKAGESDIR:=$(wildcard $(FPCDIR) $(FPCDIR)/packages)
  138. override PACKAGE_NAME=rtl
  139. RTL=..
  140. INC=$(RTL)/inc
  141. PROCINC=$(RTL)/$(CPU_TARGET)
  142. UNITPREFIX=rtl
  143. ifeq ($(findstring 1.0.,$(FPC_VERSION)),)
  144. SYSTEMUNIT=system
  145. else
  146. SYSTEMUNIT=sysos2
  147. endif
  148. ifdef RELEASE
  149. override FPCOPT+=-Ur
  150. endif
  151. OBJPASDIR=$(RTL)/objpas
  152. GRAPHDIR=$(INC)/graph
  153. override TARGET_UNITS+=$(SYSTEMUNIT) objpas strings ports os2def doscalls moncalls kbdcalls moucalls viocalls pmbitmap pmwin pmgpi dive dos crt objects printer sysutils math typinfo varutils ucomplex cpu mmx getopts heaptrc lineinfo dynlibs video mouse keyboard
  154. override TARGET_LOADERS+=prt0 prt1 code2 code3
  155. override TARGET_RSTS+=math varutils typinfo
  156. override INSTALL_FPCPACKAGE=y
  157. override COMPILER_INCLUDEDIR+=$(INC) $(PROCINC)
  158. override COMPILER_SOURCEDIR+=$(INC) $(PROCINC)
  159. override COMPILER_TARGETDIR+=.
  160. ifndef ECHO
  161. ECHO:=$(strip $(wildcard $(addsuffix /gecho$(SRCEXEEXT),$(SEARCHPATH))))
  162. ifeq ($(ECHO),)
  163. ECHO:=$(strip $(wildcard $(addsuffix /echo$(SRCEXEEXT),$(SEARCHPATH))))
  164. ifeq ($(ECHO),)
  165. ECHO=
  166. else
  167. ECHO:=$(firstword $(ECHO))
  168. endif
  169. else
  170. ECHO:=$(firstword $(ECHO))
  171. endif
  172. endif
  173. export ECHO
  174. ifndef DATE
  175. DATE:=$(strip $(wildcard $(addsuffix /gdate$(SRCEXEEXT),$(SEARCHPATH))))
  176. ifeq ($(DATE),)
  177. DATE:=$(strip $(wildcard $(addsuffix /date$(SRCEXEEXT),$(SEARCHPATH))))
  178. ifeq ($(DATE),)
  179. DATE=
  180. else
  181. DATE:=$(firstword $(DATE))
  182. endif
  183. else
  184. DATE:=$(firstword $(DATE))
  185. endif
  186. endif
  187. export DATE
  188. ifndef GINSTALL
  189. GINSTALL:=$(strip $(wildcard $(addsuffix /ginstall$(SRCEXEEXT),$(SEARCHPATH))))
  190. ifeq ($(GINSTALL),)
  191. GINSTALL:=$(strip $(wildcard $(addsuffix /install$(SRCEXEEXT),$(SEARCHPATH))))
  192. ifeq ($(GINSTALL),)
  193. GINSTALL=
  194. else
  195. GINSTALL:=$(firstword $(GINSTALL))
  196. endif
  197. else
  198. GINSTALL:=$(firstword $(GINSTALL))
  199. endif
  200. endif
  201. export GINSTALL
  202. ifndef CPPROG
  203. CPPROG:=$(strip $(wildcard $(addsuffix /cp$(SRCEXEEXT),$(SEARCHPATH))))
  204. ifeq ($(CPPROG),)
  205. CPPROG=
  206. else
  207. CPPROG:=$(firstword $(CPPROG))
  208. endif
  209. endif
  210. export CPPROG
  211. ifndef RMPROG
  212. RMPROG:=$(strip $(wildcard $(addsuffix /rm$(SRCEXEEXT),$(SEARCHPATH))))
  213. ifeq ($(RMPROG),)
  214. RMPROG=
  215. else
  216. RMPROG:=$(firstword $(RMPROG))
  217. endif
  218. endif
  219. export RMPROG
  220. ifndef MVPROG
  221. MVPROG:=$(strip $(wildcard $(addsuffix /mv$(SRCEXEEXT),$(SEARCHPATH))))
  222. ifeq ($(MVPROG),)
  223. MVPROG=
  224. else
  225. MVPROG:=$(firstword $(MVPROG))
  226. endif
  227. endif
  228. export MVPROG
  229. ifndef ECHOREDIR
  230. ECHOREDIR:=$(subst /,$(PATHSEP),$(ECHO))
  231. endif
  232. ifndef COPY
  233. COPY:=$(CPPROG) -fp
  234. endif
  235. ifndef COPYTREE
  236. COPYTREE:=$(CPPROG) -rfp
  237. endif
  238. ifndef MOVE
  239. MOVE:=$(MVPROG) -f
  240. endif
  241. ifndef DEL
  242. DEL:=$(RMPROG) -f
  243. endif
  244. ifndef DELTREE
  245. DELTREE:=$(RMPROG) -rf
  246. endif
  247. ifndef INSTALL
  248. ifdef inUnix
  249. INSTALL:=$(GINSTALL) -c -m 644
  250. else
  251. INSTALL:=$(COPY)
  252. endif
  253. endif
  254. ifndef INSTALLEXE
  255. ifdef inUnix
  256. INSTALLEXE:=$(GINSTALL) -c -m 755
  257. else
  258. INSTALLEXE:=$(COPY)
  259. endif
  260. endif
  261. ifndef MKDIR
  262. MKDIR:=$(GINSTALL) -m 755 -d
  263. endif
  264. export ECHOREDIR COPY COPYTREE MOVE DEL DELTREE INSTALL INSTALLEXE MKDIR
  265. ifndef PPUMOVE
  266. PPUMOVE:=$(strip $(wildcard $(addsuffix /ppumove$(SRCEXEEXT),$(SEARCHPATH))))
  267. ifeq ($(PPUMOVE),)
  268. PPUMOVE=
  269. else
  270. PPUMOVE:=$(firstword $(PPUMOVE))
  271. endif
  272. endif
  273. export PPUMOVE
  274. ifndef FPCMAKE
  275. FPCMAKE:=$(strip $(wildcard $(addsuffix /fpcmake$(SRCEXEEXT),$(SEARCHPATH))))
  276. ifeq ($(FPCMAKE),)
  277. FPCMAKE=
  278. else
  279. FPCMAKE:=$(firstword $(FPCMAKE))
  280. endif
  281. endif
  282. export FPCMAKE
  283. ifndef ZIPPROG
  284. ZIPPROG:=$(strip $(wildcard $(addsuffix /zip$(SRCEXEEXT),$(SEARCHPATH))))
  285. ifeq ($(ZIPPROG),)
  286. ZIPPROG=
  287. else
  288. ZIPPROG:=$(firstword $(ZIPPROG))
  289. endif
  290. endif
  291. export ZIPPROG
  292. ifndef TARPROG
  293. TARPROG:=$(strip $(wildcard $(addsuffix /tar$(SRCEXEEXT),$(SEARCHPATH))))
  294. ifeq ($(TARPROG),)
  295. TARPROG=
  296. else
  297. TARPROG:=$(firstword $(TARPROG))
  298. endif
  299. endif
  300. export TARPROG
  301. ifndef AS
  302. AS=as
  303. endif
  304. ifndef LD
  305. LD=ld
  306. endif
  307. ifndef RC
  308. RC=rc
  309. endif
  310. PPAS=ppas$(BATCHEXT)
  311. ifdef inUnix
  312. LDCONFIG=ldconfig
  313. else
  314. LDCONFIG=
  315. endif
  316. ifdef DATE
  317. DATESTR:=$(shell $(DATE) +%Y%m%d)
  318. else
  319. DATESTR=
  320. endif
  321. ifndef UPXPROG
  322. ifeq ($(OS_TARGET),go32v2)
  323. UPXPROG:=1
  324. endif
  325. ifeq ($(OS_TARGET),win32)
  326. UPXPROG:=1
  327. endif
  328. ifdef UPXPROG
  329. UPXPROG:=$(strip $(wildcard $(addsuffix /upx$(SRCEXEEXT),$(SEARCHPATH))))
  330. ifeq ($(UPXPROG),)
  331. UPXPROG=
  332. else
  333. UPXPROG:=$(firstword $(UPXPROG))
  334. endif
  335. else
  336. UPXPROG=
  337. endif
  338. endif
  339. export UPXPROG
  340. ZIPOPT=-9
  341. ZIPEXT=.zip
  342. ifeq ($(USETAR),bz2)
  343. TAROPT=vI
  344. TAREXT=.tar.bz2
  345. else
  346. TAROPT=vz
  347. TAREXT=.tar.gz
  348. endif
  349. LOADEREXT=.as
  350. EXEEXT=.exe
  351. PPLEXT=.ppl
  352. PPUEXT=.ppu
  353. OEXT=.o
  354. ASMEXT=.s
  355. SMARTEXT=.sl
  356. STATICLIBEXT=.a
  357. SHAREDLIBEXT=.so
  358. STATICLIBPREFIX=libp
  359. RSTEXT=.rst
  360. FPCMADE=fpcmade
  361. ifeq ($(OS_TARGET),go32v1)
  362. PPUEXT=.pp1
  363. OEXT=.o1
  364. ASMEXT=.s1
  365. SMARTEXT=.sl1
  366. STATICLIBEXT=.a1
  367. SHAREDLIBEXT=.so1
  368. STATICLIBPREFIX=
  369. FPCMADE=fpcmade.v1
  370. PACKAGESUFFIX=v1
  371. endif
  372. ifeq ($(OS_TARGET),go32v2)
  373. STATICLIBPREFIX=
  374. FPCMADE=fpcmade.dos
  375. ZIPSUFFIX=go32
  376. endif
  377. ifeq ($(OS_TARGET),linux)
  378. EXEEXT=
  379. HASSHAREDLIB=1
  380. FPCMADE=fpcmade.lnx
  381. ZIPSUFFIX=linux
  382. endif
  383. ifeq ($(OS_TARGET),freebsd)
  384. EXEEXT=
  385. HASSHAREDLIB=1
  386. FPCMADE=fpcmade.freebsd
  387. ZIPSUFFIX=freebsd
  388. endif
  389. ifeq ($(OS_TARGET),netbsd)
  390. EXEEXT=
  391. HASSHAREDLIB=1
  392. FPCMADE=fpcmade.netbsd
  393. ZIPSUFFIX=netbsd
  394. endif
  395. ifeq ($(OS_TARGET),win32)
  396. PPUEXT=.ppw
  397. OEXT=.ow
  398. ASMEXT=.sw
  399. SMARTEXT=.slw
  400. STATICLIBEXT=.aw
  401. SHAREDLIBEXT=.dll
  402. FPCMADE=fpcmade.w32
  403. ZIPSUFFIX=w32
  404. endif
  405. ifeq ($(OS_TARGET),os2)
  406. PPUEXT=.ppo
  407. ASMEXT=.so2
  408. OEXT=.oo2
  409. AOUTEXT=.out
  410. SMARTEXT=.so
  411. STATICLIBEXT=.ao2
  412. SHAREDLIBEXT=.dll
  413. FPCMADE=fpcmade.os2
  414. ZIPSUFFIX=emx
  415. endif
  416. ifeq ($(OS_TARGET),amiga)
  417. EXEEXT=
  418. PPUEXT=.ppa
  419. ASMEXT=.asm
  420. OEXT=.o
  421. SMARTEXT=.sl
  422. STATICLIBEXT=.a
  423. SHAREDLIBEXT=.library
  424. FPCMADE=fpcmade.amg
  425. endif
  426. ifeq ($(OS_TARGET),atari)
  427. PPUEXT=.ppt
  428. ASMEXT=.s
  429. OEXT=.o
  430. SMARTEXT=.sl
  431. STATICLIBEXT=.a
  432. EXEEXT=.ttp
  433. FPCMADE=fpcmade.ata
  434. endif
  435. ifdef REQUIRE_UNITSDIR
  436. override UNITSDIR+=$(REQUIRE_UNITSDIR)
  437. endif
  438. ifdef REQUIRE_PACKAGESDIR
  439. override PACKAGESDIR+=$(REQUIRE_PACKAGESDIR)
  440. endif
  441. ifdef ZIPINSTALL
  442. ifeq ($(OS_TARGET),linux)
  443. UNIXINSTALLDIR=1
  444. endif
  445. ifeq ($(OS_TARGET),freebsd)
  446. UNIXINSTALLDIR=1
  447. endif
  448. ifeq ($(OS_TARGET),netbsd)
  449. UNIXINSTALLDIR=1
  450. endif
  451. else
  452. ifeq ($(OS_SOURCE),linux)
  453. UNIXINSTALLDIR=1
  454. endif
  455. ifeq ($(OS_SOURCE),freebsd)
  456. UNIXINSTALLDIR=1
  457. endif
  458. ifeq ($(OS_SOURCE),netbsd)
  459. UNIXINSTALLDIR=1
  460. endif
  461. endif
  462. ifndef INSTALL_PREFIX
  463. ifdef UNIXINSTALLDIR
  464. INSTALL_PREFIX=/usr/local
  465. else
  466. ifdef INSTALL_FPCPACKAGE
  467. INSTALL_BASEDIR:=/pp
  468. else
  469. INSTALL_BASEDIR:=/$(PACKAGE_NAME)
  470. endif
  471. endif
  472. endif
  473. export INSTALL_PREFIX
  474. ifndef DIST_DESTDIR
  475. DIST_DESTDIR:=$(BASEDIR)
  476. endif
  477. export DIST_DESTDIR
  478. ifndef INSTALL_BASEDIR
  479. ifdef UNIXINSTALLDIR
  480. ifdef INSTALL_FPCPACKAGE
  481. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/fpc/$(FPC_VERSION)
  482. else
  483. INSTALL_BASEDIR:=$(INSTALL_PREFIX)/lib/$(PACKAGE_NAME)
  484. endif
  485. else
  486. INSTALL_BASEDIR:=$(INSTALL_PREFIX)
  487. endif
  488. endif
  489. ifndef INSTALL_BINDIR
  490. ifdef UNIXINSTALLDIR
  491. INSTALL_BINDIR:=$(INSTALL_PREFIX)/bin
  492. else
  493. INSTALL_BINDIR:=$(INSTALL_BASEDIR)/bin
  494. ifdef INSTALL_FPCPACKAGE
  495. INSTALL_BINDIR:=$(INSTALL_BINDIR)/$(OS_TARGET)
  496. endif
  497. endif
  498. endif
  499. ifndef INSTALL_UNITDIR
  500. INSTALL_UNITDIR:=$(INSTALL_BASEDIR)/units/$(OS_TARGET)
  501. ifdef INSTALL_FPCPACKAGE
  502. ifdef PACKAGE_NAME
  503. INSTALL_UNITDIR:=$(INSTALL_UNITDIR)/$(PACKAGE_NAME)
  504. endif
  505. endif
  506. endif
  507. ifndef INSTALL_LIBDIR
  508. ifdef UNIXINSTALLDIR
  509. INSTALL_LIBDIR:=$(INSTALL_PREFIX)/lib
  510. else
  511. INSTALL_LIBDIR:=$(INSTALL_UNITDIR)
  512. endif
  513. endif
  514. ifndef INSTALL_SOURCEDIR
  515. ifdef UNIXINSTALLDIR
  516. ifdef INSTALL_FPCPACKAGE
  517. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  518. else
  519. INSTALL_SOURCEDIR:=$(INSTALL_PREFIX)/src/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  520. endif
  521. else
  522. ifdef INSTALL_FPCPACKAGE
  523. INSTALL_SOURCEDIR:=$(INSTALL_BASEDIR)/source/$(PACKAGE_NAME)
  524. else
  525. INSTALL_SOURCEDIRL:=$(INSTALL_BASEDIR)/source
  526. endif
  527. endif
  528. endif
  529. ifndef INSTALL_DOCDIR
  530. ifdef UNIXINSTALLDIR
  531. ifdef INSTALL_FPCPACKAGE
  532. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/$(PACKAGE_NAME)
  533. else
  534. INSTALL_DOCDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  535. endif
  536. else
  537. ifdef INSTALL_FPCPACKAGE
  538. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc/$(PACKAGE_NAME)
  539. else
  540. INSTALL_DOCDIR:=$(INSTALL_BASEDIR)/doc
  541. endif
  542. endif
  543. endif
  544. ifndef INSTALL_EXAMPLEDIR
  545. ifdef UNIXINSTALLDIR
  546. ifdef INSTALL_FPCPACKAGE
  547. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/fpc-$(FPC_VERSION)/examples/$(PACKAGE_NAME)
  548. else
  549. INSTALL_EXAMPLEDIR:=$(INSTALL_PREFIX)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
  550. endif
  551. else
  552. ifdef INSTALL_FPCPACKAGE
  553. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples/$(PACKAGE_NAME)
  554. else
  555. INSTALL_EXAMPLEDIR:=$(INSTALL_BASEDIR)/examples
  556. endif
  557. endif
  558. endif
  559. ifndef INSTALL_DATADIR
  560. INSTALL_DATADIR=$(INSTALL_BASEDIR)
  561. endif
  562. override FPCOPTDEF=$(CPU_TARGET)
  563. ifneq ($(OS_TARGET),$(OS_SOURCE))
  564. override FPCOPT+=-T$(OS_TARGET)
  565. endif
  566. ifdef UNITDIR
  567. override FPCOPT+=$(addprefix -Fu,$(UNITDIR))
  568. endif
  569. ifdef LIBDIR
  570. override FPCOPT+=$(addprefix -Fl,$(LIBDIR))
  571. endif
  572. ifdef OBJDIR
  573. override FPCOPT+=$(addprefix -Fo,$(OBJDIR))
  574. endif
  575. ifdef INCDIR
  576. override FPCOPT+=$(addprefix -Fi,$(INCDIR))
  577. endif
  578. ifdef LINKSMART
  579. override FPCOPT+=-XX
  580. endif
  581. ifdef CREATESMART
  582. override FPCOPT+=-CX
  583. endif
  584. ifdef DEBUG
  585. override FPCOPT+=-gl
  586. override FPCOPTDEF+=DEBUG
  587. endif
  588. ifdef RELEASE
  589. ifeq ($(CPU_TARGET),i386)
  590. FPCCPUOPT:=-OG2p3
  591. else
  592. FPCCPUOPT:=
  593. endif
  594. override FPCOPT+=-Xs $(FPCCPUOPT) -n
  595. override FPCOPTDEF+=RELEASE
  596. endif
  597. ifdef STRIP
  598. override FPCOPT+=-Xs
  599. endif
  600. ifdef OPTIMIZE
  601. ifeq ($(CPU_TARGET),i386)
  602. override FPCOPT+=-OG2p3
  603. endif
  604. endif
  605. ifdef VERBOSE
  606. override FPCOPT+=-vwni
  607. endif
  608. ifdef COMPILER_OPTIONS
  609. override FPCOPT+=$(COMPILER_OPTIONS)
  610. endif
  611. ifdef COMPILER_UNITDIR
  612. override FPCOPT+=$(addprefix -Fu,$(COMPILER_UNITDIR))
  613. endif
  614. ifdef COMPILER_LIBRARYDIR
  615. override FPCOPT+=$(addprefix -Fl,$(COMPILER_LIBRARYDIR))
  616. endif
  617. ifdef COMPILER_OBJECTDIR
  618. override FPCOPT+=$(addprefix -Fo,$(COMPILER_OBJECTDIR))
  619. endif
  620. ifdef COMPILER_INCLUDEDIR
  621. override FPCOPT+=$(addprefix -Fi,$(COMPILER_INCLUDEDIR))
  622. endif
  623. ifdef COMPILER_TARGETDIR
  624. override FPCOPT+=-FE$(COMPILER_TARGETDIR)
  625. ifeq ($(COMPILER_TARGETDIR),.)
  626. override TARGETDIRPREFIX=
  627. else
  628. override TARGETDIRPREFIX=$(COMPILER_TARGETDIR)/
  629. endif
  630. endif
  631. ifdef COMPILER_UNITTARGETDIR
  632. override FPCOPT+=-FU$(COMPILER_UNITTARGETDIR)
  633. ifeq ($(COMPILER_UNITTARGETDIR),.)
  634. override UNITTARGETDIRPREFIX=
  635. else
  636. override UNITTARGETDIRPREFIX=$(COMPILER_UNITTARGETDIR)/
  637. endif
  638. else
  639. ifdef COMPILER_TARGETDIR
  640. override COMPILER_UNITTARGETDIR=$(COMPILER_TARGETDIR)
  641. override UNITTARGETDIRPREFIX=$(TARGETDIRPREFIX)
  642. endif
  643. endif
  644. ifdef OPT
  645. override FPCOPT+=$(OPT)
  646. endif
  647. ifdef FPCOPTDEF
  648. override FPCOPT+=$(addprefix -d,$(FPCOPTDEF))
  649. endif
  650. ifdef CFGFILE
  651. override FPCOPT+=@$(CFGFILE)
  652. endif
  653. ifdef USEENV
  654. override FPCEXTCMD:=$(FPCOPT)
  655. override FPCOPT:=!FPCEXTCMD
  656. export FPCEXTCMD
  657. endif
  658. override COMPILER:=$(FPC) $(FPCOPT)
  659. ifeq (,$(findstring -s ,$(COMPILER)))
  660. EXECPPAS=
  661. else
  662. ifeq ($(OS_SOURCE),$(OS_TARGET))
  663. EXECPPAS:=@$(PPAS)
  664. endif
  665. endif
  666. .PHONY: fpc_loaders
  667. ifdef TARGET_LOADERS
  668. override ALLTARGET+=fpc_loaders
  669. override CLEANTARGET+=fpc_loaders_clean
  670. override INSTALLTARGET+=fpc_loaders_install
  671. override LOADEROFILES:=$(addsuffix $(OEXT),$(TARGET_LOADERS))
  672. endif
  673. %$(OEXT): %$(LOADEREXT)
  674. $(AS) -o $*$(OEXT) $<
  675. fpc_loaders: $(LOADEROFILES)
  676. fpc_loaders_clean:
  677. -$(DEL) $(LOADEROFILES)
  678. fpc_loaders_install:
  679. $(MKDIR) $(INSTALL_UNITDIR)
  680. $(INSTALL) $(LOADEROFILES) $(INSTALL_UNITDIR)
  681. .PHONY: fpc_units
  682. ifdef TARGET_UNITS
  683. override ALLTARGET+=fpc_units
  684. override UNITPPUFILES=$(addsuffix $(PPUEXT),$(TARGET_UNITS))
  685. override INSTALLPPUFILES+=$(UNITPPUFILES)
  686. override CLEANPPUFILES+=$(UNITPPUFILES)
  687. endif
  688. fpc_units: $(UNITPPUFILES)
  689. ifdef TARGET_RSTS
  690. override RSTFILES=$(addsuffix $(RSTEXT),$(TARGET_RSTS))
  691. override CLEANRSTFILES+=$(RSTFILES)
  692. endif
  693. .PHONY: fpc_packages fpc_all fpc_smart fpc_debug
  694. $(FPCMADE): $(ALLTARGET)
  695. @$(ECHOREDIR) Compiled > $(FPCMADE)
  696. fpc_packages: $(COMPILEPACKAGES)
  697. fpc_all: fpc_packages $(FPCMADE)
  698. fpc_smart:
  699. $(MAKE) all LINKSMART=1 CREATESMART=1
  700. fpc_debug:
  701. $(MAKE) all DEBUG=1
  702. .SUFFIXES: $(EXEEXT) $(PPUEXT) $(OEXT) .pas .pp
  703. %$(PPUEXT): %.pp
  704. $(COMPILER) $<
  705. $(EXECPPAS)
  706. %$(PPUEXT): %.pas
  707. $(COMPILER) $<
  708. $(EXECPPAS)
  709. %$(EXEEXT): %.pp
  710. $(COMPILER) $<
  711. $(EXECPPAS)
  712. %$(EXEEXT): %.pas
  713. $(COMPILER) $<
  714. $(EXECPPAS)
  715. vpath %.pp $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  716. vpath %.pas $(COMPILER_SOURCEDIR) $(COMPILER_INCLUDEDIR)
  717. vpath %$(PPUEXT) $(COMPILER_UNITTARGETDIR)
  718. .PHONY: fpc_install fpc_sourceinstall fpc_exampleinstall
  719. ifdef INSTALL_UNITS
  720. override INSTALLPPUFILES+=$(addsuffix $(PPUEXT),$(INSTALL_UNITS))
  721. endif
  722. ifdef INSTALLPPUFILES
  723. override INSTALLPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(INSTALLPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(INSTALLPPUFILES)))
  724. override INSTALLPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPUFILES))
  725. override INSTALLPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(INSTALLPPULINKFILES)))
  726. override INSTALL_CREATEPACKAGEFPC=1
  727. endif
  728. ifdef INSTALLEXEFILES
  729. override INSTALLEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(INSTALLEXEFILES))
  730. endif
  731. fpc_install: all $(INSTALLTARGET)
  732. ifdef INSTALLEXEFILES
  733. $(MKDIR) $(INSTALL_BINDIR)
  734. ifdef UPXPROG
  735. -$(UPXPROG) $(INSTALLEXEFILES)
  736. endif
  737. $(INSTALLEXE) $(INSTALLEXEFILES) $(INSTALL_BINDIR)
  738. endif
  739. ifdef INSTALL_CREATEPACKAGEFPC
  740. ifdef FPCMAKE
  741. ifdef PACKAGE_VERSION
  742. ifneq ($(wildcard Makefile.fpc),)
  743. $(FPCMAKE) -p -T$(OS_TARGET) Makefile.fpc
  744. $(MKDIR) $(INSTALL_UNITDIR)
  745. $(INSTALL) Package.fpc $(INSTALL_UNITDIR)
  746. endif
  747. endif
  748. endif
  749. endif
  750. ifdef INSTALLPPUFILES
  751. $(MKDIR) $(INSTALL_UNITDIR)
  752. $(INSTALL) $(INSTALLPPUFILES) $(INSTALL_UNITDIR)
  753. ifneq ($(INSTALLPPULINKFILES),)
  754. $(INSTALL) $(INSTALLPPULINKFILES) $(INSTALL_UNITDIR)
  755. endif
  756. ifneq ($(wildcard $(LIB_FULLNAME)),)
  757. $(MKDIR) $(INSTALL_LIBDIR)
  758. $(INSTALL) $(LIB_FULLNAME) $(INSTALL_LIBDIR)
  759. ifdef inUnix
  760. ln -sf $(LIB_FULLNAME) $(INSTALL_LIBDIR)/$(LIB_NAME)
  761. endif
  762. endif
  763. endif
  764. ifdef INSTALL_FILES
  765. $(MKDIR) $(INSTALL_DATADIR)
  766. $(INSTALL) $(INSTALL_FILES) $(INSTALL_DATADIR)
  767. endif
  768. fpc_sourceinstall: distclean
  769. $(MKDIR) $(INSTALL_SOURCEDIR)
  770. $(COPYTREE) $(BASEDIR) $(INSTALL_SOURCEDIR)
  771. fpc_exampleinstall: $(addsuffix _distclean,$(TARGET_EXAMPLEDIRS))
  772. ifdef HASEXAMPLES
  773. $(MKDIR) $(INSTALL_EXAMPLEDIR)
  774. endif
  775. ifdef EXAMPLESOURCEFILES
  776. $(COPY) $(EXAMPLESOURCEFILES) $(INSTALL_EXAMPLEDIR)
  777. endif
  778. ifdef TARGET_EXAMPLEDIRS
  779. $(COPYTREE) $(addsuffix /*,$(TARGET_EXAMPLEDIRS)) $(INSTALL_EXAMPLEDIR)
  780. endif
  781. .PHONY: fpc_clean fpc_cleanall fpc_distclean
  782. ifdef EXEFILES
  783. override CLEANEXEFILES:=$(addprefix $(TARGETDIRPREFIX),$(CLEANEXEFILES))
  784. endif
  785. ifdef CLEAN_UNITS
  786. override CLEANPPUFILES+=$(addsuffix $(PPUEXT),$(CLEAN_UNITS))
  787. endif
  788. ifdef CLEANPPUFILES
  789. override CLEANPPULINKFILES:=$(subst $(PPUEXT),$(OEXT),$(CLEANPPUFILES)) $(addprefix $(STATICLIBPREFIX),$(subst $(PPUEXT),$(STATICLIBEXT),$(CLEANPPUFILES)))
  790. override CLEANPPUFILES:=$(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPUFILES))
  791. override CLEANPPULINKFILES:=$(wildcard $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANPPULINKFILES)))
  792. endif
  793. fpc_clean: $(CLEANTARGET)
  794. ifdef CLEANEXEFILES
  795. -$(DEL) $(CLEANEXEFILES)
  796. endif
  797. ifdef CLEANPPUFILES
  798. -$(DEL) $(CLEANPPUFILES)
  799. endif
  800. ifneq ($(CLEANPPULINKFILES),)
  801. -$(DEL) $(CLEANPPULINKFILES)
  802. endif
  803. ifdef CLEANRSTFILES
  804. -$(DEL) $(addprefix $(UNITTARGETDIRPREFIX),$(CLEANRSTFILES))
  805. endif
  806. ifdef CLEAN_FILES
  807. -$(DEL) $(CLEAN_FILES)
  808. endif
  809. ifdef LIB_NAME
  810. -$(DEL) $(LIB_NAME) $(LIB_FULLNAME)
  811. endif
  812. -$(DEL) $(FPCMADE) Package.fpc $(PPAS) script.res link.res $(FPCEXTFILE) $(REDIRFILE)
  813. fpc_distclean: clean
  814. ifdef COMPILER_UNITTARGETDIR
  815. TARGETDIRCLEAN=fpc_clean
  816. endif
  817. fpc_cleanall: $(CLEANTARGET) $(TARGETDIRCLEAN)
  818. ifdef CLEANEXEFILES
  819. -$(DEL) $(CLEANEXEFILES)
  820. endif
  821. -$(DEL) *$(OEXT) *$(PPUEXT) *$(RSTEXT) *$(ASMEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
  822. -$(DELTREE) *$(SMARTEXT)
  823. -$(DEL) $(FPCMADE) $(PPAS) link.res $(FPCEXTFILE) $(REDIRFILE)
  824. ifdef AOUTEXT
  825. -$(DEL) *$(AOUTEXT)
  826. endif
  827. .PHONY: fpc_info
  828. fpc_info:
  829. @$(ECHO)
  830. @$(ECHO) == Package info ==
  831. @$(ECHO) Package Name..... $(PACKAGE_NAME)
  832. @$(ECHO) Package Version.. $(PACKAGE_VERSION)
  833. @$(ECHO)
  834. @$(ECHO) == Configuration info ==
  835. @$(ECHO)
  836. @$(ECHO) FPC.......... $(FPC)
  837. @$(ECHO) FPC Version.. $(FPC_VERSION)
  838. @$(ECHO) Source CPU... $(CPU_SOURCE)
  839. @$(ECHO) Target CPU... $(CPU_TARGET)
  840. @$(ECHO) Source OS.... $(OS_SOURCE)
  841. @$(ECHO) Target OS.... $(OS_TARGET)
  842. @$(ECHO)
  843. @$(ECHO) == Directory info ==
  844. @$(ECHO)
  845. @$(ECHO) Basedir......... $(BASEDIR)
  846. @$(ECHO) FPCDir.......... $(FPCDIR)
  847. @$(ECHO) UnitsDir........ $(UNITSDIR)
  848. @$(ECHO) PackagesDir..... $(PACKAGESDIR)
  849. @$(ECHO)
  850. @$(ECHO) GCC library..... $(GCCLIBDIR)
  851. @$(ECHO) Other library... $(OTHERLIBDIR)
  852. @$(ECHO)
  853. @$(ECHO) == Tools info ==
  854. @$(ECHO)
  855. @$(ECHO) Pwd....... $(PWD)
  856. @$(ECHO) Mv........ $(MVPROG)
  857. @$(ECHO) Cp........ $(CPPROG)
  858. @$(ECHO) Rm........ $(RMPROG)
  859. @$(ECHO) GInstall.. $(GINSTALL)
  860. @$(ECHO) Echo...... $(ECHO)
  861. @$(ECHO) Date...... $(DATE)
  862. @$(ECHO) FPCMake... $(FPCMAKE)
  863. @$(ECHO) PPUMove... $(PPUMOVE)
  864. @$(ECHO) Upx....... $(UPXPROG)
  865. @$(ECHO) Zip....... $(ZIPPROG)
  866. @$(ECHO)
  867. @$(ECHO) == Object info ==
  868. @$(ECHO)
  869. @$(ECHO) Target Loaders...... $(TARGET_LOADERS)
  870. @$(ECHO) Target Units........ $(TARGET_UNITS)
  871. @$(ECHO) Target Programs..... $(TARGET_PROGRAMS)
  872. @$(ECHO) Target Dirs......... $(TARGET_DIRS)
  873. @$(ECHO) Target Examples..... $(TARGET_EXAMPLES)
  874. @$(ECHO) Target ExampleDirs.. $(TARGET_EXAMPLEDIRS)
  875. @$(ECHO)
  876. @$(ECHO) Clean Units......... $(CLEAN_UNITS)
  877. @$(ECHO) Clean Files......... $(CLEAN_FILES)
  878. @$(ECHO)
  879. @$(ECHO) Install Units....... $(INSTALL_UNITS)
  880. @$(ECHO) Install Files....... $(INSTALL_FILES)
  881. @$(ECHO)
  882. @$(ECHO) == Install info ==
  883. @$(ECHO)
  884. @$(ECHO) DateStr.............. $(DATESTR)
  885. @$(ECHO) ZipPrefix............ $(ZIPPREFIX)
  886. @$(ECHO) ZipSuffix............ $(ZIPSUFFIX)
  887. @$(ECHO) Install FPC Package.. $(INSTALL_FPCPACKAGE)
  888. @$(ECHO)
  889. @$(ECHO) Install base dir..... $(INSTALL_BASEDIR)
  890. @$(ECHO) Install binary dir... $(INSTALL_BINDIR)
  891. @$(ECHO) Install library dir.. $(INSTALL_LIBDIR)
  892. @$(ECHO) Install units dir.... $(INSTALL_UNITDIR)
  893. @$(ECHO) Install source dir... $(INSTALL_SOURCEDIR)
  894. @$(ECHO) Install doc dir...... $(INSTALL_DOCDIR)
  895. @$(ECHO) Install example dir.. $(INSTALL_EXAMPLEDIR)
  896. @$(ECHO) Install data dir..... $(INSTALL_DATADIR)
  897. @$(ECHO)
  898. @$(ECHO) Dist destination dir. $(DIST_DESTDIR)
  899. @$(ECHO) Dist zip name........ $(DIST_ZIPNAME)
  900. @$(ECHO)
  901. all: fpc_all
  902. debug: fpc_debug
  903. smart: fpc_smart
  904. examples:
  905. shared:
  906. install: fpc_install
  907. sourceinstall: fpc_sourceinstall
  908. exampleinstall: fpc_exampleinstall
  909. distinstall:
  910. zipinstall:
  911. zipsourceinstall:
  912. zipexampleinstall:
  913. zipdistinstall:
  914. clean: fpc_clean
  915. distclean: fpc_distclean
  916. cleanall: fpc_cleanall
  917. info: fpc_info
  918. .PHONY: all debug smart examples shared install sourceinstall exampleinstall distinstall zipinstall zipsourceinstall zipexampleinstall zipdistinstall clean distclean cleanall info
  919. ifneq ($(wildcard fpcmake.loc),)
  920. include fpcmake.loc
  921. endif
  922. include $(INC)/makefile.inc
  923. SYSINCDEPS=$(addprefix $(INC)/,$(SYSINCNAMES))
  924. include $(PROCINC)/makefile.cpu
  925. SYSCPUDEPS=$(addprefix $(PROCINC)/,$(CPUINCNAMES))
  926. SYSDEPS=$(SYSINCDEPS) $(SYSCPUDEPS)
  927. %$(OEXT) : %.as
  928. $(AS) -o $*$(OEXT) $*.as
  929. $(SYSTEMUNIT)$(PPUEXT) : $(SYSTEMUNIT).pas $(SYSDEPS)
  930. $(COMPILER) -Us -Sg $(SYSTEMUNIT).pas $(REDIR)
  931. objpas$(PPUEXT): $(OBJPASDIR)/objpas.pp $(INC)/except.inc $(SYSTEMUNIT)$(PPUEXT)
  932. $(COMPILER) -I$(OBJPASDIR) $(OBJPASDIR)/objpas.pp $(REDIR)
  933. strings$(PPUEXT) : $(INC)/strings.pp $(INC)/stringsi.inc \
  934. $(PROCINC)/strings.inc $(PROCINC)/stringss.inc \
  935. $(SYSTEMUNIT)$(PPUEXT)
  936. ports$(PPUEXT) : ports.pas objpas$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  937. doscalls$(PPUEXT) : doscalls.pas strings$(PPUEXT) objects$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  938. kbdcalls$(PPUEXT) : kbdcalls.pas $(SYSTEMUNIT)$(PPUEXT)
  939. moucalls$(PPUEXT) : moucalls.pas $(SYSTEMUNIT)$(PPUEXT)
  940. moncalls$(PPUEXT) : moncalls.pas strings$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  941. os2def$(PPUEXT) : os2def.pas $(SYSTEMUNIT)$(PPUEXT)
  942. pmwin$(PPUEXT) : pmwin.pas os2def$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  943. pmbitmap$(PPUEXT) : pmbitmap.pas $(SYSTEMUNIT)$(PPUEXT)
  944. pmgpi$(PPUEXT) : pmgpi.pas pmbitmap$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  945. dive$(PPUEXT) : dive.pas os2def$(PPUEXT) pmwin$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  946. dynlibs$(PPUEXT) : $(INC)/dynlibs.pp doscalls$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  947. dos$(PPUEXT) : dos.pas $(INC)/filerec.inc $(INC)/textrec.inc strings$(PPUEXT) \
  948. doscalls$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  949. crt$(PPUEXT) : crt.pas $(INC)/textrec.inc $(SYSTEMUNIT)$(PPUEXT)
  950. objects$(PPUEXT) : $(INC)/objects.pp objinc.inc $(SYSTEMUNIT)$(PPUEXT)
  951. printer$(PPUEXT) : printer.pas $(INC)/textrec.inc $(SYSTEMUNIT)$(PPUEXT)
  952. sysutils$(PPUEXT) : sysutils.pp $(wildcard $(OBJPASDIR)/*.inc) \
  953. objpas$(PPUEXT) dos$(PPUEXT) doscalls$(PPUEXT)
  954. $(COMPILER) -I$(OBJPASDIR) sysutils.pp $(REDIR)
  955. typinfo$(PPUEXT): $(OBJPASDIR)/typinfo.pp objpas$(PPUEXT)
  956. $(COMPILER) -Sg $(OBJPASDIR)/typinfo.pp $(REDIR)
  957. math$(PPUEXT): $(OBJPASDIR)/math.pp objpas$(PPUEXT) sysutils$(PPUEXT)
  958. $(COMPILER) $(OBJPASDIR)/math.pp $(REDIR)
  959. varutils$(PPUEXT) : $(OBJPASDIR)/cvarutil.inc $(OBJPASDIR)/varutils.inc \
  960. $(OBJPASDIR)/varutilh.inc varutils.pp
  961. $(COMPILER) -I$(OBJPASDIR) varutils.pp $(REDIR)
  962. ucomplex$(PPUEXT): $(INC)/ucomplex.pp math$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  963. cpu$(PPUEXT) : $(PROCINC)/cpu.pp $(SYSTEMUNIT)$(PPUEXT)
  964. mmx$(PPUEXT) : $(PROCINC)/mmx.pp cpu$(PPUEXT) $(SYSTEMUNIT)$(PPUEXT)
  965. getopts$(PPUEXT) : $(INC)/getopts.pp $(SYSTEMUNIT)$(PPUEXT)
  966. heaptrc$(PPUEXT) : $(INC)/heaptrc.pp $(SYSTEMUNIT)$(PPUEXT)
  967. $(COMPILER) -Sg $(INC)/heaptrc.pp $(REDIR)
  968. lineinfo$(PPUEXT) : $(INC)/lineinfo.pp $(SYSTEMUNIT)$(PPUEXT)