makefile.fpc 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749
  1. #
  2. # $Id$
  3. # Copyright (c) 1998 by the Free Pascal Development Team
  4. #
  5. # Common makefile for Free Pascal
  6. #
  7. # See the file COPYING.FPC, included in this distribution,
  8. # for details about the copyright.
  9. #
  10. # This program is distributed in the hope that it will be useful,
  11. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  13. #
  14. #####################################################################
  15. # Force default settings
  16. #####################################################################
  17. # Latest release version
  18. override RELEASEVER:=0.99.11
  19. #####################################################################
  20. # Autodetect OS (Linux or Dos or Windows NT)
  21. # define inlinux when running under linux
  22. # define inWinNT when running under WinNT
  23. #####################################################################
  24. PWD=$(strip $(wildcard $(addsuffix /pwd.exe,$(subst ;, ,$(PATH)))))
  25. ifeq ($(PWD),)
  26. PWD=$(strip $(wildcard $(addsuffix /pwd,$(subst :, ,$(PATH)))))
  27. ifeq ($(PWD),)
  28. nopwd:
  29. @echo
  30. @echo You need the GNU pwd,cp,mv,rm,install utils to use this makefile!
  31. @echo Get ftp://tflily.fys.kuleuven.ac.be/pub/fpc/dist/gnuutils.zip
  32. @echo
  33. @exit
  34. else
  35. inlinux=1
  36. endif
  37. else
  38. PWD:=$(subst \,/,$(firstword $(PWD)))
  39. endif
  40. # Detect NT - NT sets OS to Windows_NT
  41. ifndef inlinux
  42. ifeq ($(OS),Windows_NT)
  43. inWinNT=1
  44. endif
  45. endif
  46. #####################################################################
  47. # Check for FPCDIR environment
  48. #####################################################################
  49. ifndef FPCDIR
  50. nofpcdir:
  51. @echo
  52. @echo You need to set the FPCDIR environment variable to use
  53. @echo this Makefile.
  54. @echo Example: SET FPCDIR=/pp
  55. @echo
  56. @exit
  57. endif
  58. #####################################################################
  59. # Targets
  60. #####################################################################
  61. # Target OS
  62. ifndef OS_TARGET
  63. ifdef inlinux
  64. OS_TARGET=linux
  65. else
  66. ifdef inWinNT
  67. OS_TARGET=win32
  68. else
  69. OS_TARGET=go32v2
  70. endif
  71. endif
  72. endif
  73. # Source OS
  74. ifndef OS_SOURCE
  75. ifdef inlinux
  76. OS_SOURCE=linux
  77. else
  78. ifndef inWinNT
  79. OS_SOURCE=win32
  80. else
  81. OS_SOURCE=go32v2
  82. endif
  83. endif
  84. endif
  85. # CPU
  86. ifndef CPU
  87. CPU=i386
  88. endif
  89. # Options
  90. ifndef OPT
  91. OPT=
  92. endif
  93. # What compiler to use ?
  94. ifndef PP
  95. PP=ppc386
  96. endif
  97. # assembler, redefine it if cross compiling
  98. ifndef AS
  99. AS=as
  100. endif
  101. # linker, but probably not used
  102. ifndef LD
  103. LD=ld
  104. endif
  105. # Release ? Then force OPT and don't use extra opts via commandline
  106. ifdef RELEASE
  107. override OPT:=-Xs -OG2p2 -n
  108. endif
  109. # Verbose settings (warning,note,info)
  110. ifdef VERBOSE
  111. override OPT+=-vwni
  112. endif
  113. #####################################################################
  114. # Shell commands
  115. #####################################################################
  116. # To copy pograms
  117. ifndef COPY
  118. COPY=cp -fp
  119. endif
  120. # To move pograms
  121. ifndef MOVE
  122. MOVE=mv -f
  123. endif
  124. # Check delete program
  125. ifndef DEL
  126. DEL=rm -f
  127. endif
  128. # Check deltree program
  129. ifndef DELTREE
  130. DELTREE=rm -rf
  131. endif
  132. # To install files
  133. ifndef INSTALL
  134. ifdef inlinux
  135. INSTALL=install -m 644
  136. else
  137. INSTALL=$(COPY)
  138. # ginstall has the strange thing to stubify all .o files !
  139. #INSTALL=ginstall -m 644
  140. endif
  141. endif
  142. # To install programs
  143. ifndef INSTALLEXE
  144. ifdef inlinux
  145. INSTALLEXE=install -m 755
  146. else
  147. INSTALLEXE=$(COPY)
  148. # ginstall has the strange thing to stubify all .o files !
  149. #INSTALLEXE=ginstall -m 755
  150. endif
  151. endif
  152. # To make a directory.
  153. ifndef MKDIR
  154. ifdef inlinux
  155. MKDIR=install -m 755 -d
  156. else
  157. MKDIR=ginstall -m 755 -d
  158. endif
  159. endif
  160. #####################################################################
  161. # Default Tools
  162. #####################################################################
  163. # ppas.bat / ppas.sh
  164. ifdef inlinux
  165. PPAS=ppas.sh
  166. else
  167. PPAS=ppas.bat
  168. endif
  169. # ldconfig to rebuild .so cache
  170. ifdef inlinux
  171. LDCONFIG=ldconfig
  172. else
  173. LDCONFIG=
  174. endif
  175. # Where is the ppumove program ?
  176. ifndef PPUMOVE
  177. PPUMOVE=ppumove
  178. endif
  179. # diff
  180. ifndef DIFF
  181. DIFF=diff
  182. endif
  183. # date
  184. ifndef DATE
  185. # first try go32v2 specific gdate
  186. DATE=$(strip $(wildcard $(addsuffix /gdate.exe,$(subst ;, ,$(PATH)))))
  187. # try generic date.exe
  188. ifeq ($(DATE),)
  189. DATE=$(strip $(wildcard $(addsuffix /date.exe,$(subst ;, ,$(PATH)))))
  190. # finally try for linux
  191. ifeq ($(DATE),)
  192. DATE=$(strip $(wildcard $(addsuffix /date,$(subst :, ,$(PATH)))))
  193. ifeq ($(DATE),)
  194. DATE=
  195. endif
  196. else
  197. DATE:=$(subst \,/,$(firstword $(DATE)))
  198. endif
  199. else
  200. DATE:=$(subst \,/,$(firstword $(DATE)))
  201. endif
  202. endif
  203. # Sed
  204. ifndef SED
  205. SED=$(strip $(wildcard $(addsuffix /sed.exe,$(subst ;, ,$(PATH)))))
  206. ifeq ($(SED),)
  207. SED=$(strip $(wildcard $(addsuffix /sed,$(subst :, ,$(PATH)))))
  208. ifeq ($(SED),)
  209. SED=
  210. endif
  211. else
  212. SED:=$(subst \,/,$(firstword $(SED)))
  213. endif
  214. endif
  215. #####################################################################
  216. # Default Directories
  217. #####################################################################
  218. # Base dir
  219. ifdef PWD
  220. BASEDIR=$(shell $(PWD))
  221. endif
  222. # set the directory to the rtl base
  223. ifndef RTLDIR
  224. ifdef RTL
  225. RTLDIR=$(RTL)/$(OS_TARGET)
  226. else
  227. RTLDIR:=$(FPCDIR)/rtl/$(OS_TARGET)
  228. endif
  229. endif
  230. # specify where units are.
  231. ifndef UNITDIR
  232. ifdef UNITS
  233. UNITDIR=$(UNITS)/$(OS_TARGET)
  234. else
  235. UNITDIR=$(FPCDIR)/units/$(OS_TARGET)
  236. endif
  237. endif
  238. # set the prefix directory where to install everything
  239. ifndef PREFIXINSTALLDIR
  240. ifdef inlinux
  241. PREFIXINSTALLDIR=/usr
  242. else
  243. PREFIXINSTALLDIR=$(FPCDIR)
  244. endif
  245. endif
  246. # set the base directory where to install everything
  247. ifndef BASEINSTALLDIR
  248. ifdef inlinux
  249. BASEINSTALLDIR=$(PREFIXINSTALLDIR)/lib/fpc/$(RELEASEVER)
  250. else
  251. BASEINSTALLDIR=$(PREFIXINSTALLDIR)
  252. endif
  253. endif
  254. #####################################################################
  255. # Install Directories based on BASEINSTALLDIR
  256. #####################################################################
  257. # Linux binary really goes to baseinstalldir
  258. ifndef LIBINSTALLDIR
  259. ifdef inlinux
  260. LIBINSTALLDIR=$(BASEINSTALLDIR)
  261. else
  262. LIBINSTALLDIR=$(BASEINSTALLDIR)/lib
  263. endif
  264. endif
  265. # set the directory where to install the binaries
  266. ifndef BININSTALLDIR
  267. ifdef inlinux
  268. BININSTALLDIR=$(PREFIXINSTALLDIR)/bin
  269. else
  270. BININSTALLDIR=$(BASEINSTALLDIR)/bin/$(OS_TARGET)
  271. endif
  272. endif
  273. # Where the .msg files will be stored
  274. ifndef MSGINSTALLDIR
  275. ifdef inlinux
  276. MSGINSTALLDIR=$(BASEINSTALLDIR)/msg
  277. else
  278. MSGINSTALLDIR=$(BININSTALLDIR)
  279. endif
  280. endif
  281. # Where the doc files will be stored
  282. ifndef DOCINSTALLDIR
  283. ifdef inlinux
  284. DOCINSTALLDIR=$(PREFIXINSTALLDIR)/doc/fpc/$(RELEASEVER)
  285. else
  286. DOCINSTALLDIR=$(BASEINSTALLDIR)/doc
  287. endif
  288. endif
  289. ########################
  290. # Unit Directories
  291. ########################
  292. # this can be set to 'rtl' when the RTL units are installed
  293. ifndef UNITPREFIX
  294. ifndef inlinux
  295. UNITPREFIX=units
  296. else
  297. UNITPREFIX=linuxunits
  298. endif
  299. endif
  300. # set the directory where to install the units.
  301. ifndef UNITINSTALLDIR
  302. ifdef inlinux
  303. UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)
  304. else
  305. UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)/$(OS_TARGET)
  306. endif
  307. endif
  308. # set the directory where to install the units.
  309. ifndef STATIC_UNITINSTALLDIR
  310. STATIC_UNITINSTALLDIR=$(UNITINSTALLDIR)/static
  311. endif
  312. # set the directory where to install the units.
  313. ifndef SHARED_UNITINSTALLDIR
  314. SHARED_UNITINSTALLDIR=$(UNITINSTALLDIR)/shared
  315. endif
  316. # set the directory where to install the libs (must exist)
  317. ifndef STATIC_LIBINSTALLDIR
  318. STATIC_LIBINSTALLDIR=$(STATIC_UNITINSTALLDIR)
  319. endif
  320. # set the directory where to install the libs (must exist)
  321. ifndef SHARED_LIBINSTALLDIR
  322. ifdef inlinux
  323. SHARED_LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
  324. else
  325. SHARED_LIBINSTALLDIR=$(SHARED_UNITINSTALLDIR)
  326. endif
  327. endif
  328. #####################################################################
  329. # Compiler Command Line
  330. #####################################################################
  331. # Load commandline OPTDEF and add CPU define
  332. override PPOPTDEF:=$(OPTDEF) -d$(CPU)
  333. # Load commandline OPT and add target and unit dir to be sure
  334. override PPOPT:=$(OPT) -T$(OS_TARGET) $(NEEDOPT)
  335. # RTL first and then Unit dir (a unit can override RTLunit)
  336. ifdef RTLDIR
  337. override PPOPT+=$(addprefix -Fu,$(RTLDIR))
  338. endif
  339. ifdef UNITDIR
  340. override PPOPT+=$(addprefix -Fu,$(UNITDIR))
  341. endif
  342. ifdef NEEDUNITDIR
  343. override PPOPT+=$(addprefix -Fu,$(NEEDUNITDIR))
  344. endif
  345. # Add include dirs INC and PROCINC and OSINC
  346. ifdef INC
  347. override PPOPT+=-I$(INC)
  348. endif
  349. ifdef PROCINC
  350. override PPOPT+=-I$(PROCINC)
  351. endif
  352. ifdef OSINC
  353. override PPOPT+=-I$(OSINC)
  354. endif
  355. # Target dirs
  356. ifdef TARGETDIR
  357. override PPOPT+=-FE$(TARGETDIR)
  358. endif
  359. ifdef UNITTARGETDIR
  360. override PPOPT+=-FU$(UNITTARGETDIR)
  361. endif
  362. # Smartlinking
  363. ifeq ($(SMARTLINK),YES)
  364. ifeq ($(LIBTYPE),shared)
  365. override SMARTLINK=NO
  366. else
  367. override PPOPT+=-Cx
  368. endif
  369. endif
  370. # Add library type, for static libraries smartlinking is automatic used
  371. ifeq ($(LIBTYPE),shared)
  372. override PPOPT+=-CD
  373. else
  374. ifeq ($(LIBTYPE),static)
  375. override PPOPT+=-CS
  376. endif
  377. endif
  378. # Add library name
  379. ifneq ($(LIBNAME),)
  380. override PPOPT:=$(PPOPT) -o$(LIBNAME)
  381. endif
  382. # Add defines from PPOPTDEF to PPOPT
  383. override PPOPT:=$(PPOPT) $(PPOPTDEF)
  384. # Was a config file specified ?
  385. ifdef CFGFILE
  386. override PPOPT:=$(PPOPT) @$(CFGFILE)
  387. endif
  388. override COMPILER=$(PP) $(PPOPT)
  389. #####################################################################
  390. # Default extensions
  391. #####################################################################
  392. # Default needed extensions (Go32v2,Linux)
  393. PPLEXT=.ppl
  394. PPUEXT=.ppu
  395. OEXT=.o
  396. ASMEXT=.s
  397. SMARTEXT=.sl
  398. STATICLIBEXT=.a
  399. SHAREDLIBEXT=.so
  400. # Executable extension
  401. ifdef inlinux
  402. EXEEXT=
  403. else
  404. EXEEXT=.exe
  405. endif
  406. # Go32v1
  407. ifeq ($(OS_TARGET),go32v1)
  408. PPUEXT=.pp1
  409. OEXT=.o1
  410. ASMEXT=.s1
  411. SMARTEXT=.sl1
  412. STATICLIBEXT=.a1
  413. SHAREDLIBEXT=.so1
  414. endif
  415. # Win32
  416. ifeq ($(OS_TARGET),win32)
  417. PPUEXT=.ppw
  418. OEXT=.ow
  419. ASMEXT=.sw
  420. SMARTEXT=.slw
  421. STATICLIBEXT=.aw
  422. SHAREDLIBEXT=.dll
  423. endif
  424. # OS/2
  425. ifeq ($(OS_TARGET),os2)
  426. PPUEXT=.ppo
  427. ASMEXT=.so2
  428. OEXT=.o2
  429. SMARTEXT=.so
  430. STATICLIBEXT=.ao
  431. SHAREDLIBEXT=.dll
  432. endif
  433. # determine libary extension.
  434. ifeq ($(LIBTYPE),static)
  435. LIBEXT=$(STATICLIBEXT)
  436. else
  437. LIBEXT=$(SHAREDLIBEXT)
  438. endif
  439. # library prefix
  440. LIBPREFIX=lib
  441. ifeq ($(OS_TARGET),go32v2)
  442. LIBPREFIX=
  443. endif
  444. ifeq ($(OS_TARGET),go32v1)
  445. LIBPREFIX=
  446. endif
  447. # determine with .pas extension is used
  448. ifdef EXEOBJECTS
  449. override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(EXEOBJECTS)))))
  450. else
  451. override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(UNITOBJECTS)))))
  452. endif
  453. ifeq ($(TESTPAS),)
  454. PASEXT=.pp
  455. else
  456. PASEXT=.pas
  457. endif
  458. #####################################################################
  459. # Export commandline values, so nesting use the same values
  460. #####################################################################
  461. export FPCDIR FPCMAKE
  462. export RELEASEVER OS_SOURCE OS_TARGET OPT OPTDEF CPU PP RELEASE VERBOSE
  463. export SMARTLINK LIBTYPE LIBNAME
  464. export BASEINSTALLDIR
  465. #####################################################################
  466. # General compile rules
  467. #####################################################################
  468. ifndef NODEFAULTRULES
  469. # Create Filenames
  470. EXEFILES=$(addsuffix $(EXEEXT),$(EXEOBJECTS))
  471. EXEOFILES=$(addsuffix $(OEXT),$(EXEOBJECTS))
  472. UNITFILES=$(addsuffix $(PPUEXT),$(UNITOBJECTS))
  473. UNITOFILES=$(addsuffix $(OEXT),$(UNITOBJECTS))
  474. .PHONY : all clean install \
  475. info cfginfo objectinfo installinfo filesinfo
  476. .SUFFIXES : $(EXEEXT) $(PPUEXT) $(PASEXT)
  477. #####################################################################
  478. # Default
  479. #####################################################################
  480. ifdef DEFAULTUNITS
  481. all: units
  482. else
  483. all: units exes
  484. endif
  485. units: $(UNITFILES)
  486. exes: $(EXEFILES)
  487. # General compile rules
  488. %$(PPUEXT): %$(PASEXT)
  489. $(COMPILER) $<
  490. %$(EXEEXT): %$(PASEXT)
  491. $(COMPILER) $<
  492. #####################################################################
  493. # Library
  494. #####################################################################
  495. staticlib:
  496. $(MAKE) libsclean
  497. $(MAKE) all SMARTLINK=YES LIBTYPE=static
  498. sharedlib:
  499. ifdef inlinux
  500. $(MAKE) libsclean
  501. $(MAKE) all LIBTYPE=shared
  502. else
  503. @echo Shared Libraries not supported
  504. endif
  505. libsclean : clean
  506. -$(DEL) *$(STATICLIBEXT) *$(SHAREDLIBEXT) *$(PPLEXT)
  507. #####################################################################
  508. # Install rules
  509. #####################################################################
  510. install : all
  511. ifndef DEFAULTUNITS
  512. ifdef EXEOBJECTS
  513. $(MKDIR) $(BININSTALLDIR)
  514. $(INSTALLEXE) $(EXEFILES) $(BININSTALLDIR)
  515. endif
  516. endif
  517. ifdef UNITOBJECTS
  518. $(MKDIR) $(UNITINSTALLDIR)
  519. $(INSTALL) $(UNITFILES) $(UNITINSTALLDIR)
  520. ifeq ($(SMARTLINK),YES)
  521. $(INSTALL) $(LIBPREFIX)$(LIBNAME)$(LIBEXT) $(UNITINSTALLDIR)
  522. else
  523. -$(INSTALL) $(UNITOFILES) $(UNITINSTALLDIR)
  524. endif
  525. endif
  526. staticlibinstall: staticlib
  527. $(MKDIR) $(STATIC_UNITINSTALLDIR)
  528. $(INSTALL) $(UNITFILES) $(STATIC_UNITINSTALLDIR)
  529. $(MKDIR) $(STATIC_LIBINSTALLDIR)
  530. $(INSTALLEXE) *$(STATICLIBEXT) $(STATIC_LIBINSTALLDIR)
  531. sharedlibinstall: sharedlib
  532. $(MKDIR) $(SHARED_UNITINSTALLDIR)
  533. $(INSTALL) $(UNITFILES) $(SHARED_UNITINSTALLDIR)
  534. $(MKDIR) $(SHARED_LIBINSTALLDIR)
  535. $(INSTALLEXE) *$(SHAREDLIBEXT) $(SHARED_LIBINSTALLDIR)
  536. libinstall: staticlibinstall sharedlibinstall
  537. #####################################################################
  538. # Clean rules
  539. #####################################################################
  540. clean:
  541. -$(DEL) $(UNITOFILES) $(UNITFILES) $(PPAS) link.res log
  542. ifeq ($(SMARTLINK),YES)
  543. -$(DELTREE) *$(SMARTEXT)
  544. endif
  545. ifdef EXEOBJECTS
  546. -$(DEL) $(EXEFILES) $(EXEOFILES)
  547. endif
  548. ifdef EXTRACLEAN
  549. -$(DEL) $(EXTRACLEAN)
  550. endif
  551. #####################################################################
  552. # Depend rules
  553. #####################################################################
  554. depend:
  555. makedep $(UNITOBJECTS)
  556. #####################################################################
  557. # Info rules
  558. #####################################################################
  559. info: cfginfo objectinfo installinfo
  560. cfginfo:
  561. @echo
  562. @echo == Configuration info ==
  563. @echo
  564. @echo FPCDir.... $(FPCDIR)
  565. @echo FPCMake... $(FPCMAKE)
  566. @echo
  567. @echo Target.... $(OS_TARGET)
  568. @echo Source.... $(OS_SOURCE)
  569. @echo Target.... $(OS_TARGET)
  570. @echo Basedir... $(BASEDIR)
  571. @echo Pwd....... $(PWD)
  572. ifdef SED
  573. @echo Sed....... $(SED)
  574. endif
  575. @echo
  576. objectinfo:
  577. @echo
  578. @echo == Object info ==
  579. @echo
  580. @echo UnitObjects... $(UNITOBJECTS)
  581. @echo ExeObjects.... $(EXEOBJECTS)
  582. @echo
  583. installinfo:
  584. @echo
  585. @echo == Install info ==
  586. @echo
  587. @echo BaseInstallDir....... $(BASEINSTALLDIR)
  588. @echo BinInstallDir........ $(BININSTALLDIR)
  589. @echo UnitInstallDir....... $(UNITINSTALLDIR)
  590. @echo StaticUnitInstallDir. $(STATIC_UNITINSTALLDIR)
  591. @echo SharedUnitInstallDir. $(SHARED_UNITINSTALLDIR)
  592. @echo LibInstallDir........ $(LIBINSTALLDIR)
  593. @echo StaticLibInstallDir.. $(STATIC_LIBINSTALLDIR)
  594. @echo SharedLibInstallDir.. $(SHARED_LIBINSTALLDIR)
  595. @echo MsgInstallDir........ $(MSGINSTALLDIR)
  596. @echo DocInstallDir........ $(DOCINSTALLDIR)
  597. @echo
  598. # try to get the files in the currentdir
  599. PASFILES:=$(wildcard *.pas)
  600. PPFILES:=$(wildcard *.pp)
  601. INCFILES:=$(wildcard *.inc)
  602. MSGFILES:=$(wildcard *.msg)
  603. ASFILES:=$(wildcard *.as)
  604. filesinfo:
  605. @echo
  606. @echo == Files info ==
  607. @echo
  608. ifdef PASFILES
  609. @echo Pas files are $(PASFILES)
  610. endif
  611. ifdef PPFILES
  612. @echo PP files are $(PPFILES)
  613. endif
  614. ifdef INCFILES
  615. @echo Inc files are $(INCFILES)
  616. endif
  617. ifdef MSGFILES
  618. @echo Msg files are $(MSGFILES)
  619. endif
  620. ifdef ASFILES
  621. @echo As files are $(ASFILES)
  622. endif
  623. endif #NODEFAULTRULES