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

📄 libtool

📁 ESRI SHAPE文件读/写源代码。SHAPE是GIS中的重要文件格式
💻
📖 第 1 页 / 共 5 页
字号:
	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`	  versuffix="-$major-$age-$revision"	  ;;	*)	  $echo "$modename: unknown library version type \`$version_type'" 1>&2	  echo "Fatal configuration error.  See the $PACKAGE docs for more information." 1>&2	  exit 1	  ;;	esac	# Clear the version info if we defaulted, and they specified a release.	if test -z "$vinfo" && test -n "$release"; then	  major=	  verstring="0.0"	  if test "$need_version" = no; then	    versuffix=	  else	    versuffix=".0.0"	  fi	fi	# Remove version info from name if versioning should be avoided	if test "$avoid_version" = yes && test "$need_version" = no; then	  major=	  versuffix=	  verstring=""	fi		# Check to see if the archive will have undefined symbols.	if test "$allow_undefined" = yes; then	  if test "$allow_undefined_flag" = unsupported; then	    $echo "$modename: warning: undefined symbols not allowed in $host shared libraries" 1>&2	    build_libtool_libs=no	    build_old_libs=yes	  fi	else	  # Don't allow undefined symbols.	  allow_undefined_flag="$no_undefined_flag"	fi	dependency_libs="$deplibs"	case "$host" in	*-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*)	  # these systems don't actually have a c library (as such)!	  ;;	*)	  # Add libc to deplibs on all other systems.	  deplibs="$deplibs -lc"	  ;;	esac      fi      # Create the output directory, or remove our outputs if we need to.      if test -d $output_objdir; then	$show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*"	$run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*      else	$show "$mkdir $output_objdir"	$run $mkdir $output_objdir	status=$?	if test $status -ne 0 && test ! -d $output_objdir; then	  exit $status	fi      fi      # Now set the variables for building old libraries.      if test "$build_old_libs" = yes && test "$build_libtool_libs" != convenience ; then	oldlibs="$oldlibs $output_objdir/$libname.$libext"	# Transform .lo files to .o files.	oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP`      fi      if test "$build_libtool_libs" = yes; then	# Transform deplibs into only deplibs that can be linked in shared.	name_save=$name	libname_save=$libname	release_save=$release	versuffix_save=$versuffix	major_save=$major	# I'm not sure if I'm treating the release correctly.  I think	# release should show up in the -l (ie -lgmp5) so we don't want to	# add it in twice.  Is that correct?	release=""	versuffix=""	major=""	newdeplibs=	droppeddeps=no	case "$deplibs_check_method" in	pass_all)	  # Don't check for shared/static.  Everything works.	  # This might be a little naive.  We might want to check	  # whether the library exists or not.  But this is on	  # osf3 & osf4 and I'm not really sure... Just	  # implementing what was already the behaviour.	  newdeplibs=$deplibs	  ;;	test_compile)	  # This code stresses the "libraries are programs" paradigm to its	  # limits. Maybe even breaks it.  We compile a program, linking it	  # against the deplibs as a proxy for the library.  Then we can check	  # whether they linked in statically or dynamically with ldd.	  $rm conftest.c	  cat > conftest.c <<EOF	  int main() { return 0; }EOF	  $rm conftest	  $C_compiler -o conftest conftest.c $deplibs	  if test $? -eq 0 ; then	    ldd_output=`ldd conftest`	    for i in $deplibs; do	      name="`expr $i : '-l\(.*\)'`"	      # If $name is empty we are operating on a -L argument.	      if test "$name" != "" ; then		libname=`eval \\$echo \"$libname_spec\"`		deplib_matches=`eval \\$echo \"$library_names_spec\"`		set dummy $deplib_matches		deplib_match=$2		if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then		  newdeplibs="$newdeplibs $i"		else		  droppeddeps=yes		  echo		  echo "*** Warning: This library needs some functionality provided by $i."		  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."		fi	      else		newdeplibs="$newdeplibs $i"	      fi	    done	  else	    # Error occured in the first compile.  Let's try to salvage the situation:	    # Compile a seperate program for each library.	    for i in $deplibs; do	      name="`expr $i : '-l\(.*\)'`"	     # If $name is empty we are operating on a -L argument.	      if test "$name" != "" ; then		$rm conftest		$C_compiler -o conftest conftest.c $i		# Did it work?		if test $? -eq 0 ; then		  ldd_output=`ldd conftest`		  libname=`eval \\$echo \"$libname_spec\"`		  deplib_matches=`eval \\$echo \"$library_names_spec\"`		  set dummy $deplib_matches		  deplib_match=$2		  if test `expr "$ldd_output" : ".*$deplib_match"` -ne 0 ; then		    newdeplibs="$newdeplibs $i"		  else		    droppeddeps=yes		    echo		    echo "*** Warning: This library needs some functionality provided by $i."		    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."		  fi		else		  droppeddeps=yes		  echo		  echo "*** Warning!  Library $i is needed by this library but I was not able to"		  echo "***  make it link in!  You will probably need to install it or some"		  echo "*** library that it depends on before this library will be fully"		  echo "*** functional.  Installing it before continuing would be even better."		fi	      else		newdeplibs="$newdeplibs $i"	      fi	    done	  fi	  ;;	file_magic*)	  set dummy $deplibs_check_method	  file_magic_regex="`expr \"$deplibs_check_method\" : \"$2 \(.*\)\"`"	  for a_deplib in $deplibs; do	    name="`expr $a_deplib : '-l\(.*\)'`"	    # If $name is empty we are operating on a -L argument.	    if test "$name" != "" ; then	      libname=`eval \\$echo \"$libname_spec\"`	      for i in $lib_search_path; do		    potential_libs=`ls $i/$libname[.-]* 2>/dev/null`		    for potent_lib in $potential_libs; do		      # Follow soft links.		      if ls -lLd "$potlib" 2>/dev/null \			 | grep " -> " >/dev/null; then			continue 		      fi		      # The statement above tries to avoid entering an		      # endless loop below, in case of cyclic links.		      # We might still enter an endless loop, since a link		      # loop can be closed while we follow links,		      # but so what?		      potlib="$potent_lib"		      while test -h "$potlib" 2>/dev/null; do			potliblink=`ls -ld $potlib | sed 's/.* -> //'`			case "$potliblink" in			[\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";;			*) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";;			esac		      done		      if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \			 | sed 10q \			 | egrep "$file_magic_regex" > /dev/null; then			newdeplibs="$newdeplibs $a_deplib"			a_deplib=""			break 2		      fi		    done	      done	      if test -n "$a_deplib" ; then		droppeddeps=yes		echo		echo "*** Warning: This library needs some functionality provided by $a_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."	      fi	    else	      # Add a -L argument.	      newdeplibs="$newdeplibs $a_deplib"	    fi	  done # Gone through all deplibs.	  ;;	none | unknown | *)	  newdeplibs=""	  if $echo "X $deplibs" | $Xsed -e 's/ -lc$//' \	       -e 's/ -[LR][^ ]*//g' -e 's/[ 	]//g' |	     grep . >/dev/null; then	    echo	    if test "X$deplibs_check_method" = "Xnone"; then	      echo "*** Warning: inter-library dependencies are not supported in this platform."	    else	      echo "*** Warning: inter-library dependencies are not known to be supported."	    fi	    echo "*** All declared inter-library dependencies are being dropped."	    droppeddeps=yes	  fi	  ;;	esac	versuffix=$versuffix_save	major=$major_save	release=$release_save	libname=$libname_save	name=$name_save	if test "$droppeddeps" = yes; then	  if test "$module" = yes; then	    echo	    echo "*** Warning: libtool could not satisfy all declared inter-library"	    echo "*** dependencies of module $libname.  Therefore, libtool will create"	    echo "*** a static module, that should work as long as the dlopening"	    echo "*** application is linked with the -dlopen flag."	    if test -z "$global_symbol_pipe"; then	      echo	      echo "*** However, this would only work if libtool was able to extract symbol"	      echo "*** lists from a program, using \`nm' or equivalent, but libtool could"	      echo "*** not find such a program.  So, this module is probably useless."	      echo "*** \`nm' from GNU binutils and a full rebuild may help."	    fi	    if test "$build_old_libs" = no; then	      oldlibs="$output_objdir/$libname.$libext"	      build_libtool_libs=module	      build_old_libs=yes	    else	      build_libtool_libs=no	    fi	  else	    echo "*** The inter-library dependencies that have been dropped here will be"	    echo "*** automatically added whenever a program is linked with this library"	    echo "*** or is declared to -dlopen it."	  fi	fi	# Done checking deplibs!	deplibs=$newdeplibs      fi      # All the library-specific variables (install_libdir is set above).      library_names=      old_library=      dlname=            # Test again, we may have decided not to build it any more      if test "$build_libtool_libs" = yes; then	# Get the real and link names of the library.	eval library_names=\"$library_names_spec\"	set dummy $library_names	realname="$2"	shift; shift	if test -n "$soname_spec"; then	  eval soname=\"$soname_spec\"	else	  soname="$realname"	fi	lib="$output_objdir/$realname"	for link	do	  linknames="$linknames $link"	done	# Ensure that we have .o objects for linkers which dislike .lo	# (e.g. aix) incase we are running --disable-static	for obj in $libobjs; do	  oldobj=`$echo "X$obj" | $Xsed -e "$lo2o"`	  if test ! -f $oldobj; then	    $show "${LN_S} $obj $oldobj"	    $run ${LN_S} $obj $oldobj || exit $?	  fi	done	# Use standard objects if they are pic	test -z "$pic_flag" && libobjs=`$echo "X$libobjs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP`	if test -n "$whole_archive_flag_spec"; then	  if test -n "$convenience"; then	    eval libobjs=\"\$libobjs $whole_archive_flag_spec\"	  fi	else	  gentop="$output_objdir/${outputname}x"	  $show "${rm}r $gentop"	  $run ${rm}r "$gentop"	  $show "mkdir $gentop"	  $run mkdir "$gentop"	  status=$?	  if test $status -ne 0 && test ! -d "$gentop"; then	    exit $status	  fi	  generated="$generated $gentop"	  	  for xlib in $convenience; do	    # Extract the objects.	    case "$xlib" in	    [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;;	    *) xabs=`pwd`"/$xlib" ;;	    esac	    xlib=`$echo "X$xlib" | $Xsed -e 's%^.*/%%'`	    xdir="$gentop/$xlib"	    $show "${rm}r $xdir"	    $run ${rm}r "$xdir"	    $show "mkdir $xdir"	    $run mkdir "$xdir"	    status=$?	    if test $status -ne 0 && test ! -d "$xdir"; then	      exit $status	    fi	    $show "(cd $xdir && $AR x $xabs)"	    $run eval "(cd \$xdir && $AR x \$xabs)" || exit $?	    libobjs="$libobjs "`find $xdir -name \*.o -print -o -name \*.lo -print | $NL2SP`	  done	fi	if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then	  eval flag=\"$thread_safe_flag_spec\"	  linkopts="$linkopts $flag"	fi	# Prepare the list of exported symbols	if test -z "$export_symbols"; then	  if test "$always_export_symbols" = yes || test -n "$export_symbols_regex"; then	    $show "generating symbol list for \`$libname.la'"	    export_symbols="$output_objdir/$libname.exp"	    $run $rm $export_symbols	    eval cmds=\"$export_symbols_cmds\"	    IFS="${IFS= 	}"; save_ifs="$IFS"; IFS='~'	    for cmd in $cmds; do	      IFS="$save_ifs"	      $show "$cmd"	      $run eval "$cmd" || exit $?	    done	    IFS="$save_ifs"	    if test -n "$export_symbols_regex"; then	      $show "egrep -e \"$export_symbols_regex\" \"$export_symbols\" > \"${export_symbols}T\""	      $run eval 'egrep -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"'	      $show "$mv \"${export_symbols}T\" \"$export_symbols\""	      $run eval '$mv "${export_symbols}T" "$export_symbols"'	    fi	  fi	fi	if test -n "$export_symbols" && test -n "$include_expsyms"; then	  $run eval '$echo "X$include_expsyms" | $SP2NL >> "$export_symbols"'	fi	# Do each of the archive commands.	if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then	  eval cmds=\"$archive_expsym_cmds\"	else	  eval cmds=\"$archive_cmds\"	fi	IFS="${IFS= 	}"; save_ifs="$IFS"; IFS='~'	for cmd in $cmds; do	  IFS="$save_ifs"	  $show "$cmd"	  $run eval "$cmd" || exit $?	done	IFS="$save_ifs"	# Create links to the real library.	for linkname in $linknames; do	  if test "$realname" != "$linkname"; then	    $show "(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)"	    $run eval '(cd $output_objdir && $rm $linkname && $LN_S $realname $linkname)' || exit $?	  fi	done	# If -module or -export-dynamic was specified, set the dlname.	if test "$module" = yes || test "$export_dynamic" = yes; then	  # On all known operating systems, these are identical.	  dlname="$soname"	fi

⌨️ 快捷键说明

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