[M3devel] Couple of CM3 build comments (Solaris/SPARC).
Tony Hosking
hosking at cs.purdue.edu
Thu Aug 16 19:53:42 CEST 2007
I just built cm3cg on SPARC:
hosking at arthur ~-> ldd /p/sss/cm3/bin/cm3cg
libc.so.1 => /usr/lib/libc.so.1
libdl.so.1 => /usr/lib/libdl.so.1
/usr/platform/SUNW,Sun-Fire-V250/lib/libc_psr.so.1
hosking at arthur ~->
No libiconv...
The bootstrap compiler (cm3) and backend (cm3cg) are available at
ftp://ftp.cs.purdue.edu/pub/hosking/m3/SOLgnu in files cm3.gz and
cm3cg.gz. These are both built from the CVS head and contain LONGINT
support.
On Aug 16, 2007, at 1:46 PM, Stefan Sperling wrote:
> On Mon, Aug 13, 2007 at 08:55:01PM -0700, Alex Bochannek wrote:
>> Is it possible to configure it with --disable-nls? That's what we
>> tend
>> to do for our GCC builds as well. I just looked at the EZM3
>> install we
>> have and it doesn't seem like it requires libiconv.
>
> I'd favour listing libiconv as an explicit dependency of cm3.
>
> I've looked into this, and --disable-nls is not sufficient to remove
> gcc's dependency on libiconv. It unconditionally depends on libiconv
> if it can find the library on the system, regardless of flags passed
> to the configure script.
>
> I've tried hacking iconv detection out of the build system.
> There's a diff below against cm3-5.4 that removes cm3cg's
> dependency on libiconv. But it is very ugly.
>
> m3gdb also unconditionally depends on libiconv.
> I have not looked into that.
>
> I cannot deinstall libiconv on our Solaris box to prevent configure
> from picking it up because I don't have root, and I don't really think
> it's a good idea to begin with because removing the library would
> probably break a lot of dependencies.
>
> Alex, could you provide more details on what gcc backend you are
> using?
> Does the ezm3 equivalent of the cm3cg executable depend on libiconv?
>
>
> % ldd /usr/local/cm3/bin/cm3cg
> libiconv.so.2 => /usr/local/lib/libiconv.so.2
> libc.so.1 => /lib/libc.so.1
> libdl.so.1 => /lib/libdl.so.1
> /usr/platform/SUNW,Ultra-30/lib/libc_psr.so.1
>
> With the patch below I get:
>
> % ldd /usr/stsp/cm3/bin/cm3cg
> libc.so.1 => /lib/libc.so.1
> libdl.so.1 => /lib/libdl.so.1
> /usr/platform/SUNW,Ultra-30/lib/libc_psr.so.1
>
>
> Index: src/m3makefile
> ===================================================================
> RCS file: /usr/cvs/cm3/m3-sys/m3cc/src/m3makefile,v
> retrieving revision 1.16.2.1
> diff -u -r1.16.2.1 m3makefile
> --- src/m3makefile 23 Aug 2006 14:24:27 -0000 1.16.2.1
> +++ src/m3makefile 16 Aug 2007 17:27:18 -0000
> @@ -126,7 +126,8 @@
> if stale(donep, donep)
> if equal (M3CC_HOST, M3CC_TARGET)
> if equal (M3CC_TARGET, "SOLgnu")
> - exec ("cd", build_dir, "; .." & SL & "gcc" & SL &
> "configure",
> + exec ("cd", build_dir, "; env am_cv_lib_iconv=no .."
> + & SL & "gcc" & SL & "configure",
> M3CC_CONFIG,
> "--srcdir=.." & SL & "gcc",
> "--enable-languages=m3cg",
> Index: gcc/gcc/Makefile.in
> ===================================================================
> RCS file: /usr/cvs/cm3/m3-sys/m3cc/gcc/gcc/Makefile.in,v
> retrieving revision 1.6
> diff -u -r1.6 Makefile.in
> --- gcc/gcc/Makefile.in 10 Aug 2006 00:29:50 -0000 1.6
> +++ gcc/gcc/Makefile.in 16 Aug 2007 17:27:18 -0000
> @@ -471,8 +471,8 @@
> LIBINTL_DEP = @LIBINTL_DEP@
>
> # Character encoding conversion library.
> -LIBICONV = @LIBICONV@
> -LIBICONV_DEP = @LIBICONV_DEP@
> +#LIBICONV = @LIBICONV@
> +#LIBICONV_DEP = @LIBICONV_DEP@
>
> # The GC method to be used on this system.
> GGC=@GGC at .o
> @@ -718,7 +718,7 @@
> BUILD_LIBIBERTY = @FORBUILD@/libiberty/libiberty.a
>
> # Dependencies on the intl and portability libraries.
> -LIBDEPS= $(LIBIBERTY) $(LIBINTL_DEP) $(LIBICONV_DEP)
> +LIBDEPS= $(LIBIBERTY) $(LIBINTL_DEP) #$(LIBICONV_DEP)
>
> # Likewise, for use in the tools that must run on this machine
> # even if we are cross-building GCC.
> @@ -726,7 +726,7 @@
>
> # How to link with both our special library facilities
> # and the system's installed libraries.
> -LIBS = @LIBS@ $(LIBIBERTY) $(LIBINTL) $(LIBICONV)
> +LIBS = @LIBS@ $(LIBIBERTY) $(LIBINTL) #$(LIBICONV)
>
> # Any system libraries needed just for GNAT.
> SYSLIBS = @GNAT_LIBEXC@
>
> --
> Stefan Sperling <stsp at elego.de> Software Developer
> elego Software Solutions GmbH HRB 77719
> Gustav-Meyer-Allee 25, Gebaeude 12 Tel: +49 30 23 45 86 96
> 13355 Berlin Fax: +49 30 23 45 86 95
> http://www.elego.de Geschaeftsfuehrer: Olaf Wagner
More information about the M3devel
mailing list