patches/glibc/2.5/100-cygwin.patch
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun Apr 19 16:17:11 2009 +0000 (2009-04-19)
branchnewlib
changeset 1365 c4d124ed9f8e
parent 744 4bf8448536d5
permissions -rw-r--r--
Update the newlib devel branch with stuf from /trunk.

-------- diffstat follows --------
/devel/newlib/configure | 8 4 4 0
/devel/newlib/scripts/build/kernel/linux.sh | 2 1 1 0
/devel/newlib/scripts/build/cc/gcc.sh | 34 22 12 0 +
/devel/newlib/scripts/build/debug/300-gdb.sh | 52 45 7 0 +
/devel/newlib/scripts/build/libc/uClibc.sh | 6 3 3 0
/devel/newlib/scripts/build/mpfr.sh | 2 1 1 0
/devel/newlib/scripts/crosstool-NG.sh.in | 20 18 2 0 +
/devel/newlib/scripts/functions | 44 34 10 0 +
/devel/newlib/patches/glibc/2_9/500-ppc-glibc-2.9-atomic.patch | 414 0 414 0 ----------
/devel/newlib/patches/glibc/2_9/140-regex-BZ9697.patch | 111 0 111 0 ---
/devel/newlib/patches/glibc/2_9/190-queue-header-updates.patch | 89 0 89 0 --
/devel/newlib/patches/glibc/2_9/370-hppa_glibc-2.7-hppa-nptl-carlos.patch | 249 0 249 0 ------
/devel/newlib/patches/glibc/2_9/450-alpha-glibc-2.5-no-page-header.patch | 32 0 32 0 -
/devel/newlib/patches/glibc/2_9/330-2.3.3-china.patch | 35 0 35 0 -
/devel/newlib/patches/glibc/2_9/270-ldbl-nexttowardf.patch | 68 0 68 0 --
/devel/newlib/patches/glibc/2_9/410-2.9-fnmatch.patch | 64 0 64 0 --
/devel/newlib/patches/glibc/2_9/340-new-valencian-locale.patch | 120 0 120 0 ---
/devel/newlib/patches/glibc/2_9/350-2.4-undefine-__i686.patch | 47 0 47 0 -
/devel/newlib/patches/glibc/2_9/160-i386-x86_64-revert-clone-cfi.patch | 53 0 53 0 -
/devel/newlib/patches/glibc/2_9/150-regex-BZ697.patch | 28 0 28 0 -
/devel/newlib/patches/glibc/2_9/420-dont-build-timezone.patch | 19 0 19 0 -
/devel/newlib/patches/glibc/2_9/290-no-inline-gmon.patch | 38 0 38 0 -
/devel/newlib/patches/glibc/2_9/280-section-comments.patch | 29 0 29 0 -
/devel/newlib/patches/glibc/2_9/180-math-tests.patch | 72 0 72 0 --
/devel/newlib/patches/glibc/2_9/250-resolv-dynamic.patch | 44 0 44 0 -
/devel/newlib/patches/glibc/2_9/120-_nss_dns_gethostbyaddr2_r-check-and-adjust-the-buffer-alignment.patch | 35 0 35 0 -
/devel/newlib/patches/glibc/2_9/300-2.9-check_native-headers.patch | 22 0 22 0 -
/devel/newlib/patches/glibc/2_9/130-add_prio-macros.patch | 26 0 26 0 -
/devel/newlib/patches/glibc/2_9/310-2.3.6-fix-pr631.patch | 50 0 50 0 -
/devel/newlib/patches/glibc/2_9/510-sh-no-asm-user-header.patch | 70 0 70 0 --
/devel/newlib/patches/glibc/2_9/260-fadvise64_64.patch | 30 0 30 0 -
/devel/newlib/patches/glibc/2_9/440-alpha-glibc-2.4-xstat.patch | 249 0 249 0 ------
/devel/newlib/patches/glibc/2_9/170-2.10-dns-no-gethostbyname4.patch | 35 0 35 0 -
/devel/newlib/patches/glibc/2_9/230-2.3.3-localedef-fix-trampoline.patch | 74 0 74 0 --
/devel/newlib/patches/glibc/2_9/480-alpha-glibc-2.8-cache-shape.patch | 18 0 18 0 -
/devel/newlib/patches/glibc/2_9/360-2.8-nscd-one-fork.patch | 45 0 45 0 -
/devel/newlib/patches/glibc/2_9/210-2.9-strlen-hack.patch | 109 0 109 0 ---
/devel/newlib/patches/glibc/2_9/320-2.9-assume-pipe2.patch | 59 0 59 0 -
/devel/newlib/patches/glibc/2_9/100-ssp-compat.patch | 193 0 193 0 -----
/devel/newlib/patches/glibc/2_9/110-respect-env-CPPFLAGS.patch | 30 0 30 0 -
/devel/newlib/patches/glibc/2_9/220-manual-no-perl.patch | 29 0 29 0 -
/devel/newlib/patches/glibc/2_9/390-2.3.3_pre20040117-pt_pax.patch | 35 0 35 0 -
/devel/newlib/patches/glibc/2_9/460-alpha-glibc-2.5-no-asm-elf-header.patch | 38 0 38 0 -
/devel/newlib/patches/glibc/2_9/400-tests-sandbox-libdl-paths.patch | 198 0 198 0 -----
/devel/newlib/patches/glibc/2_9/520-sh-no-asm-elf-header.patch | 27 0 27 0 -
/devel/newlib/patches/glibc/2_9/240-i386-LOAD_PIC_REG.patch | 23 0 23 0 -
/devel/newlib/patches/glibc/2_9/200-awk-in-C-locale.patch | 23 0 23 0 -
/devel/newlib/patches/glibc/2_9/430-2.7-cross-compile-nptl.patch | 57 0 57 0 -
/devel/newlib/patches/glibc/2_9/380-2.3.6-dl_execstack-PaX-support.patch | 71 0 71 0 --
/devel/newlib/patches/glibc/2_9/490-ptr-mangling.patch | 114 0 114 0 ---
/devel/newlib/patches/glibc/2_9/470-alpha-glibc-2.8-creat.patch | 19 0 19 0 -
/devel/newlib/patches/glibc/ports-2_9/100-arm_linux_tls.patch | 14 0 14 0 -
/devel/newlib/patches/uClibc/0.9.30.1/140-gnu89-inline.patch | 2 1 1 0
/devel/newlib/docs/known-issues.txt | 16 15 1 0 +
/devel/newlib/docs/overview.txt | 2 1 1 0
/devel/newlib/samples/armeb-unknown-linux-uclibc/uClibc-0.9.30.config | 243 0 243 0 ------
/devel/newlib/samples/armeb-unknown-linux-uclibc/crosstool.config | 78 55 23 0 +-
/devel/newlib/samples/sh4-unknown-linux-gnu/crosstool.config | 35 18 17 0 +
/devel/newlib/samples/x86_64-unknown-linux-gnu/crosstool.config | 104 68 36 0 +--
/devel/newlib/samples/arm-unknown-elf/crosstool.config | 54 47 7 0 +
/devel/newlib/samples/armeb-unknown-eabi/crosstool.config | 54 47 7 0 +
/devel/newlib/samples/arm-unknown-linux-gnueabi/crosstool.config | 113 73 40 0 +--
/devel/newlib/samples/ia64-unknown-linux-gnu/crosstool.config | 91 61 30 0 +-
/devel/newlib/samples/x86_64-unknown-linux-uclibc/uClibc-0.9.30.config | 245 0 245 0 ------
/devel/newlib/samples/x86_64-unknown-linux-uclibc/crosstool.config | 78 55 23 0 +-
/devel/newlib/samples/armeb-unknown-linux-gnueabi/crosstool.config | 105 69 36 0 +--
/devel/newlib/samples/powerpc-e500v2-linux-gnuspe/crosstool.config | 96 63 33 0 +-
/devel/newlib/samples/i686-nptl-linux-gnu/crosstool.config | 78 48 30 0 +-
/devel/newlib/samples/arm-unknown-linux-gnu/crosstool.config | 105 69 36 0 +--
/devel/newlib/samples/powerpc-unknown-linux-gnu/crosstool.config | 103 67 36 0 +-
/devel/newlib/samples/mips-unknown-linux-uclibc/uClibc-0.9.30.config | 254 0 254 0 ------
/devel/newlib/samples/mips-unknown-linux-uclibc/crosstool.config | 77 54 23 0 +-
/devel/newlib/samples/arm-unknown-linux-uclibcgnueabi/uClibc-0.9.30.config | 253 0 253 0 ------
/devel/newlib/samples/arm-unknown-linux-uclibcgnueabi/crosstool.config | 78 55 23 0 +-
/devel/newlib/samples/arm-iphone-linux-gnueabi/crosstool.config | 84 57 27 0 +-
/devel/newlib/samples/armeb-unknown-linux-gnu/crosstool.config | 105 69 36 0 +--
/devel/newlib/samples/powerpc-unknown_nofpu-linux-gnu/crosstool.config | 104 68 36 0 +--
/devel/newlib/samples/i586-geode-linux-uclibc/uClibc-0.9.30.config | 263 0 263 0 ------
/devel/newlib/samples/i586-geode-linux-uclibc/crosstool.config | 78 55 23 0 +-
/devel/newlib/samples/arm-unknown-linux-uclibc/uClibc-0.9.30.config | 253 0 253 0 ------
/devel/newlib/samples/arm-unknown-linux-uclibc/crosstool.config | 78 55 23 0 +-
/devel/newlib/samples/powerpc-unknown-linux-uclibc/uClibc-0.9.30.config | 248 0 248 0 ------
/devel/newlib/samples/powerpc-unknown-linux-uclibc/crosstool.config | 77 54 23 0 +-
/devel/newlib/samples/mips-unknown-elf/crosstool.config | 54 47 7 0 +
/devel/newlib/samples/powerpc-405-linux-gnu/crosstool.config | 104 68 36 0 +--
/devel/newlib/samples/armeb-unknown-linux-uclibcgnueabi/crosstool.config | 26 13 13 0
/devel/newlib/samples/arm-unknown-eabi/crosstool.config | 54 47 7 0 +
/devel/newlib/samples/mipsel-unknown-linux-gnu/crosstool.config | 104 68 36 0 +--
/devel/newlib/samples/powerpc64-unknown-linux-gnu/crosstool.config | 75 49 26 0 +-
/devel/newlib/samples/alphaev56-unknown-linux-gnu/crosstool.config | 94 63 31 0 +-
/devel/newlib/samples/powerpc-860-linux-gnu/crosstool.config | 102 67 35 0 +-
/devel/newlib/config/kernel/linux.in | 87 46 41 0 +-
/devel/newlib/config/cc/gcc.in | 35 30 5 0 +
/devel/newlib/config/debug/gdb.in | 2 1 1 0
94 files changed, 1851 insertions(+), 5813 deletions(-)
     1 Fixes
     2 elf/librtld.os: In function `process_envvars': : undefined reference to `__access'
     3 ...
     4 when building glibc-2.3.x on cygwin
     5 
     6 Idea from
     7 http://sources.redhat.com/ml/bug-glibc/2002-01/msg00071/glibc-2.2-cygin-shared.patch
     8 Basically, make glibc use .oST as suffix for 'object static'
     9 instead of .oS, since cygwin has trouble distinguishing .os from .oS
    10 (Original patch had .on, but .oST is more mnemonic for 'object static')
    11 
    12 glibc-linuxthreads-2.3.5 also requires a patch, see 
    13 ../glibc-linuxthreads-2.3.5/glibc-linuxthreads-2.3.5-cygwin.patch
    14 
    15 [ forward ported to glibc-2.3.5 by Petr Cvachoucek:
    16 
    17 Message-ID: <4282FCBA.3040000@unicontrols.cz>
    18 Date: Thu, 12 May 2005 08:50:34 +0200
    19 From: Petr Cvachoucek <cvachoucek@unicontrols.cz>
    20 To: Dan Kegel <dank@kegel.com>
    21 CC:  crossgcc@sources.redhat.com
    22 Subject: Patches to build gcc 3.4.3 / glibc 2.3.5 on cygwin
    23 
    24 Hi Dan,
    25 following patches are needed to build gcc-3.4.3/glibc-2.3.5 toolchain
    26 on cygwin. Tested to build toolchains for powerpc 604 and 750 targets.
    27 
    28 -- 
    29                      Petr Cvachoucek
    30                      Unicontrols a.s.
    31                      http://www.unicontrols.cz
    32 ]
    33 
    34 diff -aur glibc-2.3.5/Makeconfig glibc-2.3.5-cygwin/Makeconfig
    35 --- glibc-2.3.5/Makeconfig	2005-02-16 11:50:19.000000000 +0100
    36 +++ glibc-2.3.5-cygwin/Makeconfig	2005-05-11 08:24:51.046875000 +0200
    37 @@ -472,7 +472,7 @@
    38  # run the linked programs.
    39  link-libc = -Wl,-rpath-link=$(rpath-link) \
    40  	    $(common-objpfx)libc.so$(libc.so-version) \
    41 -	    $(common-objpfx)$(patsubst %,$(libtype.oS),c) $(gnulib)
    42 +	    $(common-objpfx)$(patsubst %,$(libtype.oST),c) $(gnulib)
    43  # This is how to find at build-time things that will be installed there.
    44  rpath-dirs = math elf dlfcn nss nis rt resolv crypt
    45  endif
    46 @@ -693,7 +693,7 @@
    47  # The compilation rules use $(CPPFLAGS-${SUFFIX}) and $(CFLAGS-${SUFFIX})
    48  # to pass different flags for each flavor.
    49  libtypes = $(foreach o,$(object-suffixes-for-libc),$(libtype$o))
    50 -all-object-suffixes := .o .os .op .og .ob .oS
    51 +all-object-suffixes := .o .os .op .og .ob .oST
    52  object-suffixes :=
    53  CPPFLAGS-.o = $(pic-default)
    54  CFLAGS-.o = $(filter %frame-pointer,$(+cflags))
    55 @@ -749,14 +749,14 @@
    56  
    57  ifeq (yes,$(build-shared))
    58  # Build special library that contains the static-only routines for libc.
    59 -object-suffixes-for-libc += .oS
    60 +object-suffixes-for-libc += .oST
    61  
    62  # Must build the routines as PIC, though, because they can end up in (users')
    63  # shared objects.  We don't want to use CFLAGS-os because users may, for
    64  # example, make that processor-specific.
    65 -CFLAGS-.oS = $(CFLAGS-.o) $(PIC-ccflag)
    66 -CPPFLAGS-.oS = $(CPPFLAGS-.o) -DPIC -DLIBC_NONSHARED=1
    67 -libtype.oS = lib%_nonshared.a
    68 +CFLAGS-.oST = $(CFLAGS-.o) $(PIC-ccflag)
    69 +CPPFLAGS-.oST = $(CPPFLAGS-.o) -DPIC -DLIBC_NONSHARED=1
    70 +libtype.oST = lib%_nonshared.a
    71  endif
    72  
    73  # The assembler can generate debug information too.
    74 diff -aur glibc-2.3.5/Makerules glibc-2.3.5-cygwin/Makerules
    75 --- glibc-2.3.5/Makerules	2004-12-15 19:52:39.000000000 +0100
    76 +++ glibc-2.3.5-cygwin/Makerules	2005-05-11 08:25:33.578125000 +0200
    77 @@ -417,7 +417,7 @@
    78  # Bounded pointer thunks are only built for *.ob
    79  elide-bp-thunks = $(addprefix $(bppfx),$(bp-thunks))
    80  
    81 -elide-routines.oS += $(filter-out $(static-only-routines),\
    82 +elide-routines.oST += $(filter-out $(static-only-routines),\
    83  				  $(routines) $(aux) $(sysdep_routines)) \
    84  		     $(elide-bp-thunks)
    85  elide-routines.os += $(static-only-routines) $(elide-bp-thunks)
    86 @@ -981,7 +981,7 @@
    87  install: $(inst_libdir)/libc.so
    88  $(inst_libdir)/libc.so: $(common-objpfx)format.lds \
    89  			$(common-objpfx)libc.so$(libc.so-version) \
    90 -			$(inst_libdir)/$(patsubst %,$(libtype.oS),\
    91 +			$(inst_libdir)/$(patsubst %,$(libtype.oST),\
    92  						  $(libprefix)$(libc-name)) \
    93  			$(+force)
    94  	(echo '/* GNU ld script';\
    95 @@ -989,7 +989,7 @@
    96  	 echo '   the static library, so try that secondarily.  */';\
    97  	 cat $<; \
    98  	 echo 'GROUP ( $(slibdir)/libc.so$(libc.so-version)' \
    99 -	      '$(libdir)/$(patsubst %,$(libtype.oS),$(libprefix)$(libc-name))'\
   100 +	      '$(libdir)/$(patsubst %,$(libtype.oST),$(libprefix)$(libc-name))'\
   101 	      ' AS_NEEDED (' $(slibdir)/$(rtld-installed-name) ') )' \
   102  	) > $@.new
   103 	mv -f $@.new $@
   104 diff -aur glibc-2.3.5/extra-lib.mk glibc-2.3.5-cygwin/extra-lib.mk
   105 --- glibc-2.3.5/extra-lib.mk	2004-12-02 23:54:47.000000000 +0100
   106 +++ glibc-2.3.5-cygwin/extra-lib.mk	2005-05-11 08:27:28.156250000 +0200
   107 @@ -13,7 +13,7 @@
   108  
   109  ifneq (,$($(lib)-static-only-routines))
   110  ifneq (,$(filter yesyes%,$(build-shared)$(elf)$($(lib).so-version)))
   111 -object-suffixes-$(lib) += $(filter-out $($(lib)-inhibit-o),.oS)
   112 +object-suffixes-$(lib) += $(filter-out $($(lib)-inhibit-o),.oST)
   113  endif
   114  endif
   115  
   116 @@ -29,7 +29,7 @@
   117  
   118  # Add each flavor of library to the lists of things to build and install.
   119  install-lib += $(foreach o,$(object-suffixes-$(lib)),$(lib:lib%=$(libtype$o)))
   120 -extra-objs += $(foreach o,$(filter-out .os .oS,$(object-suffixes-$(lib))),\
   121 +extra-objs += $(foreach o,$(filter-out .os .oST,$(object-suffixes-$(lib))),\
   122  			$(patsubst %,%$o,$(filter-out \
   123  					   $($(lib)-shared-only-routines),\
   124  					   $(all-$(lib)-routines))))
   125 @@ -57,7 +57,7 @@
   126  
   127  
   128  # Use o-iterator.mk to generate a rule for each flavor of library.
   129 -ifneq (,$(filter-out .os .oS,$(object-suffixes-$(lib))))
   130 +ifneq (,$(filter-out .os .oST,$(object-suffixes-$(lib))))
   131  define o-iterator-doit
   132  $(objpfx)$(patsubst %,$(libtype$o),$(lib:lib%=%)): \
   133    $(patsubst %,$(objpfx)%$o,\
   134 @@ -65,7 +65,7 @@
   135  			  $(all-$(lib)-routines))); \
   136  	$$(build-extra-lib)
   137  endef
   138 -object-suffixes-left = $(filter-out .os .oS,$(object-suffixes-$(lib)))
   139 +object-suffixes-left = $(filter-out .os .oST,$(object-suffixes-$(lib)))
   140  include $(patsubst %,$(..)o-iterator.mk,$(object-suffixes-left))
   141  endif
   142  
   143 @@ -77,9 +77,9 @@
   144  	$(build-extra-lib)
   145  endif
   146  
   147 -ifneq (,$(filter .oS,$(object-suffixes-$(lib))))
   148 -$(objpfx)$(patsubst %,$(libtype.oS),$(lib:lib%=%)): \
   149 -  $(patsubst %,$(objpfx)%.oS,\
   150 +ifneq (,$(filter .oST,$(object-suffixes-$(lib))))
   151 +$(objpfx)$(patsubst %,$(libtype.oST),$(lib:lib%=%)): \
   152 +  $(patsubst %,$(objpfx)%.oST,\
   153  	     $(filter $($(lib)-static-only-routines),\
   154  		      $(all-$(lib)-routines)))
   155  	$(build-extra-lib)
   156 diff -aur glibc-2.3.5/nptl/Makefile glibc-2.3.5-cygwin/nptl/Makefile
   157 --- glibc-2.3.5/nptl/Makefile	2005-02-16 09:45:56.000000000 +0100
   158 +++ glibc-2.3.5-cygwin/nptl/Makefile	2005-05-11 08:26:01.812500000 +0200
   159 @@ -375,7 +375,7 @@
   160  
   161  $(inst_libdir)/libpthread.so: $(common-objpfx)format.lds \
   162  			      $(objpfx)libpthread.so$(libpthread.so-version) \
   163 -			      $(inst_libdir)/$(patsubst %,$(libtype.oS),\
   164 +			      $(inst_libdir)/$(patsubst %,$(libtype.oST),\
   165  							$(libprefix)pthread) \
   166  			      $(+force)
   167  	(echo '/* GNU ld script';\
   168 @@ -383,7 +383,7 @@
   169  	 echo '   the static library, so try that secondarily.  */';\
   170  	 cat $<; \
   171  	 echo 'GROUP ( $(slibdir)/libpthread.so$(libpthread.so-version)' \
   172 -	      '$(libdir)/$(patsubst %,$(libtype.oS),$(libprefix)pthread)'\
   173 +	      '$(libdir)/$(patsubst %,$(libtype.oST),$(libprefix)pthread)'\
   174  	      ')' \
   175  	) > $@.new
   176  	mv -f $@.new $@
   177 diff -aur glibc-2.3.5/sysdeps/sparc/sparc32/sparcv9/Makefile glibc-2.3.5-cygwin/sysdeps/sparc/sparc32/sparcv9/Makefile
   178 --- glibc-2.3.5/sysdeps/sparc/sparc32/sparcv9/Makefile	2004-08-16 08:46:14.000000000 +0200
   179 +++ glibc-2.3.5-cygwin/sysdeps/sparc/sparc32/sparcv9/Makefile	2005-05-11 08:26:25.937500000 +0200
   180 @@ -10,4 +10,4 @@
   181  ASFLAGS-.op += -Wa,-Av9a
   182  ASFLAGS-.og += -Wa,-Av9a
   183  ASFLAGS-.ob += -Wa,-Av9a
   184 -ASFLAGS-.oS += -Wa,-Av9a
   185 +ASFLAGS-.oST += -Wa,-Av9a
   186 
   187 Signed-off-by: Robert P. J. Day <rpjday@mindspring.com>