From 7b70a704e0f9197a79a37007968246ce4f66bcc0 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Fri, 14 Sep 2007 17:43:16 +0000 Subject: Add the framework to have architecture-specific configuration and functions. API is not yet defined. diff --git a/Makefile.in b/Makefile.in index 9dc263c..402e3ee 100644 --- a/Makefile.in +++ b/Makefile.in @@ -91,7 +91,7 @@ install-bin: install-local-test $(BINDIR) install-lib: install-local-test $(LIBDIR) install-lib-main install-lib-samples install-lib-main: install-local-test $(LIBDIR) - @for src_dir in config kconfig patches scripts tools; do \ + @for src_dir in arch config kconfig patches scripts tools; do \ echo " INST $${src_dir}/"; \ tar cf - --exclude=.svn $${src_dir} |(cd $(LIBDIR); tar xf -); \ done @@ -100,6 +100,7 @@ install-lib-main: install-local-test $(LIBDIR) echo " INST $${src_file}"; \ install -m 644 $${src_file} $(LIBDIR)/$${src_file}; \ done + @ln -sf $(LIBDIR)/arch $(LIBDIR)/config/arch # Samples need a little love: # - change every occurence of CT_TOP_DIR to CT_LIB_DIR diff --git a/arch/arm/config.in b/arch/arm/config.in new file mode 100644 index 0000000..e69de29 diff --git a/arch/arm/functions b/arch/arm/functions new file mode 100644 index 0000000..e69de29 diff --git a/arch/ia64/config.in b/arch/ia64/config.in new file mode 100644 index 0000000..e69de29 diff --git a/arch/ia64/functions b/arch/ia64/functions new file mode 100644 index 0000000..e69de29 diff --git a/arch/mips/config.in b/arch/mips/config.in new file mode 100644 index 0000000..e69de29 diff --git a/arch/mips/functions b/arch/mips/functions new file mode 100644 index 0000000..e69de29 diff --git a/arch/x86/config.in b/arch/x86/config.in new file mode 100644 index 0000000..e69de29 diff --git a/arch/x86/functions b/arch/x86/functions new file mode 100644 index 0000000..e69de29 diff --git a/arch/x86_64/config.in b/arch/x86_64/config.in new file mode 100644 index 0000000..e69de29 diff --git a/arch/x86_64/functions b/arch/x86_64/functions new file mode 100644 index 0000000..e69de29 diff --git a/config/target.in b/config/target.in index 27c71d3..5c36531 100644 --- a/config/target.in +++ b/config/target.in @@ -74,6 +74,23 @@ config ARCH_LE endchoice +# Include architecture-specific configuration +if ARCH_ARM +source config/arch/arm/config.in +endif +if ARCH_IA64 +source config/arch/ia64/config.in +endif +if ARCH_MIPS +source config/arch/mips/config.in +endif +if ARCH_x86 +source config/arch/x86/config.in +endif +if ARCH_x86_64 +source config/arch/x86_64/config.in +endif + comment "Target optimisations" config ARCH_ARCH diff --git a/scripts/crosstool.sh b/scripts/crosstool.sh index 5f79479..fda7cd3 100755 --- a/scripts/crosstool.sh +++ b/scripts/crosstool.sh @@ -72,6 +72,9 @@ CT_HasOrAbort lynx CT_DoLog INFO "Building environment variables" +# Parse architecture-specific functions +. ${CT_LIB_DIR}/arch/${CT_ARCH}/functions + # Target tuple: CT_TARGET needs a little love: CT_DoBuildTargetTuple -- cgit v0.10.2-6-g49f6