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

📄 ltmain.sh

📁 在Linux下实现magnification功能
💻 SH
📖 第 1 页 / 共 5 页
字号:
      eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\`    else      shlib_search_path=    fi    eval sys_lib_search_path=\"$sys_lib_search_path_spec\"    eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\"    output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'`    if test "X$output_objdir" = "X$output"; then      output_objdir="$objdir"    else      output_objdir="$output_objdir/$objdir"    fi    # Create the object directory.    if test ! -d "$output_objdir"; then      $show "$mkdir $output_objdir"      $run $mkdir $output_objdir      exit_status=$?      if test "$exit_status" -ne 0 && test ! -d "$output_objdir"; then	exit $exit_status      fi    fi    # Determine the type of output    case $output in    "")      $echo "$modename: you must specify an output file" 1>&2      $echo "$help" 1>&2      exit $EXIT_FAILURE      ;;    *.$libext) linkmode=oldlib ;;    *.lo | *.$objext) linkmode=obj ;;    *.la) linkmode=lib ;;    *) linkmode=prog ;; # Anything else should be a program.    esac    case $host in    *cygwin* | *mingw* | *pw32*)      # don't eliminate duplications in $postdeps and $predeps      duplicate_compiler_generated_deps=yes      ;;    *)      duplicate_compiler_generated_deps=$duplicate_deps      ;;    esac    specialdeplibs=    libs=    # Find all interdependent deplibs by searching for libraries    # that are linked more than once (e.g. -la -lb -la)    for deplib in $deplibs; do      if test "X$duplicate_deps" = "Xyes" ; then	case "$libs " in	*" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;	esac      fi      libs="$libs $deplib"    done    if test "$linkmode" = lib; then      libs="$predeps $libs $compiler_lib_search_path $postdeps"      # Compute libraries that are listed more than once in $predeps      # $postdeps and mark them as special (i.e., whose duplicates are      # not to be eliminated).      pre_post_deps=      if test "X$duplicate_compiler_generated_deps" = "Xyes" ; then	for pre_post_dep in $predeps $postdeps; do	  case "$pre_post_deps " in	  *" $pre_post_dep "*) specialdeplibs="$specialdeplibs $pre_post_deps" ;;	  esac	  pre_post_deps="$pre_post_deps $pre_post_dep"	done      fi      pre_post_deps=    fi    deplibs=    newdependency_libs=    newlib_search_path=    need_relink=no # whether we're linking any uninstalled libtool libraries    notinst_deplibs= # not-installed libtool libraries    case $linkmode in    lib)	passes="conv link"	for file in $dlfiles $dlprefiles; do	  case $file in	  *.la) ;;	  *)	    $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2	    exit $EXIT_FAILURE	    ;;	  esac	done	;;    prog)	compile_deplibs=	finalize_deplibs=	alldeplibs=no	newdlfiles=	newdlprefiles=	passes="conv scan dlopen dlpreopen link"	;;    *)  passes="conv"	;;    esac    for pass in $passes; do      if test "$linkmode,$pass" = "lib,link" ||	 test "$linkmode,$pass" = "prog,scan"; then	libs="$deplibs"	deplibs=      fi      if test "$linkmode" = prog; then	case $pass in	dlopen) libs="$dlfiles" ;;	dlpreopen) libs="$dlprefiles" ;;	link) libs="$deplibs %DEPLIBS% $dependency_libs" ;;	esac      fi      if test "$pass" = dlopen; then	# Collect dlpreopened libraries	save_deplibs="$deplibs"	deplibs=      fi      for deplib in $libs; do	lib=	found=no	case $deplib in	-mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe)	  if test "$linkmode,$pass" = "prog,link"; then	    compile_deplibs="$deplib $compile_deplibs"	    finalize_deplibs="$deplib $finalize_deplibs"	  else	    compiler_flags="$compiler_flags $deplib"	  fi	  continue	  ;;	-l*)	  if test "$linkmode" != lib && test "$linkmode" != prog; then	    $echo "$modename: warning: \`-l' is ignored for archives/objects" 1>&2	    continue	  fi	  name=`$echo "X$deplib" | $Xsed -e 's/^-l//'`	  for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do	    for search_ext in .la $std_shrext .so .a; do	      # Search the libtool library	      lib="$searchdir/lib${name}${search_ext}"	      if test -f "$lib"; then		if test "$search_ext" = ".la"; then		  found=yes		else		  found=no		fi		break 2	      fi	    done	  done	  if test "$found" != yes; then	    # deplib doesn't seem to be a libtool library	    if test "$linkmode,$pass" = "prog,link"; then	      compile_deplibs="$deplib $compile_deplibs"	      finalize_deplibs="$deplib $finalize_deplibs"	    else	      deplibs="$deplib $deplibs"	      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"	    fi	    continue	  else # deplib is a libtool library	    # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib,	    # We need to do some special things here, and not later.	    if test "X$allow_libtool_libs_with_static_runtimes" = "Xyes" ; then	      case " $predeps $postdeps " in	      *" $deplib "*)		if (${SED} -e '2q' $lib |                    grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then		  library_names=		  old_library=		  case $lib in		  */* | *\\*) . $lib ;;		  *) . ./$lib ;;		  esac		  for l in $old_library $library_names; do		    ll="$l"		  done		  if test "X$ll" = "X$old_library" ; then # only static version available		    found=no		    ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`		    test "X$ladir" = "X$lib" && ladir="."		    lib=$ladir/$old_library		    if test "$linkmode,$pass" = "prog,link"; then		      compile_deplibs="$deplib $compile_deplibs"		      finalize_deplibs="$deplib $finalize_deplibs"		    else		      deplibs="$deplib $deplibs"		      test "$linkmode" = lib && newdependency_libs="$deplib $newdependency_libs"		    fi		    continue		  fi		fi	        ;;	      *) ;;	      esac	    fi	  fi	  ;; # -l	-L*)	  case $linkmode in	  lib)	    deplibs="$deplib $deplibs"	    test "$pass" = conv && continue	    newdependency_libs="$deplib $newdependency_libs"	    newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`	    ;;	  prog)	    if test "$pass" = conv; then	      deplibs="$deplib $deplibs"	      continue	    fi	    if test "$pass" = scan; then	      deplibs="$deplib $deplibs"	    else	      compile_deplibs="$deplib $compile_deplibs"	      finalize_deplibs="$deplib $finalize_deplibs"	    fi	    newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`	    ;;	  *)	    $echo "$modename: warning: \`-L' is ignored for archives/objects" 1>&2	    ;;	  esac # linkmode	  continue	  ;; # -L	-R*)	  if test "$pass" = link; then	    dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'`	    # Make sure the xrpath contains only unique directories.	    case "$xrpath " in	    *" $dir "*) ;;	    *) xrpath="$xrpath $dir" ;;	    esac	  fi	  deplibs="$deplib $deplibs"	  continue	  ;;	*.la) lib="$deplib" ;;	*.$libext)	  if test "$pass" = conv; then	    deplibs="$deplib $deplibs"	    continue	  fi	  case $linkmode in	  lib)	    valid_a_lib=no	    case $deplibs_check_method in	      match_pattern*)		set dummy $deplibs_check_method	        match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"`		if eval $echo \"$deplib\" 2>/dev/null \		    | $SED 10q \		    | $EGREP "$match_pattern_regex" > /dev/null; then		  valid_a_lib=yes		fi		;;	      pass_all)		valid_a_lib=yes		;;            esac	    if test "$valid_a_lib" != yes; then	      $echo	      $echo "*** Warning: Trying to link with static lib archive $deplib."	      $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"	      $echo "*** because the file extensions .$libext of this argument makes me believe"	      $echo "*** that it is just a static archive that I should not used here."	    else	      $echo	      $echo "*** Warning: Linking the shared library $output against the"	      $echo "*** static library $deplib is not portable!"	      deplibs="$deplib $deplibs"	    fi	    continue	    ;;	  prog)	    if test "$pass" != link; then	      deplibs="$deplib $deplibs"	    else	      compile_deplibs="$deplib $compile_deplibs"	      finalize_deplibs="$deplib $finalize_deplibs"	    fi	    continue	    ;;	  esac # linkmode	  ;; # *.$libext	*.lo | *.$objext)	  if test "$pass" = conv; then	    deplibs="$deplib $deplibs"	  elif test "$linkmode" = prog; then	    if test "$pass" = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then	      # If there is no dlopen support or we're linking statically,	      # we need to preload.	      newdlprefiles="$newdlprefiles $deplib"	      compile_deplibs="$deplib $compile_deplibs"	      finalize_deplibs="$deplib $finalize_deplibs"	    else	      newdlfiles="$newdlfiles $deplib"	    fi	  fi	  continue	  ;;	%DEPLIBS%)	  alldeplibs=yes	  continue	  ;;	esac # case $deplib	if test "$found" = yes || test -f "$lib"; then :	else	  $echo "$modename: cannot find the library \`$lib' or unhandled argument \`$deplib'" 1>&2	  exit $EXIT_FAILURE	fi	# Check to see that this really is a libtool archive.	if (${SED} -e '2q' $lib | grep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then :	else	  $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2	  exit $EXIT_FAILURE	fi	ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'`	test "X$ladir" = "X$lib" && ladir="."	dlname=	dlopen=	dlpreopen=	libdir=	library_names=	old_library=	# If the library was installed with an old release of libtool,	# it will not redefine variables installed, or shouldnotlink	installed=yes	shouldnotlink=no	avoidtemprpath=	# Read the .la file	case $lib in	*/* | *\\*) . $lib ;;	*) . ./$lib ;;	esac	if test "$linkmode,$pass" = "lib,link" ||	   test "$linkmode,$pass" = "prog,scan" ||	   { test "$linkmode" != prog && test "$linkmode" != lib; }; then	  test -n "$dlopen" && dlfiles="$dlfiles $dlopen"	  test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen"	fi	if test "$pass" = conv; then	  # Only check for convenience libraries	  deplibs="$lib $deplibs"	  if test -z "$libdir"; then	    if test -z "$old_library"; then	      $echo "$modename: cannot find name of link library for \`$lib'" 1>&2	      exit $EXIT_FAILURE	    fi	    # It is a libtool convenience library, so add in its objects.	    convenience="$convenience $ladir/$objdir/$old_library"	    old_convenience="$old_convenience $ladir/$objdir/$old_library"	    tmp_libs=	    for deplib in $dependency_libs; do	      deplibs="$deplib $deplibs"              if test "X$duplicate_deps" = "Xyes" ; then	        case "$tmp_libs " in	        *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;;	        esac              fi	      tmp_libs="$tmp_libs $deplib"	    done	  elif test "$linkmode" != prog && test "$linkmode" != lib; then	    $echo "$modename: \`$lib' is not a convenience library" 1>&2	    exit $EXIT_FAILURE	  fi	  continue	fi # $pass = conv	# Get the name of the library we link against.	linklib=	for l in $old_library $library_names; do	  linklib="$l"	done	if test -z "$linklib"; then	  $echo "$modename: cannot find name of link library for \`$lib'" 1>&2	  exit $EXIT_FAILURE	fi	# This library was specified with -dlopen.	if test "$pass" = dlopen; then	  if test -z "$libdir"; then	    $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2	    exit $EXIT_FAILURE	  fi	  if test -z "$dlname" ||	     test "$dlopen_support" != yes ||	     test "$build_libtool_libs" = no; then	    # If there is no dlname, no dlopen support or we're linking	    # statically, we need to preload.  We also need to preload any	    # dependent libraries so libltdl's deplib preloader doesn't	    # bomb out in the load deplibs phase.	    dlprefiles="$dlprefiles $lib $dependency_libs"	  else	    newdlfiles="$newdlfiles $lib"	  fi	  continue	fi # $pass = dlopen	# We need an absolute path.	case $ladir in	[\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;;	*)	  abs_ladir=`cd "$ladir" && pwd`	  if test -z "$abs_ladir"; then	    $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2	    $echo "$modename: passing it literally to the linker, although it might fail" 1>&2	    abs_ladir="$ladir"	  fi	  ;;	esac	laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'`	# Find the relevant object directory and library name.	if test "X$installed" = Xyes; then	  if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then	    $echo "$modename: warning: library \`$lib' was moved." 1>&2	    dir="$ladir"	    absdir="$abs_ladir"	    libdir="$abs_ladir"	  else	    dir="$libdir"	    absdir="$libdir"	  fi	  test "X$hardcode_automatic" = Xyes && avoidtemprpath=yes	else	  if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then	    dir="$ladir"	    absdir="$abs_ladir"	    # Remove this search path later	    notinst_path="$notinst_path $abs_ladir"	  else	    dir="$ladir/$objdir"	    absdir="$abs_ladir/$objdir"	    # Remove this search path later	    notinst_path="$notinst_path $abs_ladir"	  fi	fi # $installed = yes	name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`	# This library was specified with -dlpreopen.	if test "$pass" = dlpreopen; then	  if test -z "$libdir"; then	    $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2	    exit $EXIT_FAILURE	  fi	  # Prefer using a static library (so that no silly _DYNAMIC symbols	  # are required to link).	  if test -n "$old_library"; then	    newdlprefiles="$newdlprefiles $dir/$old_library"	  # Otherwise, use the dlname, so that lt_dlopen finds it.	  elif test -n "$dlname"; then	    newdlprefiles="$newdlprefiles $dir/$dlname"	  else	    newdlprefiles="$newdlprefiles $dir/$linklib"	  fi	fi # $pass = dlpreopen	if test -z "$libdir"; then	  # Link the convenience library	  if test "$linkmode" = lib; then	    deplibs="$dir/$old_library $deplibs"	  elif test "$linkmode,$pass" = "prog,link"; then	    compile_deplibs="$dir/$old_library $compile_deplibs"	    finalize_deplibs="$dir/$old_library $finalize_deplibs"	  else	    deplibs="$lib $deplibs" # used for prog,scan pass	  fi	  continue	fi	if test "$linkmode" = prog && test "$pass" != link; then	  newlib_search_path="$newlib_search_path $ladir"	  deplibs="$lib

⌨️ 快捷键说明

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