diff options
Diffstat (limited to 'debian/patches/makedev_keep_options.patch')
-rw-r--r-- | debian/patches/makedev_keep_options.patch | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/debian/patches/makedev_keep_options.patch b/debian/patches/makedev_keep_options.patch new file mode 100644 index 00000000..90a6c6e9 --- /dev/null +++ b/debian/patches/makedev_keep_options.patch @@ -0,0 +1,56 @@ +Add options -k and -K to MAKEDEV.sh to chose not to overwrite existing entries. + +Index: hurd/sutils/MAKEDEV.sh +=================================================================== +--- hurd.orig/sutils/MAKEDEV.sh 2010-07-01 18:14:22.000000000 +0200 ++++ hurd/sutils/MAKEDEV.sh 2010-07-01 18:17:37.000000000 +0200 +@@ -8,6 +8,8 @@ + ECHO=: # Change to "echo" to echo commands. + EXEC="" # Change to ":" to suppress command execution. + DEVDIR=`pwd` # Reset below by -D/--devdir command line option. ++STFLAGS="-g" # Set to -k if active translators are to be kept. ++KEEP= # Set to something if existing files are to be left alone. + + while :; do + case "$1" in +@@ -18,6 +20,8 @@ + + -D, --devdir=DIR Use DIR when a device node name must be + embedded in a translator; default is the cwd ++ -k, --keep-active Leave any existing active translator running ++ -K, --keep-all Don't overwrite existing files + -n, --dry-run Don't actually execute any commands + -v, --verbose Show what commands are executed to make the devices + -?, --help Give this help list +@@ -28,11 +32,14 @@ + --devdir=*) DEVDIR="`echo "$1" | sed 's/^--devdir=//'`"; shift 1;; + -D) DEVDIR="$2"; shift 2;; + -D*) DEVDIR="`echo "$1" | sed 's/^-D//'`"; shift 1;; ++ --keep-active|-k) STFLAGS="-k"; shift;; ++ --keep-all|-K) KEEP=1; shift;; + --verbose|-v) ECHO=echo; shift;; + --dry-run|-n) EXEC=:; shift;; + -nv|-vn) ECHO=echo; EXEC=:; shift;; + --usage) +- echo "Usage: $0 [-V?] [-D DIR] [--help] [--usage] [--version] [--devdir=DIR] DEVNAME..." ++ echo "Usage: $0 [-V?] [-D DIR] [--help] [--usage] [--version]" ++ echo " [--devdir=DIR] [--keep-active] [--keep-all] DEVNAME..." + exit 0;; + --version|-V) + echo "STANDARD_HURD_VERSION_MAKEDEV_"; exit 0;; +@@ -61,10 +68,13 @@ + local OWNER="$2" + local PERM="$3" + shift 3 +- if cmd settrans -cg "$NODE"; then ++ if [ "$KEEP" ] && [ -e "$NODE" ]; then ++ return; ++ fi ++ if cmd settrans $STFLAGS -c "$NODE"; then + cmd chown "$OWNER" "$NODE" + cmd chmod "$PERM" "$NODE" +- cmd settrans "$NODE" "$@" ++ cmd settrans $STFLAGS "$NODE" "$@" + fi + } + |