changeset 10314:397d12f43c1b

4382889 devfsadm libraries are built incorrectly
author Rod Evans <Rod.Evans@Sun.COM>
date Fri, 14 Aug 2009 15:46:39 -0700
parents ca42e2f0424a
children 3cdfd72593ca
files usr/src/cmd/cmd-inet/lib/nwamd/Makefile usr/src/cmd/devfsadm/Makefile.com usr/src/cmd/devfsadm/mapfile-vers usr/src/cmd/fps/fpsd/Makefile usr/src/cmd/fs.d/autofs/Makefile usr/src/cmd/fs.d/nfs/mountd/Makefile usr/src/cmd/fs.d/nfs/nfsmapid/Makefile usr/src/cmd/fs.d/smbclnt/smbiod/Makefile usr/src/cmd/iscsi/iscsitgtd/Makefile.com usr/src/cmd/iscsid/Makefile usr/src/cmd/isns/isnsadm/Makefile usr/src/cmd/isns/isnsd/Makefile usr/src/cmd/svc/configd/Makefile usr/src/cmd/svc/svccfg/Makefile usr/src/cmd/vt/Makefile usr/src/cmd/wusbadm/Makefile usr/src/lib/libnwam/Makefile.com usr/src/lib/libscf/Makefile.com usr/src/tools/scripts/check_rtime.pl
diffstat 19 files changed, 111 insertions(+), 39 deletions(-) [+]
line wrap: on
line diff
--- a/usr/src/cmd/cmd-inet/lib/nwamd/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/cmd-inet/lib/nwamd/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 # usr/src/cmd/cmd-inet/lib/nwamd/Makefile
@@ -43,7 +43,7 @@
 ROOTCMDDIR=	$(ROOTFS_LIBDIR)/inet
 
 LDLIBS +=	-lsocket -lnsl -linetcfg -linetutil -lumem -lscf -ldladm \
-		-lgen -ldoor -lsecdb -lbsm -lsysevent -lnvpair
+		-lgen -lsecdb -lbsm -lsysevent -lnvpair
 
 .KEEP_STATE:
 
--- a/usr/src/cmd/devfsadm/Makefile.com	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/devfsadm/Makefile.com	Fri Aug 14 15:46:39 2009 -0700
@@ -22,6 +22,11 @@
 # Use is subject to license terms.
 #
 
+# This target builds both a command (daemon) and various shared objects.  This
+# isn't a typical target, and the inclusion of both library and command
+# Makefiles were probably not in their original design.  However, there doesn't
+# presently seem to be a clash of any required definitions.
+include ../../../lib/Makefile.lib
 include ../../Makefile.cmd
 
 COMMON = ..
@@ -90,10 +95,15 @@
 LINTFLAGS += -erroff=E_NAME_DEF_NOT_USED2
 LINTFLAGS += -erroff=E_NAME_MULTIPLY_DEF2
 
-LDLIBS += -ldevinfo -lgen -lsysevent -lnvpair -ldoor -lzonecfg -lbsm
+# Define the dependencies required by devfsadm and all shared objects.
+LDLIBS +=		-ldevinfo
+devfsadm :=		LDLIBS += -lgen -lsysevent -lnvpair -lzonecfg -lbsm
+SUNW_md_link.so :=	LDLIBS += -lmeta
 
-LINK_MOD_LDLIBS=
-SUNW_md_link.so :=	LINK_MOD_LDLIBS=	-lmeta
+# All libraries are built from the same SUNW_%.so rule (see below), and define
+# their own SONAME using -h explicitly.  Null the generic -h macro that gets
+# inherited from Makefile.lib, otherwise we'll get two -h definitions.
+HSONAME =
 
 SRCS = $(DEVFSADM_SRC) $(LINK_SRCS)
 OBJS = $(DEVFSADM_OBJ) $(LINK_OBJS)
@@ -164,8 +174,8 @@
 	$(LINK.c) -o $@ $< $(DEVFSADM_OBJ) $(LDLIBS)
 	$(POST_PROCESS)
 
-SUNW_%.so: %.o
-	$(LINK.c) -o $@ $(GSHARED) -h $@ $< $(LINK_MOD_LDLIBS)
+SUNW_%.so: %.o $(MAPFILES)
+	$(CC) -o $@ $(GSHARED) $(DYNFLAGS) -h $@ $< $(LDLIBS) -lc
 	$(POST_PROCESS_SO)
 
 %.o: $(COMMON)/%.c
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/usr/src/cmd/devfsadm/mapfile-vers	Fri Aug 14 15:46:39 2009 -0700
@@ -0,0 +1,64 @@
+#
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
+# Use is subject to license terms.
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+
+#
+# MAPFILE HEADER START
+#
+# WARNING:  STOP NOW.  DO NOT MODIFY THIS FILE.
+# Object versioning must comply with the rules detailed in
+#
+#	usr/src/lib/README.mapfiles
+#
+# You should not be making modifications here until you've read the most current
+# copy of that file. If you need help, contact a gatekeeper for guidance.
+#
+# MAPFILE HEADER END
+#
+
+# External interface requirements
+{
+	global:
+		devfsadm_devlink_cache =	EXTERN;
+		devfsadm_enumerate_char_start =	EXTERN;
+		devfsadm_enumerate_int =	EXTERN;
+		devfsadm_errprint =		EXTERN;
+		devfsadm_free_dev_names =	EXTERN;
+		devfsadm_have_reserved =	EXTERN;
+		devfsadm_is_reserved =		EXTERN;
+		devfsadm_link_valid =		EXTERN;
+		devfsadm_lookup_dev_names =	EXTERN;
+		devfsadm_mklink =		EXTERN;
+		devfsadm_noupdate =		EXTERN;
+		devfsadm_print =		EXTERN;
+		devfsadm_read_link =		EXTERN;
+		devfsadm_reserve_id_cache =	EXTERN;
+		devfsadm_rm_all =		EXTERN;
+		devfsadm_rm_link =		EXTERN;
+		devfsadm_rm_stale_links =	EXTERN;
+		devfsadm_root_path =		EXTERN;
+		devfsadm_secondary_link =	EXTERN;
+		disk_enumerate_int =		EXTERN;
+		s_strdup =			EXTERN;
+		system_labeled =		EXTERN;
+};
--- a/usr/src/cmd/fps/fpsd/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/fps/fpsd/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 
@@ -44,7 +44,7 @@
 
 CFLAGS += $(CCMT)
 
-LDLIBS  += -lc -ldevinfo -ldoor -lkstat -lscf -lgen
+LDLIBS  += -lc -ldevinfo -lkstat -lscf -lgen
 
 LDFLAGS += $(ZIGNORE)
 
--- a/usr/src/cmd/fs.d/autofs/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/fs.d/autofs/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -82,9 +82,9 @@
 GREP= egrep
 SED= sed
 
-$(AUTO) := 	LDLIBS += -lnsl -lsldap  -ldoor
+$(AUTO) := 	LDLIBS += -lnsl -lsldap
 $(MOUNT):=	LDLIBS += -lnsl
-$(TYPEPROG) :=	LDLIBS += -lrpcsvc -lsocket -lnsl -lsldap -lkstat -ldoor
+$(TYPEPROG) :=	LDLIBS += -lrpcsvc -lsocket -lnsl -lsldap -lkstat
 
 CFLAGS +=	$(CCVERBOSE) -D_FILE_OFFSET_BITS=64
 CPPFLAGS=	-I. -I.. -I../nfs/lib $(CPPFLAGS.master) -D_REENTRANT \
--- a/usr/src/cmd/fs.d/nfs/mountd/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/fs.d/nfs/mountd/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -19,7 +19,7 @@
 # CDDL HEADER END
 #
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 
@@ -35,7 +35,7 @@
 OBJS	  = 	$(LOCAL) $(COMMON)
 SRCS	  =	$(LOCAL:%.o=%.c) $(FSLIBSRC) ../lib/nfs_sec.c \
 		../lib/sharetab.c ../lib/daemon.c
-LDLIBS	 +=	-lrpcsvc -lnsl -lbsm -lsocket -ldoor -ltsnet -ltsol
+LDLIBS	 +=	-lrpcsvc -lnsl -lbsm -lsocket -ltsnet -ltsol
 CPPFLAGS +=	-D_REENTRANT
 
 $(TYPEPROG):	$(OBJS)
--- a/usr/src/cmd/fs.d/nfs/nfsmapid/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/fs.d/nfs/nfsmapid/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -19,11 +19,9 @@
 # CDDL HEADER END
 #
 #
-# Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
-# ident	"%Z%%M%	%I%	%E% SMI"
-#
 
 FSTYPE	  =	nfs
 TYPEPROG  =	nfsmapid
@@ -33,7 +31,7 @@
 include		../../Makefile.fstype
 
 LDLIBS   +=	-L$(ROOT)/usr/lib/nfs -R/usr/lib/nfs
-LDLIBS   +=	-lnsl -lmapid -ldoor -ldtrace -lidmap
+LDLIBS   +=	-lnsl -lmapid -ldtrace -lidmap
 SRCS	  =	nfsmapid.c nfsmapid_server.c
 DSRC	  =	nfsmapid_dt.d
 DOBJ	  =	$(DSRC:%.d=%.o)
--- a/usr/src/cmd/fs.d/smbclnt/smbiod/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/fs.d/smbclnt/smbiod/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -44,7 +44,7 @@
 
 # This is a multi-thread program but Nevada
 # no longer needs -lthread
-LDLIBS += -lsmbfs -ldoor
+LDLIBS += -lsmbfs
 
 CPPFLAGS += -I$(SRC)/lib/libsmbfs \
 	-I$(SRC)/uts/common/smbclnt -I$(SRC)/uts/common
--- a/usr/src/cmd/iscsi/iscsitgtd/Makefile.com	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/iscsi/iscsitgtd/Makefile.com	Fri Aug 14 15:46:39 2009 -0700
@@ -56,7 +56,7 @@
 
 all: $(PROG)
 
-LDLIBS	+= -lumem -luuid -lsocket -lnsl -ldoor -lavl -lmd5 -ladm -lefi
+LDLIBS	+= -lumem -luuid -lsocket -lnsl -lavl -lmd5 -ladm -lefi
 LDLIBS  += -liscsitgt -lzfs -ldlpi -lscf -lsasl
 XMLLIB   = -lxml2
 
--- a/usr/src/cmd/iscsid/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/iscsid/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -40,7 +40,7 @@
 include ../Makefile.cmd
 
 CCVERBOSE	=
-LDLIBS += -ldoor -lnsl
+LDLIBS += -lnsl
 
 ROOTMANIFESTDIR=	$(ROOTSVCNETWORKISCSI)
 $(ROOTSVCNETWORKISCSI)/iscsi-initiator.xml := FILEMODE = 0444
--- a/usr/src/cmd/isns/isnsadm/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/isns/isnsadm/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -19,7 +19,7 @@
 # CDDL HEADER END
 
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 
@@ -29,7 +29,7 @@
 
 include ../../Makefile.cmd
 
-LDLIBS += -lxml2 -ldoor -lscf -lc
+LDLIBS += -lxml2 -lscf -lc
 CFLAGS += $(CCVERBOSE)
 CPPFLAGS += -I. -I/usr/include/libxml2 -I../isnsd
 POFILE = isnsadm_all.po
--- a/usr/src/cmd/isns/isnsd/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/isns/isnsd/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -57,7 +57,7 @@
 obj.o := CERRWARN += -erroff=E_CONST_OBJ_SHOULD_HAVE_INITIZR
 obj.o := CERRWARN += -erroff=E_IMPLICIT_DECL_FUNC_RETURN_INT
 
-LDLIBS		+= -lsecdb -lsocket -lnsl -lscf -lxml2 -ldoor
+LDLIBS		+= -lsecdb -lsocket -lnsl -lscf -lxml2
 
 .KEEP_STATE:
 
--- a/usr/src/cmd/svc/configd/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/svc/configd/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -69,8 +69,7 @@
 $(NATIVE_BUILD)CPPFLAGS = $(MYCPPFLAGS) -I$(LIBUUTIL)/common -I$(LIBSCF)/inc
 $(NATIVE_BUILD)CPPFLAGS += -DNATIVE_BUILD
 $(NATIVE_BUILD)LDFLAGS =
-$(NATIVE_BUILD)LDLIBS = -L$(LIBUUTIL)/native -R $(LIBUUTIL)/native \
-	$(MYLDLIBS) -ldoor
+$(NATIVE_BUILD)LDLIBS = -L$(LIBUUTIL)/native -R $(LIBUUTIL)/native $(MYLDLIBS)
 
 DIRMODE = 0755
 FILEMODE = 0555
--- a/usr/src/cmd/svc/svccfg/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/svc/svccfg/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 
@@ -103,7 +103,7 @@
 $(NATIVE_BUILD)LDLIBS = \
 	-L$(LIBUUTIL)/native -R $(LIBUUTIL)/native \
 	-L$(LIBSCF)/native -R $(LIBSCF)/native \
-	$(SVCCFG_EXTRA_LIBS) -ldoor
+	$(SVCCFG_EXTRA_LIBS)
 
 svccfg_lex.o svccfg_grammar.o := CCVERBOSE =
 
--- a/usr/src/cmd/vt/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/vt/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -19,7 +19,7 @@
 # CDDL HEADER END
 #
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 
@@ -32,7 +32,7 @@
 
 CFLAGS += $(CCVERBOSE)
 
-LDLIBS += -ldoor -lpam -lbsm
+LDLIBS += -lpam -lbsm
 
 .KEEP_STATE:
 
--- a/usr/src/cmd/wusbadm/Makefile	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/cmd/wusbadm/Makefile	Fri Aug 14 15:46:39 2009 -0700
@@ -39,7 +39,7 @@
 
 
 CPPFLAGS += -I$(SRC)/uts/common
-LDLIBS += -lpkcs11 -lkmf -ldoor -lsysevent -lnvpair -lsecdb
+LDLIBS += -lpkcs11 -lkmf -lsysevent -lnvpair -lsecdb
 
 .KEEP_STATE:
 
--- a/usr/src/lib/libnwam/Makefile.com	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/lib/libnwam/Makefile.com	Fri Aug 14 15:46:39 2009 -0700
@@ -19,7 +19,7 @@
 # CDDL HEADER END
 #
 #
-# Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
 # Use is subject to license terms.
 #
 
@@ -38,7 +38,7 @@
 
 $(LINTLIB):=	SRCS = $(SRCDIR)/$(LINTSRC)
 
-LDLIBS +=	-ldoor -ldladm -lc
+LDLIBS +=	-ldladm -lc
 
 CFLAGS +=	$(CCVERBOSE)
 CPPFLAGS +=	-I$(SRCDIR) -I$(NWAMDIR)
--- a/usr/src/lib/libscf/Makefile.com	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/lib/libscf/Makefile.com	Fri Aug 14 15:46:39 2009 -0700
@@ -64,8 +64,7 @@
 MY_NATIVE_CPPFLAGS =\
 		-DNATIVE_BUILD $(DTEXTDOM) \
 		-I../inc -I$(COMDIR) -I$(LIBUUTIL)/common -I$(ROOTHDRDIR)
-MY_NATIVE_LDLIBS = -L$(LIBUUTIL)/native -R$(LIBUUTIL)/native -luutil -ldoor \
-		-lc -lgen
+MY_NATIVE_LDLIBS = -L$(LIBUUTIL)/native -R$(LIBUUTIL)/native -luutil -lc -lgen
 MY_NATIVE_LDLIBS_i386 = -lsmbios
 MY_NATIVE_LDLIBS += $(MY_NATIVE_LDLIBS_$(MACH))
 
--- a/usr/src/tools/scripts/check_rtime.pl	Fri Aug 14 17:11:26 2009 -0400
+++ b/usr/src/tools/scripts/check_rtime.pl	Fri Aug 14 15:46:39 2009 -0700
@@ -71,7 +71,6 @@
 
 # Define any directories we should skip completely.
 $SkipDirs = qr{ 
-	usr/lib/devfsadm |		# 4382889
 	usr/lib/libc |			# optimized libc
 	usr/lib/rcm |			# 4426119
 	usr/perl5 |			# alan's taking care of these :-)
@@ -229,15 +228,18 @@
 
 # Catch libintl and libw, although ld(1) will bind to these and thus determine
 # they're needed, their content was moved into libc as of on297 build 7.
-# libthread and libpthread were completely moved into libc as of on10 build 53.
-# libdl was moved into libc as of on10 build 49.  librt and libaio were moved
-# into libc as of Nevada build 44.
+# libsched was moved into libc as of on10 build 36.  libdl was moved into libc
+# as of on10 build 49.  libthread and libpthread were into libc as of on10 build
+# 53.  libdoor was moved into libc as of Nevada build 12.  librt and libaio were
+# moved into libc in Nevada build 44.
 $OldDeps = qr{ ^(?:
 	libintl\.so\.1 |
 	libw\.so\.1 |
+	libsched\.so\.1 |
+	libdl\.so\.1 |
 	libthread\.so\.1 |
 	libpthread\.so\.1 |
-	libdl\.so\.1 |
+	libdoor\.so\.1 |
 	librt\.so\.1 |
 	libaio\.so\.1
 	)$