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

📄 ltmain.sh

📁 MPI stands for the Message Passing Interface. Written by the MPI Forum (a large committee comprising
💻 SH
📖 第 1 页 / 共 5 页
字号:
    esac    if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then      # non-PIC code in shared libraries is not supported      pic_mode=default    fi    # Calculate the filename of the output object if compiler does    # not support -o with -c    if test "$compiler_c_o" = no; then      output_obj=`$ECHO "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext}      lockfile="$output_obj.lock"      removelist="$removelist $output_obj $lockfile"      trap "$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE" 1 2 15    else      output_obj=      need_locks=no      lockfile=    fi    # Lock this critical section if it is needed    # We use this script file to make the link, it avoids creating a new file    if test "$need_locks" = yes; then      until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do	func_echo "Waiting for $lockfile to be removed"	sleep 2      done    elif test "$need_locks" = warn; then      if test -f "$lockfile"; then	$ECHO "\*** ERROR, $lockfile exists and contains:`cat $lockfile 2>/dev/null`This indicates that another process is trying to use the sametemporary object file, and libtool could not work around it becauseyour compiler does not support \`-c' and \`-o' together.  If yourepeat this compilation, it may succeed, by chance, but you had betteravoid parallel builds (make -j) in this platform, or get a bettercompiler."	$opt_dry_run || $RM $removelist	exit $EXIT_FAILURE      fi      $ECHO "$srcfile" > "$lockfile"    fi    if test -n "$fix_srcfile_path"; then      eval srcfile=\"$fix_srcfile_path\"    fi    func_quote_for_eval "$srcfile"    qsrcfile=$func_quote_for_eval_result    $opt_dry_run || $RM "$libobj" "${libobj}T"    # Only build a PIC object if we are building libtool libraries.    if test "$build_libtool_libs" = yes; then      # Without this assignment, base_compile gets emptied.      fbsd_hideous_sh_bug=$base_compile      if test "$pic_mode" != no; then	command="$base_compile $qsrcfile $pic_flag"      else	# Don't build PIC code	command="$base_compile $qsrcfile"      fi      func_mkdir_p "$xdir$objdir"      if test -z "$output_obj"; then	# Place PIC objects in $objdir	command="$command -o $lobj"      fi      $opt_dry_run || $RM "$lobj" "$output_obj"      func_show_eval "$command"	\          'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE'      if test "$need_locks" = warn &&	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then	$ECHO "\*** ERROR, $lockfile contains:`cat $lockfile 2>/dev/null`but it should contain:$srcfileThis indicates that another process is trying to use the sametemporary object file, and libtool could not work around it becauseyour compiler does not support \`-c' and \`-o' together.  If yourepeat this compilation, it may succeed, by chance, but you had betteravoid parallel builds (make -j) in this platform, or get a bettercompiler."	$opt_dry_run || $RM $removelist	exit $EXIT_FAILURE      fi      # Just move the object if needed, then go on to compile the next one      if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then	func_show_eval '$MV "$output_obj" "$lobj"' \	  'error=$?; $opt_dry_run || $RM $removelist; exit $error'      fi      # Allow error messages only from the first compilation.      if test "$suppress_opt" = yes; then	suppress_output=' >/dev/null 2>&1'      fi    fi    # Only build a position-dependent object if we build old libraries.    if test "$build_old_libs" = yes; then      if test "$pic_mode" != yes; then	# Don't build PIC code	command="$base_compile $qsrcfile$pie_flag"      else	command="$base_compile $qsrcfile $pic_flag"      fi      if test "$compiler_c_o" = yes; then	command="$command -o $obj"      fi      # Suppress compiler output if we already did a PIC compilation.      command="$command$suppress_output"      $opt_dry_run || $RM "$obj" "$output_obj"      func_show_eval "$command" \        '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE'      if test "$need_locks" = warn &&	 test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then	$ECHO "\*** ERROR, $lockfile contains:`cat $lockfile 2>/dev/null`but it should contain:$srcfileThis indicates that another process is trying to use the sametemporary object file, and libtool could not work around it becauseyour compiler does not support \`-c' and \`-o' together.  If yourepeat this compilation, it may succeed, by chance, but you had betteravoid parallel builds (make -j) in this platform, or get a bettercompiler."	$opt_dry_run || $RM $removelist	exit $EXIT_FAILURE      fi      # Just move the object if needed      if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then	func_show_eval '$MV "$output_obj" "$obj"' \	  'error=$?; $opt_dry_run || $RM $removelist; exit $error'      fi    fi    $opt_dry_run || {      func_write_libtool_object "$libobj" "$objdir/$objname" "$objname"      # Unlock the critical section if it was locked      if test "$need_locks" != no; then        $RM "$lockfile"      fi    }    exit $EXIT_SUCCESS}test "$mode" = compile && func_mode_compile ${1+"$@"}# func_mode_execute arg...func_mode_execute (){    $opt_debug    # The first argument is the command name.    cmd="$nonopt"    test -z "$cmd" && \      func_fatal_help "you must specify a COMMAND"    # Handle -dlopen flags immediately.    for file in $execute_dlfiles; do      test -f "$file" \	|| func_fatal_help "\`$file' is not a file"      dir=      case $file in      *.la)	# Check to see that this really is a libtool archive.	func_lalib_unsafe_p "$file" \	  || func_fatal_help "\`$lib' is not a valid libtool archive"	# Read the libtool library.	dlname=	library_names=	func_source "$file"	# Skip this library if it cannot be dlopened.	if test -z "$dlname"; then	  # Warn if it was a shared library.	  test -n "$library_names" && \	    func_warning "\`$file' was not linked with \`-export-dynamic'"	  continue	fi	func_dirname "$file" "" "."	dir="$func_dirname_result"	if test -f "$dir/$objdir/$dlname"; then	  dir="$dir/$objdir"	else	  if test ! -f "$dir/$dlname"; then	    func_fatal_error "cannot find \`$dlname' in \`$dir' or \`$dir/$objdir'"	  fi	fi	;;      *.lo)	# Just add the directory containing the .lo file.	func_dirname "$file" "" "."	dir="$func_dirname_result"	;;      *)	func_warning "\`-dlopen' is ignored for non-libtool libraries and objects"	continue	;;      esac      # Get the absolute pathname.      absdir=`cd "$dir" && pwd`      test -n "$absdir" && dir="$absdir"      # Now add the directory to shlibpath_var.      if eval "test -z \"\$$shlibpath_var\""; then	eval "$shlibpath_var=\"\$dir\""      else	eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\""      fi    done    # This variable tells wrapper scripts just to set shlibpath_var    # rather than running their programs.    libtool_execute_magic="$magic"    # Check if any of the arguments is a wrapper script.    args=    for file    do      case $file in      -*) ;;      *)	# Do a test to see if this is really a libtool program.	if func_ltwrapper_script_p "$file"; then	  func_source "$file"	elif func_ltwrapper_executable_p "$file"; then	  func_ltwrapper_scriptname "$file"	  func_source "$func_ltwrapper_scriptname_result"	fi	# Transform arg to wrapped name.	file="$progdir/$program"	;;      esac      # Quote arguments (to preserve shell metacharacters).      func_quote_for_eval "$file"      args="$args $func_quote_for_eval_result"    done    if test "X$opt_dry_run" = Xfalse; then      if test -n "$shlibpath_var"; then	# Export the shlibpath_var.	eval "export $shlibpath_var"      fi      # Restore saved environment variables      for lt_var in LANG LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES      do	eval "if test \"\${save_$lt_var+set}\" = set; then                $lt_var=\$save_$lt_var; export $lt_var	      else		$lt_unset $lt_var	      fi"      done      # Now prepare to actually exec the command.      exec_cmd="\$cmd$args"    else      # Display what would be done.      if test -n "$shlibpath_var"; then	eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\""	$ECHO "export $shlibpath_var"      fi      $ECHO "$cmd$args"      exit $EXIT_SUCCESS    fi}test "$mode" = execute && func_mode_execute ${1+"$@"}# func_mode_finish arg...func_mode_finish (){    $opt_debug    libdirs="$nonopt"    admincmds=    if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then      for dir      do	libdirs="$libdirs $dir"      done      for libdir in $libdirs; do	if test -n "$finish_cmds"; then	  # Do each command in the finish commands.	  func_execute_cmds "$finish_cmds" 'admincmds="$admincmds'"$cmd"'"'	fi	if test -n "$finish_eval"; then	  # Do the single finish_eval.	  eval cmds=\"$finish_eval\"	  $opt_dry_run || eval "$cmds" || admincmds="$admincmds       $cmds"	fi      done    fi    # Exit here if they wanted silent mode.    $opt_silent && exit $EXIT_SUCCESS    $ECHO "X----------------------------------------------------------------------" | $Xsed    $ECHO "Libraries have been installed in:"    for libdir in $libdirs; do      $ECHO "   $libdir"    done    $ECHO    $ECHO "If you ever happen to want to link against installed libraries"    $ECHO "in a given directory, LIBDIR, you must either use libtool, and"    $ECHO "specify the full pathname of the library, or use the \`-LLIBDIR'"    $ECHO "flag during linking and do at least one of the following:"    if test -n "$shlibpath_var"; then      $ECHO "   - add LIBDIR to the \`$shlibpath_var' environment variable"      $ECHO "     during execution"    fi    if test -n "$runpath_var"; then      $ECHO "   - add LIBDIR to the \`$runpath_var' environment variable"      $ECHO "     during linking"    fi    if test -n "$hardcode_libdir_flag_spec"; then      libdir=LIBDIR      eval flag=\"$hardcode_libdir_flag_spec\"      $ECHO "   - use the \`$flag' linker flag"    fi    if test -n "$admincmds"; then      $ECHO "   - have your system administrator run these commands:$admincmds"    fi    if test -f /etc/ld.so.conf; then      $ECHO "   - have your system administrator add LIBDIR to \`/etc/ld.so.conf'"    fi    $ECHO    $ECHO "See any operating system documentation about shared libraries for"    case $host in      solaris2.[6789]|solaris2.1[0-9])        $ECHO "more information, such as the ld(1), crle(1) and ld.so(8) manual"	$ECHO "pages."	;;      *)        $ECHO "more information, such as the ld(1) and ld.so(8) manual pages."        ;;    esac    $ECHO "X----------------------------------------------------------------------" | $Xsed    exit $EXIT_SUCCESS}test "$mode" = finish && func_mode_finish ${1+"$@"}# func_mode_install arg...func_mode_install (){    $opt_debug    # There may be an optional sh(1) argument at the beginning of    # install_prog (especially on Windows NT).    if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh ||       # Allow the use of GNU shtool's install command.       $ECHO "X$nonopt" | $GREP shtool >/dev/null; then      # Aesthetically quote it.      func_quote_for_eval "$nonopt"      install_prog="$func_quote_for_eval_result "      arg=$1      shift    else      install_prog=      arg=$nonopt    fi    # The real first argument should be the name of the installation program.    # Aesthetically quote it.    func_quote_for_eval "$arg"    install_prog="$install_prog$func_quote_for_eval_result"    # We need to accept at least all the BSD install flags.    dest=    files=    opts=    prev=    install_type=    isdir=no    stripme=    for arg    do      if test -n "$dest"; then	files="$files $dest"	dest=$arg	continue      fi      case $arg in      -d) isdir=yes ;;      -f)	case " $install_prog " in	*[\\\ /]cp\ *) ;;	*) prev=$arg ;;	esac	;;      -g | -m | -o)	prev=$arg	;;      -s)	stripme=" -s"	continue	;;      -*)	;;      *)	# If the previous option needed an argument, then skip it.	if test -n "$prev"; then	  prev=	else	  dest=$arg	  continue	fi	;;      esac      # Aesthetically quote the argument.      func_quote_for_eval "$arg"      install_prog="$install_prog $func_quote_for_eval_result"    done    test -z "$install_prog" && \      func_fatal_help "you must specify an install program"    test -n "$prev" && \      func_fatal_help "the \`$prev' op

⌨️ 快捷键说明

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