.cvsignore | 19 .gitignore | 20 ChangeLog | 50 + Makefile.in | 31 aclocal.m4 | 265 +++++-- config.guess | 36 - config.h.in | 6 config.sub | 52 + configure | 1257 +++++++++++++++++++++++++++++++------ configure.ac | 17 debian/changelog | 17 debian/control | 10 debian/copyright | 13 debian/patches/01_gen_pci_ids.diff | 16 debian/rules | 2 debian/xsfbs/xsfbs-autoreconf.mk | 150 ---- debian/xsfbs/xsfbs.mk | 121 --- debian/xsfbs/xsfbs.sh | 394 ++++++----- depcomp | 93 ++ install-sh | 514 ++++++++++----- ltmain.sh | 277 +++++--- man/Makefile.am | 1 man/Makefile.in | 9 missing | 61 + mkinstalldirs | 5 src/Makefile.am | 1 src/Makefile.in | 32 src/voodoo.h | 1 src/voodoo_driver.c | 42 + src/voodoo_hardware.c | 9 src/voodoo_pcirename.h | 122 +++ 31 files changed, 2525 insertions(+), 1118 deletions(-)
New commits: commit 20c6c8ae3599e4cacbc06c576558529248b0cfb5 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Fri Jun 6 15:33:57 2008 +0200 Prepare changelog for upload diff --git a/debian/changelog b/debian/changelog index 3e5a500..7a38566 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -xserver-xorg-video-voodoo (1:1.2.0-1) UNRELEASED; urgency=low +xserver-xorg-video-voodoo (1:1.2.0-1) unstable; urgency=low [ Brice Goglin ] * Add upstream URL to debian/copyright. @@ -15,7 +15,7 @@ xserver-xorg-video-voodoo (1:1.2.0-1) UNRELEASED; urgency=low dpkg-dev >= 1.14.17. * Add more information about copyright holders to debian/copyright. - -- Brice Goglin <[EMAIL PROTECTED]> Sat, 15 Sep 2007 02:28:55 +0200 + -- Julien Cristau <[EMAIL PROTECTED]> Fri, 06 Jun 2008 15:33:54 +0200 xserver-xorg-video-voodoo (1:1.1.1-5) unstable; urgency=low commit fd99a0437d3d72973babc4f420209e9df01da044 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Fri Jun 6 15:33:49 2008 +0200 Add more information about copyright holders to debian/copyright. diff --git a/debian/changelog b/debian/changelog index cd6dd56..3e5a500 100644 --- a/debian/changelog +++ b/debian/changelog @@ -13,6 +13,7 @@ xserver-xorg-video-voodoo (1:1.2.0-1) UNRELEASED; urgency=low /usr/bin/Xorg and other modules, and that's not a bug, so we want dpkg-shlibdeps to shut up about symbols it can't find. Build-depend on dpkg-dev >= 1.14.17. + * Add more information about copyright holders to debian/copyright. -- Brice Goglin <[EMAIL PROTECTED]> Sat, 15 Sep 2007 02:28:55 +0200 diff --git a/debian/copyright b/debian/copyright index 791c1bc..8af1eb2 100644 --- a/debian/copyright +++ b/debian/copyright @@ -1,7 +1,18 @@ This package was downloaded from http://xorg.freedesktop.org/releases/individual/driver/ -Alan Cox <[EMAIL PROTECTED]> +Author: Alan Cox <[EMAIL PROTECTED]> + +Derived from: +XFree86 driver for Glide(tm). (Mainly for Voodoo 1 and 2 cards) +by Henrik Harmsen ([EMAIL PROTECTED] or [EMAIL PROTECTED]) + +Portions derived from linux/drivers/video/sstfb.c + -- voodoo graphics frame buffer + Copyright (c) 2000-2002 Ghozlane Toumi <[EMAIL PROTECTED]> +Relicensed from GPL to the X license by consent of the author + +Other code Copyright 2004 Red Hat Inc. Permission to use, copy, modify, distribute, and sell this software and its documentation for any purpose is hereby granted without fee, provided that commit 16a003d055952fa20aa95bf231d17ab84234c468 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Fri Jun 6 15:27:31 2008 +0200 Run dpkg-shlibdeps with --warnings=6. Drivers reference symbols from /usr/bin/Xorg and other modules, and that's not a bug, so we want dpkg-shlibdeps to shut up about symbols it can't find. Build-depend on dpkg-dev >= 1.14.17. diff --git a/debian/changelog b/debian/changelog index 892b727..cd6dd56 100644 --- a/debian/changelog +++ b/debian/changelog @@ -9,6 +9,10 @@ xserver-xorg-video-voodoo (1:1.2.0-1) UNRELEASED; urgency=low * Remove Branden from Uploaders with his permission, and add myself. * Bump Standards-Version to 3.7.3. * Drop the XS- prefix from Vcs-* control fields. + * Run dpkg-shlibdeps with --warnings=6. Drivers reference symbols from + /usr/bin/Xorg and other modules, and that's not a bug, so we want + dpkg-shlibdeps to shut up about symbols it can't find. Build-depend on + dpkg-dev >= 1.14.17. -- Brice Goglin <[EMAIL PROTECTED]> Sat, 15 Sep 2007 02:28:55 +0200 diff --git a/debian/control b/debian/control index 2bb89c1..34000f3 100644 --- a/debian/control +++ b/debian/control @@ -3,7 +3,7 @@ Section: x11 Priority: optional Maintainer: Debian X Strike Force <debian-x@lists.debian.org> Uploaders: David Nusinow <[EMAIL PROTECTED]>, Julien Cristau <[EMAIL PROTECTED]> -Build-Depends: debhelper (>= 5.0.0), pkg-config, quilt, xserver-xorg-dev (>= 2:1.4), x11proto-xext-dev, x11proto-xf86dga-dev, x11proto-core-dev, x11proto-fonts-dev, x11proto-randr-dev, x11proto-render-dev +Build-Depends: debhelper (>= 5.0.0), pkg-config, quilt, xserver-xorg-dev (>= 2:1.4), x11proto-xext-dev, x11proto-xf86dga-dev, x11proto-core-dev, x11proto-fonts-dev, x11proto-randr-dev, x11proto-render-dev, dpkg-dev (>= 1.14.17) Standards-Version: 3.7.3 Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-voodoo Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-video-voodoo.git diff --git a/debian/rules b/debian/rules index c2dac3a..6c0cadb 100755 --- a/debian/rules +++ b/debian/rules @@ -79,7 +79,7 @@ binary-arch: build install serverabi dh_compress dh_fixperms dh_installdeb - dh_shlibdeps + dh_shlibdeps -- --warnings=6 dh_gencontrol dh_md5sums dh_builddeb commit 06657b127ede75064d5ebd4050a136c6c5ccefe8 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Fri Jun 6 15:22:16 2008 +0200 Revert to building against xserver 1.4 diff --git a/debian/changelog b/debian/changelog index d1a9a2e..892b727 100644 --- a/debian/changelog +++ b/debian/changelog @@ -7,7 +7,6 @@ xserver-xorg-video-voodoo (1:1.2.0-1) UNRELEASED; urgency=low * New upstream release. * Refresh patch 01_gen_pci_ids.diff. * Remove Branden from Uploaders with his permission, and add myself. - * Build against xserver 1.5 rc1. * Bump Standards-Version to 3.7.3. * Drop the XS- prefix from Vcs-* control fields. diff --git a/debian/control b/debian/control index e1e70f4..2bb89c1 100644 --- a/debian/control +++ b/debian/control @@ -3,7 +3,7 @@ Section: x11 Priority: optional Maintainer: Debian X Strike Force <debian-x@lists.debian.org> Uploaders: David Nusinow <[EMAIL PROTECTED]>, Julien Cristau <[EMAIL PROTECTED]> -Build-Depends: debhelper (>= 5.0.0), pkg-config, quilt, xserver-xorg-dev (>= 2:1.4.99.901), x11proto-xext-dev, x11proto-xf86dga-dev, x11proto-core-dev, x11proto-fonts-dev, x11proto-randr-dev, x11proto-render-dev, libpciaccess-dev +Build-Depends: debhelper (>= 5.0.0), pkg-config, quilt, xserver-xorg-dev (>= 2:1.4), x11proto-xext-dev, x11proto-xf86dga-dev, x11proto-core-dev, x11proto-fonts-dev, x11proto-randr-dev, x11proto-render-dev Standards-Version: 3.7.3 Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-voodoo Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-video-voodoo.git commit 4c2fb5aa80a15b5a9a9b51b03c7dc30496a22561 Author: Brice Goglin <[EMAIL PROTECTED]> Date: Sat May 31 13:23:24 2008 +0200 Update xsfbs/quilt patching rules to be compatible with the "3.0 (quilt)" source package. Thanks to Raphael Hertzog. See http://lists.debian.org/debian-x/2008/05/msg01250.html for details. diff --git a/debian/xsfbs/xsfbs.mk b/debian/xsfbs/xsfbs.mk index c11923f..b871b3b 100755 --- a/debian/xsfbs/xsfbs.mk +++ b/debian/xsfbs/xsfbs.mk @@ -21,10 +21,8 @@ # Pass $(DH_OPTIONS) into the environment for debhelper's benefit. export DH_OPTIONS -# force quilt to not use ~/.quiltrc -QUILT = quilt --quiltrc /dev/null -# force QUILT_PATCHES to the default in case it is exported in the environment -QUILT_PATCHES = patches/ +# force quilt to not use ~/.quiltrc and to use debian/patches +QUILT = QUILT_PATCHES=debian/patches quilt --quiltrc /dev/null # Set up parameters for the upstream build environment. @@ -121,19 +119,11 @@ $(STAMP_DIR)/stampdir: # Set up the package build directory as quilt expects to find it. .PHONY: prepare stampdir_targets+=prepare -prepare: $(STAMP_DIR)/genscripts $(STAMP_DIR)/prepare $(STAMP_DIR)/patches $(STAMP_DIR)/log +prepare: $(STAMP_DIR)/genscripts $(STAMP_DIR)/prepare $(STAMP_DIR)/log $(STAMP_DIR)/prepare: $(STAMP_DIR)/stampdir - if [ ! -e $(STAMP_DIR)/patches ]; then \ - mkdir $(STAMP_DIR)/patches; \ - ln -s $(STAMP_DIR)/patches .pc; \ - echo 2 >$(STAMP_DIR)/patches/.version; \ - fi; \ if [ ! -e $(STAMP_DIR)/log ]; then \ mkdir $(STAMP_DIR)/log; \ fi; \ - if [ -e debian/patches ] && [ ! -e patches ]; then \ - ln -s debian/patches patches; \ - fi; \ >$@ # Apply all patches to the upstream source. @@ -162,10 +152,10 @@ $(STAMP_DIR)/patch: $(STAMP_DIR)/prepare # Revert all patches to the upstream source. .PHONY: unpatch -unpatch: +unpatch: $(STAMP_DIR)/prepare rm -f $(STAMP_DIR)/patch @echo -n "Unapplying patches..."; \ - if [ -e $(STAMP_DIR)/patches/applied-patches ]; then \ + if $(QUILT) applied >/dev/null 2>/dev/null; then \ if $(QUILT) pop -a -v >$(STAMP_DIR)/log/unpatch 2>&1; then \ cat $(STAMP_DIR)/log/unpatch; \ echo "successful."; \ @@ -192,7 +182,7 @@ cleanscripts: .PHONY: xsfclean xsfclean: cleanscripts unpatch dh_testdir - rm -rf .pc patches + rm -rf .pc rm -rf $(STAMP_DIR) $(SOURCE_DIR) rm -rf imports dh_clean debian/shlibs.local \ commit dcf4204d5328834172df80951a18de014b0f74ef Author: Julien Cristau <[EMAIL PROTECTED]> Date: Fri May 30 12:26:18 2008 +0200 xsfbs.sh: use 'local' now that policy allows it Policy 3.7.3 allows /bin/sh scripts to use 'local'. diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index 0c7607a..72efa95 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -238,19 +238,19 @@ analyze_path () { # analyze_path /usr/X11R6/bin -> ls -dl /usr /usr/X11R6 /usr/X11R6/bin # Thanks to Randolph Chung for this clever hack. - #local f g + local f g while [ -n "$1" ]; do reject_whitespace "$1" - _g= + g= message "Analyzing $1:" - for _f in $(echo "$1" | tr / \ ); do - if [ -e /$_g$_f ]; then - ls -dl /$_g$_f /$_g$_f.dpkg-* 2> /dev/null || true - _g=$_g$_f/ + for f in $(echo "$1" | tr / \ ); do + if [ -e /$g$f ]; then + ls -dl /$g$f /$g$f.dpkg-* 2> /dev/null || true + g=$g$f/ else - message "/$_g$_f: nonexistent; directory contents of /$_g:" - ls -l /$_g + message "/$g$f: nonexistent; directory contents of /$g:" + ls -l /$g break fi done @@ -259,27 +259,27 @@ analyze_path () { } find_culprits () { - #local f p dpkg_info_dir possible_culprits smoking_guns bad_packages package \ - # msg + local f p dpkg_info_dir possible_culprits smoking_guns bad_packages package \ + msg reject_whitespace "$1" message "Searching for overlapping packages..." - _dpkg_info_dir=/var/lib/dpkg/info - if [ -d $_dpkg_info_dir ]; then - if [ "$(echo $_dpkg_info_dir/*.list)" != "$_dpkg_info_dir/*.list" ]; then - _possible_culprits=$(ls -1 $_dpkg_info_dir/*.list | egrep -v \ + dpkg_info_dir=/var/lib/dpkg/info + if [ -d $dpkg_info_dir ]; then + if [ "$(echo $dpkg_info_dir/*.list)" != "$dpkg_info_dir/*.list" ]; then + possible_culprits=$(ls -1 $dpkg_info_dir/*.list | egrep -v \ "(xbase-clients|x11-common|xfs|xlibs)") - if [ -n "$_possible_culprits" ]; then - _smoking_guns=$(grep -l "$1" $_possible_culprits || true) - if [ -n "$_smoking_guns" ]; then - _bad_packages=$(printf "\\n") - for f in $_smoking_guns; do + if [ -n "$possible_culprits" ]; then + smoking_guns=$(grep -l "$1" $possible_culprits || true) + if [ -n "$smoking_guns" ]; then + bad_packages=$(printf "\\n") + for f in $smoking_guns; do # too bad you can't nest parameter expansion voodoo p=${f%*.list} # strip off the trailing ".list" - _package=${p##*/} # strip off the directories - _bad_packages=$(printf "%s\n%s" "$_bad_packages" "$_package") + package=${p##*/} # strip off the directories + bad_packages=$(printf "%s\n%s" "$bad_packages" "$package") done - _msg=$(cat <<EOF + msg=$(cat <<EOF The following packages appear to have file overlaps with the X.Org packages; these packages are either very old, or in violation of Debian Policy. Try upgrading each of these packages to the latest available version if possible: @@ -291,17 +291,17 @@ Tracking System. You may want to refer the package maintainer to section 12.8 of the Debian Policy manual. EOF ) - message "$_msg" - message "The overlapping packages are: $_bad_packages" + message "$msg" + message "The overlapping packages are: $bad_packages" else message "no overlaps found." fi fi else - message "cannot search; no matches for $_dpkg_info_dir/*.list." + message "cannot search; no matches for $dpkg_info_dir/*.list." fi else - message "cannot search; $_dpkg_info_dir does not exist." + message "cannot search; $dpkg_info_dir does not exist." fi } @@ -323,7 +323,7 @@ check_symlink () { # # Primarily used by check_symlinks_and_warn() and check_symlinks_and_bomb(). - #local symlink + local symlink # validate arguments if [ $# -ne 1 ]; then @@ -332,9 +332,9 @@ check_symlink () { exit $SHELL_LIB_USAGE_ERROR fi - _symlink="$1" + symlink="$1" - if [ "$(maplink "$_symlink")" = "$(readlink "$_symlink")" ]; then + if [ "$(maplink "$symlink")" = "$(readlink "$symlink")" ]; then return 0 else return 1 @@ -349,7 +349,7 @@ check_symlinks_and_warn () { # Call this function from a preinst script in the event $1 is "upgrade" or # "install". - #local errmsg symlink + local errmsg symlink # validate arguments if [ $# -lt 1 ]; then @@ -359,25 +359,25 @@ check_symlinks_and_warn () { fi while [ -n "$1" ]; do - _symlink="$1" - if [ -L "$_symlink" ]; then - if ! check_symlink "$_symlink"; then - observe "$_symlink symbolic link points to wrong location" \ - "$(readlink "$_symlink"); removing" - rm "$_symlink" + symlink="$1" + if [ -L "$symlink" ]; then + if ! check_symlink "$symlink"; then + observe "$symlink symbolic link points to wrong location" \ + "$(readlink "$symlink"); removing" + rm "$symlink" fi - elif [ -e "$_symlink" ]; then - _errmsg="$_symlink exists and is not a symbolic link; this package cannot" - _errmsg="$_errmsg be installed until this" - if [ -f "$_symlink" ]; then - _errmsg="$_errmsg file" - elif [ -d "$_symlink" ]; then - _errmsg="$_errmsg directory" + elif [ -e "$symlink" ]; then + errmsg="$symlink exists and is not a symbolic link; this package cannot" + errmsg="$errmsg be installed until this" + if [ -f "$symlink" ]; then + errmsg="$errmsg file" + elif [ -d "$symlink" ]; then + errmsg="$errmsg directory" else - _errmsg="$_errmsg thing" + errmsg="$errmsg thing" fi - _errmsg="$_errmsg is removed" - die "$_errmsg" + errmsg="$errmsg is removed" + die "$errmsg" fi shift done @@ -390,7 +390,7 @@ check_symlinks_and_bomb () { # # Call this function from a postinst script. - #local problem symlink + local problem symlink # validate arguments if [ $# -lt 1 ]; then @@ -400,24 +400,24 @@ check_symlinks_and_bomb () { fi while [ -n "$1" ]; do - _problem= - _symlink="$1" - if [ -L "$_symlink" ]; then - if ! check_symlink "$_symlink"; then - _problem=yes - warn "$_symlink symbolic link points to wrong location" \ - "$(readlink "$_symlink")" + problem= + symlink="$1" + if [ -L "$symlink" ]; then + if ! check_symlink "$symlink"; then + problem=yes + warn "$symlink symbolic link points to wrong location" \ + "$(readlink "$symlink")" fi - elif [ -e "$_symlink" ]; then - _problem=yes - warn "$_symlink is not a symbolic link" + elif [ -e "$symlink" ]; then + problem=yes + warn "$symlink is not a symbolic link" else - _problem=yes - warn "$_symlink symbolic link does not exist" + problem=yes + warn "$symlink symbolic link does not exist" fi - if [ -n "$_problem" ]; then - analyze_path "$_symlink" "$(readlink "$_symlink")" - find_culprits "$_symlink" + if [ -n "$problem" ]; then + analyze_path "$symlink" "$(readlink "$symlink")" + find_culprits "$symlink" die "bad symbolic links on system" fi shift @@ -427,9 +427,9 @@ check_symlinks_and_bomb () { font_update () { # run $UPDATECMDS in $FONTDIRS - #local dir cmd shortcmd x_font_dir_prefix + local dir cmd shortcmd x_font_dir_prefix - _x_font_dir_prefix="/usr/share/fonts/X11" + x_font_dir_prefix="/usr/share/fonts/X11" if [ -z "$UPDATECMDS" ]; then usage_error "font_update() called but \$UPDATECMDS not set" @@ -441,32 +441,32 @@ font_update () { reject_unlikely_path_chars "$UPDATECMDS" reject_unlikely_path_chars "$FONTDIRS" - for _dir in $FONTDIRS; do - if [ -d "$_x_font_dir_prefix/$_dir" ]; then - for _cmd in $UPDATECMDS; do - if which "$_cmd" > /dev/null 2>&1; then - _shortcmd=${_cmd##*/} - observe "running $_shortcmd in $_dir font directory" - _cmd_opts= - if [ "$_shortcmd" = "update-fonts-alias" ]; then - _cmd_opts=--x11r7-layout + for dir in $FONTDIRS; do + if [ -d "$x_font_dir_prefix/$dir" ]; then + for cmd in $UPDATECMDS; do + if which "$cmd" > /dev/null 2>&1; then + shortcmd=${cmd##*/} + observe "running $shortcmd in $dir font directory" + cmd_opts= + if [ "$shortcmd" = "update-fonts-alias" ]; then + cmd_opts=--x11r7-layout fi - if [ "$_shortcmd" = "update-fonts-dir" ]; then - _cmd_opts=--x11r7-layout + if [ "$shortcmd" = "update-fonts-dir" ]; then + cmd_opts=--x11r7-layout fi - if [ "$_shortcmd" = "update-fonts-scale" ]; then - _cmd_opts=--x11r7-layout + if [ "$shortcmd" = "update-fonts-scale" ]; then + cmd_opts=--x11r7-layout fi - $_cmd $_cmd_opts $_dir || warn "$_cmd $_cmd_opts $_dir" \ + $cmd $cmd_opts $dir || warn "$cmd $cmd_opts $dir" \ "failed; font directory data may not" \ "be up to date" else - warn "$_cmd not found; not updating corresponding $_dir font" \ + warn "$cmd not found; not updating corresponding $dir font" \ "directory data" fi done else - warn "$_dir is not a directory; not updating font directory data" + warn "$dir is not a directory; not updating font directory data" fi done } @@ -485,7 +485,7 @@ remove_conffile_prepare () { # version (or installed over a version removed-but-not-purged) prior to the # one in which the conffile was obsoleted. - #local conffile current_checksum + local conffile current_checksum # validate arguments if [ $# -lt 2 ]; then @@ -494,19 +494,19 @@ remove_conffile_prepare () { exit $SHELL_LIB_USAGE_ERROR fi - _conffile="$1" + conffile="$1" shift - # does the _conffile even exist? - if [ -e "$_conffile" ]; then + # does the conffile even exist? + if [ -e "$conffile" ]; then # calculate its checksum - _current_checksum=$(md5sum < "$_conffile" | sed 's/[[:space:]].*//') + current_checksum=$(md5sum < "$conffile" | sed 's/[[:space:]].*//') # compare it to each supplied checksum while [ -n "$1" ]; do - if [ "$_current_checksum" = "$1" ]; then + if [ "$current_checksum" = "$1" ]; then # we found a match; move the confffile and stop looking - observe "preparing obsolete conffile $_conffile for removal" - mv "$_conffile" "$_conffile.$THIS_PACKAGE-tmp" + observe "preparing obsolete conffile $conffile for removal" + mv "$conffile" "$conffile.$THIS_PACKAGE-tmp" break fi shift @@ -553,7 +553,7 @@ remove_conffile_commit () { # Call this function from a postinst script after having used # remove_conffile_prepare() in the preinst. - #local conffile + local conffile # validate arguments if [ $# -ne 1 ]; then @@ -562,12 +562,12 @@ remove_conffile_commit () { exit $SHELL_LIB_USAGE_ERROR fi - _conffile="$1" + conffile="$1" # if the temporary file created by remove_conffile_prepare() exists, remove it - if [ -e "$_conffile.$THIS_PACKAGE-tmp" ]; then - observe "committing removal of obsolete conffile $_conffile" - rm "$_conffile.$THIS_PACKAGE-tmp" + if [ -e "$conffile.$THIS_PACKAGE-tmp" ]; then + observe "committing removal of obsolete conffile $conffile" + rm "$conffile.$THIS_PACKAGE-tmp" fi } @@ -580,7 +580,7 @@ remove_conffile_rollback () { # or "abort-install" is after having used remove_conffile_prepare() in the # preinst. - #local conffile + local conffile # validate arguments if [ $# -ne 1 ]; then @@ -589,13 +589,13 @@ remove_conffile_rollback () { exit $SHELL_LIB_USAGE_ERROR fi - _conffile="$1" + conffile="$1" # if the temporary file created by remove_conffile_prepare() exists, move it # back - if [ -e "$_conffile.$THIS_PACKAGE-tmp" ]; then - observe "rolling back removal of obsolete conffile $_conffile" - mv "$_conffile.$THIS_PACKAGE-tmp" "$_conffile" + if [ -e "$conffile.$THIS_PACKAGE-tmp" ]; then + observe "rolling back removal of obsolete conffile $conffile" + mv "$conffile.$THIS_PACKAGE-tmp" "$conffile" fi } @@ -615,7 +615,7 @@ replace_conffile_with_symlink_prepare () { # version (or installed over a version removed-but-not-purged) prior to the # one in which the conffile was obsoleted. - #local conffile current_checksum + local conffile current_checksum # validate arguments if [ $# -lt 3 ]; then @@ -624,16 +624,16 @@ replace_conffile_with_symlink_prepare () { exit $SHELL_LIB_USAGE_ERROR fi - _oldconffile="$1" + oldconffile="$1" shift - _newconffile="$1" + newconffile="$1" shift remove_conffile_prepare "$_oldconffile" "$@" - # If $_oldconffile still exists, then md5sums didn't match. + # If $oldconffile still exists, then md5sums didn't match. # Copy it to new one. - if [ -f "$_oldconffile" ]; then - cp "$_oldconffile" "$_newconffile" + if [ -f "$oldconffile" ]; then + cp "$oldconffile" "$newconffile" fi } @@ -647,7 +647,7 @@ replace_conffile_with_symlink_commit () { # Call this function from a postinst script after having used # replace_conffile_with_symlink_prepare() in the preinst. - #local conffile + local conffile # validate arguments if [ $# -ne 1 ]; then @@ -656,9 +656,9 @@ replace_conffile_with_symlink_commit () { exit $SHELL_LIB_USAGE_ERROR fi - _conffile="$1" + conffile="$1" - remove_conffile_commit "$_conffile" + remove_conffile_commit "$conffile" } replace_conffile_with_symlink_rollback () { @@ -674,7 +674,7 @@ replace_conffile_with_symlink_rollback () { # You should have used replace_conffile_with_symlink_prepare() in the # preinst. - #local conffile + local conffile # validate arguments if [ $# -ne 2 ]; then @@ -683,12 +683,12 @@ replace_conffile_with_symlink_rollback () { exit $SHELL_LIB_USAGE_ERROR fi - _oldconffile="$1" - _newconffile="$2" + oldconffile="$1" + newconffile="$2" remove_conffile_rollback "$_oldconffile" - if [ -f "$_newconffile" ]; then - rm "$_newconffile" + if [ -f "$newconffile" ]; then + rm "$newconffile" fi } @@ -703,7 +703,7 @@ run () { # those cases the return value of the debconf command *must* be checked # before the string returned by debconf is used for anything. - #local retval + local retval # validate arguments if [ $# -lt 1 ]; then @@ -712,10 +712,10 @@ run () { exit $SHELL_LIB_USAGE_ERROR fi - "$@" || _retval=$? + "$@" || retval=$? - if [ ${_retval:-0} -ne 0 ]; then - observe "command \"$*\" exited with status $_retval" + if [ ${retval:-0} -ne 0 ]; then + observe "command \"$*\" exited with status $retval" fi } @@ -728,15 +728,15 @@ register_x_lib_dir_with_ld_so () { # Call this function from the postinst script of a package that places a # shared library in /usr/X11R6/lib, before invoking ldconfig. - #local dir ldsoconf + local dir ldsoconf - _dir="/usr/X11R6/lib" - _ldsoconf="/etc/ld.so.conf" + dir="/usr/X11R6/lib" + ldsoconf="/etc/ld.so.conf" # is the line not already present? - if ! fgrep -qsx "$_dir" "$_ldsoconf"; then - observe "adding $_dir directory to $_ldsoconf" - echo "$_dir" >> "$_ldsoconf" + if ! fgrep -qsx "$dir" "$ldsoconf"; then + observe "adding $dir directory to $ldsoconf" + echo "$dir" >> "$ldsoconf" fi } @@ -750,36 +750,36 @@ deregister_x_lib_dir_with_ld_so () { # library in /usr/X11R6/lib, in the event "$1" is "remove", and before # invoking ldconfig. - #local dir ldsoconf fgrep_status cmp_status + local dir ldsoconf fgrep_status cmp_status - _dir="/usr/X11R6/lib" - _ldsoconf="/etc/ld.so.conf" + dir="/usr/X11R6/lib" + ldsoconf="/etc/ld.so.conf" # is the line present? - if fgrep -qsx "$_dir" "$_ldsoconf"; then + if fgrep -qsx "$dir" "$ldsoconf"; then # are there any shared objects in the directory? - if [ "$(echo "$_dir"/lib*.so.*.*)" = "$_dir/lib*.so.*.*" ]; then + if [ "$(echo "$dir"/lib*.so.*.*)" = "$dir/lib*.so.*.*" ]; then # glob expansion produced nothing, so no shared libraries are present - observe "removing $_dir directory from $_ldsoconf" + observe "removing $dir directory from $ldsoconf" # rewrite the file (very carefully) set +e - fgrep -svx "$_dir" "$_ldsoconf" > "$_ldsoconf.dpkg-tmp" - _fgrep_status=$? + fgrep -svx "$dir" "$ldsoconf" > "$ldsoconf.dpkg-tmp" + fgrep_status=$? set -e - case $_fgrep_status in + case $fgrep_status in 0|1) ;; # we don't actually care if any lines matched or not - *) die "error reading \"$_ldsoconf\"; fgrep exited with status" \ - "$_fgrep_status" ;; + *) die "error reading \"$ldsoconf\"; fgrep exited with status" \ + "$fgrep_status" ;; esac set +e - cmp -s "$_ldsoconf.dpkg-tmp" "$_ldsoconf" - _cmp_status=$? + cmp -s "$ldsoconf.dpkg-tmp" "$ldsoconf" + cmp_status=$? set -e - case $_cmp_status in - 0) rm "$_ldsoconf.dpkg-tmp" ;; # files are identical - 1) mv "$_ldsoconf.dpkg-tmp" "$_ldsoconf" ;; # files differ - *) die "error comparing \"$_ldsoconf.dpkg-tmp\" to \"$_ldsoconf\";" \ - "cmp exited with status $_cmp_status" ;; + case $cmp_status in + 0) rm "$ldsoconf.dpkg-tmp" ;; # files are identical + 1) mv "$ldsoconf.dpkg-tmp" "$ldsoconf" ;; # files differ + *) die "error comparing \"$ldsoconf.dpkg-tmp\" to \"$ldsoconf\";" \ + "cmp exited with status $cmp_status" ;; esac fi fi @@ -811,17 +811,17 @@ make_symlink_sane () { # We could just use the positional parameters as-is, but that makes things # harder to follow. - #local symlink target + local symlink target - _symlink="$1" - _target="$2" + symlink="$1" + target="$2" - if [ -L "$_symlink" ] && [ "$(readlink "$_symlink")" = "$_target" ]; then - observe "link from $_symlink to $_target already exists" + if [ -L "$symlink" ] && [ "$(readlink "$symlink")" = "$target" ]; then + observe "link from $symlink to $target already exists" else - observe "creating symbolic link from $_symlink to $_target" - mkdir -p "${_target%/*}" "${_symlink%/*}" - ln -s -b -S ".dpkg-old" "$_target" "$_symlink" + observe "creating symbolic link from $symlink to $target" + mkdir -p "${target%/*}" "${symlink%/*}" + ln -s -b -S ".dpkg-old" "$target" "$symlink" fi } @@ -857,73 +857,73 @@ migrate_dir_to_symlink () { # We could just use the positional parameters as-is, but that makes things # harder to follow. - local _new _old + local new old - _old="$1" - _new="$2" + old="$1" + new="$2" # Is old location a symlink? - if [ -L "$_old" ]; then + if [ -L "$old" ]; then # Does it already point to new location? - if [ "$(readlink "$_old")" = "$_new" ]; then + if [ "$(readlink "$old")" = "$new" ]; then # Nothing to do; migration has already been done. - observe "migration of $_old to $_new already done" + observe "migration of $old to $new already done" return 0 else # Back it up. - warn "backing up symbolic link $_old as $_old.dpkg-old" - mv -b "$_old" "$_old.dpkg-old" + warn "backing up symbolic link $old as $old.dpkg-old" + mv -b "$old" "$old.dpkg-old" fi fi # Does old location exist, but is not a directory? - if [ -e "$_old" ] && ! [ -d "$_old" ]; then + if [ -e "$old" ] && ! [ -d "$old" ]; then # Back it up. - warn "backing up non-directory $_old as $_old.dpkg-old" - mv -b "$_old" "$_old.dpkg-old" + warn "backing up non-directory $old as $old.dpkg-old" + mv -b "$old" "$old.dpkg-old" fi - observe "migrating $_old to $_new" + observe "migrating $old to $new" # Is new location a symlink? - if [ -L "$_new" ]; then + if [ -L "$new" ]; then # Does it point the wrong way, i.e., back to where we're migrating from? - if [ "$(readlink "$_new")" = "$_old" ]; then + if [ "$(readlink "$new")" = "$old" ]; then # Get rid of it. - observe "removing symbolic link $_new which points to $_old" - rm "$_new" + observe "removing symbolic link $new which points to $old" + rm "$new" else # Back it up. - warn "backing up symbolic link $_new as $_new.dpkg-old" - mv -b "$_new" "$_new.dpkg-old" + warn "backing up symbolic link $new as $new.dpkg-old" + mv -b "$new" "$new.dpkg-old" fi fi # Does new location exist, but is not a directory? - if [ -e "$_new" ] && ! [ -d "$_new" ]; then - warn "backing up non-directory $_new as $_new.dpkg-old" - mv -b "$_new" "$_new.dpkg-old" + if [ -e "$new" ] && ! [ -d "$new" ]; then + warn "backing up non-directory $new as $new.dpkg-old" + mv -b "$new" "$new.dpkg-old" fi # Create new directory if it does not yet exist. - if ! [ -e "$_new" ]; then - observe "creating $_new" - mkdir -p "$_new" + if ! [ -e "$new" ]; then + observe "creating $new" + mkdir -p "$new" fi # Copy files in old location to new location. Back up any filenames that # already exist in the new location with the extension ".dpkg-old". - observe "copying files from $_old to $_new" - if ! (cd "$_old" && cp -a -b -S ".dpkg-old" . "$_new"); then - die "error(s) encountered while copying files from $_old to $_new" + observe "copying files from $old to $new" + if ! (cd "$old" && cp -a -b -S ".dpkg-old" . "$new"); then + die "error(s) encountered while copying files from $old to $new" fi # Remove files at old location. - observe "removing $_old" - rm -r "$_old" + observe "removing $old" + rm -r "$old" # Create symlink from old location to new location. - make_symlink_sane "$_old" "$_new" + make_symlink_sane "$old" "$new" } # vim:set ai et sw=2 ts=2 tw=80: commit d9066a28b95e1a74e9f6ebac8e71e07fca321cd1 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Tue May 20 18:53:28 2008 +0200 xsfbs.sh: add remove_conffile_lookup This variant of remove_conffile_prepare looks for the given conffile's canonical md5sum in dpkg's status database itself instead of using provided values. diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index a90ff7d..0c7607a 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -514,6 +514,37 @@ remove_conffile_prepare () { fi } +remove_conffile_lookup () { + # syntax: remove_conffile_lookup package filename + # + # Lookup the md5sum of a conffile in dpkg's database, and prepare for removal + # if it matches the actual file's md5sum. + # + # Call this function when you would call remove_conffile_prepare but only + # want to check against dpkg's status database instead of known checksums. + + local package conffile old_md5sum + + # validate arguments + if [ $# -ne 2 ]; then + usage_error "remove_conffile_lookup() called with wrong number of" \ + "arguments; expected 1, got $#" + exit $SHELL_LIB_USAGE_ERROR + fi + + package="$1" + conffile="$2" + + if ! [ -e "$conffile" ]; then + return + fi + old_md5sum="$(dpkg-query -W -f='${Conffiles}' "$package" | \ + awk '{ if (match($0, "^ '"$conffile"' ")) print $2}')" + if [ -n "$old_md5sum" ]; then + remove_conffile_prepare "$conffile" "$old_md5sum" + fi +} + remove_conffile_commit () { # syntax: remove_conffile_commit filename # commit 9d66b3441b36e5a47ffc288ba21f2fd929e869d0 Author: Julien Cristau <[EMAIL PROTECTED]> Date: Fri May 23 11:12:20 2008 +0200 Remove the .pc directory properly -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]