[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Big change coming with compiler default



Now that gcc-3.2.3 is the default compiler for debian-sparc, and is
64-bit capable, we have a first. The same compiler is able to do all the
compilations for the system (including 64-bit userspace).

One major change is coming though. Normally the 64-bit enabled compiler
will check uname() to see if we are sparc or sparc64 (changable using
the sparc32/sparc64 programs to change the personality or specifically
using -m32/-m64). I have that disabled right now.

It would default to -m64 (64-bit) for sparc64, and -m32 (32-bit) for
sparc. However, as you all may know, uname shows sparc64 for all
ultrasparc systems, even though debian-sparc has always been (and always
will be) 32-bit userspace on that platform.

So, to make the transition safe and easy, I'm adding a bit of extra
logic. Since userspace cannot compile 64-bit without
/lib64/libgcc_s.so.1 (lib64gcc1 package), I am going to make the logic:

if uname.machine == "sparc64" and -f /lib64/libgcc_s.so.1
    -m64
else
    -m32

This will be overriden if -m64 and -m32 is passed on the command line
though. So if you install lib64gcc1 and you are on a sparc64, your
compiler will suddenylu start to default to 64-bit. So you will need to
do this:

# sparc32 ./configure
# sparc32 make

The sparc32 program will force a 32-bit personality (uname.machine ==
sparc).

-- 
Debian     - http://www.debian.org/
Linux 1394 - http://www.linux1394.org/
Subversion - http://subversion.tigris.org/
Deqo       - http://www.deqo.com/



Reply to: