summaryrefslogtreecommitdiffstats
path: root/builder/modules.d/dnbd3-rootfs
diff options
context:
space:
mode:
authorJonathan Bauer2019-10-25 13:16:34 +0200
committerJonathan Bauer2019-10-25 13:16:34 +0200
commit5c15661dcc9d99745f5128b1aba9727fa066e6b6 (patch)
treea8c485a407201eb370b958c41b80e999a0acf60a /builder/modules.d/dnbd3-rootfs
parentmore improvements (diff)
parent[slx-network] wait 30sec for network (diff)
downloadsystemd-init-5c15661dcc9d99745f5128b1aba9727fa066e6b6.tar.gz
systemd-init-5c15661dcc9d99745f5128b1aba9727fa066e6b6.tar.xz
systemd-init-5c15661dcc9d99745f5128b1aba9727fa066e6b6.zip
Merge branch 'master' into nobash
Diffstat (limited to 'builder/modules.d/dnbd3-rootfs')
-rw-r--r--builder/modules.d/dnbd3-rootfs/helper/build.inc13
-rwxr-xr-xbuilder/modules.d/dnbd3-rootfs/module-setup.sh18
2 files changed, 22 insertions, 9 deletions
diff --git a/builder/modules.d/dnbd3-rootfs/helper/build.inc b/builder/modules.d/dnbd3-rootfs/helper/build.inc
index bb992de1..2410c633 100644
--- a/builder/modules.d/dnbd3-rootfs/helper/build.inc
+++ b/builder/modules.d/dnbd3-rootfs/helper/build.inc
@@ -19,8 +19,8 @@ build_initialize_components() {
logging.info "Could not find dnbd3, building it..."
if ! CMAKE_FLAGS="-DKERNEL_DIR=${kernel_headers}" \
build_compile_dnbd3 "${_deps_base_dir}/dnbd3/"; then
- logging.error "Failed to build dnbd3."
- return 1
+ logging.error "Failed to build dnbd3."
+ return 1
fi
fi
# take care of the qcow handler
@@ -181,10 +181,15 @@ build_compile_dnbd3() {
# NOTE: The generic way would be: "./build.sh" but this tries to build
# more than we really need and takes more time.
mkdir --parents build
- pushd build
+ cd build
# Inject CMAKE_FLAGS as a way to control how cmake is called,
# e.g. to pass the kernel version
- cmake ${CMAKE_FLAGS} ../
+ cmake ${CMAKE_FLAGS} \
+ -DBUILD_FUSE_CLIENT=OFF \
+ -DBUILD_KERNEL_MODULE=ON \
+ -DBUILD_SERVER=OFF \
+ -DBUILD_STRESSTEST=OFF \
+ ../
make -j dnbd3 dnbd3-client
local ret=$?
popd
diff --git a/builder/modules.d/dnbd3-rootfs/module-setup.sh b/builder/modules.d/dnbd3-rootfs/module-setup.sh
index 63bb0b29..c2fea3b2 100755
--- a/builder/modules.d/dnbd3-rootfs/module-setup.sh
+++ b/builder/modules.d/dnbd3-rootfs/module-setup.sh
@@ -68,7 +68,10 @@ clean() {
}
# region dracut plugin api
check() {
- build_initialize_components
+ if ! build_initialize_components; then
+ echo "Failed to initialize components."
+ return 1
+ fi
# NOTE: xmount must be compiled before qemu_xmount
local xmount_is_built=true
if [[ ! -f "$moddir/binaries/xmount/trunk/build/src/xmount" ]] ||
@@ -118,10 +121,15 @@ installkernel() {
inst "${moddir}/binaries/dnbd3/build/dnbd3.ko" "${block_kmod_dir}/dnbd3.ko"
# kqcow2 kernel
- mkdir -p "${initdir}/${block_kmod_dir}/loop"
- for kmod in "${moddir}/binaries/kernel-qcow2-linux/drivers/block/loop/"*.ko ; do
- inst "$kmod" "${block_kmod_dir}/loop/$(basename $kmod)"
- done
+ local kqcow_loop_kmod_dir="${moddir}/binaries/kernel-qcow2-linux/drivers/block/loop"
+ if [ -e "${kqcow_loop_kmod_dir}/loop.ko" ] && \
+ [ -e "${kqcow_loop_kmod_dir}/loop_file_fmt_raw.ko" ] && \
+ [ -e "${kqcow_loop_kmod_dir}/loop_file_fmt_qcow.ko" ]; then
+ mkdir -p "${initdir}/${block_kmod_dir}/loop"
+ for kmod in "${kqcow_loop_kmod_dir}/"*.ko ; do
+ inst "$kmod" "${block_kmod_dir}/loop/$(basename $kmod)"
+ done
+ fi
}
install() {
# region binaries