⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 crosstool-0.38_patches_glibc-2.3.6_glibc-2.3.5-cygwin.patch

📁 做好的交叉编译工具链
💻 PATCH
字号:
--- crosstool-0.38-orig/patches/glibc-2.3.6/glibc-2.3.5-cygwin.patch	1970-01-01 01:00:00.000000000 +0100+++ crosstool-0.38/patches/glibc-2.3.6/glibc-2.3.5-cygwin.patch	2006-01-16 08:16:12.000000000 +0100@@ -0,0 +1,190 @@+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 <cvachoucek@unicontrols.cz>+To: Dan Kegel <dank@kegel.com>+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+]++Index: glibc-2.3.6/Makeconfig+===================================================================+--- glibc-2.3.6.orig/Makeconfig++++ glibc-2.3.6/Makeconfig+@@ -449,7 +449,7 @@ ifeq ($(elf),yes)+ # 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 @@ endif+ # 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 @@ object-suffixes-for-libc := $(object-suf+ + 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.+Index: glibc-2.3.6/Makerules+===================================================================+--- glibc-2.3.6.orig/Makerules++++ glibc-2.3.6/Makerules+@@ -416,7 +416,7 @@ endif+ # 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 @@ ifndef subdir+ 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 @@ $(inst_libdir)/libc.so: $(common-objpfx)+ 	 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 $@+Index: glibc-2.3.6/extra-lib.mk+===================================================================+--- glibc-2.3.6.orig/extra-lib.mk++++ glibc-2.3.6/extra-lib.mk+@@ -13,7 +13,7 @@ object-suffixes-$(lib) := $(filter-out $+ + 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 @@ all-$(lib)-routines := $($(lib)-routines+ + # 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 @@ endif+ + + # 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 @@ $(objpfx)$(patsubst %,$(libtype$o),$(lib+ 			  $(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 @@ $(objpfx)$(patsubst %,$(libtype.os),$(li+ 	$(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)+Index: glibc-2.3.6/nptl/Makefile+===================================================================+--- glibc-2.3.6.orig/nptl/Makefile++++ glibc-2.3.6/nptl/Makefile+@@ -360,7 +360,7 @@ install: $(inst_libdir)/libpthread.so+ + $(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 @@ $(inst_libdir)/libpthread.so: $(common-o+ 	 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 $@+Index: glibc-2.3.6/sysdeps/sparc/sparc32/sparcv9/Makefile+===================================================================+--- glibc-2.3.6.orig/sysdeps/sparc/sparc32/sparcv9/Makefile++++ glibc-2.3.6/sysdeps/sparc/sparc32/sparcv9/Makefile+@@ -10,4 +10,4 @@ ASFLAGS-.os += -Wa,-Av9a+ ASFLAGS-.op += -Wa,-Av9a+ ASFLAGS-.og += -Wa,-Av9a+ ASFLAGS-.ob += -Wa,-Av9a+-ASFLAGS-.oS += -Wa,-Av9a++ASFLAGS-.oST += -Wa,-Av9a

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -