uclibc: add avr32 special version

* Add a new 0.9.30-avr32-2.1.5 version of uClibc in Config.in

 * Add a patch for 0.9.20-avr32-2.1.5

 * Select a different UCLIBC_SITE for avr32 versions in uclibc.mk

 * Add the LINKRELAX=y configuration option to the uClibc .config file
   in uclibc.mk

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
This commit is contained in:
Thomas Petazzoni 2009-12-14 11:47:55 +01:00
parent 9f21bfee08
commit 3a24927a0e
3 changed files with 44 additions and 3 deletions

View File

@ -5,7 +5,8 @@ comment "uClibc Options"
choice
prompt "uClibc C library Version"
default BR2_UCLIBC_VERSION_0_9_30_1
default BR2_UCLIBC_VERSION_0_9_30_1 if !BR2_avr32
default BR2_UCLIBC_VERSION_0_9_30_AVR32_2_1_5 if BR2_avr32
help
Select the version of uClibc you wish to use.
@ -22,7 +23,10 @@ choice
config BR2_UCLIBC_VERSION_0_9_30
depends on BR2_RECENT || BR2_DEPRECATED
bool "uClibc 0.9.30"
depends on BR2_EXT_UCLIBC_VERSION_0_9_30
config BR2_UCLIBC_VERSION_0_9_30_AVR32_2_1_5
depends on BR2_avr32
bool "uClibc 0.9.30-avr32-2.1.5"
config BR2_UCLIBC_VERSION_0_9_30_1
bool "uClibc 0.9.30.1"
@ -47,6 +51,7 @@ config BR2_UCLIBC_VERSION_STRING
default 0.9.29 if BR2_UCLIBC_VERSION_0_9_29
default 0.9.30 if BR2_UCLIBC_VERSION_0_9_30
default 0.9.30.1 if BR2_UCLIBC_VERSION_0_9_30_1
default 0.9.30-avr32-2.1.5 if BR2_UCLIBC_VERSION_0_9_30_AVR32_2_1_5
default $BR2_USE_UCLIBC_SNAPSHOT if BR2_UCLIBC_VERSION_SNAPSHOT
config BR2_UCLIBC_CONFIG
@ -55,6 +60,7 @@ config BR2_UCLIBC_CONFIG
default "toolchain/uClibc/uClibc-0.9.29.config" if BR2_UCLIBC_VERSION_0_9_29
default "toolchain/uClibc/uClibc-0.9.30.config" if BR2_UCLIBC_VERSION_0_9_30
default "toolchain/uClibc/uClibc-0.9.30.config" if BR2_UCLIBC_VERSION_0_9_30_1
default "toolchain/uClibc/uClibc-0.9.30.config" if BR2_UCLIBC_VERSION_0_9_30_AVR32_2_1_5
default "toolchain/uClibc/uClibc-snapshot.config" if BR2_UCLIBC_VERSION_SNAPSHOT
help
Some people may wish to use their own modified uClibc configuration

View File

@ -0,0 +1,29 @@
--- uClibc-0.9.30.1.orig/extra/scripts/unifdef.c
+++ uClibc-0.9.30.1/extra/scripts/unifdef.c
@@ -206,7 +206,7 @@ static void done(void);
static void error(const char *);
static int findsym(const char *);
static void flushline(bool);
-static Linetype getline(void);
+static Linetype get_line(void);
static Linetype ifeval(const char **);
static void ignoreoff(void);
static void ignoreon(void);
@@ -512,7 +512,7 @@ process(void)
for (;;) {
linenum++;
- lineval = getline();
+ lineval = get_line();
trans_table[ifstate[depth]][lineval]();
debug("process %s -> %s depth %d",
linetype_name[lineval],
@@ -526,7 +526,7 @@ process(void)
* help from skipcomment().
*/
static Linetype
-getline(void)
+get_line(void)
{
const char *cp;
int cursym;

View File

@ -19,9 +19,12 @@ UCLIBC_OFFICIAL_VERSION:=$(UCLIBC_VER)$(VENDOR_SUFFIX)$(VENDOR_UCLIBC_RELEASE)
ifeq ($(BR2_UCLIBC_VERSION_SNAPSHOT),y)
UCLIBC_SITE:=http://www.uclibc.org/downloads/snapshots
UCLIBC_DIR:=$(TOOLCHAIN_DIR)/uClibc
else
else ifeq ($(findstring avr32,$(UCLIBC_VERSION)),avr32)
UCLIBC_SITE:=ftp://www.at91.com/pub/buildroot/
UCLIBC_DIR:=$(TOOLCHAIN_DIR)/uClibc-$(UCLIBC_OFFICIAL_VERSION)
else
UCLIBC_SITE:=http://www.uclibc.org/downloads
UCLIBC_DIR:=$(TOOLCHAIN_DIR)/uClibc-$(UCLIBC_OFFICIAL_VERSION)
ifeq ($(BR2_TOOLCHAIN_EXTERNAL_SOURCE),y)
UCLIBC_SITE:=$(VENDOR_SITE)
endif
@ -257,6 +260,9 @@ else
/bin/echo "# CONFIG_E500 is not set" >> $(UCLIBC_DIR)/.oldconfig
endif
endif
ifeq ($(UCLIBC_TARGET_ARCH),avr32)
/bin/echo "LINKRELAX=y" >> $(UCLIBC_DIR)/.oldconfig
endif
ifneq ($(UCLIBC_TARGET_ENDIAN),)
# The above doesn't work for me, so redo
$(SED) 's/.*\(ARCH_$(UCLIBC_NOT_TARGET_ENDIAN)_ENDIAN\).*/# \1 is not set/g' \