debian/README.source | 73 +++++++++++++++++++++++++++++++++++++++++++++ debian/xsfbs/repack.sh | 32 ++++++++++++++++++++ debian/xsfbs/xsfbs.sh | 78 ------------------------------------------------- 3 files changed, 105 insertions(+), 78 deletions(-)
New commits: commit 8f72294ada477f003888b6776883c1dd98289f3f Author: Julien Cristau <jcris...@debian.org> Date: Wed Jun 3 03:37:37 2009 +0200 Kill custom readlink function This was needed for very, very old versions of debianutils. Closes: #498890 diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index 197eb74..781826f 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -303,16 +303,6 @@ EOF fi } -# we require a readlink command or shell function -if ! which readlink > /dev/null 2>&1; then - message "The readlink command was not found. Please install version" \ - "1.13.1 or later of the debianutils package." - readlink () { - # returns what symlink in $1 actually points to - perl -e '$l = shift; exit 1 unless -l $l; $r = readlink $l; exit 1 unless $r; print "$r\n"' "$1" - } -fi - check_symlink () { # syntax: check_symlink symlink # commit 7deebf983f53c505bc25171ab77fdc408f250a6e Author: Julien Cristau <jcris...@debian.org> Date: Tue May 26 15:58:19 2009 +0200 xsfbs: don't run dpkg --print-installation-architecture This is deprecated in new dpkg, and had no users anyway. diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index 8840ff9..197eb74 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -57,8 +57,6 @@ EOF exit $SHELL_LIB_USAGE_ERROR fi -ARCHITECTURE="$(dpkg --print-installation-architecture)" - if [ "$1" = "reconfigure" ] || [ -n "$DEBCONF_RECONFIGURE" ]; then RECONFIGURE="true" else commit 4178d948cd66a938222d0d7c6353ee8d60229e40 Author: David Nusinow <dnusi...@debian.org> Date: Mon May 25 20:08:50 2009 -0400 Add README.source diff --git a/debian/README.source b/debian/README.source new file mode 100644 index 0000000..34ab4bf --- /dev/null +++ b/debian/README.source @@ -0,0 +1,73 @@ +------------------------------------------------------ +Quick Guide To Patching This Package For The Impatient +------------------------------------------------------ + +1. Make sure you have quilt installed +2. Unpack the package as usual with "dpkg-source -x" +3. Run the "patch" target in debian/rules +4. Create a new patch with "quilt new" (see quilt(1)) +5. Edit all the files you want to include in the patch with "quilt edit" + (see quilt(1)). +6. Write the patch with "quilt refresh" (see quilt(1)) +7. Run the "clean" target in debian/rules + +Alternatively, instead of using quilt directly, you can drop the patch in to +debian/patches and add the name of the patch to debian/patches/series. + +------------------------------------ +Guide To The X Strike Force Packages +------------------------------------ + +The X Strike Force team maintains X packages in git repositories on +git.debian.org in the pkg-xorg subdirectory. Most upstream packages +are actually maintained in git repositories as well, so they often +just need to be pulled into git.debian.org in a "upstream-*" branch. +Otherwise, the upstream sources are manually installed in the Debian +git repository. + +The .orig.tar.gz upstream source file could be generated this +"upstream-*" branch in the Debian git repository but it is actually +copied from upstream tarballs directly. + +Due to X.org being highly modular, packaging all X.org applications +as their own independent packages would have created too many Debian +packages. For this reason, some X.org applications have been grouped +into larger packages: xutils, xutils-dev, x11-apps, x11-session-utils, +x11-utils, x11-xfs-utils, x11-xkb-utils, x11-xserver-utils. +Most packages, including the X.org server itself and all libraries +and drivers are, however maintained independently. + +The Debian packaging is added by creating the "debian-*" git branch +which contains the aforementioned "upstream-*" branch plus the debian/ +repository files. +When a patch has to be applied to the Debian package, two solutions +are involved: +* If the patch is available in one of the upstream branches, it + may be git'cherry-picked into the Debian repository. In this + case, it appears directly in the .diff.gz. +* Otherwise, the patch is added to debian/patches/ which is managed + with quilt as documented in /usr/share/doc/quilt/README.source. + +quilt is actually invoked by the Debian X packaging through a larger +set of scripts called XSFBS. XSFBS brings some other X specific +features such as managing dependencies and conflicts due to the video +and input driver ABIs. +XSFBS itself is maintained in a separate repository at + git://git.debian.org/pkg-xorg/xsfbs.git +and it is pulled inside the other Debian X repositories when needed. + +The XSFBS patching system requires a build dependency on quilt. Also +a dependency on $(STAMP_DIR)/patch has to be added to debian/rules +so that the XSFBS patching occurs before the actual build. So the +very first target of the build (likely the one running autoreconf) +should depend on $(STAMP_DIR)/patch. It should also not depend on +anything so that parallel builds are correctly supported (nothing +should probably run while patching is being done). And finally, the +clean target should depend on the xsfclean target so that patches +are unapplied on clean. + +When the upstream sources contain some DFSG-nonfree files, they are +listed in text files in debian/prune/ in the "debian-*" branch of +the Debian repository. XSFBS' scripts then take care of removing +these listed files during the build so as to generate a modified +DFSG-free .orig.tar.gz tarball. commit fa6396d6bf68b9a0154089146287245f9ad60a1e Author: Julien Cristau <jcris...@debian.org> Date: Wed Feb 25 21:31:03 2009 +0100 xsfbs: repack.sh needs to be executable diff --git a/debian/xsfbs/repack.sh b/debian/xsfbs/repack.sh old mode 100644 new mode 100755 commit 2ed171f9f390de4e97141c0016d3ba615e8c943e Author: Julien Cristau <jcris...@debian.org> Date: Tue Feb 17 17:20:42 2009 +0100 xsfbs.sh: kill {,de}register_x_lib_dir_with_ld_so libx11's postinst was the only post-sarge user, and it's gone now. diff --git a/debian/xsfbs/xsfbs.sh b/debian/xsfbs/xsfbs.sh index 72efa95..8840ff9 100644 --- a/debian/xsfbs/xsfbs.sh +++ b/debian/xsfbs/xsfbs.sh @@ -719,72 +719,6 @@ run () { fi } -register_x_lib_dir_with_ld_so () { - # syntax: register_x_lib_dir_with_ld_so - # - # Configure the dynamic loader ld.so to search /usr/X11R6/lib for shared - # libraries. - # - # 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 - - 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" - fi -} - -deregister_x_lib_dir_with_ld_so () { - # syntax: deregister_x_lib_dir_with_ld_so - # - # Configure dynamic loader ld.so to not search /usr/X11R6/lib for shared - # libraries, if and only if no shared libaries remain there. - # - # Call this function from the postrm script of a package that places a shared - # library in /usr/X11R6/lib, in the event "$1" is "remove", and before - # invoking ldconfig. - - local dir ldsoconf fgrep_status cmp_status - - dir="/usr/X11R6/lib" - ldsoconf="/etc/ld.so.conf" - - # is the line present? - if fgrep -qsx "$dir" "$ldsoconf"; then - # are there any shared objects in the directory? - 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" - # rewrite the file (very carefully) - set +e - fgrep -svx "$dir" "$ldsoconf" > "$ldsoconf.dpkg-tmp" - fgrep_status=$? - set -e - 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" ;; - esac - set +e - 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" ;; - esac - fi - fi -} - make_symlink_sane () { # syntax: make_symlink_sane symlink target # commit 84b7d5bf7a57cab80ba3696ce95028c2f67ba76d Author: Julien Cristau <jcris...@debian.org> Date: Sun Feb 1 01:31:31 2009 +0100 xsfbs: add a repack script for uscan This will automatically prune upstream tarballs diff --git a/debian/xsfbs/repack.sh b/debian/xsfbs/repack.sh new file mode 100644 index 0000000..5935cc9 --- /dev/null +++ b/debian/xsfbs/repack.sh @@ -0,0 +1,32 @@ +#!/bin/sh + +set -e + +if ! [ -d debian/prune ]; then + exit 0 +fi + +if [ "x$1" != x--upstream-version ]; then + exit 1 +fi + +version="$2" +filename="$3" + +if [ -z "$version" ] || ! [ -f "$filename" ]; then + exit 1 +fi + +dir="$(pwd)" +tempdir="$(mktemp -d)" + +cd "$tempdir" +tar xf "$dir/$filename" +cat "$dir"/debian/prune/* | while read file; do rm -f */$file; done + +tar czf "$dir/$filename" * +cd "$dir" +rm -rf "$tempdir" +echo "Done pruning upstream tarball" + +exit 0 -- To UNSUBSCRIBE, email to debian-x-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org