diff options
author | Etienne Dechamps <[email protected]> | 2012-07-09 11:23:00 +0200 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2012-07-26 13:45:09 -0700 |
commit | 2ee4a18b2ac9c155e099db06cec320bd8cee3150 (patch) | |
tree | 42add2d10f2756abb57225f56b582371dc8beb77 /module | |
parent | 705741827ab55e7d92c3eb74f332a5ddd24971b5 (diff) |
Add script for builtin module building.
This commit introduces a "copy-builtin" script designed to prepare a
kernel source tree for building ZFS as a builtin module. The script
makes a full copy of all needed files, thus making the kernel source
tree fully independent of the zfs source package.
To achieve that, some compilation flags (-include, -I) have been moved
to module/Makefile. This Makefile is only used when compiling external
modules; when compiling builtin modules, a Kbuild file generated by the
configure-builtin script is used instead. This makes sure Makefiles
inside the kernel source tree does not contain references to the zfs
source package.
Signed-off-by: Brian Behlendorf <[email protected]>
Issue #851
Diffstat (limited to 'module')
-rw-r--r-- | module/Makefile.in | 7 | ||||
-rw-r--r-- | module/avl/Makefile.in | 7 | ||||
-rw-r--r-- | module/nvpair/Makefile.in | 7 | ||||
-rw-r--r-- | module/unicode/Makefile.in | 7 | ||||
-rw-r--r-- | module/zcommon/Makefile.in | 7 | ||||
-rw-r--r-- | module/zfs/Makefile.in | 7 | ||||
-rw-r--r-- | module/zpios/Makefile.in | 7 |
7 files changed, 18 insertions, 31 deletions
diff --git a/module/Makefile.in b/module/Makefile.in index 50cbb5891..c69b8a355 100644 --- a/module/Makefile.in +++ b/module/Makefile.in @@ -5,6 +5,11 @@ subdir-m += zcommon subdir-m += zfs subdir-m += zpios +ZFS_MODULE_CFLAGS += -include @SPL_OBJ@/spl_config.h +ZFS_MODULE_CFLAGS += -include @abs_top_builddir@/zfs_config.h +ZFS_MODULE_CFLAGS += -I@abs_top_srcdir@/include -I@SPL@/include -I@SPL@ +export ZFS_MODULE_CFLAGS + modules: @# Make the exported SPL symbols available to these modules. @# They may be in the root of SPL_OBJ when building against @@ -21,7 +26,7 @@ modules: "*** - @SPL_OBJ@/module/@SPL_SYMBOLS@\n"; \ exit 1; \ fi - $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` @KERNELMAKE_PARAMS@ $@ + $(MAKE) -C @LINUX_OBJ@ SUBDIRS=`pwd` @KERNELMAKE_PARAMS@ CONFIG_ZFS=m $@ clean: @# Only cleanup the kernel build directories when CONFIG_KERNEL diff --git a/module/avl/Makefile.in b/module/avl/Makefile.in index efa414883..27f9e4af4 100644 --- a/module/avl/Makefile.in +++ b/module/avl/Makefile.in @@ -1,10 +1,7 @@ MODULE := zavl -EXTRA_CFLAGS = @KERNELCPPFLAGS@ -EXTRA_CFLAGS += -include @SPL_OBJ@/spl_config.h -EXTRA_CFLAGS += -include @abs_top_builddir@/zfs_config.h -EXTRA_CFLAGS += -I@abs_top_srcdir@/include -I@SPL@/include -I@SPL@ +EXTRA_CFLAGS = $(ZFS_MODULE_CFLAGS) @KERNELCPPFLAGS@ -obj-m := $(MODULE).o +obj-$(CONFIG_ZFS) := $(MODULE).o $(MODULE)-objs += @top_srcdir@/module/avl/avl.o diff --git a/module/nvpair/Makefile.in b/module/nvpair/Makefile.in index 71c748e5f..b53381f6a 100644 --- a/module/nvpair/Makefile.in +++ b/module/nvpair/Makefile.in @@ -1,11 +1,8 @@ MODULE := znvpair -EXTRA_CFLAGS = @KERNELCPPFLAGS@ -EXTRA_CFLAGS += -include @SPL_OBJ@/spl_config.h -EXTRA_CFLAGS += -include @abs_top_builddir@/zfs_config.h -EXTRA_CFLAGS += -I@abs_top_srcdir@/include -I@SPL@/include -I@SPL@ +EXTRA_CFLAGS = $(ZFS_MODULE_CFLAGS) @KERNELCPPFLAGS@ -obj-m := $(MODULE).o +obj-$(CONFIG_ZFS) := $(MODULE).o $(MODULE)-objs += @top_srcdir@/module/nvpair/nvpair.o $(MODULE)-objs += @top_srcdir@/module/nvpair/nvpair_alloc_spl.o diff --git a/module/unicode/Makefile.in b/module/unicode/Makefile.in index 14a46b270..226e23baa 100644 --- a/module/unicode/Makefile.in +++ b/module/unicode/Makefile.in @@ -1,11 +1,8 @@ MODULE := zunicode -EXTRA_CFLAGS = @KERNELCPPFLAGS@ -EXTRA_CFLAGS += -include @SPL_OBJ@/spl_config.h -EXTRA_CFLAGS += -include @abs_top_builddir@/zfs_config.h -EXTRA_CFLAGS += -I@abs_top_srcdir@/include -I@SPL@/include -I@SPL@ +EXTRA_CFLAGS = $(ZFS_MODULE_CFLAGS) @KERNELCPPFLAGS@ -obj-m := $(MODULE).o +obj-$(CONFIG_ZFS) := $(MODULE).o $(MODULE)-objs += @top_srcdir@/module/unicode/u8_textprep.o $(MODULE)-objs += @top_srcdir@/module/unicode/uconv.o diff --git a/module/zcommon/Makefile.in b/module/zcommon/Makefile.in index e564b77b4..d4f5ba7ec 100644 --- a/module/zcommon/Makefile.in +++ b/module/zcommon/Makefile.in @@ -1,11 +1,8 @@ MODULE := zcommon -EXTRA_CFLAGS = @KERNELCPPFLAGS@ -EXTRA_CFLAGS += -include @SPL_OBJ@/spl_config.h -EXTRA_CFLAGS += -include @abs_top_builddir@/zfs_config.h -EXTRA_CFLAGS += -I@abs_top_srcdir@/include -I@SPL@/include -I@SPL@ +EXTRA_CFLAGS = $(ZFS_MODULE_CFLAGS) @KERNELCPPFLAGS@ -obj-m := $(MODULE).o +obj-$(CONFIG_ZFS) := $(MODULE).o $(MODULE)-objs += @top_srcdir@/module/zcommon/zfs_deleg.o $(MODULE)-objs += @top_srcdir@/module/zcommon/zfs_prop.o diff --git a/module/zfs/Makefile.in b/module/zfs/Makefile.in index 5ec75a03a..98576d1d2 100644 --- a/module/zfs/Makefile.in +++ b/module/zfs/Makefile.in @@ -1,11 +1,8 @@ MODULE := zfs -EXTRA_CFLAGS += @KERNELCPPFLAGS@ -EXTRA_CFLAGS += -include @SPL_OBJ@/spl_config.h -EXTRA_CFLAGS += -include @abs_top_builddir@/zfs_config.h -EXTRA_CFLAGS += -I@abs_top_srcdir@/include -I@SPL@/include -I@SPL@ +EXTRA_CFLAGS = $(ZFS_MODULE_CFLAGS) @KERNELCPPFLAGS@ -obj-m := $(MODULE).o +obj-$(CONFIG_ZFS) := $(MODULE).o $(MODULE)-objs += @top_srcdir@/module/zfs/arc.o $(MODULE)-objs += @top_srcdir@/module/zfs/bplist.o diff --git a/module/zpios/Makefile.in b/module/zpios/Makefile.in index 93a89a914..437bf2287 100644 --- a/module/zpios/Makefile.in +++ b/module/zpios/Makefile.in @@ -1,10 +1,7 @@ MODULE := zpios -EXTRA_CFLAGS = @KERNELCPPFLAGS@ -EXTRA_CFLAGS += -include @SPL_OBJ@/spl_config.h -EXTRA_CFLAGS += -include @abs_top_builddir@/zfs_config.h -EXTRA_CFLAGS += -I@abs_top_srcdir@/include -I@SPL@/include -I@SPL@ +EXTRA_CFLAGS = $(ZFS_MODULE_CFLAGS) @KERNELCPPFLAGS@ -obj-m := $(MODULE).o +obj-$(CONFIG_ZFS) := $(MODULE).o $(MODULE)-objs += @top_srcdir@/module/zpios/pios.o |