makefile.fpc 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745
  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. UNITPREFIX=units
  295. endif
  296. # set the directory where to install the units.
  297. ifndef UNITINSTALLDIR
  298. ifdef inlinux
  299. UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)
  300. else
  301. UNITINSTALLDIR=$(BASEINSTALLDIR)/$(UNITPREFIX)/$(OS_TARGET)
  302. endif
  303. endif
  304. # set the directory where to install the units.
  305. ifndef STATIC_UNITINSTALLDIR
  306. STATIC_UNITINSTALLDIR=$(UNITINSTALLDIR)/static
  307. endif
  308. # set the directory where to install the units.
  309. ifndef SHARED_UNITINSTALLDIR
  310. SHARED_UNITINSTALLDIR=$(UNITINSTALLDIR)/shared
  311. endif
  312. # set the directory where to install the libs (must exist)
  313. ifndef STATIC_LIBINSTALLDIR
  314. STATIC_LIBINSTALLDIR=$(STATIC_UNITINSTALLDIR)
  315. endif
  316. # set the directory where to install the libs (must exist)
  317. ifndef SHARED_LIBINSTALLDIR
  318. ifdef inlinux
  319. SHARED_LIBINSTALLDIR=$(PREFIXINSTALLDIR)/lib
  320. else
  321. SHARED_LIBINSTALLDIR=$(SHARED_UNITINSTALLDIR)
  322. endif
  323. endif
  324. #####################################################################
  325. # Compiler Command Line
  326. #####################################################################
  327. # Load commandline OPTDEF and add CPU define
  328. override PPOPTDEF:=$(OPTDEF) -d$(CPU)
  329. # Load commandline OPT and add target and unit dir to be sure
  330. override PPOPT:=$(OPT) -T$(OS_TARGET) $(NEEDOPT)
  331. # RTL first and then Unit dir (a unit can override RTLunit)
  332. ifdef RTLDIR
  333. override PPOPT+=$(addprefix -Fu,$(RTLDIR))
  334. endif
  335. ifdef UNITDIR
  336. override PPOPT+=$(addprefix -Fu,$(UNITDIR))
  337. endif
  338. ifdef NEEDUNITDIR
  339. override PPOPT+=$(addprefix -Fu,$(NEEDUNITDIR))
  340. endif
  341. # Add include dirs INC and PROCINC and OSINC
  342. ifdef INC
  343. override PPOPT+=-I$(INC)
  344. endif
  345. ifdef PROCINC
  346. override PPOPT+=-I$(PROCINC)
  347. endif
  348. ifdef OSINC
  349. override PPOPT+=-I$(OSINC)
  350. endif
  351. # Target dirs
  352. ifdef TARGETDIR
  353. override PPOPT+=-FE$(TARGETDIR)
  354. endif
  355. ifdef UNITTARGETDIR
  356. override PPOPT+=-FU$(UNITTARGETDIR)
  357. endif
  358. # Smartlinking
  359. ifeq ($(SMARTLINK),YES)
  360. ifeq ($(LIBTYPE),shared)
  361. override SMARTLINK=NO
  362. else
  363. override PPOPT+=-Cx
  364. ifneq ($(LIBNAME),)
  365. override PPOPT+=-o$(LIBNAME)
  366. endif
  367. endif
  368. endif
  369. # Add library type, for static libraries smartlinking is automatic used
  370. ifeq ($(LIBTYPE),shared)
  371. override PPOPT+=-CD
  372. ifneq ($(LIBNAME),)
  373. override PPOPT+=-o$(LIBNAME)
  374. endif
  375. else
  376. ifeq ($(LIBTYPE),static)
  377. override PPOPT+=-CS
  378. ifneq ($(LIBNAME),)
  379. override PPOPT+=-o$(LIBNAME)
  380. endif
  381. endif
  382. endif
  383. # Add defines from PPOPTDEF to PPOPT
  384. override PPOPT:=$(PPOPT) $(PPOPTDEF)
  385. # Was a config file specified ?
  386. ifdef CFGFILE
  387. override PPOPT:=$(PPOPT) @$(CFGFILE)
  388. endif
  389. override COMPILER=$(PP) $(PPOPT)
  390. #####################################################################
  391. # Default extensions
  392. #####################################################################
  393. # Default needed extensions (Go32v2,Linux)
  394. PPLEXT=.ppl
  395. PPUEXT=.ppu
  396. OEXT=.o
  397. ASMEXT=.s
  398. SMARTEXT=.sl
  399. STATICLIBEXT=.a
  400. SHAREDLIBEXT=.so
  401. # Executable extension
  402. ifdef inlinux
  403. EXEEXT=
  404. else
  405. EXEEXT=.exe
  406. endif
  407. # Go32v1
  408. ifeq ($(OS_TARGET),go32v1)
  409. PPUEXT=.pp1
  410. OEXT=.o1
  411. ASMEXT=.s1
  412. SMARTEXT=.sl1
  413. STATICLIBEXT=.a1
  414. SHAREDLIBEXT=.so1
  415. endif
  416. # Win32
  417. ifeq ($(OS_TARGET),win32)
  418. PPUEXT=.ppw
  419. OEXT=.ow
  420. ASMEXT=.sw
  421. SMARTEXT=.slw
  422. STATICLIBEXT=.aw
  423. SHAREDLIBEXT=.dll
  424. endif
  425. # OS/2
  426. ifeq ($(OS_TARGET),os2)
  427. PPUEXT=.ppo
  428. ASMEXT=.so2
  429. OEXT=.o2
  430. SMARTEXT=.so
  431. STATICLIBEXT=.ao
  432. SHAREDLIBEXT=.dll
  433. endif
  434. # determine libary extension.
  435. ifeq ($(LIBTYPE),static)
  436. LIBEXT=$(STATICLIBEXT)
  437. else
  438. LIBEXT=$(SHAREDLIBEXT)
  439. endif
  440. # library prefix
  441. LIBPREFIX=lib
  442. ifeq ($(OS_TARGET),go32v2)
  443. LIBPREFIX=
  444. endif
  445. ifeq ($(OS_TARGET),go32v1)
  446. LIBPREFIX=
  447. endif
  448. # determine with .pas extension is used
  449. ifdef EXEOBJECTS
  450. override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(EXEOBJECTS)))))
  451. else
  452. override TESTPAS:=$(strip $(wildcard $(addsuffix .pas,$(firstword $(UNITOBJECTS)))))
  453. endif
  454. ifeq ($(TESTPAS),)
  455. PASEXT=.pp
  456. else
  457. PASEXT=.pas
  458. endif
  459. #####################################################################
  460. # Export commandline values, so nesting use the same values
  461. #####################################################################
  462. export FPCDIR FPCMAKE
  463. export RELEASEVER OS_SOURCE OS_TARGET OPT OPTDEF CPU PP RELEASE VERBOSE
  464. export SMARTLINK LIBTYPE LIBNAME
  465. export BASEINSTALLDIR
  466. #####################################################################
  467. # General compile rules
  468. #####################################################################
  469. ifndef NODEFAULTRULES
  470. # Create Filenames
  471. EXEFILES=$(addsuffix $(EXEEXT),$(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) *$(OEXT) $(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) *$(OEXT) *$(ASMEXT) *$(PPUEXT) *$(STATICLIBEXT) *$(SHAREDLIBEXT) $(PPAS) link.res log
  542. -$(DELTREE) *$(SMARTEXT)
  543. ifdef EXEOBJECTS
  544. -$(DEL) $(EXEFILES)
  545. endif
  546. #####################################################################
  547. # Depend rules
  548. #####################################################################
  549. depend:
  550. makedep $(UNITOBJECTS)
  551. #####################################################################
  552. # Info rules
  553. #####################################################################
  554. info: cfginfo objectinfo installinfo
  555. cfginfo:
  556. @echo
  557. @echo == Configuration info ==
  558. @echo
  559. @echo FPCDir.... $(FPCDIR)
  560. @echo FPCMake... $(FPCMAKE)
  561. @echo
  562. @echo Target.... $(OS_TARGET)
  563. @echo Source.... $(OS_SOURCE)
  564. @echo Target.... $(OS_TARGET)
  565. @echo Basedir... $(BASEDIR)
  566. @echo Pwd....... $(PWD)
  567. ifdef SED
  568. @echo Sed....... $(SED)
  569. endif
  570. @echo
  571. objectinfo:
  572. @echo
  573. @echo == Object info ==
  574. @echo
  575. @echo UnitObjects... $(UNITOBJECTS)
  576. @echo ExeObjects.... $(EXEOBJECTS)
  577. @echo
  578. installinfo:
  579. @echo
  580. @echo == Install info ==
  581. @echo
  582. @echo BaseInstallDir....... $(BASEINSTALLDIR)
  583. @echo BinInstallDir........ $(BININSTALLDIR)
  584. @echo UnitInstallDir....... $(UNITINSTALLDIR)
  585. @echo StaticUnitInstallDir. $(STATIC_UNITINSTALLDIR)
  586. @echo SharedUnitInstallDir. $(SHARED_UNITINSTALLDIR)
  587. @echo LibInstallDir........ $(LIBINSTALLDIR)
  588. @echo StaticLibInstallDir.. $(STATIC_LIBINSTALLDIR)
  589. @echo SharedLibInstallDir.. $(SHARED_LIBINSTALLDIR)
  590. @echo MsgInstallDir........ $(MSGINSTALLDIR)
  591. @echo DocInstallDir........ $(DOCINSTALLDIR)
  592. @echo
  593. # try to get the files in the currentdir
  594. PASFILES:=$(wildcard *.pas)
  595. PPFILES:=$(wildcard *.pp)
  596. INCFILES:=$(wildcard *.inc)
  597. MSGFILES:=$(wildcard *.msg)
  598. ASFILES:=$(wildcard *.as)
  599. filesinfo:
  600. @echo
  601. @echo == Files info ==
  602. @echo
  603. ifdef PASFILES
  604. @echo Pas files are $(PASFILES)
  605. endif
  606. ifdef PPFILES
  607. @echo PP files are $(PPFILES)
  608. endif
  609. ifdef INCFILES
  610. @echo Inc files are $(INCFILES)
  611. endif
  612. ifdef MSGFILES
  613. @echo Msg files are $(MSGFILES)
  614. endif
  615. ifdef ASFILES
  616. @echo As files are $(ASFILES)
  617. endif
  618. endif #NODEFAULTRULES