rules1.top
上传用户:xiejiait
上传日期:2007-01-06
资源大小:881k
文件大小:7k
源码类别:

SCSI/ASPI

开发平台:

MultiPlatform

  1. #ident "@(#)rules1.top 1.21 99/12/20 "
  2. ###########################################################################
  3. # Written 1996 by J. Schilling
  4. ###########################################################################
  5. #
  6. # Rules that should be included at top of every Makefile
  7. # Do not include this file directly; this is the language independent
  8. # version that may be included in special purpose versions.
  9. #
  10. ###########################################################################
  11. # This program is free software; you can redistribute it and/or modify
  12. # it under the terms of the GNU General Public License as published by
  13. # the Free Software Foundation; either version 2, or (at your option)
  14. # any later version.
  15. #
  16. # This program is distributed in the hope that it will be useful,
  17. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  18. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  19. # GNU General Public License for more details.
  20. #
  21. # You should have received a copy of the GNU General Public License
  22. # along with this program; see the file COPYING.  If not, write to
  23. # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  24. ###########################################################################
  25. #
  26. # Global definitions:
  27. #
  28. # Define magic unique cookie
  29. #
  30. ###########################################################################
  31. _UNIQ= .XxZzy-
  32. ###########################################################################
  33. #
  34. # Global handler for failed inludes
  35. #
  36. ###########################################################################
  37. .INCLUDE_FAILED:
  38. @echo " ==> AUTOMAKING "$^""; sh $(SRCROOT)/conf/makeinc $^
  39. ###########################################################################
  40. #
  41. # Legacy support for old smake programs ...
  42. #
  43. ###########################################################################
  44. .INCLUDEFAILED:
  45. @echo " ==> AUTOMAKING "$^""; sh $(SRCROOT)/conf/makeinc $^
  46. ###########################################################################
  47. #
  48. # Some global constants or pre-definitions
  49. #
  50. ###########################################################################
  51. LCONFIG=ldummy.cnf
  52. ###########################################################################
  53. ###########################################################################
  54. #
  55. # Standard (automatic) makeprog identification
  56. #
  57. # Each make program should define a macro: MAKE_NAME for identification.
  58. # MAKE_NAME in this case is a built in macro like MAKE or MAKEFLAGS.
  59. # Currently only 'smake' implements this feature.
  60. #
  61. ###########################################################################
  62. _MAKEPROG= $(_UNIQ)$(MAKE_NAME)
  63. __MAKEPROG= $(_MAKEPROG:$(_UNIQ)=$(MAKEPROG))
  64. _XMAKEPROG= $(__MAKEPROG:$(_UNIQ)%=%)
  65. # gmake defines a macro MAKE_COMMAND. If neither MAKE_NAME is defined by 
  66. # the make program, not MAKEPROG is set, try this to recognize gmake.
  67. #
  68. _MAKE_COMMAND= $(MAKE_COMMAND:%make=gmake)
  69. __XMAKEPROG= $(_UNIQ)$(_XMAKEPROG)
  70. ___XMAKEPROG= $(__XMAKEPROG:$(_UNIQ)=$(_MAKE_COMMAND))
  71. XMAKEPROG= $(___XMAKEPROG:$(_UNIQ)%=%)
  72. include $(SRCROOT)/$(RULESDIR)/mk-$(XMAKEPROG).id
  73. ###########################################################################
  74. #
  75. # Standard (automatic) os identification
  76. #
  77. ###########################################################################
  78. include $(SRCROOT)/$(RULESDIR)/os-$(OSNAME).id
  79. ###########################################################################
  80. #
  81. # Global os definitions
  82. #
  83. ###########################################################################
  84. include $(SRCROOT)/$(RULESDIR)/os-$(O_ARCH).def
  85. ###########################################################################
  86. #
  87. # Some global project definitions that may be overwritten in 'Defaults'
  88. #
  89. ###########################################################################
  90. CWARNOPTS= $(CWOPTS)
  91. ###########################################################################
  92. #
  93. # Global project definitions
  94. #
  95. ###########################################################################
  96. DEF_ROOT= $(SRCROOT)
  97. DEF_DIR= DEFAULTS
  98. _DEFAULTSROOT= $(_UNIQ)$(DEFAULTSROOT)
  99. __DEFAULTSROOT= $(_DEFAULTSROOT:$(_UNIQ)=$(DEF_ROOT))
  100. DEFLTSROOT= $(__DEFAULTSROOT:$(_UNIQ)%=%)
  101. _DEFAULTSDIR= $(_UNIQ)$(DEFAULTSDIR)
  102. __DEFAULTSDIR= $(_DEFAULTSDIR:$(_UNIQ)=$(DEF_DIR))
  103. DEFLTSDIR= $(__DEFAULTSDIR:$(_UNIQ)%=%)
  104. include $(DEFLTSROOT)/$(DEFLTSDIR)/Defaults
  105. ###########################################################################
  106. #
  107. # Get curent directory name
  108. #
  109. ###########################################################################
  110. _DIRNAME= $(_UNIQ)$(DIRNAME)
  111. __DIRNAME= $(_DIRNAME:$(_UNIQ)=...)
  112. CURDIR= $(__DIRNAME:$(_UNIQ)%=%)
  113. ###########################################################################
  114. #
  115. # Standard UNIX compiler name for use as architecture name.
  116. #
  117. # (this is not necessarily the name the compiler is called by)
  118. # This is now defined in $(DEFAULTSROOT)/Defaults
  119. # If not ... use 'cc'
  120. #
  121. ###########################################################################
  122. DEFCCOM_DEF= cc
  123. _DEFCCOM= $(_UNIQ)$(DEFCCOM)
  124. __DEFCCOM= $(_DEFCCOM:$(_UNIQ)=$(DEFCCOM_DEF))
  125. CCOM_DEF= $(__DEFCCOM:$(_UNIQ)%=%)
  126. _CCOM= $(_UNIQ)$(CCOM)
  127. __CCOM= $(_CCOM:$(_UNIQ)=$(CCOM_DEF))
  128. C_ARCH= $(__CCOM:$(_UNIQ)%=%)
  129. ###########################################################################
  130. #
  131. # Standard default include directories
  132. #
  133. ###########################################################################
  134. DEFINCDIRS_DEF= $(SRCROOT)/include
  135. _INCDIRS= $(_UNIQ)$(DEFINCDIRS)
  136. __INCDIRS= $(_INCDIRS:$(_UNIQ)=$(DEFINCDIRS_DEF))
  137. INCDIRS= $(__INCDIRS:$(_UNIQ)%=%)
  138. ###########################################################################
  139. #
  140. # Build $(ARCHDIR) which occupies a central role in the whole
  141. # make file system. ARCHDIR is used as a sub directory name to keep
  142. # platform dependent files on different places.
  143. #
  144. # It is built from:
  145. # - processor type
  146. # - operating system
  147. # - compiler identification
  148. #
  149. # A possible name could be:
  150. # mc68020-sunos4-cc
  151. #
  152. ###########################################################################
  153. KARCH_DEF= $(K_ARCH)
  154. MARCH_DEF= $(M_ARCH)
  155. PARCH_DEF= $(P_ARCH)
  156. KARCH= K_ARCH
  157. _MARCH= $(_UNIQ)$(ARCH)
  158. __MARCH= $(_MARCH:$(_UNIQ)=$(MARCH_DEF))
  159. MARCH= $(__MARCH:$(_UNIQ)%=%)
  160. _PARCH= $(_UNIQ)$(ARCH)
  161. __PARCH= $(_PARCH:$(_UNIQ)=$(PARCH_DEF))
  162. PARCH= $(__PARCH:$(_UNIQ)%=%)
  163. #OARCH= $(MARCH)$(-O_ARCH)-$(C_ARCH)
  164. OARCH= $(PARCH)$(-O_ARCH)-$(C_ARCH)
  165. XARCH= $(K_ARCH)$(-O_ARCH)-$(C_ARCH)
  166. .print:
  167. echo $(XP_ARCH) $(P_ARCH)
  168. ###########################################################################
  169. #
  170. # All generated files are placed directly into this subdirectory.
  171. # This includes e.g. yacc output (.c & .h files).
  172. # SUBARCH is used if a object is conditional compiled in multiple ways.
  173. #
  174. ###########################################################################
  175. OARCHDIR= OBJ/$(OARCH)
  176. ARCHDIR= OBJ/$(OARCH)$(SUBARCHDIR)$(SUBARCH)
  177. ###########################################################################
  178. OLIBSDIR= $(SRCROOT)/libs/$(OARCH)
  179. OINCSDIR= $(SRCROOT)/incs/$(OARCH)
  180. ###########################################################################
  181. # Location for targets:
  182. #
  183. # - all : see appropriate rules
  184. # - clean, clobber, distclean, relink, rmtarget : rules.clr
  185. # - install, ibins : rules.ins
  186. # - depend, rmdep : rules.dep
  187. # - config : rules.cnf
  188. # - tags, TAGS : rules.tag
  189. # - .help : rules.hlp
  190. # - tinfo : rules.dir/rules.rdi
  191. #
  192. ###########################################################################
  193. ALLTARGETS= all clean clobber distclean install ibins depend rmdep 
  194. config TAGS tags rmtarget relink