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

📄 libtool

📁 PPP协议的实现演示
💻
📖 第 1 页 / 共 5 页
字号:
	      done	      IFS="$save_ifs"	    fi	    # Create $newlib	    if test -f "$output_objdir/$newlib"; then :; else	      $show "generating import library for \`$soname'"	      IFS="${IFS= 	}"; save_ifs="$IFS"; IFS='~'	      eval cmds=\"$old_archive_from_expsyms_cmds\"	      for cmd in $cmds; do		IFS="$save_ifs"		$show "$cmd"		$run eval "$cmd" || exit $?	      done	      IFS="$save_ifs"	    fi	    # make sure the library variables are pointing to the new library	    dir=$output_objdir	    linklib=$newlib	  fi	  if test $linkmode = prog || test "$mode" != relink; then	    add_shlibpath=	    add_dir=	    add=	    lib_linked=yes	    case "$hardcode_action" in	    immediate | unsupported)	      if test "$hardcode_direct" = no; then		add="$dir/$linklib"	      elif test "$hardcode_minus_L" = no; then		case "$host" in		*-*-sunos*) add_shlibpath="$dir" ;;		esac		add_dir="-L$dir"		add="-l$name"	      elif test "$hardcode_shlibpath_var" = no; then		add_shlibpath="$dir"		add="-l$name"	      else		lib_linked=no	      fi	      ;;	    relink)	      if test "$hardcode_direct" = yes; then		add="$dir/$linklib"	      elif test "$hardcode_minus_L" = yes; then		add_dir="-L$dir"		add="-l$name"	      elif test "$hardcode_shlibpath_var" = yes; then		add_shlibpath="$dir"		add="-l$name"	      else		lib_linked=no	      fi	      ;;	    *) lib_linked=no ;;	    esac	    if test "$lib_linked" != yes; then	      $echo "$modename: configuration error: unsupported hardcode properties"	      exit 1	    fi	    if test -n "$add_shlibpath"; then	      case ":$compile_shlibpath:" in	      *":$add_shlibpath:"*) ;;	      *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;;	      esac	    fi	    if test $linkmode = prog; then	      test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs"	      test -n "$add" && compile_deplibs="$add $compile_deplibs"	    else	      test -n "$add_dir" && deplibs="$add_dir $deplibs"	      test -n "$add" && deplibs="$add $deplibs"	      if test "$hardcode_direct" != yes && \		 test "$hardcode_minus_L" != yes && \		 test "$hardcode_shlibpath_var" = yes; then		case ":$finalize_shlibpath:" in		*":$libdir:"*) ;;		*) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;		esac	      fi	    fi	  fi	  if test $linkmode = prog || test "$mode" = relink; then	    add_shlibpath=	    add_dir=	    add=	    # Finalize command for both is simple: just hardcode it.	    if test "$hardcode_direct" = yes; then	      add="$libdir/$linklib"	    elif test "$hardcode_minus_L" = yes; then	      add_dir="-L$libdir"	      add="-l$name"	    elif test "$hardcode_shlibpath_var" = yes; then	      case ":$finalize_shlibpath:" in	      *":$libdir:"*) ;;	      *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;;	      esac	      add="-l$name"	    else	      # We cannot seem to hardcode it, guess we'll fake it.	      add_dir="-L$libdir"	      add="-l$name"	    fi	    if test $linkmode = prog; then	      test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs"	      test -n "$add" && finalize_deplibs="$add $finalize_deplibs"	    else	      test -n "$add_dir" && deplibs="$add_dir $deplibs"	      test -n "$add" && deplibs="$add deplibs"	    fi	  fi	elif test $linkmode = prog; then	  # Here we assume that one of hardcode_direct or hardcode_minus_L	  # is not unsupported.  This is valid on all known static and	  # shared platforms.	  if test "$hardcode_direct" != unsupported; then	    test -n "$old_library" && linklib="$old_library"	    compile_deplibs="$dir/$linklib $compile_deplibs"	    finalize_deplibs="$dir/$linklib $finalize_deplibs"	  else	    compile_deplibs="-l$name -L$dir $compile_deplibs"	    finalize_deplibs="-l$name -L$dir $finalize_deplibs"	  fi	elif test "$build_libtool_libs" = yes; then	  # Not a shared library	  if test "$deplibs_check_method" != pass_all; then	    # We're trying link a shared library against a static one	    # but the system doesn't support it.	    # Just print a warning and add the library to dependency_libs so	    # that the program can be linked against the static library.	    echo	    echo "*** Warning: This library needs some functionality provided by $lib."	    echo "*** I have the capability to make that library automatically link in when"	    echo "*** you link to this library.  But I can only do this if you have a"	    echo "*** shared version of the library, which you do not appear to have."	  else	    convenience="$convenience $dir/$old_library"	    old_convenience="$old_convenience $dir/$old_library"	    deplibs="$dir/$old_library $deplibs"	    link_static=yes	  fi	fi	if test $linkmode = lib; then	  if test -n "$dependency_libs" &&	     { test "$hardcode_into_libs" = no || test $build_old_libs = yes ||	       test $link_static = yes; }; then	    # Extract -R from dependency_libs	    temp_deplibs=	    for libdir in $dependency_libs; do	      case "$libdir" in	      -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'`		   case " $xrpath " in		   *" $temp_xrpath "*) ;;		   *) xrpath="$xrpath $temp_xrpath";;		   esac;;	      *) temp_deplibs="$temp_deplibs $libdir";;	      esac	    done	    dependency_libs="$temp_deplibs"	  fi	  new_lib_search_path="$new_lib_search_path $absdir"	  # Link against this library	  test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs"	  # ... and its dependency_libs	  tmp_libs=	  for deplib in $dependency_libs; do	    newdependency_libs="$deplib $newdependency_libs"	    case "$tmp_libs " in	    *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;	    esac	    tmp_libs="$tmp_libs $deplib"	  done	  if test $link_all_deplibs != no; then	    # Add the search paths of all dependency libraries	    for deplib in $dependency_libs; do	      case "$deplib" in	      -L*) path="$deplib" ;;	      *.la)		dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'`		test "X$dir" = "X$deplib" && dir="."		# We need an absolute path.		case "$dir" in		[\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;;		*)		  absdir=`cd "$dir" && pwd`		  if test -z "$absdir"; then		    $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2		    absdir="$dir"		  fi		  ;;		esac		if grep "^installed=no" $deplib > /dev/null; then		  path="-L$absdir/$objdir"		else		  eval libdir=`sed -n -e 's/^libdir=\(.*\)$/\1/p' $deplib`		  if test -z "$libdir"; then		    $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2		    exit 1		  fi		  if test "$absdir" != "$libdir"; then		    $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2		  fi		  path="-L$absdir"		fi		;;	      *) continue ;;	      esac	      case " $deplibs " in	      *" $path "*) ;;	      *) deplibs="$deplibs $path" ;;	      esac	    done	  fi	fi      done      dependency_libs="$newdependency_libs"      if test $pass = dlpreopen; then	# Link the dlpreopened libraries before other libraries	deplibs="$deplibs $save_deplibs"      elif test $pass != dlopen; then	# Make sure lib_search_path contains only unique directories.	lib_search_path=	for dir in $new_lib_search_path; do	  case "$lib_search_path " in	  *" $dir "*) ;;	  *) lib_search_path="$lib_search_path $dir" ;;	  esac	done	lib_search_path="$lib_search_path $sys_lib_search_path"	if test "$linkmode,$pass" != "prog,link"; then	  vars="deplibs"	else	  vars="compile_deplibs finalize_deplibs"	fi	for var in $vars dependency_libs; do	  # Make sure that $var contains only unique libraries	  # and add them in reverse order	  eval tmp_libs=\"\$$var\"	  new_libs=	  for deplib in $tmp_libs; do	    case "$deplib" in	    -L*) new_libs="$deplib $new_libs" ;;	    *)	      case " $specialdeplibs " in	      *" $deplib "*) new_libs="$deplib $new_libs" ;;	      *)		case " $new_libs " in		*" $deplib "*) ;;		*) new_libs="$deplib $new_libs" ;;		esac		;;	      esac	      ;;	    esac	  done	  tmp_libs=	  for deplib in $new_libs; do	    case "$deplib" in	    -L*)	      case " $tmp_libs " in	      *" $deplib "*) ;;	      *) tmp_libs="$tmp_libs $deplib" ;;	      esac	      ;;	    *) tmp_libs="$tmp_libs $deplib" ;;	    esac	  done	  eval $var=\"$tmp_libs\"	done      fi    done    if test $linkmode = prog; then      dlfiles="$newdlfiles"      dlprefiles="$newdlprefiles"    fi    case $linkmode in    oldlib)      if test -n "$deplibs"; then	$echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2      fi      if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then	$echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2      fi      if test -n "$rpath"; then	$echo "$modename: warning: \`-rpath' is ignored for archives" 1>&2      fi      if test -n "$xrpath"; then	$echo "$modename: warning: \`-R' is ignored for archives" 1>&2      fi      if test -n "$vinfo"; then	$echo "$modename: warning: \`-version-info' is ignored for archives" 1>&2      fi      if test -n "$release"; then	$echo "$modename: warning: \`-release' is ignored for archives" 1>&2      fi      if test -n "$export_symbols" || test -n "$export_symbols_regex"; then	$echo "$modename: warning: \`-export-symbols' is ignored for archives" 1>&2      fi      # Now set the variables for building old libraries.      build_libtool_libs=no      oldlibs="$output"      objs="$objs$old_deplibs"      ;;    lib)      # Make sure we only generate libraries of the form `libNAME.la'.      case "$outputname" in      lib*)	name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`	eval libname=\"$libname_spec\"	;;      *)	if test "$module" = no; then	  $echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2	  $echo "$help" 1>&2	  exit 1	fi	if test "$need_lib_prefix" != no; then	  # Add the "lib" prefix for modules if required	  name=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`	  eval libname=\"$libname_spec\"	else	  libname=`$echo "X$outputname" | $Xsed -e 's/\.la$//'`	fi	;;      esac      if test -n "$objs"; then	if test "$deplibs_check_method" != pass_all; then	  $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1	  exit 1	else	  echo	  echo "*** Warning: Linking the shared library $output against the non-libtool"	  echo "*** objects $objs is not portable!"	  libobjs="$libobjs $objs"	fi      fi      if test "$dlself" != no; then	$echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2      fi      set dummy $rpath      if test $# -gt 2; then	$echo "$modename: warning: ignoring multiple \`-rpath's for a libtool library" 1>&2      fi      install_libdir="$2"      oldlibs=      if test -z "$rpath"; then	if test "$build_libtool_libs" = yes; then	  # Building a libtool convenience library.	  libext=al	  oldlibs="$output_objdir/$libname.$libext $oldlibs"	  build_libtool_libs=convenience	  build_old_libs=yes	fi	if test -n "$vinfo"; then	  $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2	fi	if test -n "$release"; then	  $echo "$modename: warning: \`-release' is ignored for convenience libraries" 1>&2	fi      else	# Parse the version information argument.	IFS="${IFS= 	}"; save_ifs="$IFS"; IFS=':'	set dummy $vinfo 0 0 0	IFS="$save_ifs"	if test -n "$8"; then	  $echo "$modename: too many parameters to \`-version-info'" 1>&2	  $echo "$help" 1>&2	  exit 1	fi	current="$2"	revision="$3"	age="$4"	# Check that each of the things are valid numbers.	case "$current" in	0 | [1-9] | [1-9][0-9]*) ;;	*)	  $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2	  $echo "$modename: \`$vinfo' is not valid version information" 1>&2	  exit 1	  ;;	esac	case "$revision" in	0 | [1-9] | [1-9][0-9]*) ;;	*)	  $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2	  $echo "$modename: \`$vinfo' is not valid version information" 1>&2	  exit 1	  ;;	esac	case "$age" in	0 | [1-9] | [1-9][0-9]*) ;;	*)	  $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2	  $echo "$modename: \`$vinfo' is not valid version information" 1>&2	  exit 1	  ;;	esac	if test $age -gt $current; then	  $echo "$modename: AGE \`$age' is greater than the current interface number \`$current'" 1>&2	  $echo "$modename: \`$vinfo' is not valid version information" 1>&2	  exit 1	fi	# Calculate the version variables.	major=	versuffix=	verstring=	case "$version_type" in	none) ;;	irix)	  major=`expr $current - $age + 1`	  versuffix="$major.$revision"	  verstring="sgi$major.$revision"	  # Add in all the interfaces that we are compatible with.	  loop=$revision	  while test $loop != 0; do	    iface=`expr $revision - $loop`	    loop=`expr $loop - 1`	    verstring="sgi$major.$iface:$verstring"	  done	  ;;	linux)	  major=.`expr $current - $age`	  versuffix="$major.$age.$revision"	  ;;	osf)	  major=`expr $current - $age`	  versuffix=".$current.$age.$revision"	  verstring="$current.$age.$revision"	  # Add in all the interfaces that we are compatible with.	  loop=$age	  while test $loop != 0; do	    iface=`expr $current - $loop`	    loop=`expr $loop - 1`	    verstring="$verstring:${iface}.0"	  done	  # Make executables depend on our current version.	  verstring="$verstring:${current}.0"	  ;;	sunos)	  major=".$current"	  versuffix=".$current.$revision"	  ;;	freebsd-aout)	  major=".$current"	  versuffix=".$current.$revision";	  ;;	freebsd-elf)	  major=".$current"	  versuffix=".$current";	  ;;	windows)	  # Like Linux, but with '-' rather than '.', since we only	  # want one extension on Windows 95.	  major=`expr $current - $age`	  v

⌨️ 快捷键说明

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