Date: Fri, 21 Mar 2003 09:11:59 -0800 From: "David O'Brien" <obrien@freebsd.org> To: Dag-Erling Smorgrav <des@ofug.org> Cc: Peter Grehan <grehan@freebsd.org>, ppc@freebsd.org Subject: Re: world Message-ID: <20030321171159.GA14894@dragon.nuxi.com> In-Reply-To: <xzp1y1c4obt.fsf@flood.ping.uio.no> References: <xzpr89dv7fx.fsf@flood.ping.uio.no> <3E6F33AC.5901FE38@freebsd.org> <xzp1y1c4obt.fsf@flood.ping.uio.no>
next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Mar 12, 2003 at 04:05:58PM +0100, Dag-Erling Smorgrav wrote: > Peter Grehan <grehan@freebsd.org> writes: > > > Is the powerpc port currently at a stage where it should be possible > > > to build world? > > At the minimum a toolchain patch is needed. > > Where would I find such a patch? Index: contrib/gcc/config/rs6000/freebsd.h =================================================================== RCS file: /home/ncvs/src/contrib/gcc/config/rs6000/freebsd.h,v retrieving revision 1.1.1.1 diff -u -r1.1.1.1 freebsd.h --- contrib/gcc/config/rs6000/freebsd.h 1 Feb 2002 18:15:22 -0000 1.1.1.1 +++ contrib/gcc/config/rs6000/freebsd.h 21 Mar 2003 17:11:00 -0000 @@ -23,6 +23,15 @@ #undef CPP_OS_DEFAULT_SPEC #define CPP_OS_DEFAULT_SPEC "%(cpp_os_freebsd)" +/* XXX */ +#undef CPP_ENDIAN_BIG_SPEC +#define CPP_ENDIAN_BIG_SPEC "-D__BIG_ENDIAN__ -Amachine=bigendian" + +/* XXX */ +#undef CPP_ENDIAN_LITTLE_SPEC +#define CPP_ENDIAN_LITTLE_SPEC "-D__LITTLE_ENDIAN__ -Amachine=littleendian" +#endif + #undef STARTFILE_DEFAULT_SPEC #define STARTFILE_DEFAULT_SPEC "%(startfile_freebsd)" @@ -38,6 +47,11 @@ #undef LINK_OS_DEFAULT_SPEC #define LINK_OS_DEFAULT_SPEC "%(link_os_freebsd)" +/* XXX: This is wrong for many platforms in sysv4.h. + We should work on getting that defination fixed. */ +#undef LINK_SHLIB_SPEC +#define LINK_SHLIB_SPEC "%{shared:-shared} %{!shared: %{static:-static}}" + /************************[ Target stuff ]***********************************/ @@ -47,6 +61,18 @@ /* rs6000.h gets this wrong for FreeBSD. We use the GCC defaults instead. */ #undef WCHAR_TYPE + +/* +XXX: SIZE_TYPE setting fixes: +/usr/obj/powerpc/usr/src/i386/usr/include/string.h:65: warning: conflicting types for built-in function `memcmp' +/usr/obj/powerpc/usr/src/i386/usr/include/string.h:66: warning: conflicting types for built-in function `memcpy' +/usr/obj/powerpc/usr/src/i386/usr/include/string.h:68: warning: conflicting types for built-in function `memset' +/usr/obj/powerpc/usr/src/i386/usr/include/string.h:94: warning: conflicting types for built-in function `strncat' +/usr/obj/powerpc/usr/src/i386/usr/include/string.h:95: warning: conflicting types for built-in function `strncmp' +/usr/obj/powerpc/usr/src/i386/usr/include/string.h:96: warning: conflicting types for built-in function `strncpy' +*/ +#undef SIZE_TYPE +#define SIZE_TYPE "unsigned int" #undef WCHAR_UNSIGNED #define WCHAR_UNSIGNED 0 Index: contrib/gcc/config/rs6000/sysv4.h =================================================================== RCS file: /home/ncvs/src/contrib/gcc/config/rs6000/sysv4.h,v retrieving revision 1.1.1.5 diff -u -r1.1.1.5 sysv4.h --- contrib/gcc/config/rs6000/sysv4.h 10 Feb 2003 05:41:43 -0000 1.1.1.5 +++ contrib/gcc/config/rs6000/sysv4.h 21 Mar 2003 17:04:49 -0000 @@ -326,7 +326,7 @@ /* Define this to set the endianness to use in libgcc2.c, which can not depend on target_flags. */ -#if !defined(_LITTLE_ENDIAN) && !defined(__sun__) +#if !defined(__LITTLE_ENDIAN__) && !defined(__sun__) #define LIBGCC2_WORDS_BIG_ENDIAN 1 #else #define LIBGCC2_WORDS_BIG_ENDIAN 0 @@ -1207,7 +1207,7 @@ /* FreeBSD support. */ #define CPP_OS_FREEBSD_SPEC "\ - -D__PPC__ -D__ppc__ -D__PowerPC__ -D__powerpc__ \ + -D__PPC__ -D__ppc__ -D__PowerPC__ -D__powerpc__ -D__ELF__ \ -Acpu=powerpc -Amachine=powerpc" #define STARTFILE_FREEBSD_SPEC FBSD_STARTFILE_SPEC @@ -1216,7 +1216,17 @@ #define LINK_START_FREEBSD_SPEC "" #define LINK_OS_FREEBSD_SPEC "\ - %{symbolic:-Bsymbolic}" + %{p:%e`-p' not supported; use `-pg' and gprof(1)} \ + %{Wl,*:%*} \ + %{v:-V} \ + %{assert*} %{R*} %{rpath*} %{defsym*} \ + %{shared:-Bshareable %{h*} %{soname*}} \ + %{!shared: \ + %{!static: \ + %{rdynamic: -export-dynamic} \ + %{!dynamic-linker: -dynamic-linker /usr/libexec/ld-elf.so.1}} \ + %{static:-Bstatic}} \ + %{symbolic:-Bsymbolic}" /* GNU/Linux support. */ #ifdef USE_GNULIBC_1 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ppc" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030321171159.GA14894>