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

📄 tcl.m4

📁 tcl是工具命令语言
💻 M4
📖 第 1 页 / 共 5 页
字号:
	    # see pthread_intro(3) for pthread support on osf1, k.furukawa	    if test "${TCL_THREADS}" = "1" ; then		EXTRA_CFLAGS="${EXTRA_CFLAGS} -DHAVE_PTHREAD_ATTR_SETSTACKSIZE"		EXTRA_CFLAGS="${EXTRA_CFLAGS} -DTCL_THREAD_STACK_MIN=PTHREAD_STACK_MIN*64"		LIBS=`echo $LIBS | sed s/-lpthreads//`		if test "$GCC" = "yes" ; then		    LIBS="$LIBS -lpthread -lmach -lexc"		else		    EXTRA_CFLAGS="${EXTRA_CFLAGS} -pthread"		    LDFLAGS="-pthread"		fi	    fi	    ;;	QNX-6*)	    # QNX RTP	    # This may work for all QNX, but it was only reported for v6.	    SHLIB_CFLAGS="-fPIC"	    SHLIB_LD="ld -Bshareable -x"	    SHLIB_LD_LIBS=""	    SHLIB_SUFFIX=".so"	    DL_OBJS="tclLoadDl.o"	    # dlopen is in -lc on QNX	    DL_LIBS=""	    LDFLAGS=""	    CC_SEARCH_FLAGS=""	    LD_SEARCH_FLAGS=""	    ;;	RISCos-*)	    SHLIB_CFLAGS="-G 0"	    SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0"	    SHLIB_LD_LIBS='${LIBS}'	    SHLIB_SUFFIX=".a"	    DL_OBJS="tclLoadAout.o"	    DL_LIBS=""	    LDFLAGS="-Wl,-D,08000000"	    CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'	    LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}	    ;;	SCO_SV-3.2*)	    # Note, dlopen is available only on SCO 3.2.5 and greater. However,	    # this test works, since "uname -s" was non-standard in 3.2.4 and	    # below.	    if test "$GCC" = "yes" ; then	    	SHLIB_CFLAGS="-fPIC -melf"	    	LDFLAGS="-melf -Wl,-Bexport"	    else	    	SHLIB_CFLAGS="-Kpic -belf"	    	LDFLAGS="-belf -Wl,-Bexport"	    fi	    SHLIB_LD="ld -G"	    SHLIB_LD_LIBS=""	    SHLIB_SUFFIX=".so"	    DL_OBJS="tclLoadDl.o"	    DL_LIBS=""	    CC_SEARCH_FLAGS=""	    LD_SEARCH_FLAGS=""	    ;;	SINIX*5.4*)	    SHLIB_CFLAGS="-K PIC"	    SHLIB_LD="cc -G"	    SHLIB_LD_LIBS=""	    SHLIB_SUFFIX=".so"	    DL_OBJS="tclLoadDl.o"	    DL_LIBS="-ldl"	    LDFLAGS=""	    CC_SEARCH_FLAGS=""	    LD_SEARCH_FLAGS=""	    ;;	SunOS-4*)	    SHLIB_CFLAGS="-PIC"	    SHLIB_LD="ld"	    SHLIB_LD_LIBS=""	    SHLIB_SUFFIX=".so"	    DL_OBJS="tclLoadDl.o"	    DL_LIBS="-ldl"	    LDFLAGS=""	    CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'	    LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}	    # SunOS can't handle version numbers with dots in them in library	    # specs, like -ltcl7.5, so use -ltcl75 instead.  Also, it	    # requires an extra version number at the end of .so file names.	    # So, the library has to have a name like libtcl75.so.1.0	    SHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}\$\{DBGX\}.so.1.0'	    UNSHARED_LIB_SUFFIX='${TCL_TRIM_DOTS}\$\{DBGX\}.a'	    TCL_LIB_VERSIONS_OK=nodots	    ;;	SunOS-5.[[0-6]]*)	    # Note: If _REENTRANT isn't defined, then Solaris	    # won't define thread-safe library routines.	    AC_DEFINE(_REENTRANT)	    AC_DEFINE(_POSIX_PTHREAD_SEMANTICS)	    SHLIB_CFLAGS="-KPIC"	    # Note: need the LIBS below, otherwise Tk won't find Tcl's	    # symbols when dynamically loaded into tclsh.	    SHLIB_LD_LIBS='${LIBS}'	    SHLIB_SUFFIX=".so"	    DL_OBJS="tclLoadDl.o"	    DL_LIBS="-ldl"	    LDFLAGS=""	    if test "$GCC" = "yes" ; then		SHLIB_LD="$CC -shared"		CC_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'		LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}	    else		SHLIB_LD="/usr/ccs/bin/ld -G -z text"		CC_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}'		LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}	    fi	    ;;	SunOS-5*)	    # Note: If _REENTRANT isn't defined, then Solaris	    # won't define thread-safe library routines.	    AC_DEFINE(_REENTRANT)	    AC_DEFINE(_POSIX_PTHREAD_SEMANTICS)	    SHLIB_CFLAGS="-KPIC"	    LDFLAGS=""    	    # Check to enable 64-bit flags for compiler/linker	    if test "$do64bit" = "yes" ; then		arch=`isainfo`		if test "$arch" = "sparcv9 sparc" ; then			if test "$GCC" = "yes" ; then			    AC_MSG_WARN("64bit mode not supported with GCC on $system")			else			    do64bit_ok=yes			    if test "$do64bitVIS" = "yes" ; then				EXTRA_CFLAGS="-xarch=v9a"			    	LDFLAGS="-xarch=v9a"			    else				EXTRA_CFLAGS="-xarch=v9"			    	LDFLAGS="-xarch=v9"			    fi			fi		else		    AC_MSG_WARN("64bit mode only supported sparcv9 system")		fi	    fi	    	    # Note: need the LIBS below, otherwise Tk won't find Tcl's	    # symbols when dynamically loaded into tclsh.	    SHLIB_LD_LIBS='${LIBS}'	    SHLIB_SUFFIX=".so"	    DL_OBJS="tclLoadDl.o"	    DL_LIBS="-ldl"	    if test "$GCC" = "yes" ; then		SHLIB_LD="$CC -shared"		CC_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'		LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}	    else		SHLIB_LD="/usr/ccs/bin/ld -G -z text"		CC_SEARCH_FLAGS='-Wl,-R,${LIB_RUNTIME_DIR}'		LD_SEARCH_FLAGS='-R ${LIB_RUNTIME_DIR}'	    fi	    ;;	ULTRIX-4.*)	    SHLIB_CFLAGS="-G 0"	    SHLIB_SUFFIX=".a"	    SHLIB_LD="echo tclLdAout $CC \{$SHLIB_CFLAGS\} | `pwd`/tclsh -r -G 0"	    SHLIB_LD_LIBS='${LIBS}'	    DL_OBJS="tclLoadAout.o"	    DL_LIBS=""	    LDFLAGS="-Wl,-D,08000000"	    CC_SEARCH_FLAGS='-L${LIB_RUNTIME_DIR}'	    LD_SEARCH_FLAGS=${CC_SEARCH_FLAGS}	    if test "$GCC" != "yes" ; then		EXTRA_CFLAGS="-DHAVE_TZSET -std1"	    fi	    ;;	UNIX_SV* | UnixWare-5*)	    SHLIB_CFLAGS="-KPIC"	    SHLIB_LD="cc -G"	    SHLIB_LD_LIBS=""	    SHLIB_SUFFIX=".so"	    DL_OBJS="tclLoadDl.o"	    DL_LIBS="-ldl"	    # Some UNIX_SV* systems (unixware 1.1.2 for example) have linkers	    # that don't grok the -Bexport option.  Test that it does.	    hold_ldflags=$LDFLAGS	    AC_MSG_CHECKING(for ld accepts -Bexport flag)	    LDFLAGS="${LDFLAGS} -Wl,-Bexport"	    AC_TRY_LINK(, [int i;], found=yes, found=no)	    LDFLAGS=$hold_ldflags	    AC_MSG_RESULT($found)	    if test $found = yes; then	    LDFLAGS="-Wl,-Bexport"	    else	    LDFLAGS=""	    fi	    CC_SEARCH_FLAGS=""	    LD_SEARCH_FLAGS=""	    ;;    esac    if test "$do64bit" = "yes" -a "$do64bit_ok" = "no" ; then    AC_MSG_WARN("64bit support being disabled -- don\'t know magic for this platform")    fi    # Step 4: If pseudo-static linking is in use (see K. B. Kenny, "Dynamic    # Loading for Tcl -- What Became of It?".  Proc. 2nd Tcl/Tk Workshop,    # New Orleans, LA, Computerized Processes Unlimited, 1994), then we need    # to determine which of several header files defines the a.out file    # format (a.out.h, sys/exec.h, or sys/exec_aout.h).  At present, we    # support only a file format that is more or less version-7-compatible.     # In particular,    #	- a.out files must begin with `struct exec'.    #	- the N_TXTOFF on the `struct exec' must compute the seek address    #	  of the text segment    #	- The `struct exec' must contain a_magic, a_text, a_data, a_bss    #	  and a_entry fields.    # The following compilation should succeed if and only if either sys/exec.h    # or a.out.h is usable for the purpose.    #    # Note that the modified COFF format used on MIPS Ultrix 4.x is usable; the    # `struct exec' includes a second header that contains information that    # duplicates the v7 fields that are needed.    if test "x$DL_OBJS" = "xtclLoadAout.o" ; then	AC_MSG_CHECKING(sys/exec.h)	AC_TRY_COMPILE([#include <sys/exec.h>],[	    struct exec foo;	    unsigned long seek;	    int flag;#if defined(__mips) || defined(mips)	    seek = N_TXTOFF (foo.ex_f, foo.ex_o);#else	    seek = N_TXTOFF (foo);#endif	    flag = (foo.a_magic == OMAGIC);	    return foo.a_text + foo.a_data + foo.a_bss + foo.a_entry;    ], tcl_ok=usable, tcl_ok=unusable)	AC_MSG_RESULT($tcl_ok)	if test $tcl_ok = usable; then	    AC_DEFINE(USE_SYS_EXEC_H)	else	    AC_MSG_CHECKING(a.out.h)	    AC_TRY_COMPILE([#include <a.out.h>],[		struct exec foo;		unsigned long seek;		int flag;#if defined(__mips) || defined(mips)		seek = N_TXTOFF (foo.ex_f, foo.ex_o);#else		seek = N_TXTOFF (foo);#endif		flag = (foo.a_magic == OMAGIC);		return foo.a_text + foo.a_data + foo.a_bss + foo.a_entry;	    ], tcl_ok=usable, tcl_ok=unusable)	    AC_MSG_RESULT($tcl_ok)	    if test $tcl_ok = usable; then		AC_DEFINE(USE_A_OUT_H)	    else		AC_MSG_CHECKING(sys/exec_aout.h)		AC_TRY_COMPILE([#include <sys/exec_aout.h>],[		    struct exec foo;		    unsigned long seek;		    int flag;#if defined(__mips) || defined(mips)		    seek = N_TXTOFF (foo.ex_f, foo.ex_o);#else		    seek = N_TXTOFF (foo);#endif		    flag = (foo.a_midmag == OMAGIC);		    return foo.a_text + foo.a_data + foo.a_bss + foo.a_entry;		], tcl_ok=usable, tcl_ok=unusable)		AC_MSG_RESULT($tcl_ok)		if test $tcl_ok = usable; then		    AC_DEFINE(USE_SYS_EXEC_AOUT_H)		else		    DL_OBJS=""		fi	    fi	fi    fi    # Step 5: disable dynamic loading if requested via a command-line switch.    AC_ARG_ENABLE(load, [  --disable-load          disallow dynamic loading and "load" command],	[tcl_ok=$enableval], [tcl_ok=yes])    if test "$tcl_ok" = "no"; then	DL_OBJS=""    fi    if test "x$DL_OBJS" != "x" ; then	BUILD_DLTEST="\$(DLTEST_TARGETS)"    else	echo "Can't figure out how to do dynamic loading or shared libraries"	echo "on this system."	SHLIB_CFLAGS=""	SHLIB_LD=""	SHLIB_SUFFIX=""	DL_OBJS="tclLoadNone.o"	DL_LIBS=""	LDFLAGS=""	CC_SEARCH_FLAGS=""	LD_SEARCH_FLAGS=""	BUILD_DLTEST=""    fi    # If we're running gcc, then change the C flags for compiling shared    # libraries to the right flags for gcc, instead of those for the    # standard manufacturer compiler.    if test "$DL_OBJS" != "tclLoadNone.o" ; then	if test "$GCC" = "yes" ; then	    case $system in		AIX-*)		    ;;		BSD/OS*)		    ;;		IRIX*)		    ;;		NetBSD-*|FreeBSD-*|OpenBSD-*)		    ;;		Rhapsody-*|Darwin-*)		    ;;		RISCos-*)		    ;;		SCO_SV-3.2*)		    ;;		ULTRIX-4.*)		    ;;		*)		    SHLIB_CFLAGS="-fPIC"		    ;;	    esac	fi    fi    if test "$SHARED_LIB_SUFFIX" = "" ; then	SHARED_LIB_SUFFIX='${VERSION}\$\{DBGX\}${SHLIB_SUFFIX}'    fi    if test "$UNSHARED_LIB_SUFFIX" = "" ; then	UNSHARED_LIB_SUFFIX='${VERSION}\$\{DBGX\}.a'    fi    if test "${SHARED_BUILD}" = "1" && test "${SHLIB_SUFFIX}" != "" ; then        LIB_SUFFIX=${SHARED_LIB_SUFFIX}        MAKE_LIB='${SHLIB_LD} -o [$]@ ${SHLIB_LD_FLAGS} ${OBJS} ${SHLIB_LD_LIBS} ${TCL_SHLIB_LD_EXTRAS} ${TK_SHLIB_LD_EXTRAS} ${LD_SEARCH_FLAGS}'        INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) $(LIB_INSTALL_DIR)/$(LIB_FILE)'    else        LIB_SUFFIX=${UNSHARED_LIB_SUFFIX}        if test "$RANLIB" = "" ; then            MAKE_LIB='$(STLIB_LD) [$]@ ${OBJS}'            INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) $(LIB_INSTALL_DIR)/$(LIB_FILE)'        else            MAKE_LIB='${STLIB_LD} [$]@ ${OBJS} ; ${RANLIB} [$]@'            INSTALL_LIB='$(INSTALL_LIBRARY) $(LIB_FILE) $(LIB_INSTALL_DIR)/$(LIB_FILE) ; (cd $(LIB_INSTALL_DIR) ; $(RANLIB) $(LIB_FILE))'        fidnl        Not at all clear what this was doing in Tcl's configure.indnl        or why it was needed was needed. In any event, this sort ofdnl        things needs to be done in the big loop above.dnl        REMOVE THIS BLOCK LATER! (mdejong)dnl        case $system indnl            BSD/OS*)dnl                ;;dnl            AIX-[[1-4]].*)dnl                ;;dnl            *)dnl                SHLIB_LD_LIBS=""dnl                ;;dnl        esac    fi    # Stub lib does not depend on shared/static configuration    if test "$RANLIB" = "" ; then        MAKE_STUB_LIB='${STLIB_LD} [$]@ ${STUB_LIB_OBJS}'        INSTALL_STUB_LIB='$(INSTALL_LIBRARY) $(STUB_LIB_FILE) $(LIB_INSTALL_DIR)/$(STUB_LIB_FILE)'    else        MAKE_STUB_LIB='${STLIB_LD} [$]@ ${STUB_LIB_OBJS} ; ${RANLIB} [$]@'        INSTALL_STUB_LIB='$(INSTALL_LIBRARY) $(STUB_LIB_FILE) $(LIB_INSTALL_DIR)/$(STUB_LIB_FILE) ; (cd $(LIB_INSTALL_DIR) ; $(RANLIB) $(STUB_LIB_FILE))'    fi    AC_SUBST(DL_LIBS)    AC_SUBST(DL_OBJS)    AC_SUBST(PLAT_OBJS)    AC_SUBST(CFLAGS)    AC_SUBST(CFLAGS_DEBUG)    AC_SUBST(CFLAGS_OPTIMIZE)    AC_SUBST(CFLAGS_WARNING)    AC_SUBST(EXTRA_CFLAGS)    AC_SUBST(LDFLAGS)    AC_SUBST(LDFLAGS_DEBUG)    AC_SUBST(LDFLAGS_OPTIMIZE)    AC_SUBST(CC_SEARCH_FLAGS)    AC_SUBST(LD_SEARCH_FLAGS)    AC_SUBST(STLIB_LD)    AC_SUBST(SHLIB_LD)    AC_SUBST(TCL_SHLIB_LD_EXTRAS)    AC_SUBST(TK_SHLIB_LD_EXTRAS)    AC_SUBST(SHLIB_LD_FLAGS)    AC_SUBST(SHLIB_LD_LIBS)    AC_SUBST(SHLIB_CFLAGS)    AC_SUBST(SHLIB_SUFFIX)    AC_SUBST(MAKE_LIB)    AC_SUBST(MAKE_STUB_LIB)    AC_SUBST(INSTALL_LIB)    AC_SUBST(INSTALL_STUB_LIB)    AC_SUBST(RANLIB)])#--------------------------------------------------------------------# SC_SERIAL_PORT##	Determine which interface to use to talk to the serial port.#	Note that #include lines must begin in leftmost column for#	some compilers to recognize them as preprocessor directives,#	and some build environments have stdin not pointing at a#	pseudo-terminal (usually /dev/null instead.)## Arguments:#	none#	# Results:##	Defines only one of the following vars:#		HAVE_SYS_MODEM_H#		USE_TERMIOS#		USE_TERMIO#		USE_SGTTY##--------------------------------------------------------------------AC_DEFUN(SC_SERIAL_PORT, [    AC_CHECK_HEADERS(sys/modem.h)    AC_MSG_CHECKING([termios vs. termio vs. sgtty])    AC_CACHE_VAL(tcl_cv_api_serial, [

⌨️ 快捷键说明

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