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

📄 ltmain.sh

📁 这是一款VC++编写的软件
💻 SH
📖 第 1 页 / 共 5 页
字号:

	if test "X$installed" = Xyes; then
	  dir="$libdir"
	else
	  dir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'`
	  if test "X$dir" = "X$arg"; then
	    dir="$objdir"
	  else
	    dir="$dir/$objdir"
	  fi
	fi

        if test -z "$libdir"; then
	  # It is a libtool convenience library, so add in its objects.
	  convenience="$convenience $dir/$old_library"
	  old_convenience="$old_convenience $dir/$old_library"
	  deplibs="$deplibs$dependency_libs"
	  compile_command="$compile_command $dir/$old_library$dependency_libs"
	  finalize_command="$finalize_command $dir/$old_library$dependency_libs"
	  continue
	fi

        # This library was specified with -dlopen.
        if test "$prev" = dlfiles; then
          dlfiles="$dlfiles $arg"
          if test -z "$dlname" || test "$build_libtool_libs" = no; then
            # If there is no dlname or we're linking statically,
            # we need to preload.
            prev=dlprefiles
          else
            # We should not create a dependency on this library, but we
	    # may need any libraries it requires.
	    compile_command="$compile_command$dependency_libs"
	    finalize_command="$finalize_command$dependency_libs"
            prev=
            continue
          fi
        fi

        # The library was specified with -dlpreopen.
        if test "$prev" = dlprefiles; then
          # Prefer using a static library (so that no silly _DYNAMIC symbols
          # are required to link).
          if test -n "$old_library"; then
            dlprefiles="$dlprefiles $dir/$old_library"
          else
            dlprefiles="$dlprefiles $dir/$linklib"
          fi
          prev=
        fi

        if test "$build_libtool_libs" = yes && test -n "$library_names"; then
          link_against_libtool_libs="$link_against_libtool_libs $arg"
          if test -n "$shlibpath_var"; then
            # Make sure the rpath contains only unique directories.
            case "$temp_rpath " in
            *" $dir "*) ;;
            *) temp_rpath="$temp_rpath $dir" ;;
            esac
          fi

	  # This is the magic to use -rpath.
          if test -n "$hardcode_libdir_flag_spec"; then
            if test -n "$hardcode_libdir_separator"; then
              if test -z "$hardcode_libdirs"; then
                # Put the magic libdir with the hardcode flag.
                hardcode_libdirs="$libdir"
                libdir="@HARDCODE_LIBDIRS@"
              else
                # Just accumulate the unique libdirs.
		case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in
		*"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*)
		  ;;
		*)
		  hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir"
		  ;;
		esac
                libdir=
              fi
            fi

            if test -n "$libdir"; then
              eval flag=\"$hardcode_libdir_flag_spec\"

              compile_command="$compile_command $flag"
              finalize_command="$finalize_command $flag"
            fi
          elif test -n "$runpath_var"; then
            # Do the same for the permanent run path.
            case "$perm_rpath " in
            *" $libdir "*) ;;
            *) perm_rpath="$perm_rpath $libdir" ;;
            esac
          fi


	  lib_linked=yes
          case "$hardcode_action" in
          immediate | unsupported)
            if test "$hardcode_direct" = no; then
              compile_command="$compile_command $dir/$linklib"
            elif test "$hardcode_minus_L" = no; then
	      case "$host" in
	      *-*-sunos*)
                compile_shlibpath="$compile_shlibpath$dir:"
		;;
	      esac
              compile_command="$compile_command -L$dir -l$name"
            elif test "$hardcode_shlibpath_var" = no; then
              compile_shlibpath="$compile_shlibpath$dir:"
              compile_command="$compile_command -l$name"
	    else
	      lib_linked=no
            fi
            ;;

          relink)
            # We need an absolute path.
            case "$dir" in
            /* | [A-Za-z]:[/\\]*) ;;
            *)
              absdir=`cd "$dir" && pwd`
              if test -z "$absdir"; then
                $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2
                exit 1
              fi
              dir="$absdir"
              ;;
            esac

            if test "$hardcode_direct" = yes; then
              compile_command="$compile_command $dir/$linklib"
            elif test "$hardcode_minus_L" = yes; then
              compile_command="$compile_command -L$dir -l$name"
            elif test "$hardcode_shlibpath_var" = yes; then
              compile_shlibpath="$compile_shlibpath$dir:"
              compile_command="$compile_command -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

          # Finalize command for both is simple: just hardcode it.
          if test "$hardcode_direct" = yes; then
            finalize_command="$finalize_command $libdir/$linklib"
          elif test "$hardcode_minus_L" = yes; then
            finalize_command="$finalize_command -L$libdir -l$name"
          elif test "$hardcode_shlibpath_var" = yes; then
            finalize_shlibpath="$finalize_shlibpath$libdir:"
            finalize_command="$finalize_command -l$name"
          else
            # We cannot seem to hardcode it, guess we'll fake it.
            finalize_command="$finalize_command -L$libdir -l$name"
          fi
        else
          # Transform directly to old archives if we don't build new libraries.
          if test -n "$pic_flag" && test -z "$old_library"; then
            $echo "$modename: cannot find static library for \`$arg'" 1>&2
            exit 1
          fi

	  # 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_command="$compile_command $dir/$linklib"
	    finalize_command="$finalize_command $dir/$linklib"
	  else
	    compile_command="$compile_command -L$dir -l$name"
	    finalize_command="$finalize_command -L$dir -l$name"
	  fi
        fi

	# Add in any libraries that this one depends upon.
	compile_command="$compile_command$dependency_libs"
	finalize_command="$finalize_command$dependency_libs"
	continue
        ;;

      # Some other compiler argument.
      *)
	# Unknown arguments in both finalize_command and compile_command need
	# to be aesthetically quoted because they are evaled later.
	arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`
	case "$arg" in
	*[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \	]*|*]*)
	  arg="\"$arg\""
	  ;;
	esac
        ;;
      esac

      # Now actually substitute the argument into the commands.
      if test -n "$arg"; then
	compile_command="$compile_command $arg"
	finalize_command="$finalize_command $arg"
      fi
    done

    if test -n "$prev"; then
      $echo "$modename: the \`$prevarg' option requires an argument" 1>&2
      $echo "$help" 1>&2
      exit 1
    fi

    if test -n "$export_symbols" && test "$module" = yes; then
      $echo "$modename: \`-export-symbols' is not supported for modules"
      exit 1
    fi
    
    oldlibs=
    # calculate the name of the file, without its directory
    outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'`

    case "$output" in
    "")
      $echo "$modename: you must specify an output file" 1>&2
      $echo "$help" 1>&2
      exit 1
      ;;

    *.a | *.lib)
      if test -n "$link_against_libtool_libs"; then
        $echo "$modename: error: cannot link libtool libraries into archives" 1>&2
        exit 1
      fi

      if test -n "$deplibs"; then
        $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2
      fi

      if test -n "$dlfiles$dlprefiles"; 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 "$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"; 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"
      ;;

    *.la)
      # Make sure we only generate libraries of the form `libNAME.la'.
      case "$outputname" in
      lib*) ;;
      *)
	$echo "$modename: libtool library \`$output' must begin with \`lib'" 1>&2
	$echo "$help" 1>&2
	exit 1
	;;
      esac

      name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'`
      eval libname=\"$libname_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

      # All the library-specific variables (install_libdir is set above).
      library_names=
      old_library=
      dlname=

      if test -n "$objs"; then
        $echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1
        exit 1
      fi

      # How the heck are we supposed to write a wrapper for a shared library?
      if test -n "$link_against_libtool_libs"; then
        $echo "$modename: error: cannot link shared libraries into libtool libraries" 1>&2
        exit 1
      fi

      if test -n "$dlfiles$dlprefiles"; then
        $echo "$modename: warning: \`-dlopen' 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
	# Building a libtool convenience library.
        libext=al
	oldlibs="$output_objdir/$libname.$libext $oldlibs"
	build_libtool_libs=convenience
	dependency_libs="$deplibs"

	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) ;;

	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`

⌨️ 快捷键说明

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