svn commit: samba r25978 - in branches/SAMBA_4_0/source/build: m4 smb_build

metze at samba.org metze at samba.org
Thu Nov 15 16:46:57 GMT 2007


Author: metze
Date: 2007-11-15 16:46:57 +0000 (Thu, 15 Nov 2007)
New Revision: 25978

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=25978

Log:
build: use AC_LIBREPLACE_MDLD_* macros and use the result to build modules

metze

Modified:
   branches/SAMBA_4_0/source/build/m4/check_ld.m4
   branches/SAMBA_4_0/source/build/smb_build/makefile.pm


Changeset:
Modified: branches/SAMBA_4_0/source/build/m4/check_ld.m4
===================================================================
--- branches/SAMBA_4_0/source/build/m4/check_ld.m4	2007-11-15 16:44:28 UTC (rev 25977)
+++ branches/SAMBA_4_0/source/build/m4/check_ld.m4	2007-11-15 16:46:57 UTC (rev 25978)
@@ -115,6 +115,8 @@
 AC_LD_SHLDFLAGS
 AC_LD_SHLIBEXT
 AC_LD_SONAMEFLAG
+AC_LIBREPLACE_MDLD
+AC_LIBREPLACE_MDLD_FLAGS
 
 #######################################################
 # test whether building a shared library actually works
@@ -125,6 +127,11 @@
 	AC_MSG_CHECKING([SHLD_FLAGS])
 	AC_MSG_RESULT([$SHLD_FLAGS])
 
+	AC_MSG_CHECKING([MDLD])
+	AC_MSG_RESULT([$MDLD])
+	AC_MSG_CHECKING([MDLD_FLAGS])
+	AC_MSG_RESULT([$MDLD_FLAGS])
+
 	AC_MSG_CHECKING([SHLIBEXT])
 	AC_MSG_RESULT([$SHLIBEXT])
 	AC_MSG_CHECKING([SONAMEFLAG])
@@ -137,12 +144,22 @@
 	               [ac_cv_shlib_works],[
 			ac_cv_shlib_works=no
 			# try building a trivial shared library
+			# TODO: also test SONAMEFLAG
 			${CC} ${CFLAGS} ${PICFLAG} -c ${srcdir-.}/build/tests/shlib.c -o shlib.o &&
 				${SHLD} ${SHLD_FLAGS} -o shlib.${SHLIBEXT} shlib.o && 
 				ac_cv_shlib_works=yes
 			rm -f shlib.${SHLIBEXT} shlib.o
 	])
-	if test $ac_cv_shlib_works = no; then
+	AC_CACHE_CHECK([whether building shared modules actually works], 
+	               [ac_cv_shmod_works],[
+			ac_cv_shmod_works=no
+			# try building a trivial shared library
+			${CC} ${CFLAGS} ${PICFLAG} -c ${srcdir-.}/build/tests/shlib.c -o shlib.o &&
+				${MDLD} ${MDLD_FLAGS} -o shlib.${SHLIBEXT} shlib.o && 
+				ac_cv_shmod_works=yes
+			rm -f shlib.${SHLIBEXT} shlib.o
+	])
+	if test $ac_cv_shlib_works = no -o $ac_cv_shmod_works = no; then
 		BLDSHARED=false
 	fi
 fi
@@ -150,6 +167,8 @@
 if test $BLDSHARED != true; then
 	SHLD="shared-libraries-disabled"
 	SHLD_FLAGS="shared-libraries-disabled"
+	MDLD="shared-modules-disabled"
+	MDLD_FLAGS="shared-modules-disabled"
 	SHLIBEXT="shared_libraries_disabled"
 	SONAMEFLAG="shared-libraries-disabled"
 	PICFLAG=""
@@ -158,6 +177,11 @@
 	AC_MSG_CHECKING([SHLD_FLAGS])
 	AC_MSG_RESULT([$SHLD_FLAGS])
 
+	AC_MSG_CHECKING([MDLD])
+	AC_MSG_RESULT([$MDLD])
+	AC_MSG_CHECKING([MDLD_FLAGS])
+	AC_MSG_RESULT([$MDLD_FLAGS])
+
 	AC_MSG_CHECKING([SHLIBEXT])
 	AC_MSG_RESULT([$SHLIBEXT])
 	AC_MSG_CHECKING([SONAMEFLAG])

Modified: branches/SAMBA_4_0/source/build/smb_build/makefile.pm
===================================================================
--- branches/SAMBA_4_0/source/build/smb_build/makefile.pm	2007-11-15 16:44:28 UTC (rev 25977)
+++ branches/SAMBA_4_0/source/build/smb_build/makefile.pm	2007-11-15 16:46:57 UTC (rev 25978)
@@ -204,7 +204,10 @@
 
 SHLD=$self->{config}->{SHLD}
 SHLD_FLAGS=$self->{config}->{SHLD_FLAGS} -L\$(builddir)/bin/shared
-SHLD_UNDEF_FLAGS=$self->{config}->{SHLD_UNDEF_FLAGS}
+
+MDLD=$self->{config}->{MDLD}
+MDLD_FLAGS=$self->{config}->{MDLD_FLAGS} -L\$(builddir)/bin/shared
+
 SHLIBEXT=$self->{config}->{SHLIBEXT}
 
 XSLTPROC=$self->{config}->{XSLTPROC}
@@ -355,9 +358,9 @@
 $ctx->{SHAREDDIR}/$ctx->{LIBRARY_REALNAME}: \$($ctx->{TYPE}_$ctx->{NAME}_DEPEND_LIST) \$($ctx->{TYPE}_$ctx->{NAME}_FULL_OBJ_LIST) $init_obj
 	\@echo Linking \$\@
 	\@mkdir -p $ctx->{SHAREDDIR}
-	\@\$(SHLD) \$(SHLD_FLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\
+	\@\$(MDLD) \$(MDLD_FLAGS) -o \$\@ \$(INSTALL_LINK_FLAGS) \\
 		\$($ctx->{TYPE}_$ctx->{NAME}\_FULL_OBJ_LIST) $init_obj \\
-		\$($ctx->{TYPE}_$ctx->{NAME}_LINK_FLAGS) \$(SHLD_UNDEF_FLAGS)
+		\$($ctx->{TYPE}_$ctx->{NAME}_LINK_FLAGS)
 __EOD__
 );
 



More information about the samba-cvs mailing list