diff options
author | Zheng Da <zhengda1936@gmail.com> | 2009-12-06 05:26:23 +0100 |
---|---|---|
committer | Zheng Da <zhengda1936@gmail.com> | 2009-12-06 05:26:23 +0100 |
commit | 8a6d48c0542876eb3acfc0970c0ab7872db08d5f (patch) | |
tree | 496e78bc728317ea779781b92f897d16936ee231 /libdde_linux26/.svn/text-base | |
parent | b4bffcfcdf3ab7a55d664e9aa5907f88da503f38 (diff) |
check in the original version of dde linux26.
Diffstat (limited to 'libdde_linux26/.svn/text-base')
-rw-r--r-- | libdde_linux26/.svn/text-base/Makeconf.svn-base | 51 | ||||
-rw-r--r-- | libdde_linux26/.svn/text-base/Makefile.svn-base | 6 | ||||
-rw-r--r-- | libdde_linux26/.svn/text-base/README.svn-base | 46 |
3 files changed, 103 insertions, 0 deletions
diff --git a/libdde_linux26/.svn/text-base/Makeconf.svn-base b/libdde_linux26/.svn/text-base/Makeconf.svn-base new file mode 100644 index 00000000..de84e39a --- /dev/null +++ b/libdde_linux26/.svn/text-base/Makeconf.svn-base @@ -0,0 +1,51 @@ +# Linux 2.6 defines some macros on command line +KBUILD_DEFINES = -D"KBUILD_STR(s)=\#s" \ + -D"KBUILD_BASENAME=KBUILD_STR($(patsubst %.o, %, $(notdir $@)))" \ + -D"KBUILD_MODNAME=KBUILD_STR($(patsubst %.o, %, $@))" + +# for some reasons, Linux 2.6 does not include autoconf.h in the implementation +# files but does so on the command line +ifeq ($(ARCH), x86) +KBUILD_CPPFLAGS = -include linux/autoconf.h +endif + +ifeq ($(ARCH), arm) +KBUILD_CPPFLAGS = -include linux/autoconf-arm.h +endif + +# includes +MY_DDE_INCDIR = $(OBJ_BASE)/include/$(ARCH)/l4/dde/linux26 \ + $(OBJ_BASE)/include/l4/dde/linux26 + +SUFFIX_amd64 = x86_64 +SUFFIX_x86 = x86 +SUFFIX_arm = arm + +MY_LINUX26_INCDIR = $(OBJ_BASE)/include/$(ARCH)/l4/dde/linux26/linux-headers \ + $(OBJ_BASE)/include/$(ARCH)/l4/dde/linux26/asm \ + $(OBJ_BASE)/include/l4/dde/linux26/linux-headers + +# stolen from fiasco/src/Makeconf, checks whether a compiler supports a certain +# parameter +CHECKCC = $(shell if $(CC) $(1) -S -o /dev/null -xc /dev/null \ + > /dev/null 2>&1; then echo "$(1)"; else echo "$(2)"; fi ;) + +# Linux always uses C... +MODE_USE_C = y +L4_MULTITHREADED = y + +# arch-specific stuff +ifeq ($(ARCH), x86) +MY_DDE_INCDIR += $(OBJ_BASE)/include/l4/dde/linux26/linux-headers/asm/mach-default +endif + +PRIVATE_INCDIR += $(MY_DDE_INCDIR) $(MY_LINUX26_INCDIR) + +DEFINES += -D__KERNEL__ -DDDE_LINUX $(KBUILD_DEFINES) +CPPFLAGS += $(KBUILD_CPPFLAGS) +CFLAGS += -ffunction-sections +ASFLAGS += -D__ASSEMBLY__ + +WARNINGS += -Wall -Wstrict-prototypes -fno-strict-aliasing +WARNINGS += $(call CHECKCC, -Wno-unused,) +WARNINGS += $(call CHECKCC, -Wno-pointer-sign,) diff --git a/libdde_linux26/.svn/text-base/Makefile.svn-base b/libdde_linux26/.svn/text-base/Makefile.svn-base new file mode 100644 index 00000000..5d180d78 --- /dev/null +++ b/libdde_linux26/.svn/text-base/Makefile.svn-base @@ -0,0 +1,6 @@ +PKGDIR ?= .. +L4DIR ?= $(PKGDIR)/../.. + +TARGET = contrib include lib examples + +include $(L4DIR)/mk/subdir.mk diff --git a/libdde_linux26/.svn/text-base/README.svn-base b/libdde_linux26/.svn/text-base/README.svn-base new file mode 100644 index 00000000..ccc58959 --- /dev/null +++ b/libdde_linux26/.svn/text-base/README.svn-base @@ -0,0 +1,46 @@ + This is DDELinux 2.6.29 + +Directory structure +################### + +'contrib/' +========== + +This directory tree holds unmodified Linux sources. The files residing here +are sourced by Makefiles in 'examples' and 'lib'. All unmodified C headers are +also kept here. + + +'include/' +========== + +Currently reimplemented and modified C headers as well as the DDELinux 2.6 API +definition are kept in this directory tree. + +Include stuff works as following. First, we install all Linux headers from +contrib/include to the build directory. Thereafter, we pull in our +modifications by installing all header files from include/ to the appropriate +include paths, thereby overwriting the original versions. + + +'lib/src/arch/l4' +================= + +Contains reimplementations of Linux functions that are implemented differently +in our environment or that are mapped to DDEKit calls. There are no Linux +functions included here. + + +'lib/src/<linux subdir name>' +============================= + +When we import functions from Linux instead of reimplementing them, we copy +the whole Linux source file containing this function to this location. We then +modify the file according to our needs, mostly by wrapping unneeded parts with +'#ifndef DDE_LINUX .. #endif' blocks. + + +'examples/' +========== + +Here reside test code and example drivers. |