diff options
Diffstat (limited to 'remote/modules/systemd/systemd.build')
| -rw-r--r-- | remote/modules/systemd/systemd.build | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/remote/modules/systemd/systemd.build b/remote/modules/systemd/systemd.build new file mode 100644 index 00000000..450e743b --- /dev/null +++ b/remote/modules/systemd/systemd.build @@ -0,0 +1,50 @@ +#tool/distro specific functions for fetching, building and installing dependencies + +fetch_source () { + if [ ! -e .fetched_source ]; then + download_untar "$URL" "src/" + local LIBKMOD_VERSION="kmod-12" + download_untar "http://www.kernel.org/pub/linux/utils/kernel/kmod/${LIBKMOD_VERSION}.tar.gz" "src/" + touch .fetched_source + fi +} + +build () { + if [ ! -e .built ]; then + #build libkmod + cd "src/$LIBKMOD_VERSION/" + ./configure + make -j5 + make install + cd - + + #build systemd + cd "src/$VERSION/" + pinfo "calling configure" + ./configure --disable-manpages --enable-split-usr --sysconfdir="/etc" --enable-gtk-doc-html=no || perror "configure failed." + pinfo "calling make" + make -j5 || perror "make failed." + pinfo "calling make install" + DESTDIR="${MODULE_BUILD_DIR}" make install || perror "make install failed." + cd - + touch .built + fi +} + +post_copy() { + # copy static data files + cp -r "${MODULE_DIR}"/data/* "${TARGET_BUILD_DIR}" || perror "copying data files failed." + + # dont clear systemd log at startup + sed -i.bak "s/TTYVTDisallocate=yes/TTYVTDisallocate=no/g" "${TARGET_BUILD_DIR}/usr/lib/systemd/system/getty@.service" + + #old agetty version doesn't support --noclear option in getty service + if [ "x$(dpkg -s util-linux | grep Version: | cut -d' ' -f2)" == "x2.19.1-2ubuntu3" ]; + then + sed -i.bak "s/ExecStart=-\/sbin\/agetty --noclear %I 38400 linux/ExecStart=-\/sbin\/agetty %I 38400 linux/g" "${TARGET_BUILD_DIR}/usr/lib/systemd/system/getty@.service" + fi + + # add nfs to modules-load list + echo "nfs" > "${TARGET_BUILD_DIR}/etc/modules-load.d/nfs.conf" +} + |
