#4244 --enable-64bit doesn't work on Solaris Intel 10 with GCC

obsolete: 8.5.5
Victor Wagner

Solaris Intel 10 supports 64-bit programs as well as Solaris sparc do. While GCC provided by sunfreeware or cleanly build from sources doesn't enable 64-bit mode by default, Sun provides package SUNWgcc, which contains patched gcc 3.4.6, which supports 64-bit mode.

However, Tcl configure doesn't know about ability to build 64-bit version of Tcl on Solaris Intel 10 (and above) platform. It explicitely test for output of Solaris isainfo utility to be equal to "sparcv9 sparc", while "amd64 i386" is 64-bit platform as well.

Attached patch made against configure script of tcl8.4.18 fixes this problem (problem still exists in tcl8.5.6)


  • Victor Wagner
    Victor Wagner

    Fix --enable-64bit on Solaris Intel

  • Don Porter
    Don Porter

    • priority: 5 --> 9
    • assigned_to: mdejong --> dgp
  • Don Porter
    Don Porter

    • assigned_to: dgp --> andreas_kupries
  • Ok, this patch seems to be out of date.

    Looking at the tcl.m4 file of all Tcl branch heads I find that the check for 'sparcv9 sparc' is always followed by a check for 'amd64 i386' which does what the patch purports to be doing, as far as I can tell.

    8.4: line 1871 - sparc check
    line 1894 - amd64 check

    8.5: line 1901 - sparc
    line 1923 - amd64

    8.6: line 1878 - sparc
    line 1900 - amd64

    Contrary to what I said on the chat I was unable to fully test the patch on our build box, because the gcc we have on that box is apparently not 64bit enabled. I might be able to install the patched SUNWgcc, not today anymore however.

    I was able to check the native compiler
    The unpatched sources are generating proper 64bit executables.
    The patched sources don't.

    • assigned_to: andreas_kupries --> dgp
    • status: open --> open-out-of-date
  • Don Porter
    Don Porter

    We cannot use the contributed patch.
    It patches "configure" which is a generated
    file. We would need a corrsponding patch
    for configure.in and tcl.m4, the sources
    from which configure is generated.

    Our development logs show:

    2008-06-12 Daniel Steffen <das@users.sourceforge.net>...
    * unix/tcl.m4 (SunOS-5.11): fix 64bit amd64 support with gcc & Sun cc.
    * unix/configure: autoconf-2.59

    so we would expect things to work properly starting
    with release Tcl 8.5.3, yet you report failure for
    either 8.5.5 or 8.5.6 (not clear). Please give the
    8.5.6 release another check, and if it is failing,
    see what details you can offer for why the Steffen
    commit didn't take care of things for you.

  • Don Porter
    Don Porter

    • priority: 9 --> 5
    • assigned_to: dgp --> das
    • status: open-out-of-date --> pending-invalid
  • Don Porter
    Don Porter

    The Steffen patch supports 64 bit builds
    on arch "amd64 i386" running SunOS-5.11
    or higher, it appears. Is the bug here that it
    is possible to support SunOS-5.10 as well?

  • it is certainly very possible that it is only a matter of adjusting the glob pattern to also match 5.10 in my patch to get support for that release, I would have only enabled my changes on the earliest solaris version I had easy access to at the time, for fear of breaking something on earlier releases...

  • This Tracker item was closed automatically by the system. It was
    previously set to a Pending status, and the original submitter
    did not respond within 14 days (the time period specified by
    the administrator of this Tracker).

    • status: pending-invalid --> closed-invalid