.PHONY: install clean archive rpm testimage test all check AUTHORS doc
-all: syncheck
+all: syncheck dracut-version.sh
doc: $(manpages) dracut.html
http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl dracut.xml
rm dracut.xml
-install: doc
+install: doc dracut-version.sh
mkdir -p $(DESTDIR)$(pkglibdir)
mkdir -p $(DESTDIR)$(bindir)
mkdir -p $(DESTDIR)$(sysconfdir)
install -m 0644 dracut.conf $(DESTDIR)$(sysconfdir)/dracut.conf
mkdir -p $(DESTDIR)$(sysconfdir)/dracut.conf.d
install -m 0755 dracut-functions.sh $(DESTDIR)$(pkglibdir)/dracut-functions.sh
+ install -m 0755 dracut-version.sh $(DESTDIR)$(pkglibdir)/dracut-version.sh
ln -s dracut-functions.sh $(DESTDIR)$(pkglibdir)/dracut-functions
install -m 0755 dracut-logger.sh $(DESTDIR)$(pkglibdir)/dracut-logger.sh
install -m 0755 dracut-initramfs-restore.sh $(DESTDIR)$(pkglibdir)/dracut-initramfs-restore
$(DESTDIR)$(systemdsystemunitdir)/shutdown.target.wants/dracut-shutdown.service; \
fi
+dracut-version.sh:
+ @echo "DRACUT_VERSION=$(VERSION)-$(GITVERSION)" > dracut-version.sh
+
clean:
$(RM) *~
$(RM) */*~
dracut_args="$@"
usage() {
+ [[ $dracutbasedir ]] || dracutbasedir=/usr/lib/dracut
+ if [[ -f $dracutbasedir/dracut-version.sh ]]; then
+ . $dracutbasedir/dracut-version.sh
+ fi
+
# 80x25 linebreak here ^
cat << EOF
Usage: $0 [OPTION]... <initramfs> <kernel-version>
+
+Version: $DRACUT_VERSION
+
Creates initial ramdisk images for preloading modules
-f, --force Overwrite existing initramfs file.
--sshkey) read_arg sshkey "$@" || shift;;
-v|--verbose) ((verbosity_mod_l++));;
-q|--quiet) ((verbosity_mod_l--));;
- -l|--local) allowlocal="yes" ;;
+ -l|--local)
+ allowlocal="yes"
+ [[ -f "$(readlink -f ${0%/*})/dracut-functions.sh" ]] \
+ && dracutbasedir="$(readlink -f ${0%/*})"
+ ;;
-H|--hostonly) hostonly_l="yes" ;;
--no-hostonly) hostonly_l="no" ;;
--fstab) use_fstab_l="yes" ;;
[[ $dracutbasedir ]] || dracutbasedir=/usr/lib/dracut
-[[ $allowlocal && -f "$(readlink -f ${0%/*})/dracut-functions.sh" ]] && \
- dracutbasedir="$(readlink -f ${0%/*})"
-
# if we were not passed a config file, try the default one
if [[ ! -f $conffile ]]; then
[[ $allowlocal ]] && conffile="$dracutbasedir/dracut.conf" || \
exit 1
fi
+if [[ -f $dracutbasedir/dracut-version.sh ]]; then
+ . $dracutbasedir/dracut-version.sh
+fi
+
# Verify bash version, curret minimum is 3.1
if (( ${BASH_VERSINFO[0]} < 3 ||
( ${BASH_VERSINFO[0]} == 3 && ${BASH_VERSINFO[1]} < 1 ) )); then
add_drivers omit_drivers mdadmconf lvmconf filesystems \
use_fstab fstab_lines libdir usrlibdir fscks nofscks \
stdloglvl sysloglvl fileloglvl kmsgloglvl logfile \
- debug host_fs_types host_devs sshkey add_fstab
+ debug host_fs_types host_devs sshkey add_fstab \
+ DRACUT_VERSION
# Create some directory structure first
[[ $prefix ]] && mkdir -m 0755 -p "${initdir}${prefix}"
%dir %{dracutlibdir}/modules.d
%{dracutlibdir}/dracut-functions.sh
%{dracutlibdir}/dracut-functions
+%{dracutlibdir}/dracut-version.sh
%{dracutlibdir}/dracut-logger.sh
%{dracutlibdir}/dracut-initramfs-restore
%config(noreplace) /etc/dracut.conf