summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2007-09-14 17:43:16 (GMT)
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2007-09-14 17:43:16 (GMT)
commit7b70a704e0f9197a79a37007968246ce4f66bcc0 (patch)
tree531028ea1f0dfb7159559857b539a413d4711412
parentae7e017380b93899c1165acb9b60ddd80276b022 (diff)
Add the framework to have architecture-specific configuration and functions.
API is not yet defined.
-rw-r--r--Makefile.in3
-rw-r--r--arch/arm/config.in0
-rw-r--r--arch/arm/functions0
-rw-r--r--arch/ia64/config.in0
-rw-r--r--arch/ia64/functions0
-rw-r--r--arch/mips/config.in0
-rw-r--r--arch/mips/functions0
-rw-r--r--arch/x86/config.in0
-rw-r--r--arch/x86/functions0
-rw-r--r--arch/x86_64/config.in0
-rw-r--r--arch/x86_64/functions0
-rw-r--r--config/target.in17
-rwxr-xr-xscripts/crosstool.sh3
13 files changed, 22 insertions, 1 deletions
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
--- /dev/null
+++ b/arch/arm/config.in
diff --git a/arch/arm/functions b/arch/arm/functions
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/arch/arm/functions
diff --git a/arch/ia64/config.in b/arch/ia64/config.in
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/arch/ia64/config.in
diff --git a/arch/ia64/functions b/arch/ia64/functions
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/arch/ia64/functions
diff --git a/arch/mips/config.in b/arch/mips/config.in
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/arch/mips/config.in
diff --git a/arch/mips/functions b/arch/mips/functions
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/arch/mips/functions
diff --git a/arch/x86/config.in b/arch/x86/config.in
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/arch/x86/config.in
diff --git a/arch/x86/functions b/arch/x86/functions
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/arch/x86/functions
diff --git a/arch/x86_64/config.in b/arch/x86_64/config.in
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/arch/x86_64/config.in
diff --git a/arch/x86_64/functions b/arch/x86_64/functions
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/arch/x86_64/functions
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