2
0

Makefile 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156
  1. #
  2. # $Id$
  3. # Copyright (c) 1999 by the Free Pascal Development Team
  4. #
  5. # Makefile for Free Component Library for Linux
  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. # Defaults
  16. #####################################################################
  17. # Default place of the makefile.fpc
  18. DEFAULTFPCDIR=../..
  19. # set target and cpu which are required
  20. override OS_TARGET=linux
  21. override CPU=i386
  22. # Include files
  23. INC=../inc
  24. XML=../xml
  25. PROCINC=../$(CPU)
  26. # Where to place the files
  27. TARGETDIR=.
  28. # We need always -S2
  29. NEEDOPT=-S2
  30. # As default make only the units
  31. DEFAULTUNITS=1
  32. #####################################################################
  33. # Real targets
  34. #####################################################################
  35. # INCUNITS is defined in makefile.inc
  36. # They are default units for all platforms.
  37. include $(INC)/Makefile.inc
  38. include $(XML)/Makefile.inc
  39. UNITOBJECTS=classes $(INCUNITS) $(XMLUNITS)
  40. EXEOBJECTS=
  41. #####################################################################
  42. # Common targets
  43. #####################################################################
  44. .PHONY: all clean install info \
  45. staticlib sharedlib libsclean \
  46. staticinstall sharedinstall libinstall \
  47. all: testfpcmake fpc_all
  48. clean: testfpcmake fpc_clean
  49. install: testfpcmake fpc_install
  50. info: testfpcmake fpc_info
  51. staticlib: testfpcmake fpc_staticlib
  52. sharedlib: testfpcmake fpc_sharedlib
  53. libsclean: testfpcmake fpc_libsclean
  54. staticinstall: testfpcmake fpc_staticinstall
  55. sharedinstall: testfpcmake fpc_sharedinstall
  56. libinstall: testfpcmake fpc_libinstall
  57. #####################################################################
  58. # Include default makefile
  59. #####################################################################
  60. # test if FPCMAKE is still valid
  61. ifdef FPCMAKE
  62. ifeq ($(strip $(wildcard $(FPCMAKE))),)
  63. FPCDIR=
  64. FPCMAKE=
  65. endif
  66. endif
  67. ifndef FPCDIR
  68. ifdef DEFAULTFPCDIR
  69. FPCDIR=$(DEFAULTFPCDIR)
  70. endif
  71. endif
  72. ifndef FPCMAKE
  73. ifdef FPCDIR
  74. FPCMAKE=$(FPCDIR)/makefile.fpc
  75. else
  76. FPCMAKE=makefile.fpc
  77. endif
  78. endif
  79. override FPCMAKE:=$(strip $(wildcard $(FPCMAKE)))
  80. ifeq ($(FPCMAKE),)
  81. testfpcmake:
  82. @echo makefile.fpc not found!
  83. @echo Check the FPCMAKE and FPCDIR environment variables.
  84. @exit
  85. else
  86. include $(FPCMAKE)
  87. testfpcmake:
  88. endif
  89. #####################################################################
  90. # Dependencies
  91. #####################################################################
  92. vpath %$(PASEXT) $(INC) $(XML)
  93. INCFILES=$(addprefix $(INC)/,$(INCNAMES))
  94. classes$(PPUEXT): $(INCFILES) classes$(PASEXT)
  95. inifiles$(PPUEXT): classes$(PPUEXT) inifiles$(PASEXT)
  96. ezcgi$(PPUEXT): ezcgi$(PASEXT) ezcgi.inc
  97. #
  98. # $Log$
  99. # Revision 1.12 1999-07-09 08:43:26 michael
  100. # + Added XML units
  101. #
  102. # Revision 1.11 1999/05/31 12:46:31 peter
  103. # * classes unit to unitobjects
  104. #
  105. # Revision 1.10 1999/04/27 19:13:44 michael
  106. # + Added ezcgi from Michael Hess
  107. #
  108. # Revision 1.9 1999/04/22 10:50:45 peter
  109. # * set target always
  110. #
  111. # Revision 1.8 1999/04/08 15:58:44 michael
  112. # + INCUNITS added
  113. #
  114. # Revision 1.7 1999/04/08 10:18:59 peter
  115. # * makefile updates
  116. #
  117. #