Later some compiled programs (like svn-fe) can join them.

The chosen filenames are somewhat a little strange --- to avoid
namespace conflicts if /usr/lib/git/contrib is placed on the $PATH,
many of the commands have "git-" prepended to their name.  On the
plus side, most of them can benefit from the usual niceties of the git
wrapper (e.g., "git --paginate foo") this way.

Signed-off-by: Jonathan Nieder <jrnie...@gmail.com>
---
 debian/changelog |   16 +++++++++++
 debian/control   |    4 ++-
 debian/rules     |   80 ++++++++++++++++++++++++++++++++++++++++++++++++++---
 3 files changed, 94 insertions(+), 6 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 056c38c..f95c1ec 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,19 @@
+git (1:1.7.5.1-2~exp0.1) experimental; urgency=low
+
+  * debian/rules: package git: install tools and hooks that are
+    usable from /usr/share/doc/git/contrib to /usr/lib/git/contrib
+    (thx to Peter Eisentraut and David Barr for encouragement;
+    closes: #625753).  Put symlinks in place so old paths can still
+    work.
+  * debian/rules: package git: install a symlink
+    /usr/share/git-core/contrib -> /usr/lib/git/contrib to allow
+    scripts to use paths that match other distros.
+  * debian/control: package git: Suggests: packages used by programs
+    in contrib/ (libgtk2-perl, python, cpio, python-gtk2,
+    python-pango, python-gobject, python-cairo).
+
+ -- Jonathan Nieder <jrnie...@gmail.com>  Fri, 06 May 2011 23:30:29 -0500
+
 git (1:1.7.5.1-1) unstable; urgency=low
 
   * new upstream point release.
diff --git a/debian/control b/debian/control
index bda83cc..f1a8381 100644
--- a/debian/control
+++ b/debian/control
@@ -21,7 +21,9 @@ Depends: ${shlibs:Depends}, perl-modules, liberror-perl,
  git-man (>> ${source:Upstream-Version}), git-man (<< 
${source:Upstream-Version}-.),
  libc6.1 (>= 2.10.2-6) [ia64]
 Recommends: patch, less, rsync, ssh-client
-Suggests: git-doc, git-el, git-arch, git-cvs, git-svn, git-email, 
git-daemon-run, git-gui, gitk, gitweb
+Suggests: git-doc, git-el, git-arch, git-cvs, git-svn, git-email, 
git-daemon-run, git-gui, gitk, gitweb,
+ libgtk2-perl, python, cpio,
+ python-gtk2, python-pango, python-gobject, python-cairo
 Replaces: gitweb (<< 1:1.7.4~rc1),
  cogito (<< 0.16rc2-0), git-core (<< 1:1.7.0.4-1.)
 Breaks: gitweb (<< 1:1.7.4~rc1),
diff --git a/debian/rules b/debian/rules
index 4585300..5330840 100755
--- a/debian/rules
+++ b/debian/rules
@@ -94,11 +94,6 @@ install-arch: deb-checkdir deb-checkuid build-arch-stamp
        done
        rm -f '$(GIT)'/usr/bin/git-cvsserver
        rm -f '$(GIT)'/usr/bin/gitk
-       for i in '$(GIT)'/usr/bin/* '$(GIT)'/usr/lib/git-core/*; do \
-         test "`head -c2 $$i`" = '#!' || \
-         test "`head -c2 $$i`" = '# ' || \
-         $(STRIP) -R .comment -R .note $$i; \
-       done
        # don't include git-gui's lib
        rm -rf '$(GIT)'/usr/share/git-gui/
        # don't include gitk's lib
@@ -118,6 +113,81 @@ install-arch: deb-checkdir deb-checkuid build-arch-stamp
        find '$(GIT)'/usr/share/doc/git/contrib -type f | xargs chmod 0644
        find '$(GIT)'/usr/share/doc/git/contrib -type d | xargs chmod 0755
        find '$(GIT)'/usr/share/doc/git/ -name .gitignore | xargs rm -f
+       install -d -m0755 '$(GIT)'/usr/lib/git/contrib
+       ln -s ../git-core '$(GIT)'/usr/lib/git/core
+       set -e; \
+       contribitem_toplevel () { \
+         install -m 0755 '$(GIT)'/usr/share/doc/git/contrib/$$1 \
+           '$(GIT)'/usr/lib/git/contrib/$$2; \
+         ln -sf ../../../../lib/git/contrib/$$2 \
+           '$(GIT)'/usr/share/doc/git/contrib/$$1; \
+       }; \
+       contribitem_toplevel git-resurrect.sh git-resurrect; \
+       contribitem_toplevel remotes2config.sh git-remotes2config; \
+       contribitem_toplevel rerere-train.sh git-rerere-train
+       set -e; \
+       contribitem () { \
+         install -m 0755 '$(GIT)'/usr/share/doc/git/contrib/$$1 \
+           '$(GIT)'/usr/lib/git/contrib/$$2; \
+         ln -sf ../../../../../lib/git/contrib/$$2 \
+           '$(GIT)'/usr/share/doc/git/contrib/$$1; \
+       }; \
+       contribitem blameview/blameview.perl git-blameview; \
+       contribitem ciabot/ciabot.py git-ciabot; \
+       contribitem examples/git-checkout.sh git-checkout; \
+       contribitem examples/git-clean.sh git-clean; \
+       contribitem examples/git-clone.sh git-clone; \
+       contribitem examples/git-commit.sh git-commit; \
+       contribitem examples/git-gc.sh git-gc; \
+       contribitem examples/git-ls-remote.sh git-ls-remote; \
+       contribitem examples/git-merge-ours.sh git-merge-ours; \
+       contribitem examples/git-merge.sh git-merge; \
+       contribitem examples/git-notes.sh git-notes; \
+       contribitem examples/git-remote.perl git-remote; \
+       contribitem examples/git-rerere.perl git-rerere; \
+       contribitem examples/git-reset.sh git-reset; \
+       contribitem examples/git-resolve.sh git-resolve; \
+       contribitem examples/git-revert.sh git-revert; \
+       contribitem examples/git-svnimport.perl git-svnimport; \
+       contribitem examples/git-tag.sh git-tag; \
+       contribitem examples/git-verify-tag.sh git-verify-tag; \
+       contribitem fast-import/git-p4 git-p4; \
+       contribitem fast-import/import-directories.perl \
+         git-import-directories; \
+       contribitem fast-import/import-tars.perl git-import-tars; \
+       contribitem fast-import/import-zips.py git-import-zips; \
+       contribitem gitview/gitview gitview; \
+       contribitem hg-to-git/hg-to-git.py git-contrib-hg-to-git; \
+       contribitem p4import/git-p4import.py git-p4import; \
+       contribitem stats/git-common-hash git-common-hash; \
+       contribitem stats/mailmap.pl git-find-duplicate-email-addresses; \
+       contribitem stats/packinfo.pl git-packinfo; \
+       contribitem thunderbird-patch-inline/appp.sh git-append-patch; \
+       contribitem workdir/git-new-workdir git-new-workdir
+       install -d -m0755 '$(GIT)'/usr/lib/git/contrib/hooks
+       set -e; \
+       contribhook () { \
+         install -m 0755 '$(GIT)'/usr/share/doc/git/contrib/hooks/$$1 \
+           '$(GIT)'/usr/lib/git/contrib/hooks/$$2; \
+         ln -sf ../../../../../../lib/git/contrib/$$2 \
+           '$(GIT)'/usr/share/doc/git/contrib/hooks/$$1; \
+       }; \
+       contribhook post-receive-email post-receive-email; \
+       contribhook pre-auto-gc-battery pre-auto-gc-battery; \
+       contribhook setgitperms.perl setgitperms; \
+       contribhook update-paranoid update-paranoid
+       ln -s ../../lib/git/contrib '$(GIT)'/usr/share/git-core/contrib
+       # build system related stuff (Visual Studio support, docbook patch)
+       rm -rf '$(GIT)'/usr/share/doc/git/contrib/buildsystems
+       rm -rf '$(GIT)'/usr/share/doc/git/contrib/patches
+       # Windows-specific stuff
+       rm -f '$(GIT)'/usr/share/doc/git/contrib/fast-import/git-p4.bat
+       # strip binaries
+       for i in '$(GIT)'/usr/bin/* '$(GIT)'/usr/lib/git-core/*; do \
+         test "`head -c2 $$i`" = '#!' || \
+         test "`head -c2 $$i`" = '# ' || \
+         $(STRIP) -R .comment -R .note $$i; \
+       done
        # upstream changelog
        test -r changelog || ln -s debian/changelog.upstream changelog
 
-- 
1.7.5.1.668.gce6e7.dirty




-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to