⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 check_ld.m4

📁 samba最新软件
💻 M4
字号:
dnl SMB Build Environment LD Checksdnl -------------------------------------------------------dnl  Copyright (C) Stefan (metze) Metzmacher 2004dnl  Copyright (C) Jelmer Vernooij 2006dnl  Released under the GNU GPLdnl -------------------------------------------------------dnlAC_PATH_PROG(PROG_LD,ld)LD=${PROG_LD}AC_PROG_LD_GNULD=""AC_SUBST(BLDSHARED)AC_SUBST(LD)AC_SUBST(SYS_LDFLAGS)AC_SUBST(LDFLAGS)# Assume non-shared by default and override below# these are the defaults, good for lots of systemsBLDSHARED="false"LD="${CC}"PICFLAG=""# allow for --with-hostld=gccAC_ARG_WITH(hostld,[  --with-hostld=linker    choose host linker],[HOSTLD=$withval],[HOSTLD=$HOSTCC])AC_MSG_CHECKING([whether to try to build shared libraries on $host_os])# and these are for particular systemscase "$host_os" in	*linux*)		BLDSHARED="true"		SYS_LDFLAGS="-Wl,--export-dynamic"		;;	*solaris*)		BLDSHARED="true"		if test "${GCC}" = "yes"; then			if test "${ac_cv_prog_gnu_ld}" = "yes"; then				SYS_LDFLAGS="-Wl,-E"			fi		fi		;;	*sunos*)		BLDSHARED="true"		;;	*netbsd* | *freebsd* | *dragonfly* )  		BLDSHARED="true"		SYS_LDFLAGS="-Wl,--export-dynamic"		;;	*openbsd*)		BLDSHARED="true"		SYS_LDFLAGS="-Wl,-Bdynamic"		;;	*irix*)		BLDSHARED="true"		;;	*aix*)		BLDSHARED="true"		SYS_LDFLAGS="-Wl,-brtl,-bexpall,-bbigtoc"		;;	*hpux*)		# Use special PIC flags for the native HP-UX compiler.		BLDSHARED="true" # I hope this is correct		if test "$host_cpu" = "ia64"; then			SYS_LDFLAGS="-Wl,-E,+b/usr/local/lib/hpux32:/usr/lib/hpux32"		else			SYS_LDFLAGS="-Wl,-E,+b/usr/local/lib:/usr/lib"		fi		;;	*osf*)		BLDSHARED="true"		;;	*unixware*)		BLDSHARED="true"		;;	*darwin*)		BLDSHARED="true"		;;esacAC_MSG_RESULT($BLDSHARED)AC_MSG_CHECKING([LD])AC_MSG_RESULT([$LD])AC_MSG_CHECKING([LDFLAGS])AC_MSG_RESULT([$LDFLAGS])AC_MSG_CHECKING([SYS_LDFLAGS])AC_MSG_RESULT([$SYS_LDFLAGS])AC_SUBST(HOSTLD)AC_LIBREPLACE_STLDAC_LIBREPLACE_STLD_FLAGSAC_MSG_CHECKING([STLD])AC_MSG_RESULT([$STLD])AC_MSG_CHECKING([STLD_FLAGS])AC_MSG_RESULT([$STLD_FLAGS])AC_LD_PICFLAGAC_LD_EXPORT_DYNAMICAC_LD_SHLIBEXTAC_LD_SONAMEFLAGAC_LIBREPLACE_SHLDAC_LIBREPLACE_SHLD_FLAGSAC_LIBREPLACE_MDLDAC_LIBREPLACE_MDLD_FLAGSAC_LIBREPLACE_RUNTIME_LIB_PATH_VAR######################################################## test whether building a shared library actually worksif test $BLDSHARED = true; then	AC_MSG_CHECKING([SHLD])	AC_MSG_RESULT([$SHLD])	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])	AC_MSG_RESULT([$SONAMEFLAG])	AC_MSG_CHECKING([PICFLAG])	AC_MSG_RESULT([$PICFLAG])	AC_CACHE_CHECK([whether building shared libraries actually works], 	               [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	])	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; then		AC_MSG_ERROR(unable to build shared libraries)	fi	if test $ac_cv_shmod_works = no; then		AC_MSG_ERROR(unable to build shared modules)	fifiAC_DEFINE_UNQUOTED(SHLIBEXT, "$SHLIBEXT", [Shared library extension])AC_MSG_CHECKING([if we can link using the selected flags])AC_TRY_RUN([#include "${srcdir-.}/build/tests/trivial.c"],	    AC_MSG_RESULT(yes),	    AC_MSG_ERROR([we cannot link with the selected cc and ld flags. Aborting configure]),	    AC_MSG_WARN([cannot run when cross-compiling]))USESHARED=falseAC_SUBST(USESHARED)AC_ARG_ENABLE(dso,[  --enable-dso 	          Enable using shared libraries internally (experimental)],[],[enable_dso=no])if test x"$enable_dso" = x"yes" -a x"$BLDSHARED" != x"true"; then	AC_MSG_ERROR([--enable-dso: no support for shared libraries])fiif test x"$enable_dso" != x"no"; then	USESHARED=$BLDSHAREDfiAC_MSG_CHECKING([if binaries will use shared libraries])AC_MSG_RESULT([$USESHARED])

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -