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

📄 libreplace_ld.m4

📁 samba最新软件
💻 M4
字号:
## This offers a nice overview how to build shared libraries on all platforms#        http://www.fortran-2000.com/ArnaudRecipes/sharedlib.html#AC_DEFUN([AC_LIBREPLACE_STLD],[	AC_PATH_PROG(PROG_AR, ar)	STLD=${PROG_AR}	AC_SUBST(STLD)])AC_DEFUN([AC_LIBREPLACE_STLD_FLAGS],[	STLD_FLAGS="-rcs"	AC_SUBST(STLD_FLAGS)])AC_DEFUN([AC_LD_EXPORT_DYNAMIC],[saved_LDFLAGS="$LDFLAGS"if AC_TRY_COMMAND([${CC-cc} $CFLAGS -Wl,--version 2>&1 | grep "GNU ld" >/dev/null]); then	LD_EXPORT_DYNAMIC="-Wl,-export-dynamic"else	case "$host_os" in		hpux* )		  LD_EXPORT_DYNAMIC="-Wl,-E"		  ;;		*)		  LD_EXPORT_DYNAMIC=""		  ;;	  esacfiAC_SUBST(LD_EXPORT_DYNAMIC)LDFLAGS="$saved_LDFLAGS"])AC_DEFUN([AC_LD_PICFLAG],[case "$host_os" in	*linux*) 		PICFLAG="-fPIC" 		;;	*solaris*)		if test "${GCC}" = "yes"; then			PICFLAG="-fPIC"		else			PICFLAG="-KPIC"		fi		;;	*sunos*)		PICFLAG="-KPIC"   # Is this correct for SunOS		;;	*netbsd* | *freebsd* | *dragonfly* )  		PICFLAG="-fPIC -DPIC"		;;	*openbsd*)		PICFLAG="-fPIC"		;;	*irix*)		if test "${GCC}" = "yes"; then			PICFLAG="-fPIC"		else 			PICFLAG="-KPIC"		fi		;;	*aix*)		# as AIX code is always position independent...		PICFLAG="-O2"		;;	*hpux*)		if test $ac_cv_prog_cc_Ae = yes; then			PICFLAG="+z +ESnolit"		elif test "${GCC}" = "yes"; then			PICFLAG="-fPIC"		fi		if test "$host_cpu" = "ia64"; then			PICFLAG="+z"		fi		;;	*osf*)		PICFLAG="-fPIC"		;;	*unixware*)		PICFLAG="-KPIC"		;;	*darwin*)		PICFLAG="-fno-common"		;;esacAC_SUBST(PICFLAG)])AC_DEFUN([AC_LIBREPLACE_LD_SHLIB_LINKER],[	LD_SHLIB_LINKER="${CC}"	case "$host_os" in		*irix*)			LD_SHLIB_LINKER="${PROG_LD}"			;;	esac	AC_SUBST(LD_SHLIB_LINKER)])AC_DEFUN([AC_LIBREPLACE_LD_SHLIB_FLAGS],[	LD_SHLIB_FLAGS="-shared"	case "$host_os" in		*linux*)			LD_SHLIB_FLAGS="-shared -Wl,-Bsymbolic"			;;		*solaris*)			LD_SHLIB_FLAGS="-G"			if test "${GCC}" = "no"; then				## ${CFLAGS} added for building 64-bit shared 				## libs using Sun's Compiler				LD_SHLIB_FLAGS="-G \${CFLAGS}"			fi			;;		*sunos*)			LD_SHLIB_FLAGS="-G"			;;		*irix*)			LD_SHLIB_FLAGS="-shared"			;;		*aix*)			LD_SHLIB_FLAGS="-Wl,-G,-bexpall,-bbigtoc"			;;		*hpux*)			if test "${GCC}" = "yes"; then				LD_SHLIB_FLAGS="-shared"			else				LD_SHLIB_FLAGS="-b"			fi			;;		*osf*)			LD_SHLIB_FLAGS="-shared"			;;		*darwin*)			LD_SHLIB_FLAGS="-dynamiclib -Wl,-search_paths_first"			;;	esac	AC_SUBST(LD_SHLIB_FLAGS)])AC_DEFUN([AC_LIBREPLACE_LD_SHLIB_DISALLOW_UNDEF_FLAG],[	LD_SHLIB_DISALLOW_UNDEF_FLAG=""	#	# TODO: enforce error not only warnings	#	# NOTE: -Wl,--no-allow-shlib-undefined isn't what we want...	#       as it bails out on broken system libraries	#	case "$host_os" in		*osf*)			LD_SHLIB_DISALLOW_UNDEF_FLAG="-warning_unresolved"			;;		*darwin*)			LD_SHLIB_DISALLOW_UNDEF_FLAG="-undefined error"			;;	esac	AC_SUBST(LD_SHLIB_DISALLOW_UNDEF_FLAG)])AC_DEFUN([AC_LIBREPLACE_SHLD],[	AC_REQUIRE([AC_LIBREPLACE_LD_SHLIB_LINKER])	SHLD="$LD_SHLIB_LINKER"	AC_SUBST(SHLD)])AC_DEFUN([AC_LIBREPLACE_SHLD_FLAGS],[	AC_REQUIRE([AC_LIBREPLACE_LD_SHLIB_FLAGS])	AC_REQUIRE([AC_LIBREPLACE_LD_SHLIB_DISALLOW_UNDEF_FLAG])	SHLD_FLAGS="$LD_SHLIB_FLAGS $LD_SHLIB_DISALLOW_UNDEF_FLAG"	AC_SUBST(SHLD_FLAGS)])AC_DEFUN([AC_LD_SHLIBEXT],[	SHLIBEXT="so"	case "$host_os" in		*hpux*)			if test "$host_cpu" = "ia64"; then				SHLIBEXT="so"			else				SHLIBEXT="sl"			fi		;;		*darwin*)			SHLIBEXT="dylib"		;;	esac	AC_SUBST(SHLIBEXT)])AC_DEFUN([AC_LD_SONAMEFLAG],[	AC_SUBST(SONAMEFLAG)	SONAMEFLAG=""	case "$host_os" in 		*linux*)			SONAMEFLAG="-Wl,-soname="			;;		*solaris*)			SONAMEFLAG="-h "			if test "${GCC}" = "yes"; then				SONAMEFLAG="-Wl,-soname="			fi			;;		*sunos*)			SONAMEFLAG="-Wl,-h,"			;;		*netbsd* | *freebsd* | *dragonfly* )			SONAMEFLAG="-Wl,-soname,"			;;		*openbsd*)			SONAMEFLAG="-Wl,-soname,"			;;		*irix*)			SONAMEFLAG="-Wl,-soname,"			;;		*hpux*)			SONAMEFLAG="-Wl,+h,"			;;		*osf*)			SONAMEFLAG="-Wl,-soname,"			;;		*unixware*)			SONAMEFLAG="-Wl,-soname,"			;;		*darwin*)			SONAMEFLAG="#"			;;		*aix*)			# Not supported			SONAMEFLAG="#"			;;		esac])AC_DEFUN([AC_LIBREPLACE_MDLD],[	AC_REQUIRE([AC_LIBREPLACE_LD_SHLIB_LINKER])	MDLD="$LD_SHLIB_LINKER"	AC_SUBST(MDLD)])AC_DEFUN([AC_LIBREPLACE_LD_SHLIB_ALLOW_UNDEF_FLAG],[	LD_ALLOW_SHLIB_UNDEF_FLAG=""	case "$host_os" in		*linux*)			LD_SHLIB_ALLOW_UNDEF_FLAG="-Wl,--allow-shlib-undefined"			;;		*osf*)			LD_SHLIB_ALLOW_UNDEF_FLAG="-Wl,-expect_unresolved,\"*\""			;;		*darwin*)			LD_SHLIB_ALLOW_UNDEF_FLAG="-undefined dynamic_lookup"			;;		*aix*)			LD_SHLIB_ALLOW_UNDEF_FLAG="-Wl,-bnoentry"			;;	esac	AC_SUBST(LD_SHLIB_ALLOW_UNDEF_FLAG)])AC_DEFUN([AC_LIBREPLACE_MDLD_FLAGS],[	AC_REQUIRE([AC_LIBREPLACE_LD_SHLIB_FLAGS])	AC_REQUIRE([AC_LIBREPLACE_LD_SHLIB_ALLOW_UNDEF_FLAG])	MDLD_FLAGS="$LD_SHLIB_FLAGS $LD_SHLIB_ALLOW_UNDEF_FLAG"	AC_SUBST(MDLD_FLAGS)])AC_DEFUN([AC_LIBREPLACE_RUNTIME_LIB_PATH_VAR],[	case "$host_os" in		*linux*)			LIB_PATH_VAR=LD_LIBRARY_PATH		;;		*netbsd*)			LIB_PATH_VAR=LD_LIBRARY_PATH		;;		*solaris*)			LIB_PATH_VAR=LD_LIBRARY_PATH		;;		*hpux*)			LIB_PATH_VAR=SHLIB_PATH		;;		*osf*)			LIB_PATH_VAR=LD_LIBRARY_PATH		;;		*aix*)			LIB_PATH_VAR=LIB_PATH			;;		*irix*)			LIB_PATH_VAR=LD_LIBRARY_PATH			;;		*darwin*)			LIB_PATH_VAR=DYLD_LIBRARY_PATH			;;	esac	AC_SUBST(LIB_PATH_VAR)])

⌨️ 快捷键说明

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