diff options
author | Jonathan Bauer | 2020-07-31 13:17:08 +0200 |
---|---|---|
committer | Jonathan Bauer | 2020-07-31 13:17:08 +0200 |
commit | 68a4c77caff4cd23e45e2148bb27e530ca0ad189 (patch) | |
tree | e26c129f16202733c9f7109fbceffffa298d24bf /core/modules/dnbd3 | |
parent | [dnbd3] do not build kernel module (diff) | |
download | mltk-68a4c77caff4cd23e45e2148bb27e530ca0ad189.tar.gz mltk-68a4c77caff4cd23e45e2148bb27e530ca0ad189.tar.xz mltk-68a4c77caff4cd23e45e2148bb27e530ca0ad189.zip |
Revert "[dnbd3] do not build kernel module"
This reverts commit 2ef2b7332c94dd9e55c8a0232dcdc7e7058c3402.
Diffstat (limited to 'core/modules/dnbd3')
-rw-r--r-- | core/modules/dnbd3/module.build | 25 | ||||
-rw-r--r-- | core/modules/dnbd3/module.conf | 6 |
2 files changed, 29 insertions, 2 deletions
diff --git a/core/modules/dnbd3/module.build b/core/modules/dnbd3/module.build index 8ebc1983..66c19abc 100644 --- a/core/modules/dnbd3/module.build +++ b/core/modules/dnbd3/module.build @@ -1,16 +1,39 @@ #!/bin/bash fetch_source() { + mkdir -p "src/kmod" autoclone + cp src/dnbd3/Kbuild.in src/dnbd3/src/*.{c,h} src/dnbd3/src/kernel/*.{c,h} src/kmod/ || perror "Could not copy kernel module source files" + cat > "src/kmod/Makefile" <<HEREEND +include \$(PWD)/Kbuild.in + +ifndef KDIR + KDIR = /lib/modules/\$(shell uname -r)/build +endif + +all: + make -C "\$(KDIR)" "M=\$(PWD)" modules + +clean: + make -C "\$(KDIR)" "M=\$(PWD)" clean +HEREEND } build() { + cd "${MODULE_WORK_DIR}/src/kmod" \ + || perror "Could not CD to standalone dnbd3 kmod dir" + make MODULE_NAME=dnbd3 KDIR="$KERNEL_HEADERS_DIR" \ + || perror "Could not compile kernel module" + mkdir -p "${MODULE_BUILD_DIR}/lib/modules/${TARGET_KERNEL_LONG}/kernel/drivers/block" \ + || perror "Could not create lib/modules/${TARGET_KERNEL_LONG}/kernel/drivers/block" mkdir -p "${MODULE_BUILD_DIR}/opt/openslx/bin" \ || perror "Could not create opt/openslx/bin" + cp "${MODULE_WORK_DIR}/src/kmod/dnbd3.ko" "${MODULE_BUILD_DIR}/lib/modules/${TARGET_KERNEL_LONG}/kernel/drivers/block/" \ + || perror "Could not copy dnbd3.ko" cd "${MODULE_BUILD_DIR}/opt/openslx/bin" \ || perror "Could not cd to build dir for client binary" cmake \ -DBUILD_FUSE_CLIENT=ON \ - -DBUILD_KERNEL_MODULE=OFF \ + -DBUILD_KERNEL_MODULE=ON \ -DBUILD_SERVER=ON \ -DBUILD_SERVER_FUSE=ON \ -DBUILD_STRESSTEST=OFF \ diff --git a/core/modules/dnbd3/module.conf b/core/modules/dnbd3/module.conf index bcf87bb4..47c250f1 100644 --- a/core/modules/dnbd3/module.conf +++ b/core/modules/dnbd3/module.conf @@ -1,7 +1,9 @@ #!/bin/bash REQUIRED_MODULES=" + kernel slxlog " +REQUIRED_MODULES="kernel" REQUIRED_GIT="https://git.openslx.org/dnbd3.git||fuse_ll" REQUIRED_BINARIES=" dnbd3-client @@ -9,4 +11,6 @@ REQUIRED_BINARIES=" fusermount dnbd3-server " -REQUIRED_DIRECTORIES="" +REQUIRED_DIRECTORIES=" + /lib/modules +" |