summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjandob2016-01-23 09:05:13 +0100
committerjandob2016-01-23 09:05:13 +0100
commitd9028002428b4241ace410a144756badca531310 (patch)
tree1c18dd2515d8d0be46fe71c1c629547277cd79d3
parentfix (diff)
downloadsystemd-init-d9028002428b4241ace410a144756badca531310.tar.gz
systemd-init-d9028002428b4241ace410a144756badca531310.tar.xz
systemd-init-d9028002428b4241ace410a144756badca531310.zip
automatic xmount building
-rwxr-xr-xbuilder/dnbd3-rootfs/module-setup.sh13
-rw-r--r--builder/dnbd3-rootfs/scripts/build.sh14
-rw-r--r--builder/dnbd3-rootfs/services/dnbd3root.service5
3 files changed, 14 insertions, 18 deletions
diff --git a/builder/dnbd3-rootfs/module-setup.sh b/builder/dnbd3-rootfs/module-setup.sh
index fa6c4871..9798172f 100755
--- a/builder/dnbd3-rootfs/module-setup.sh
+++ b/builder/dnbd3-rootfs/module-setup.sh
@@ -125,13 +125,15 @@ install() {
# load dnbd3.ko
inst_hook pre-udev 00 "$moddir/hooks/load-custom-kernel-modules.sh"
+ # get the openslx config from the servers configured in the kernel command
+ # line (${SLX_SERVER}/${SLX_SERVER_BASE}/config)
+ inst_hook pre-mount 00 "$moddir/hooks/fetch-config.sh"
+ # make the final blockdevice for the root system (dnbd3 -> xmount ->
+ # device-mapper)
if dracut_module_included "systemd-initrd"; then
inst "$moddir/hooks/prepare-root-partition.sh" \
/usr/bin/dnbd3root
- inst "$moddir/hooks/fetch-config.sh" \
- /usr/bin/fetch-config
-
inst_simple "${moddir}/services/dnbd3root.service" \
"${systemdsystemunitdir}/dnbd3root.service"
# don't kill at switch_root
@@ -140,11 +142,6 @@ install() {
"${systemdsystemunitdir}/initrd-root-fs.target.wants/dnbd3root.service"
inst_hook pre-pivot 95 "$moddir/hooks/copy-dnbd3-generator-into-newroot.sh"
else
- # get the openslx config from the servers configured in the kernel command
- # line (${SLX_SERVER}/${SLX_SERVER_BASE}/config)
- inst_hook pre-mount 00 "$moddir/hooks/fetch-config.sh"
- # make the final blockdevice for the root system (dnbd3 -> qemu-nbd ->
- # device-mapper)
inst_hook pre-mount 10 "$moddir/hooks/prepare-root-partition.sh"
fi
diff --git a/builder/dnbd3-rootfs/scripts/build.sh b/builder/dnbd3-rootfs/scripts/build.sh
index f8180488..b150de58 100644
--- a/builder/dnbd3-rootfs/scripts/build.sh
+++ b/builder/dnbd3-rootfs/scripts/build.sh
@@ -9,10 +9,12 @@ build_compile_qemu_xmount() {
# Provides the following file:
# "$1/libxmount_input_qemu.so"
pushd "$1"
+ local xmount_installation="../xmount/trunk/build/release_build"
./configure --enable-xmount-input --python=$(which python2) \
--extra-cflags="-fPIC" \
- --extra-cflags="-I../xmount/trunk/build/release_build/include" \
- --extra-cflags="-I../xmount/trunk/build/release_build/include/xmount"
+ --extra-cflags="-I${xmount_installation}/include" \
+ --extra-cflags="-I${xmount_installation}/include/xmount" \
+ --disable-fdt --target-list=""
make libxmount_input_qemu.so
local ret=$?
popd
@@ -30,13 +32,11 @@ build_compile_xmount() {
# Provides the xmount installation under:
# "$1/trunk/build/release_build/"
pushd "$1"
- sed -i 's:${CMAKE_INSTALL_PREFIX}/lib/xmount:/usr/lib/xmount:' trunk/src/CMakeLists.txt
mkdir -p trunk/build
cd trunk/build
- cmake -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=./release_build ..
+ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/ ..
make
- make install
+ make install DESTDIR=./release_build
local ret=$?
popd
return $ret
@@ -46,7 +46,7 @@ build_clean_xmount() {
}
build_clean_qemu_nbd() {
pushd "$1"
- make clean
+ make clean # TODO use git clean -f -x
popd
return $?
}
diff --git a/builder/dnbd3-rootfs/services/dnbd3root.service b/builder/dnbd3-rootfs/services/dnbd3root.service
index eea43b7f..c78de204 100644
--- a/builder/dnbd3-rootfs/services/dnbd3root.service
+++ b/builder/dnbd3-rootfs/services/dnbd3root.service
@@ -1,6 +1,6 @@
[Unit]
Description=root fs on dnbd3 (distributed network block device)
-After=dracut-initqueue.service network.target
+After=dracut-pre-mount.service network.target
Before=dracut-mount.service
DefaultDependencies=no
IgnoreOnIsolate=true
@@ -12,7 +12,6 @@ IgnoreOnIsolate=true
Type=oneshot
RemainAfterExit=true
KillMode=none
-ExecStartPre=openslx-fetch-config
-ExecStart=dnbd3root
+ExecStart=/usr/bin/dnbd3root
#ExecReload=/sbin/multipathd reconfigure
#ExecStop=echo 'stopping dnbd3'