📄 tcl.m4
字号:
AC_SUBST(MAKE_SHARED_LIB) AC_SUBST(MAKE_STATIC_LIB)])#------------------------------------------------------------------------# SC_LIB_SPEC --## Compute the name of an existing object library located in libdir# from the given base name and produce the appropriate linker flags.## Arguments:# basename The base name of the library without version# numbers, extensions, or "lib" prefixes.# extra_dir Extra directory in which to search for the# library. This location is used first, then# $prefix/$exec-prefix, then some defaults.## Requires:# CYGPATH command used to generate native style paths## Results:## Defines the following vars:# ${basename}_LIB_NAME The computed library name.# ${basename}_LIB_SPEC The computed linker flags.#------------------------------------------------------------------------AC_DEFUN(SC_LIB_SPEC, [ AC_MSG_CHECKING(for $1 library) # Look in exec-prefix and prefix for the library. If neither of # these were specified, look in libdir. It doesn't matter if libdir # wasn't specified since a search in the unspecified directory will # fail (NONE/lib) if test x"${exec_prefix}" != x"NONE" ; then sc_lib_name_dir="${exec_prefix}/lib" elif test x"${prefix}" != "NONE" ; then sc_lib_name_dir="${prefix}/lib" else eval "sc_lib_name_dir=${libdir}" fi if test x"$2" != x ; then sc_extra_lib_dir=$2 else sc_extra_lib_dir=NONE fi for i in \ `ls -dr ${sc_extra_lib_dir}/$1[[0-9]]*.lib 2>/dev/null ` \ `ls -dr ${sc_extra_lib_dir}/lib$1[[0-9]]* 2>/dev/null ` \ `ls -dr ${sc_lib_name_dir}/$1[[0-9]]*.lib 2>/dev/null ` \ `ls -dr ${sc_lib_name_dir}/lib$1[[0-9]]* 2>/dev/null ` \ `ls -dr /usr/lib/$1[[0-9]]*.lib 2>/dev/null ` \ `ls -dr /usr/lib/lib$1[[0-9]]* 2>/dev/null ` \ `ls -dr /usr/local/lib/$1[[0-9]]*.lib 2>/dev/null ` \ `ls -dr /usr/local/lib/lib$1[[0-9]]* 2>/dev/null ` ; do if test -f "$i" ; then sc_lib_name_dir=`dirname $i` $1_LIB_NAME=`basename $i` $1_LIB_PATH_NAME=$i break fi done case "`uname -s`" in *win32* | *WIN32* | *CYGWIN_NT* |*CYGWIN_98*|*CYGWIN_95*) $1_LIB_SPEC=\"`${CYGPATH} ${$1_LIB_PATH_NAME}`\" ;; *) # Strip off the leading "lib" and trailing ".a" or ".so" sc_lib_name_lib=`echo ${$1_LIB_NAME}|sed -e 's/^lib//' -e 's/\.[[^.]]*$//'` $1_LIB_SPEC="-L${sc_lib_name_dir} -l${sc_lib_name_lib}" ;; esac if test "x$1_LIB_NAME" = x ; then AC_MSG_ERROR(not found) else AC_MSG_RESULT(${$1_LIB_SPEC}) fi])#------------------------------------------------------------------------# SC_PRIVATE_TCL_HEADERS --## Locate the private Tcl include files## Arguments:## Requires:# TCL_SRC_DIR Assumes that SC_LOAD_TCLCONFIG has# already been called.## Results:## Substs the following vars:# TCL_TOP_DIR_NATIVE# TCL_GENERIC_DIR_NATIVE# TCL_UNIX_DIR_NATIVE# TCL_WIN_DIR_NATIVE# TCL_BMAP_DIR_NATIVE# TCL_TOOL_DIR_NATIVE# TCL_PLATFORM_DIR_NATIVE# TCL_BIN_DIR_NATIVE# TCL_INCLUDES#------------------------------------------------------------------------AC_DEFUN(SC_PRIVATE_TCL_HEADERS, [ AC_MSG_CHECKING(for Tcl private include files) case "`uname -s`" in *win32* | *WIN32* | *CYGWIN_NT* |*CYGWIN_98*|*CYGWIN_95*) TCL_TOP_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/..`\" TCL_GENERIC_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/../generic`\" TCL_UNIX_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/../unix`\" TCL_WIN_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/../win`\" TCL_BMAP_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/../bitmaps`\" TCL_TOOL_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/../tools`\" TCL_COMPAT_DIR_NATIVE=\"`${CYGPATH} ${TCL_SRC_DIR}/../compat`\" TCL_PLATFORM_DIR_NATIVE=${TCL_WIN_DIR_NATIVE} ;; *) TCL_TOP_DIR_NATIVE='$(TCL_SRC_DIR)' TCL_GENERIC_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/generic' TCL_UNIX_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/unix' TCL_WIN_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/win' TCL_BMAP_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/bitmaps' TCL_TOOL_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/tools' TCL_COMPAT_DIR_NATIVE='$(TCL_TOP_DIR_NATIVE)/compat' TCL_PLATFORM_DIR_NATIVE=${TCL_UNIX_DIR_NATIVE} ;; esac AC_SUBST(TCL_TOP_DIR_NATIVE) AC_SUBST(TCL_GENERIC_DIR_NATIVE) AC_SUBST(TCL_UNIX_DIR_NATIVE) AC_SUBST(TCL_WIN_DIR_NATIVE) AC_SUBST(TCL_BMAP_DIR_NATIVE) AC_SUBST(TCL_TOOL_DIR_NATIVE) AC_SUBST(TCL_PLATFORM_DIR_NATIVE) TCL_INCLUDES="-I${TCL_GENERIC_DIR_NATIVE} -I${TCL_PLATFORM_DIR_NATIVE}" AC_SUBST(TCL_INCLUDES) AC_MSG_RESULT(Using srcdir found in tclConfig.sh)])#------------------------------------------------------------------------# SC_PUBLIC_TCL_HEADERS --## Locate the installed public Tcl header files## Arguments:# None.## Requires:# CYGPATH must be set## Results:## Adds a --with-tclinclude switch to configure.# Result is cached.## Substs the following vars:# TCL_INCLUDES#------------------------------------------------------------------------AC_DEFUN(SC_PUBLIC_TCL_HEADERS, [ AC_MSG_CHECKING(for Tcl public headers) AC_ARG_WITH(tclinclude, [ --with-tclinclude directory containing the public Tcl header files.], with_tclinclude=${withval}) if test x"${with_tclinclude}" != x ; then if test -f "${with_tclinclude}/tcl.h" ; then ac_cv_c_tclh=${with_tclinclude} else AC_MSG_ERROR([${with_tclinclude} directory does not contain Tcl public header file tcl.h]) fi else AC_CACHE_VAL(ac_cv_c_tclh, [ # Use the value from --with-tclinclude, if it was given if test x"${with_tclinclude}" != x ; then ac_cv_c_tclh=${with_tclinclude} else # Check in the includedir, if --prefix was specified eval "temp_includedir=${includedir}" for i in \ `ls -d ${temp_includedir} 2>/dev/null` \ /usr/local/include /usr/include ; do if test -f "$i/tcl.h" ; then ac_cv_c_tclh=$i break fi done fi ]) fi # Print a message based on how we determined the include path if test x"${ac_cv_c_tclh}" = x ; then AC_MSG_ERROR(tcl.h not found. Please specify its location with --with-tclinclude) else AC_MSG_RESULT(${ac_cv_c_tclh}) fi # Convert to a native path and substitute into the output files. INCLUDE_DIR_NATIVE=`${CYGPATH} ${ac_cv_c_tclh}` TCL_INCLUDES=-I\"${INCLUDE_DIR_NATIVE}\" AC_SUBST(TCL_INCLUDES)])#------------------------------------------------------------------------# SC_PRIVATE_TK_HEADERS --## Locate the private Tk include files## Arguments:## Requires:# TK_SRC_DIR Assumes that SC_LOAD_TKCONFIG has# already been called.## Results:## Substs the following vars:# TK_INCLUDES#------------------------------------------------------------------------AC_DEFUN(SC_PRIVATE_TK_HEADERS, [ AC_MSG_CHECKING(for Tk private include files) case "`uname -s`" in *win32* | *WIN32* | *CYGWIN_NT* |*CYGWIN_98*|*CYGWIN_95*) TK_TOP_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}/..`\" TK_UNIX_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}/../unix`\" TK_WIN_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}/../win`\" TK_GENERIC_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}/../generic`\" TK_XLIB_DIR_NATIVE=\"`${CYGPATH} ${TK_SRC_DIR}/../xlib`\" TK_PLATFORM_DIR_NATIVE=${TK_WIN_DIR_NATIVE} TK_INCLUDES="-I${TK_GENERIC_DIR_NATIVE} -I${TK_PLATFORM_DIR_NATIVE} -I${TK_XLIB_DIR_NATIVE}" ;; *) TK_TOP_DIR_NATIVE='$(TK_SRC_DIR)' TK_GENERIC_DIR_NATIVE='$(TK_TOP_DIR_NATIVE)/generic' TK_UNIX_DIR_NATIVE='$(TK_TOP_DIR_NATIVE)/unix' TK_WIN_DIR_NATIVE='$(TK_TOP_DIR_NATIVE)/win' TK_PLATFORM_DIR_NATIVE=${TK_UNIX_DIR_NATIVE} TK_INCLUDES="-I${TK_GENERIC_DIR_NATIVE} -I${TK_PLATFORM_DIR_NATIVE}" ;; esac AC_SUBST(TK_TOP_DIR_NATIVE) AC_SUBST(TK_UNIX_DIR_NATIVE) AC_SUBST(TK_WIN_DIR_NATIVE) AC_SUBST(TK_GENERIC_DIR_NATIVE) AC_SUBST(TK_XLIB_DIR_NATIVE) AC_SUBST(TK_PLATFORM_DIR_NATIVE) AC_SUBST(TK_INCLUDES) AC_MSG_RESULT(Using srcdir found in tkConfig.sh)])#------------------------------------------------------------------------# SC_PUBLIC_TK_HEADERS --## Locate the installed public Tk header files## Arguments:# None.## Requires:# CYGPATH must be set## Results:## Adds a --with-tkinclude switch to configure.# Result is cached.## Substs the following vars:# TK_INCLUDES#------------------------------------------------------------------------AC_DEFUN(SC_PUBLIC_TK_HEADERS, [ AC_MSG_CHECKING(for Tk public headers) AC_ARG_WITH(tkinclude, [ --with-tkinclude directory containing the public Tk header files.], with_tkinclude=${withval}) if test x"${with_tkinclude}" != x ; then if test -f "${with_tkinclude}/tk.h" ; then ac_cv_c_tkh=${with_tkinclude} else AC_MSG_ERROR([${with_tkinclude} directory does not contain Tk public header file tk.h]) fi else AC_CACHE_VAL(ac_cv_c_tkh, [ # Use the value from --with-tkinclude, if it was given if test x"${with_tkinclude}" != x ; then ac_cv_c_tkh=${with_tkinclude} else # Check in the includedir, if --prefix was specified eval "temp_includedir=${includedir}" for i in \ `ls -d ${temp_includedir} 2>/dev/null` \ /usr/local/include /usr/include ; do if test -f "$i/tk.h" ; then ac_cv_c_tkh=$i break fi done fi ]) fi # Print a message based on how we determined the include path if test x"${ac_cv_c_tkh}" = x ; then AC_MSG_ERROR(tk.h not found. Please specify its location with --with-tkinclude) else AC_MSG_RESULT(${ac_cv_c_tkh}) fi # Convert to a native path and substitute into the output files. INCLUDE_DIR_NATIVE=`${CYGPATH} ${ac_cv_c_tkh}` TK_INCLUDES=-I\"${INCLUDE_DIR_NATIVE}\" AC_SUBST(TK_INCLUDES)])#------------------------------------------------------------------------# SC_SIMPLE_EXEEXT# Select the executable extension based on the host type. This# is a lightweight replacement for AC_EXEEXT that doesn't require# a compiler.## Arguments# none## Results# Subst's the following values:# EXEEXT#------------------------------------------------------------------------AC_DEFUN(SC_SIMPLE_EXEEXT, [ AC_MSG_CHECKING(executable extension based on host type) case "`uname -s`" in *win32* | *WIN32* | *CYGWIN_NT* |*CYGWIN_98*|*CYGWIN_95*) EXEEXT=".exe" ;; *) EXEEXT="" ;; esac AC_MSG_RESULT(${EXEEXT}) AC_SUBST(EXEEXT)])#------------------------------------------------------------------------# SC_PROG_TCLSH# Locate a tclsh shell in the following directories:# ${exec_prefix}/bin# ${prefix}/bin# ${TCL_BIN_DIR}# ${TCL_BIN_DIR}/../bin# ${PATH}## Arguments# none## Results# Subst's the following values:# TCLSH_PROG#------------------------------------------------------------------------AC_DEFUN(SC_PROG_TCLSH, [ AC_MSG_CHECKING([for tclsh]) AC_CACHE_VAL(ac_cv_path_tclsh, [ search_path=`echo ${exec_prefix}/bin:${prefix}/bin:${TCL_BIN_DIR}:${TCL_BIN_DIR}/../bin:${PATH} | sed -e 's/:/ /g'` for dir in $search_path ; do for j in `ls -r $dir/tclsh[[8-9]]*${EXEEXT} 2> /dev/null` \ `ls -r $dir/tclsh*${EXEEXT} 2> /dev/null` ; do if test x"$ac_cv_path_tclsh" = x ; then if test -f "$j" ; then ac_cv_path_tclsh=$j break fi fi done done ]) if test -f "$ac_cv_path_tclsh" ; then TCLSH_PROG=$ac_cv_path_tclsh AC_MSG_RESULT($TCLSH_PROG) else AC_MSG_ERROR(No tclsh found in PATH: $search_path) fi AC_SUBST(TCLSH_PROG)])#------------------------------------------------------------------------# SC_PROG_WISH# Locate a wish shell in the following directories:# ${exec_prefix}/bin# ${prefix}/bin# ${TCL_BIN_DIR}# ${TCL_BIN_DIR}/../bin# ${PATH}## Arguments# none## Results# Subst's the following values:# WISH_PROG#------------------------------------------------------------------------AC_DEFUN(SC_PROG_WISH, [ AC_MSG_CHECKING([for wish]) AC_CACHE_VAL(ac_cv_path_wish, [ search_path=`echo ${exec_prefix}/bin:${prefix}/bin:${TCL_BIN_DIR}:${TCL_BIN_DIR}/../bin:${PATH} | sed -e 's/:/ /g'` for dir in $search_path ; do for j in `ls -r $dir/wish[[8-9]]*${EXEEXT} 2> /dev/null` \ `ls -r $dir/wish*${EXEEXT} 2> /dev/null` ; do if test x"$ac_cv_path_wish" = x ; then if test -f "$j" ; then ac_cv_path_wish=$j break fi fi done done ]) if test -f "$ac_cv_path_wish" ; then WISH_PROG=$ac_cv_path_wish AC_MSG_RESULT($WISH_PROG) else AC_MSG_ERROR(No wish found in PATH: $search_path) fi AC_SUBST(WISH_PROG)])
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -