This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.
See the CrossGCC FAQ for lots more information.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
--- crosstool-0.43/crosstool.sh 2008-01-14 09:50:28.000000000 -0500 +++ /tmp/crosstool.sh 2008-01-14 09:49:53.000000000 -0500 @@ -74,13 +74,19 @@ # this is lame, need to fix this for nptl later? # (nptl is an addon, but it's shipped in the main tarball) GLIBC_ADDON_OPTIONS="=" - case "${GLIBCTHREADS_FILENAME}" in - *linuxthreads*) GLIBC_ADDON_OPTIONS="${GLIBC_ADDON_OPTIONS}linuxthreads," ;; - esac +# GW want nptl instead +# case "${GLIBCTHREADS_FILENAME}" in +# *linuxthreads*) GLIBC_ADDON_OPTIONS="${GLIBC_ADDON_OPTIONS}linuxthreads," ;; +# esac # crypt is only an addon for glibc-2.1.x test -z "${GLIBCCRYPT_FILENAME}" || GLIBC_ADDON_OPTIONS="${GLIBC_ADDON_OPTIONS}crypt," fi +# GW need separate ports code for mips et al now +GLIBC_ADDON_OPTIONS="${GLIBC_ADDON_OPTIONS},glibc-ports-2.7," +# GW use nptl instead of old linuxthreads +GLIBC_ADDON_OPTIONS="${GLIBC_ADDON_OPTIONS},nptl," + # Add some default glibc config options if not given by user. These used to be hardcoded. DEFAULT_GLIBC_EXTRA_CONFIG="" case "${GLIBC_EXTRA_CONFIG}" in @@ -100,8 +106,9 @@ test -z "${LD_LIBRARY_PATH}" || abort "glibc refuses to build if LD_LIBRARY_PATH is set. Please unset it before running this script." # And one is derived if unset. -test -z "${GLIBCTHREADS_FILENAME}" && -GLIBCTHREADS_FILENAME=`echo $GLIBC_DIR | sed 's/glibc-/glibc-linuxthreads-/'` +# GW using nptl instead +#test -z "${GLIBCTHREADS_FILENAME}" && +#GLIBCTHREADS_FILENAME=`echo $GLIBC_DIR | sed 's/glibc-/glibc-linuxthreads-/'` # Check for a few prerequisites that have tripped people up. awk '/x/' < /dev/null || abort "You need awk to build a toolchain." @@ -200,10 +207,16 @@ # to decide that since build==host, they could run host binaries. # # if host is cygwin and this is not a canadian build, modify GCC_HOST -case "$GCC_HOST,$CANADIAN_BUILD," in -*cygwin*,?*,) ;; -*) GCC_HOST=`echo $GCC_HOST | sed s/-/-host_/` ;; -esac + +# GW this -host_ thing prevents building on Xubuntu 7.04. Although I am running a P4 +# and this script auto detects i686, the actual build tools are prefixed with i486, +# so I had to specify the i486 prefix in the dat file. +# For the interested: I also had to make links to unprefixed tools like ar because +# only some tools like gcc have prefixes in Xubuntu 7.04. +#case "$GCC_HOST,$CANADIAN_BUILD," in +#*cygwin*,?*,) ;; +#*) GCC_HOST=`echo $GCC_HOST | sed s/-/-host_/` ;; +#esac # If we're building compilers that run on Windows, remember that their @@ -400,6 +413,13 @@ if grep -q 'gcc-[34]' ${GCC_CORE_DIR}/ChangeLog && test '!' -f $HEADERDIR/features.h; then mkdir -p build-glibc-headers; cd build-glibc-headers +# GW patch for stdio_lim.h +cp ${TOP_DIR}/Makefile.glibc-2.7.stdio-common ../glibc-2.7/stdio-common/Makefile + +# GW -mabi=32 error from cc1 +# http://sourceware.org/ml/crossgcc/2005-07/msg00036.html +cp ${TOP_DIR}/Makefile.glibc-2.7.glibc-ports-2.7 ../glibc-2.7/glibc-ports-2.7/sysdeps/mips/mips32/Makefile + if test '!' -f Makefile; then # The following three things have to be done to build glibc-2.3.x, but they don't hurt older versions. # 1. override CC to keep glibc's configure from using $TARGET-gcc. @@ -440,9 +460,17 @@ touch stdio-common/errlist-compat.c fi # Note: BOOTSTRAP_GCC is used by patches/glibc-2.3.5/glibc-mips-bootstrap-gcc-header-install.patch + +# GW lib-names.h did not exist for mipsel early in my build attempts. +MADNESS=/home/gregor/sx/cross_build/crosstool-0.43/build/mipsel-linux-gnu/gcc-4.2.2-glibc-2.7 +mkdir ${MADNESS}/build-glibc-headers/gnu +cp ${MADNESS}/glibc-2.7/glibc-ports-2.7/sysdeps/unix/sysv/aix/gnu/lib-names.h \ + ${MADNESS}/build-glibc-headers/gnu/lib-names.h + libc_cv_ppc_machine=yes \ make cross-compiling=yes install_root=${SYSROOT} CFLAGS=-DBOOTSTRAP_GCC $GLIBC_SYSROOT_ARG install-headers + # Two headers -- stubs.h and features.h -- aren't installed by install-headers, # so do them by hand. We can tolerate an empty stubs.h for the moment. # See e.g. http://gcc.gnu.org/ml/gcc/2002-01/msg00900.html @@ -453,6 +481,7 @@ # Building the bootstrap gcc requires either setting inhibit_libc, or # having a copy of stdio_lim.h... see # http://sources.redhat.com/ml/libc-alpha/2003-11/msg00045.html +# GW still need copy kludge? cp bits/stdio_lim.h $HEADERDIR/bits/stdio_lim.h # Following error building gcc-4.0.0's gcj: @@ -506,6 +535,9 @@ mkdir -p build-glibc; cd build-glibc +# GW my version of glibc-2.7 Makerules +cp ${TOP_DIR}/Makerules.glibc-2.7 ../glibc-2.7/Makerules + # sh4 really needs to set configparms as of gcc-3.4/glibc-2.3.2 # note: this is awkward, doesn't work well if you need more than one line in configparms echo ${GLIBC_CONFIGPARMS} > configparms @@ -560,6 +592,7 @@ # The following architectures are known to need kernel .config: alpha, arm, ia64, s390, sh, sparc # Note: LD and RANLIB needed by glibc-2.1.3's c_stub directory, at least on macosx # No need for PARALLELMFLAGS here, Makefile already reads this environment variable + make LD=${TARGET}-ld RANLIB=${TARGET}-ranlib $GLIBC_INITIAL_BUILD_RULE make install_root=${SYSROOT} $GLIBC_SYSROOT_ARG $GLIBC_INITIAL_INSTALL_RULE
Attachment:
gcc-4.2.2-glibc-2.7-tls.dat
Description: MOPAC data
--- glibc-2.7/glibc-ports-2.7/sysdeps/mips/mips32/Makefile 2003-03-29 03:15:28.000000000 -0500 +++ Makefile.glibc-2.7.glibc-ports-2.7 2008-01-14 09:17:47.000000000 -0500 @@ -1,3 +1,8 @@ +# http://sourceware.org/ml/crossgcc/2005-07/msg00036.html +ifeq ($(filter -DBOOTSTRAP_GCC,$(CFLAGS)),) ifeq ($(filter -mabi=32,$(CC)),) CC += -mabi=32 endif +else +CC += -D"_MIPS_SZPTR=32" +endif
--- glibc-2.7/stdio-common/Makefile 2007-09-18 14:54:24.000000000 -0400 +++ Makefile.glibc-2.7.stdio-common 2008-01-14 09:17:47.000000000 -0500 @@ -21,7 +21,7 @@ # subdir := stdio-common -headers := stdio_ext.h printf.h bits/printf-ldbl.h +headers := stdio_ext.h printf.h bits/printf-ldbl.h bits/stdio_lim.h routines := \ ctermid cuserid \ @@ -38,8 +38,6 @@ isoc99_scanf isoc99_vscanf isoc99_fscanf isoc99_vfscanf isoc99_sscanf \ isoc99_vsscanf -install-others = $(inst_includedir)/bits/stdio_lim.h - include ../Makeconfig aux := errlist siglist printf-parsemb printf-parsewc fxprintf @@ -63,9 +61,6 @@ include ../Rules -$(inst_includedir)/bits/stdio_lim.h: $(common-objpfx)bits/stdio_lim.h $(+force) - $(do-install) - ifeq ($(cross-compiling),no) .PHONY: do-tst-unbputc do-tst-printf tests: do-tst-unbputc do-tst-printf
--- glibc-2.7/Makerules 2007-08-25 22:18:03.000000000 -0400 +++ Makerules.glibc-2.7 2008-01-14 09:17:47.000000000 -0500 @@ -867,6 +867,14 @@ installed-libcs := $(foreach o,$(filter-out .os,$(object-suffixes-for-libc)),\ $(inst_libdir)/$(patsubst %,$(libtype$o),\ $(libprefix)$(libc-name))) + +install-lib-all: $(inst_slibdir)/libc.so$(libc.so-version) \ + $(inst_slibdir)/libc-$(version).so \ + $(inst_libdir)/libc.so \ + $(inst_libdir)/libc.a \ + install-lib + + install: $(installed-libcs) $(installed-libcs): $(inst_libdir)/lib$(libprefix)%: lib $(+force) $(make-target-directory)
-- For unsubscribe information see http://sourceware.org/lists.html#faq
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |