Print this page
8411 Build should warn when linking against libraries outside proto area

Split Close
Expand all
Collapse all
          --- old/usr/src/lib/libkmf/plugins/kmf_nss/Makefile.com
          +++ new/usr/src/lib/libkmf/plugins/kmf_nss/Makefile.com
↓ open down ↓ 14 lines elided ↑ open up ↑
  15   15  # If applicable, add the following below this CDDL HEADER, with the
  16   16  # fields enclosed by brackets "[]" replaced with your own identifying
  17   17  # information: Portions Copyright [yyyy] [name of copyright owner]
  18   18  #
  19   19  # CDDL HEADER END
  20   20  #
  21   21  #
  22   22  # Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
  23   23  # Use is subject to license terms.
  24   24  #
       25 +# Copyright 2017 RackTop Systems.
       26 +#
  25   27  # Makefile for KMF Plugins
  26   28  #
  27   29  
  28   30  LIBRARY=        kmf_nss.a
  29   31  VERS=           .1
  30   32  
  31   33  OBJECTS=        nss_spi.o
  32   34  
  33   35  include $(SRC)/lib/Makefile.lib
  34   36  
  35   37  MPSDIR=         /usr/lib/mps
       38 +MPSDIR64=       $(MPSDIR)/64
  36   39  KMFINC=         -I../../../include -I../../../ber_der/inc
  37   40  NSSINC=         -I$(ADJUNCT_PROTO)/usr/include/mps
  38   41  BERLIB=         -lkmf -lkmfberder
  39   42  BERLIB64=       $(BERLIB)
  40   43  
  41      -NSSLIBS=        $(BERLIB) -L$(ADJUNCT_PROTO)$(MPSDIR) -R$(MPSDIR) \
  42      -                -lnss3 -lnspr4 -lsmime3 -lc
  43      -NSSLIBS64=      $(BERLIB64) -L$(ADJUNCT_PROTO)$(MPSDIR)/$(MACH64) \
  44      -                -R$(MPSDIR)/$(MACH64) -lnss3 -lnspr4 -lsmime3 -lc
       44 +NSSLIBS=        $(BERLIB) -R$(MPSDIR) -lnss3 -lnspr4 -lsmime3 -lc
       45 +NSSLIBS64=      $(BERLIB64) -R$(MPSDIR64) -lnss3 -lnspr4 -lsmime3 -lc
  45   46  
       47 +# Allow NSS libraries to be taken from outside the proto area.
       48 +$(ADJUNCT_PROTO_NOT_SET)DYNFLAGS += $(ZASSERTDEFLIB)=libnss3.so
       49 +$(ADJUNCT_PROTO_NOT_SET)DYNFLAGS += $(ZASSERTDEFLIB)=libnspr4.so
       50 +$(ADJUNCT_PROTO_NOT_SET)DYNFLAGS += $(ZASSERTDEFLIB)=libsmime3.so
       51 +
       52 +# Override the default linker path so that libraries found in the host
       53 +# directories will trigger -zassert-deflib logic.
       54 +LDLIBS32        += -YP,$(DEFLDPATH):$(MPSDIR)
       55 +LDLIBS64        += -YP,$(DEFLDPATH64):$(MPSDIR64)
       56 +
       57 +# Only add -L options for the NSS directories if ADJUNCT_PROTO is being
       58 +# used because it disables the -zassert-deflib logic.
       59 +$(ADJUNCT_PROTO_SET)LDLIBS32    += -L$(ADJUNCT_PROTO)$(MPSDIR)
       60 +$(ADJUNCT_PROTO_SET)LDLIBS64    += -L$(ADJUNCT_PROTO)$(MPSDIR64)
       61 +
  46   62  SRCDIR=         ../common
  47   63  INCDIR=         ../../include
  48   64  
  49   65  CFLAGS          +=      $(CCVERBOSE) 
  50   66  CPPFLAGS        +=      -D_REENTRANT $(KMFINC) $(NSSINC)  \
  51   67                  -I$(INCDIR) -I$(ADJUNCT_PROTO)/usr/include/libxml2
  52   68  
  53   69  PICS=   $(OBJECTS:%=pics/%)
  54   70  
  55   71  LINTFLAGS       +=      -erroff=E_STATIC_UNUSED
↓ open down ↓ 25 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX