Makefile
上传用户:lyxiangda
上传日期:2007-01-12
资源大小:3042k
文件大小:4k
源码类别:

CA认证

开发平台:

WINDOWS

  1. #! gmake
  2. #
  3. # The contents of this file are subject to the Mozilla Public
  4. # License Version 1.1 (the "License"); you may not use this file
  5. # except in compliance with the License. You may obtain a copy of
  6. # the License at http://www.mozilla.org/MPL/
  7. # Software distributed under the License is distributed on an "AS
  8. # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  9. # implied. See the License for the specific language governing
  10. # rights and limitations under the License.
  11. # The Original Code is the Netscape security libraries.
  12. # The Initial Developer of the Original Code is Netscape
  13. # Communications Corporation.  Portions created by Netscape are 
  14. # Copyright (C) 1994-2000 Netscape Communications Corporation.  All
  15. # Rights Reserved.
  16. # Contributor(s):
  17. # Alternatively, the contents of this file may be used under the
  18. # terms of the GNU General Public License Version 2 or later (the
  19. # "GPL"), in which case the provisions of the GPL are applicable 
  20. # instead of those above.  If you wish to allow use of your 
  21. # version of this file only under the terms of the GPL and not to
  22. # allow others to use your version of this file under the MPL,
  23. # indicate your decision by deleting the provisions above and
  24. # replace them with the notice and other provisions required by
  25. # the GPL.  If you do not delete the provisions above, a recipient
  26. # may use your version of this file under either the MPL or the
  27. # GPL.
  28. include manifest.mn
  29. include $(CORE_DEPTH)/coreconf/config.mk
  30. CILIB                   = $(OBJDIR)/cilib.$(LIB_SUFFIX)
  31. ORIG_CILIB              = libci/$(OS_CONFIG).$(LIB_SUFFIX)
  32. ifeq ($(OS_ARCH), WINNT)
  33. ORIG_CILIB              = libci/tssp32.lib
  34. endif
  35. ifeq ($(OS_TARGET), WIN16)
  36. ORIG_CILIB              = libci/tssp.lib
  37. endif
  38. ifeq ($(OS_TARGET), WIN95)
  39. ORIG_CILIB              = libci/tssp32.lib
  40. endif
  41. ifeq ($(OS_ARCH), WINNT)
  42. STUBDLL                 = $(OBJDIR)/stub.$(DLL_SUFFIX)
  43. endif
  44. STUBLIB                 = $(OBJDIR)/stub.$(LIB_SUFFIX)
  45. ifeq ($(OS_TARGET), WIN16)
  46. W16LIBS         += $(CILIB)
  47. else
  48. EXTRA_LIBS      += $(CILIB)
  49. endif
  50. INST_JS                 = inst.js
  51. LIBCI_JAR               = $(OBJDIR)/libfort.jar
  52. LIBCI_JAR_SRC           = $(INST_JS) $(SHARED_LIBRARY)
  53. ifneq ($(OS_TARGET), WIN16)
  54. TARGETS : $(LIBCI_JAR) 
  55. endif
  56. ifeq ($(OS_TARGET), WIN16)
  57. # note that rules.mk is not included below for WIN16
  58. all:
  59. @echo Skipping fortcrypt directory for 16-bit windows builds
  60. all_platforms alltags clean clobber clobber_all realclean: all
  61. boot export install libs program release: all
  62. endif
  63. $(SHARED_LIBRARY): $(CILIB) $(DIRS)
  64. $(CILIB):
  65. @$(MAKE_OBJDIR)
  66. @if test -f $(ORIG_CILIB); then 
  67. echo "Copying $(ORIG_CILIB) to $@"; 
  68. cp $(ORIG_CILIB) $@; 
  69. else 
  70. echo "Making empty stub $@"; 
  71. $(MAKE) $(STUBLIB); 
  72. fi
  73. @$(RANLIB) $@
  74. $(STUBLIB): $(OBJDIR)/maci$(OBJ_SUFFIX)
  75. @$(MAKE_OBJDIR)
  76. ifeq ($(OS_ARCH), WINNT)
  77. $(MAKE) $(STUBDLL)
  78. else
  79. $(AR) $<
  80. endif
  81. cp $@ $(CILIB)
  82. ifeq ($(OS_ARCH), WINNT)
  83. $(STUBDLL): $(OBJDIR)/maci.o
  84. $(LINK_DLL) -MAP $(DLLBASE) $(OBJDIR)/maci.o $(OS_LIBS)
  85. $(OBJDIR)/maci.o: maci.c
  86. $(CC) -Fo$@ -c $(CFLAGS) $<
  87. endif
  88. #
  89. # The following rules packages the shared library into a JAR,
  90. # ready to be signed
  91. #
  92. $(OBJDIR)/replace: replace.c
  93. $(CC) -o $@ $<
  94. # ZIP options:
  95. # -5 means medium compression
  96. # -q means quiet
  97. # -j means do not store tree structure, all files go into one dir
  98. #
  99. $(LIBCI_JAR): $(DIRS) $(LIBCI_JAR_SRC)
  100. @echo +++ building $@ from $(LIBCI_JAR_SRC)
  101. @rm -f $@
  102. zip -5qj $@ $(LIBCI_JAR_SRC) 
  103. force:
  104. (cd swfort ; gmake)
  105. MD_FILES += $(LIBCI_JAR)
  106. # coreconf doesn't build the AIX shared library for FORTEZZA,
  107. # so I'm going to override their shared library command and build the shared
  108. # library the way config used to.
  109. #
  110. ifeq ($(OS_ARCH)$(OS_RELEASE), AIX4.1)
  111. DSO_LDOPTS              = -bM:SRE -bh:4 -bnoentry
  112. EXTRA_DSO_LDOPTS        = -lc
  113. MKSHLIB                 = svld $(DSO_LDOPTS)
  114. $(SHARED_LIBRARY): $(OBJS)
  115. @$(MAKE_OBJDIR)
  116. rm -f $@
  117. $(MKSHLIB) -o $@ $(OBJS) $(EXTRA_LIBS) $(EXTRA_DSO_LDOPTS)
  118. chmod +x $@
  119. endif
  120. ifeq ($(OS_ARCH)$(OS_RELEASE), AIX4.2)
  121. LD      += -G
  122. endif 
  123. ifneq ($(OS_TARGET), WIN16)
  124. include $(CORE_DEPTH)/coreconf/rules.mk
  125. endif
  126. export:: private_export