From 04c33b63c3f115e033fd3e6d09f8cfc147cf816f Mon Sep 17 00:00:00 2001 From: wilkie Date: Mon, 23 Mar 2009 08:26:37 +0800 Subject: [PATCH] Added architecture import selection to show how this would be done for LDC and DSSS. This is important (as documentation for these is light) but no actual work for the targets are done. The archimport.d file is for importing the specific architecture and its interfaces. It can be imported by any module, as I will do for the next commit. Signed-off-by: The XOmB Overlord --- build/dsss.conf | 9 +++++++-- build/dsss_imports/archimport.d | 12 ++++++++++++ kernel/arch/x86/imports/archimport.d | 12 ++++++++++++ kernel/arch/x86_64/imports/archimport.d | 12 ++++++++++++ 4 files changed, 43 insertions(+), 2 deletions(-) create mode 100644 build/dsss_imports/archimport.d create mode 100644 kernel/arch/x86/imports/archimport.d create mode 100644 kernel/arch/x86_64/imports/archimport.d diff --git a/build/dsss.conf b/build/dsss.conf index ba3adcc..83c0a67 100644 --- a/build/dsss.conf +++ b/build/dsss.conf @@ -16,10 +16,15 @@ prebuild= \ \ \ echo ; \ +echo Setting up Architecture Dependence: x86_64; \ +echo '--> archimport.d';\ +mkdir -p dsss_imports;\ +cp ../kernel/arch/x86_64/imports/archimport.d dsss_imports/.;\ +echo ; \ echo Compiling Assembly for target: x86_64 ;\ -echo '--> boot.s';\ +echo '--> boot.S';\ yasm -o dsss_objs/G/kernel.arch.x86_64.boot.boot.o ../kernel/arch/x86_64/boot/boot.s -felf64;\ -echo '--> load.s';\ +echo '--> load.S';\ yasm -o dsss_objs/G/kernel.arch.x86_64.load.load.o ../kernel/arch/x86_64/boot/load.s -felf64;\ \ \ diff --git a/build/dsss_imports/archimport.d b/build/dsss_imports/archimport.d new file mode 100644 index 0000000..9cf2949 --- /dev/null +++ b/build/dsss_imports/archimport.d @@ -0,0 +1,12 @@ +/* + * archimport.d + * + * This file will publically import all modules used to define + * the architecture interfaces provided by this architecture. + * + */ + +module archimport; + +// Example: +// import kernel.arch.x86.main; diff --git a/kernel/arch/x86/imports/archimport.d b/kernel/arch/x86/imports/archimport.d new file mode 100644 index 0000000..9cf2949 --- /dev/null +++ b/kernel/arch/x86/imports/archimport.d @@ -0,0 +1,12 @@ +/* + * archimport.d + * + * This file will publically import all modules used to define + * the architecture interfaces provided by this architecture. + * + */ + +module archimport; + +// Example: +// import kernel.arch.x86.main; diff --git a/kernel/arch/x86_64/imports/archimport.d b/kernel/arch/x86_64/imports/archimport.d new file mode 100644 index 0000000..9cf2949 --- /dev/null +++ b/kernel/arch/x86_64/imports/archimport.d @@ -0,0 +1,12 @@ +/* + * archimport.d + * + * This file will publically import all modules used to define + * the architecture interfaces provided by this architecture. + * + */ + +module archimport; + +// Example: +// import kernel.arch.x86.main;