From 8fd77f6049dc41f6accfdad45a5a35f9e4d32045 Mon Sep 17 00:00:00 2001 From: rjohnson Date: Tue, 20 Oct 1998 20:01:22 +0000 Subject: Changed config & Makefile to support n32 on IRIX. --- changes | 8 +++++++- unix/Makefile.in | 6 +++--- unix/configure.in | 15 +++++++++++---- unix/tclConfig.sh.in | 5 ++++- 4 files changed, 25 insertions(+), 9 deletions(-) diff --git a/changes b/changes index c8f5ccb..37ea500 100644 --- a/changes +++ b/changes @@ -1,6 +1,6 @@ Recent user-visible changes to Tcl: -RCS: @(#) $Id: changes,v 1.27 1998/10/20 17:27:43 suresh Exp $ +RCS: @(#) $Id: changes,v 1.28 1998/10/20 20:01:22 rjohnson Exp $ 1. No more [command1] [command2] construct for grouping multiple commands on a single command line. @@ -3643,3 +3643,9 @@ element of the tcl_platform array indicates that the particular Tcl shell has been compiled with debug information. Using "info exists tcl_platform(debug)" a Tcl script can direct the interpreter to load debug versions of DLLs with the load command. (SKS) + +10/20/98 (feature change) The Makefile and configure scripts have been +changed for IRIX to build n32 binaries instead of the old 32 abi +format. If you have extensions built with the o32 abi's you will need +to update them to n32 for them to work with Tcl. (RJ) +*** POTENTIAL INCOMPATIBILITY *** diff --git a/unix/Makefile.in b/unix/Makefile.in index 332eed2..0ff4161 100644 --- a/unix/Makefile.in +++ b/unix/Makefile.in @@ -5,7 +5,7 @@ # "autoconf" program (constructs like "@foo@" will get replaced in the # actual Makefile. # -# RCS: @(#) $Id: Makefile.in,v 1.12 1998/10/05 22:32:11 escoffon Exp $ +# RCS: @(#) $Id: Makefile.in,v 1.13 1998/10/20 20:01:23 rjohnson Exp $ # Current Tcl version; used in various names. @@ -192,7 +192,7 @@ TCL_LIB_FLAG = @TCL_LIB_FLAG@ COMPAT_OBJS = @LIBOBJS@ -AC_FLAGS = @DEFS@ +AC_FLAGS = @EXTRA_CFLAGS@ @DEFS@ RANLIB = @RANLIB@ SRC_DIR = @srcdir@ TOP_DIR = @srcdir@/.. @@ -403,7 +403,7 @@ topDirName: gendate: yacc -l $(GENERIC_DIR)/tclGetDate.y sed -e 's/yy/TclDate/g' -e '/^#include /d' \ - -e 's/SCCSID/RCS: @(#) $Id: Makefile.in,v 1.12 1998/10/05 22:32:11 escoffon Exp $' + -e 's/SCCSID/RCS: @(#) $Id: Makefile.in,v 1.13 1998/10/20 20:01:23 rjohnson Exp $' -e '/#ifdef __STDC__/,/#endif/d' -e '/TclDateerrlab:/d' \ -e '/TclDatenewstate:/d' -e '/#pragma/d' \ $(GENERIC_DIR)/tclDate.c diff --git a/unix/configure.in b/unix/configure.in index f45c859..0afc12b 100644 --- a/unix/configure.in +++ b/unix/configure.in @@ -2,7 +2,7 @@ dnl This file is an input file used by the GNU "autoconf" program to dnl generate the file "configure", which is run during Tcl installation dnl to configure the system for the local environment. AC_INIT(../generic/tcl.h) -# RCS: @(#) $Id: configure.in,v 1.20 1998/10/13 19:03:53 escoffon Exp $ +# RCS: @(#) $Id: configure.in,v 1.21 1998/10/20 20:01:23 rjohnson Exp $ TCL_VERSION=8.0 TCL_MAJOR_VERSION=8 @@ -660,7 +660,7 @@ AC_CHECK_LIB(dl, dlopen, have_dl=yes, have_dl=no) # Step 3: set configuration options based on system name and version. fullSrcDir=`cd $srcdir; pwd` -TCL_SHARED_LIB_SUFFIX="" +EXTRA_CFLAGS="" TCL_UNSHARED_LIB_SUFFIX="" TCL_TRIM_DOTS='`echo ${VERSION} | tr -d .`' ECHO_VERSION='`echo ${VERSION}`' @@ -737,13 +737,19 @@ case $system in ;; IRIX-5.*|IRIX-6.*) SHLIB_CFLAGS="" - SHLIB_LD="ld -shared -rdata_shared" + SHLIB_LD="ld -n32 -shared -rdata_shared" SHLIB_LD_LIBS="" SHLIB_SUFFIX=".so" DL_OBJS="tclLoadDl.o" DL_LIBS="" - LD_FLAGS="" LD_SEARCH_FLAGS='-Wl,-rpath,${LIB_RUNTIME_DIR}' + if test "$CC" = "gcc" -o `$CC -v 2>&1 | grep -c gcc` != "0" ; then + EXTRA_CFLAGS="-mabi=n32" + LD_FLAGS="-mabi=n32" + else + EXTRA_CFLAGS="-n32" + LD_FLAGS="-n32" + fi ;; IRIX64-6.*) SHLIB_CFLAGS="" @@ -1248,6 +1254,7 @@ AC_SUBST(CFG_TCL_UNSHARED_LIB_SUFFIX) AC_SUBST(TCL_DBGX) AC_SUBST(DL_LIBS) AC_SUBST(DL_OBJS) +AC_SUBST(EXTRA_CFLAGS) AC_SUBST(LD_FLAGS) AC_SUBST(MAKE_LIB) AC_SUBST(MATH_LIBS) diff --git a/unix/tclConfig.sh.in b/unix/tclConfig.sh.in index 0a7a1f6..4936f52 100644 --- a/unix/tclConfig.sh.in +++ b/unix/tclConfig.sh.in @@ -9,7 +9,7 @@ # # The information in this file is specific to a single platform. # -# RCS: @(#) $Id: tclConfig.sh.in,v 1.7 1998/09/14 18:40:16 stanton Exp $ +# RCS: @(#) $Id: tclConfig.sh.in,v 1.8 1998/10/20 20:01:23 rjohnson Exp $ # Tcl's version number. TCL_VERSION='@TCL_VERSION@' @@ -51,6 +51,9 @@ TCL_EXEC_PREFIX='@exec_prefix@' # Flags to pass to cc when compiling the components of a shared library: TCL_SHLIB_CFLAGS='@SHLIB_CFLAGS@' +# Extra flags to pass to cc: +TCL_EXTRA_CFLAGS='@EXTRA_CFLAGS@' + # Base command to use for combining object files into a shared library: TCL_SHLIB_LD='@SHLIB_LD@' -- cgit v0.12