From eec5e1576e70d27caa639f36e34679ed18817458 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Thu, 8 Jul 2021 16:05:57 +0200 Subject: Add installer mode for stage4 --- mltk | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) (limited to 'mltk') diff --git a/mltk b/mltk index 7e8159ad..061abe09 100755 --- a/mltk +++ b/mltk @@ -82,6 +82,7 @@ print_usage() { echo -e " -d activates debug output for the task (spamy)" echo -e " -b build module(s) and copy them to the target build directory" echo -e " -c clean build directory of module(s) and target dir" + echo -e " -i run in 'installer mode' for stage4 system" echo -e " -n bind mount all the local builds (var/builds) to /export/builds;" echo -e " the optional parameter name allows to change the default mount target" echo -e " -> /export/" @@ -106,7 +107,7 @@ check_devtools() { # Checking for needed development tools, compilers etc. # Required: m4 make gcc g++ binutils # no qmake here, qmake (libqt4-devel) should be installed in a module! - local DEV_TOOLS="gcc g++ make cmake m4 strip git depmod patch pkg-config automake autoconf aclocal lsb_release strings wget rsync lsof" # 'strip' as marker for binutils + local DEV_TOOLS="gcc g++ make cmake m4 strip git depmod patch pkg-config automake autoconf aclocal lsb_release strings wget rsync lsof diff cmp" # 'strip' as marker for binutils # DEV_CHECK marks missing dev-tools local DEV_TOOLS_MISSING="" @@ -120,16 +121,16 @@ check_devtools() { pinfo "For $SYS_DISTRIBUTION you probably need to run:" case $SYS_DISTRIBUTION in ubuntu | debian) - pinfo "apt-get install build-essential m4 pkg-config cmake automake autoconf binutils lsb-release wget rsync" + pinfo "apt install build-essential m4 pkg-config cmake automake autoconf binutils lsb-release wget rsync diffutils" pinfo "to install missing development tools." ;; # FIXME: Don't know how precise this filter works so we might want to have a better matching ... opensuse) - pinfo "zypper install gcc gcc-c++ make m4 binutils git module-init-tools patch pkg-config cmake lsb-release wget rsync" + pinfo "zypper install gcc gcc-c++ make m4 binutils git module-init-tools patch pkg-config cmake lsb-release wget rsync diffutils" pinfo "to install missing development tools." ;; fedora | scientific | centos) - pinfo "yum install redhat-lsb gcc-c++ gcc make m4 binutils pkgconfig patch cmake lsb-release wget rsync" + pinfo "yum install redhat-lsb gcc-c++ gcc make m4 binutils pkgconfig patch cmake lsb-release wget rsync diffutils" ;; *) perror "No installation help for $SYS_DISTRIBUTION available." @@ -205,6 +206,10 @@ read_params() { REMOTE_EXPORT="1" continue ;; + -i) + REMOTE_LOCAL_INSTALL=1 + continue + ;; --force-sys-version) if [ -z "$1" ]; then perror "--force-sys-version requires an argument, e.g. '18.04'." @@ -234,15 +239,14 @@ read_params() { } run() { - if [[ $REMOTE_CLEAN == 1 || $REMOTE_BUILD == 1 || $REMOTE_EXPORT == 1 ]]; then - [[ $REMOTE_DEBUG == 1 ]] && unset_quiet || set_quiet - . "${REMOTE_SETUP_TARGET}" || perror "Cannot source ${REMOTE_SETUP_TARGET}" - [[ $REMOTE_CLEAN == 1 ]] && clean_modules $TARGET $REMOTE_LIST_CLEAN - [[ $REMOTE_BUILD == 1 ]] && generate_target $TARGET $REMOTE_LIST_BUILD - [[ $REMOTE_EXPORT == 1 ]] && export_builds - fi + [[ $REMOTE_DEBUG == 1 ]] && unset_quiet || set_quiet + . "${REMOTE_SETUP_TARGET}" || perror "Cannot source ${REMOTE_SETUP_TARGET}" + [[ $REMOTE_CLEAN == 1 ]] && clean_modules $TARGET $REMOTE_LIST_CLEAN + [[ $REMOTE_BUILD == 1 ]] && generate_target $TARGET $REMOTE_LIST_BUILD + [[ $REMOTE_EXPORT == 1 ]] && export_builds } +REMOTE_LOCAL_INSTALL= REMOTE_DEBUG="0" REMOTE_CLEAN="0" REMOTE_BUILD="0" -- cgit v1.2.3-55-g7522