diff -r a64ae33ea8ae -r 7af68e6083aa patches/glibc/2.3.6/140-cygwin.patch --- a/patches/glibc/2.3.6/140-cygwin.patch Mon Jan 03 22:02:06 2011 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,187 +0,0 @@ -Fixes -elf/librtld.os: In function `process_envvars': : undefined reference to `__access' -... -when building glibc-2.3.x on cygwin - -Idea from -http://sources.redhat.com/ml/bug-glibc/2002-01/msg00071/glibc-2.2-cygin-shared.patch -Basically, make glibc use .oST as suffix for 'object static' -instead of .oS, since cygwin has trouble distinguishing .os from .oS -(Original patch had .on, but .oST is more mnemonic for 'object static') - -glibc-linuxthreads-2.3.5 also requires a patch, see -../glibc-linuxthreads-2.3.5/glibc-linuxthreads-2.3.5-cygwin.patch - -[ forward ported to glibc-2.3.5 by Petr Cvachoucek: - -Message-ID: <4282FCBA.3040000@unicontrols.cz> -Date: Thu, 12 May 2005 08:50:34 +0200 -From: Petr Cvachoucek -To: Dan Kegel -CC: crossgcc@sources.redhat.com -Subject: Patches to build gcc 3.4.3 / glibc 2.3.5 on cygwin - -Hi Dan, -following patches are needed to build gcc-3.4.3/glibc-2.3.5 toolchain -on cygwin. Tested to build toolchains for powerpc 604 and 750 targets. - --- - Petr Cvachoucek - Unicontrols a.s. - http://www.unicontrols.cz -] - -diff -aur glibc-2.3.5/Makeconfig glibc-2.3.5-cygwin/Makeconfig ---- glibc-2.3.5/Makeconfig 2005-02-16 11:50:19.000000000 +0100 -+++ glibc-2.3.5-cygwin/Makeconfig 2005-05-11 08:24:51.046875000 +0200 -@@ -449,7 +449,7 @@ - # run the linked programs. - link-libc = -Wl,-rpath-link=$(rpath-link) \ - $(common-objpfx)libc.so$(libc.so-version) \ -- $(common-objpfx)$(patsubst %,$(libtype.oS),c) $(gnulib) -+ $(common-objpfx)$(patsubst %,$(libtype.oST),c) $(gnulib) - # This is how to find at build-time things that will be installed there. - rpath-dirs = math elf dlfcn nss nis rt resolv crypt - endif -@@ -656,7 +656,7 @@ - # The compilation rules use $(CPPFLAGS-${SUFFIX}) and $(CFLAGS-${SUFFIX}) - # to pass different flags for each flavor. - libtypes = $(foreach o,$(object-suffixes-for-libc),$(libtype$o)) --all-object-suffixes := .o .os .op .og .ob .oS -+all-object-suffixes := .o .os .op .og .ob .oST - object-suffixes := - CPPFLAGS-.o = $(pic-default) - CFLAGS-.o = $(filter %frame-pointer,$(+cflags)) -@@ -712,14 +712,14 @@ - - ifeq (yes,$(build-shared)) - # Build special library that contains the static-only routines for libc. --object-suffixes-for-libc += .oS -+object-suffixes-for-libc += .oST - - # Must build the routines as PIC, though, because they can end up in (users') - # shared objects. We don't want to use CFLAGS-os because users may, for - # example, make that processor-specific. --CFLAGS-.oS = $(CFLAGS-.o) $(PIC-ccflag) --CPPFLAGS-.oS = $(CPPFLAGS-.o) -DPIC -DLIBC_NONSHARED=1 --libtype.oS = lib%_nonshared.a -+CFLAGS-.oST = $(CFLAGS-.o) $(PIC-ccflag) -+CPPFLAGS-.oST = $(CPPFLAGS-.o) -DPIC -DLIBC_NONSHARED=1 -+libtype.oST = lib%_nonshared.a - endif - - # The assembler can generate debug information too. -diff -aur glibc-2.3.5/Makerules glibc-2.3.5-cygwin/Makerules ---- glibc-2.3.5/Makerules 2004-12-15 19:52:39.000000000 +0100 -+++ glibc-2.3.5-cygwin/Makerules 2005-05-11 08:25:33.578125000 +0200 -@@ -416,7 +416,7 @@ - # Bounded pointer thunks are only built for *.ob - elide-bp-thunks = $(addprefix $(bppfx),$(bp-thunks)) - --elide-routines.oS += $(filter-out $(static-only-routines),\ -+elide-routines.oST += $(filter-out $(static-only-routines),\ - $(routines) $(aux) $(sysdep_routines)) \ - $(elide-bp-thunks) - elide-routines.os += $(static-only-routines) $(elide-bp-thunks) -@@ -961,7 +961,7 @@ - install: $(inst_libdir)/libc.so - $(inst_libdir)/libc.so: $(common-objpfx)format.lds \ - $(common-objpfx)libc.so$(libc.so-version) \ -- $(inst_libdir)/$(patsubst %,$(libtype.oS),\ -+ $(inst_libdir)/$(patsubst %,$(libtype.oST),\ - $(libprefix)$(libc-name)) \ - $(+force) - (echo '/* GNU ld script';\ -@@ -969,7 +969,7 @@ - echo ' the static library, so try that secondarily. */';\ - cat $<; \ - echo 'GROUP ( $(slibdir)/libc.so$(libc.so-version)' \ -- '$(libdir)/$(patsubst %,$(libtype.oS),$(libprefix)$(libc-name))'\ -+ '$(libdir)/$(patsubst %,$(libtype.oST),$(libprefix)$(libc-name))'\ - ')' \ - ) > $@.new - mv -f $@.new $@ -diff -aur glibc-2.3.5/extra-lib.mk glibc-2.3.5-cygwin/extra-lib.mk ---- glibc-2.3.5/extra-lib.mk 2004-12-02 23:54:47.000000000 +0100 -+++ glibc-2.3.5-cygwin/extra-lib.mk 2005-05-11 08:27:28.156250000 +0200 -@@ -13,7 +13,7 @@ - - ifneq (,$($(lib)-static-only-routines)) - ifneq (,$(filter yesyes%,$(build-shared)$(elf)$($(lib).so-version))) --object-suffixes-$(lib) += $(filter-out $($(lib)-inhibit-o),.oS) -+object-suffixes-$(lib) += $(filter-out $($(lib)-inhibit-o),.oST) - endif - endif - -@@ -29,7 +29,7 @@ - - # Add each flavor of library to the lists of things to build and install. - install-lib += $(foreach o,$(object-suffixes-$(lib)),$(lib:lib%=$(libtype$o))) --extra-objs += $(foreach o,$(filter-out .os .oS,$(object-suffixes-$(lib))),\ -+extra-objs += $(foreach o,$(filter-out .os .oST,$(object-suffixes-$(lib))),\ - $(patsubst %,%$o,$(filter-out \ - $($(lib)-shared-only-routines),\ - $(all-$(lib)-routines)))) -@@ -57,7 +57,7 @@ - - - # Use o-iterator.mk to generate a rule for each flavor of library. --ifneq (,$(filter-out .os .oS,$(object-suffixes-$(lib)))) -+ifneq (,$(filter-out .os .oST,$(object-suffixes-$(lib)))) - define o-iterator-doit - $(objpfx)$(patsubst %,$(libtype$o),$(lib:lib%=%)): \ - $(patsubst %,$(objpfx)%$o,\ -@@ -65,7 +65,7 @@ - $(all-$(lib)-routines))); \ - $$(build-extra-lib) - endef --object-suffixes-left = $(filter-out .os .oS,$(object-suffixes-$(lib))) -+object-suffixes-left = $(filter-out .os .oST,$(object-suffixes-$(lib))) - include $(patsubst %,$(..)o-iterator.mk,$(object-suffixes-left)) - endif - -@@ -77,9 +77,9 @@ - $(build-extra-lib) - endif - --ifneq (,$(filter .oS,$(object-suffixes-$(lib)))) --$(objpfx)$(patsubst %,$(libtype.oS),$(lib:lib%=%)): \ -- $(patsubst %,$(objpfx)%.oS,\ -+ifneq (,$(filter .oST,$(object-suffixes-$(lib)))) -+$(objpfx)$(patsubst %,$(libtype.oST),$(lib:lib%=%)): \ -+ $(patsubst %,$(objpfx)%.oST,\ - $(filter $($(lib)-static-only-routines),\ - $(all-$(lib)-routines))) - $(build-extra-lib) -diff -aur glibc-2.3.5/nptl/Makefile glibc-2.3.5-cygwin/nptl/Makefile ---- glibc-2.3.5/nptl/Makefile 2005-02-16 09:45:56.000000000 +0100 -+++ glibc-2.3.5-cygwin/nptl/Makefile 2005-05-11 08:26:01.812500000 +0200 -@@ -360,7 +360,7 @@ - - $(inst_libdir)/libpthread.so: $(common-objpfx)format.lds \ - $(objpfx)libpthread.so$(libpthread.so-version) \ -- $(inst_libdir)/$(patsubst %,$(libtype.oS),\ -+ $(inst_libdir)/$(patsubst %,$(libtype.oST),\ - $(libprefix)pthread) \ - $(+force) - (echo '/* GNU ld script';\ -@@ -368,7 +368,7 @@ - echo ' the static library, so try that secondarily. */';\ - cat $<; \ - echo 'GROUP ( $(slibdir)/libpthread.so$(libpthread.so-version)' \ -- '$(libdir)/$(patsubst %,$(libtype.oS),$(libprefix)pthread)'\ -+ '$(libdir)/$(patsubst %,$(libtype.oST),$(libprefix)pthread)'\ - ')' \ - ) > $@.new - mv -f $@.new $@ -diff -aur glibc-2.3.5/sysdeps/sparc/sparc32/sparcv9/Makefile glibc-2.3.5-cygwin/sysdeps/sparc/sparc32/sparcv9/Makefile ---- glibc-2.3.5/sysdeps/sparc/sparc32/sparcv9/Makefile 2004-08-16 08:46:14.000000000 +0200 -+++ glibc-2.3.5-cygwin/sysdeps/sparc/sparc32/sparcv9/Makefile 2005-05-11 08:26:25.937500000 +0200 -@@ -10,4 +10,4 @@ - ASFLAGS-.op += -Wa,-Av9a - ASFLAGS-.og += -Wa,-Av9a - ASFLAGS-.ob += -Wa,-Av9a --ASFLAGS-.oS += -Wa,-Av9a -+ASFLAGS-.oST += -Wa,-Av9a - -Signed-off-by: Robert P. J. Day