]> git.pld-linux.org Git - packages/uClibc.git/blobdiff - uClibc-toolchain-wrapper.patch
- merged 0.9.32 from DEVEL
[packages/uClibc.git] / uClibc-toolchain-wrapper.patch
index 3c2cfbfbaf85d4cfe7392d93be2074c834457b44..f7e40e2ad82b713dbc2da2006c31640e57a2c2cf 100644 (file)
@@ -1,13 +1,7 @@
-diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/.cvsignore uClibc-0.9.26/extra/gcc-uClibc/.cvsignore
---- uClibc-0.9.26.org/extra/gcc-uClibc/.cvsignore      1970-01-01 01:00:00.000000000 +0100
-+++ uClibc-0.9.26/extra/gcc-uClibc/.cvsignore  2002-01-29 10:02:51.000000000 +0100
-@@ -0,0 +1,2 @@
-+gcc-uClibc.h
-+*-uclibc-*
-diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/gcc-uClibc.c uClibc-0.9.26/extra/gcc-uClibc/gcc-uClibc.c
---- uClibc-0.9.26.org/extra/gcc-uClibc/gcc-uClibc.c    1970-01-01 01:00:00.000000000 +0100
-+++ uClibc-0.9.26/extra/gcc-uClibc/gcc-uClibc.c        2003-08-28 07:51:04.000000000 +0200
-@@ -0,0 +1,660 @@
+diff -urN uClibc-0.9.29.org/extra/gcc-uClibc/gcc-uClibc.c uClibc-0.9.29/extra/gcc-uClibc/gcc-uClibc.c
+--- uClibc-0.9.29.org/extra/gcc-uClibc/gcc-uClibc.c    1970-01-01 01:00:00.000000000 +0100
++++ uClibc-0.9.29/extra/gcc-uClibc/gcc-uClibc.c        2007-06-03 22:10:49.372320596 +0200
+@@ -0,0 +1,672 @@
 +/* vi: set sw=4 ts=4: */
 +/*
 + * Copyright (C) 2000 Manuel Novoa III
@@ -196,6 +190,7 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/gcc-uClibc.c uClibc-0.9.26/extra/gc
 +      char *dlstr;
 +      char *incstr;
 +      char *devprefix;
++   char *runprefix;
 +      char *builddir;
 +      char *libstr;
 +      char *build_dlstr = 0;
@@ -259,6 +254,11 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/gcc-uClibc.c uClibc-0.9.26/extra/gc
 +              devprefix = UCLIBC_DEVEL_PREFIX;
 +      }
 +
++      runprefix = getenv("UCLIBC_RUNTIME_PREFIX");
++      if (!runprefix) {
++              runprefix = UCLIBC_RUNTIME_PREFIX;
++      }
++
 +      builddir = getenv("UCLIBC_BUILD_DIR");
 +      if (!builddir) {
 +              builddir = UCLIBC_BUILD_DIR;
@@ -281,10 +281,10 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/gcc-uClibc.c uClibc-0.9.26/extra/gc
 +      }
 +
 +
-+      xstrcat(&(rpath_link[0]), "-Wl,-rpath-link,", devprefix, "/lib", NULL);
++      xstrcat(&(rpath_link[0]), "-Wl,-rpath-link,", devprefix, "/lib:", runprefix, "/lib", NULL);
 +      xstrcat(&(rpath_link[1]), "-Wl,-rpath-link,", builddir, "/lib", NULL);
 +
-+      xstrcat(&(rpath[0]), "-Wl,-rpath,", devprefix, "/lib", NULL);
++      xstrcat(&(rpath[0]), "-Wl,-rpath,", devprefix, "/lib:", runprefix, "/lib", NULL);
 +      xstrcat(&(rpath[1]), "-Wl,-rpath,", builddir, "/lib", NULL);
 +
 +      xstrcat(&(uClibc_inc[0]), devprefix, "/include/", NULL);
@@ -396,6 +396,10 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/gcc-uClibc.c uClibc-0.9.26/extra/gc
 +                                              if (strstr(argv[i],"--dynamic-linker") != 0) {
 +                                                      dlstr = 0;
 +                                              }
++                                              if ((strstr(argv[i],"-z,combreloc") != 0) ||
++                                                              (strstr(argv[i],"-z,relro") != 0)) {
++                                                      argv[i] = '\0';
++                                              }
 +                                      }
 +                                      break;
 +#ifdef __UCLIBC_PROFILING__
@@ -502,6 +506,7 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/gcc-uClibc.c uClibc-0.9.26/extra/gc
 +                              if (status < 0) {
 +                                      goto crash_n_burn;
 +                              }
++                              buf[(status == sizeof(buf)) ? status-1 : status] = 0;
 +                              dir = dirname(buf);
 +                              xstrcat(&(crtbegin_path[0]), dir, "/crtbegin.o", NULL);
 +                              xstrcat(&(crtbegin_path[1]), dir, "/crtbeginS.o", NULL);
@@ -533,6 +538,7 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/gcc-uClibc.c uClibc-0.9.26/extra/gc
 +      }
 +
 +      if (linking && source_count) {
++              gcc_argv[i++] = "-Wl,--hash-style=gnu";
 +#if defined __HAVE_ELF__ && ! defined __UCLIBC_HAS_MMU__
 +              gcc_argv[i++] = "-Wl,-elf2flt";
 +#endif
@@ -668,10 +674,10 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/gcc-uClibc.c uClibc-0.9.26/extra/gc
 +      }
 +      exit(EXIT_FAILURE);
 +}
-diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/Makefile uClibc-0.9.26/extra/gcc-uClibc/Makefile
---- uClibc-0.9.26.org/extra/gcc-uClibc/Makefile        1970-01-01 01:00:00.000000000 +0100
-+++ uClibc-0.9.26/extra/gcc-uClibc/Makefile    2004-01-25 16:06:22.372828491 +0100
-@@ -0,0 +1,90 @@
+diff -urN uClibc-0.9.29.org/extra/gcc-uClibc/Makefile uClibc-0.9.29/extra/gcc-uClibc/Makefile
+--- uClibc-0.9.29.org/extra/gcc-uClibc/Makefile        1970-01-01 01:00:00.000000000 +0100
++++ uClibc-0.9.29/extra/gcc-uClibc/Makefile    2007-06-03 22:10:14.593807939 +0200
+@@ -0,0 +1,93 @@
 +# Makefile for building a fake gcc/binutils toolchain
 +# that simply spoofs the location of the C library
 +#
@@ -680,6 +686,7 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/Makefile uClibc-0.9.26/extra/gcc-uC
 +
 +TOPDIR = ../../
 +include $(TOPDIR)Rules.mak
++include $(TOPDIR)/.config
 +
 +UCLIBC_DIR = $(shell (cd ../.. ; /bin/pwd))
 +GCC_BIN = $(shell which $(CC))
@@ -692,11 +699,12 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/Makefile uClibc-0.9.26/extra/gcc-uC
 +      @echo "/* this file was autogenerated by make */" > gcc-uClibc.h
 +      @echo "#define UCLIBC_TARGET_PREFIX " \"$(TARGET_PREFIX)\" >> gcc-uClibc.h
 +      @echo "#define UCLIBC_DEVEL_PREFIX " \"$(DEVEL_PREFIX)\" >> gcc-uClibc.h
++      @echo "#define UCLIBC_RUNTIME_PREFIX " \"$(RUNTIME_PREFIX)\" >> gcc-uClibc.h
 +      @echo "#define UCLIBC_BUILD_DIR " \"$(UCLIBC_DIR)\" >> gcc-uClibc.h
 +      @echo "#define GCC_BIN " \"$(GCC_BIN)\" >> gcc-uClibc.h
 +      @echo "#define LIBGCC_DIR " \"$(LIBGCC_DIR)\" >> gcc-uClibc.h
 +      @echo "#define TARGET_ARCH " \"$(TARGET_ARCH)\" >> gcc-uClibc.h
-+      @echo "#define DYNAMIC_LINKER " \"$(DYNAMIC_LINKER)\" >> gcc-uClibc.h
++      @echo "#define DYNAMIC_LINKER " \"$(RUNTIME_PREFIX)/lib/$(UCLIBC_LDSO)\" >> gcc-uClibc.h
 +      @echo "#define BUILD_DYNAMIC_LINKER " \"$(UCLIBC_DIR)/lib/$(UCLIBC_LDSO)\" >> gcc-uClibc.h
 +ifeq ($(strip $(HAVE_SHARED)),y)
 +      @echo "#define __UCLIBC_HAS_SHARED__ 1" >> gcc-uClibc.h
@@ -726,13 +734,14 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/Makefile uClibc-0.9.26/extra/gcc-uC
 +
 +gcc-uClibc: gcc-uClibc.h gcc-uClibc.c
 +      $(HOSTCC) $(HOSTCFLAGS) -s gcc-uClibc.c -o $(TARGET_ARCH)-uclibc-gcc
++      touch gcc-uClibc
 +
 +ld-uClibc:
 +      @echo "#!/bin/sh" > $(TARGET_ARCH)-uclibc-ld
 +      @echo "# This file was autogenerated by make" >> $(TARGET_ARCH)-uclibc-ld
-+      @echo "$(LD_BIN) \$$@ -L$(DEVEL_PREFIX)/usr/lib -L$(DEVEL_PREFIX)/lib "\
-+              "-L$(UCLIBC_DIR)" >> $(TARGET_ARCH)-uclibc-ld
++      @echo "exec $(LD_BIN) \$$@ -L$(DEVEL_PREFIX)/lib" >> $(TARGET_ARCH)-uclibc-ld
 +      chmod a+x $(TARGET_ARCH)-uclibc-ld
++      touch ld-uClibc
 +
 +install: all
 +      install -d $(PREFIX)$(DEVEL_PREFIX)/bin;
@@ -749,7 +758,7 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/Makefile uClibc-0.9.26/extra/gcc-uC
 +      ln -fs $(RUNTIME_PREFIX)/bin/$(TARGET_ARCH)-uclibc-gcc $(PREFIX)$(DEVEL_PREFIX)/bin/c++
 +      ln -fs $(RUNTIME_PREFIX)/bin/$(TARGET_ARCH)-uclibc-gcc $(PREFIX)$(DEVEL_PREFIX)/bin/g++
 +endif
-+      for app in addr2line ar as cpp gasp nm objcopy \
++      for app in addr2line ar as cpp nm objcopy \
 +          objdump ranlib size strings strip; do \
 +        APPNAME=`which $(CROSS)$${app}`; \
 +        if [ -x "$$APPNAME" ] ; then \
@@ -762,46 +771,36 @@ diff -urN uClibc-0.9.26.org/extra/gcc-uClibc/Makefile uClibc-0.9.26/extra/gcc-uC
 +      rm -f gcc-uClibc.h *-uclibc-gcc *-uclibc-ld core
 +
 +
-diff -urN uClibc-0.9.26.org/extra/Makefile uClibc-0.9.26/extra/Makefile
---- uClibc-0.9.26.org/extra/Makefile   2004-01-25 15:20:33.050030242 +0100
-+++ uClibc-0.9.26/extra/Makefile       2004-01-25 16:02:02.133944484 +0100
-@@ -26,7 +26,7 @@
- LIBC=$(TOPDIR)libc.a
+--- uClibc-0.9.32/Makefile.in.orig     2011-06-08 21:35:20.000000000 +0200
++++ uClibc-0.9.32/Makefile.in  2011-06-12 09:20:09.634046086 +0200
+@@ -23,7 +23,7 @@
  
+ ifeq ($(HAVE_DOT_CONFIG),y)
  
--DIRS = 
-+DIRS = gcc-uClibc
- EXTRA_DIRS_TO_CLEAN = config
+-all: pregen libs
++all: pregen libs toolchain
+ libs: pregen
  
- all: subdirs
-diff -urN uClibc-0.9.26.org/Makefile uClibc-0.9.26/Makefile
---- uClibc-0.9.26.org/Makefile 2004-01-25 15:20:32.825077096 +0100
-+++ uClibc-0.9.26/Makefile     2004-01-25 16:45:25.616652058 +0100
-@@ -28,7 +28,7 @@
- TOPDIR=./
- include Rules.mak
+ # In this section, we need .config
+@@ -192,7 +192,7 @@
+       HOSTCC="$(HOSTCC)" \
+       install_dev
  
--DIRS = ldso libc libcrypt libresolv libnsl libutil libm libpthread
-+DIRS = extra ldso libc libcrypt libresolv libnsl libutil libm libpthread
- ifeq ($(strip $(UCLIBC_HAS_GETTEXT_AWARENESS)),y)
-       DIRS += libintl
- endif
-@@ -183,7 +183,7 @@
- tags:
-       ctags -R
+-install: install_runtime install_dev
++install: install_runtime install_dev install_toolchain
  
--install: install_runtime install_dev finished2
-+install: install_runtime install_dev install_toolchain finished2
  
+ RUNTIME_PREFIX_LIB_FROM_DEVEL_PREFIX_LIB=$(shell $(top_srcdir)extra/scripts/relative_path.sh $(DEVEL_PREFIX)$(MULTILIB_DIR) $(RUNTIME_PREFIX)$(MULTILIB_DIR))
+@@ -405,6 +405,12 @@
  
- # Installs header files and development library links.
-@@ -302,6 +302,9 @@
- #     $(INSTALL) -m 755 libc/misc/wchar/iconv.target $(PREFIX)$(RUNTIME_PREFIX)/usr/bin/iconv
- #endif
+ endif # ifeq ($(HAVE_DOT_CONFIG),y)
  
-+install_toolchain:
-+      $(MAKE) -C extra/gcc-uClibc install
++toolchain:
++      $(MAKE) CROSS="$(CROSS)" CC="$(CC)" -C extra/gcc-uClibc
 +
- finished2:
-       @echo
-       @echo Finished installing...
++install_toolchain: toolchain
++      $(MAKE) CROSS="$(CROSS)" CC="$(CC)" -C extra/gcc-uClibc install
++
+ hostutils: | pregen
+       $(Q)$(MAKE) CROSS="$(CROSS)" CC="$(CC)" HOSTCC="$(HOSTCC)" DOTHOST=.host -C utils $@
This page took 0.051459 seconds and 4 git commands to generate.