]> git.donarmstrong.com Git - debhelper.git/blobdiff - debian/rules
r395: * dh_makeshlibs: corrected the evil db3-regex so it doesn't misfire on
[debhelper.git] / debian / rules
index 09a09a1eb4552598fb1c30542e5b8714a037eb1b..08a474e2b46f4c9ba1eee63cb91fa6807a2f0588 100755 (executable)
@@ -1,53 +1,59 @@
 #!/usr/bin/make -f
 # Note that I have to refer to debhelper programs with ./, to make sure
-# I run the most current ones. That's also why there is a symlink to the 
-# current Dh_lib.pm and the current Dh_getopt.pm in this debian/ directory.
+# I run the most current ones.
 #
 # This is _not_ a good example of a debhelper rules file, but I didn't need
-# to tell you that; just see the 25 lines of inlined perl below.. See
-# examples/ for some good examples.
+# to tell you that; just see the 25 lines of inlined perl below.. 
+# See examples/ for some good examples.
+
+# Ensure that builds are self-hosting, which means I have to use the .pm
+# files in this package, not any that may be on the system.
+export PERL5LIB=.
 
 # If any automatic script generation is done in building this package, 
 # be sure to use the new templates from this package.
 export DH_AUTOSCRIPTDIR=autoscripts
 
 # Living dangerously :-)
-export DH_COMPAT=2
+export DH_COMPAT=3
 
 # Figure out the current debhelper version.
 VERSION=$(shell expr "`dpkg-parsechangelog 2>/dev/null |grep Version:`" : '.*Version: \(.*\)')
 
-export DH_VERBOSE=1
+# Debug
+#export DH_VERBOSE=1
 
-build: link-stamp
-       # Run regression tests.
-       $(MAKE) test
+build: test
+# Nothing to do.       
 
-clean: link-stamp
+clean:
        ./dh_testdir
        ./dh_testroot
-       ./dh_clean link-stamp
+       ./dh_clean
 
-test: link-stamp
+test:
        ./dh_clean
        DH_VERSION=10 perl -MTest::Harness -e 'runtests grep { ! /CVS/ } @ARGV' t/*
        ./dh_clean
 
 # Build architecture-dependent files here.
-binary-arch: link-stamp build
+binary-arch: build
 # Nothing to do.
 
 # Build architecture-independent files here.
-binary-indep: link-stamp build
+binary-indep: build
        ./dh_testdir
        ./dh_testroot
        ./dh_clean -k
-       ./dh_installdirs usr/bin usr/share/debhelper
+       ./dh_installdirs usr/bin usr/share/debhelper \
+               usr/lib/perl5/Debian/Debhelper
 
-       echo -e "package Dh_Version;\n\$$version='$(VERSION)';" > debian/debhelper/usr/share/debhelper/Dh_Version.pm
+       echo -e "package Debian::Debhelper::Dh_Version;\n\$$version='$(VERSION)';" > \
+               debian/debhelper/usr/lib/perl5/Debian/Debhelper/Dh_Version.pm
        find . -perm +111 -maxdepth 1 -type f -not -name "*.pl" \
                -exec install -p {} debian/debhelper/usr/bin \;
-       cp -a Dh_*.pm debian/debhelper/usr/share/debhelper
+       cp -a Debian/Debhelper/*.pm \
+               debian/debhelper/usr/lib/perl5/Debian/Debhelper/
        cp -a autoscripts debian/debhelper/usr/share/debhelper
        rm -rf debian/debhelper/usr/share/debhelper/autoscripts/CVS
 
@@ -57,7 +63,7 @@ binary-indep: link-stamp build
        ./dh_installmanpages
        ./dh_installinfo
        # Fix up all man pages, filling in the modification time for them.
-       # Note this runs beofre the command below so debhelper.1 gets the right
+       # Note this runs before the command below so debhelper.1 gets the right
        # date on it.
        perl -mPOSIX -e ' \
                foreach $$f (@ARGV) { \
@@ -70,18 +76,18 @@ binary-indep: link-stamp build
                open (OUT,">$$f"); \
                print OUT @lines; \
                close OUT; \
-       }' debian/debhelper/usr/man/man1/*.1
+       }' debian/debhelper/usr/share/man/man1/*.1
        # Fix up the debhelper.1 man page, substituting in a list of all
-       # debhelper commands. eek!
+       # debhelper commands. Eek!
        perl -ne ' \
                s/\\- /(1)\n/; \
                $$collect.=".TP\n.BR $$_" if $$. eq 3 && /^dh_/; \
                close(ARGV) if eof; \
                END { \
-                       open(I,"debian/debhelper/usr/man/man1/debhelper.1"); \
+                       open(I,"debian/debhelper/usr/share/man/man1/debhelper.1"); \
                        @lines=<I>; \
                        close I; \
-                       open(O,">debian/debhelper/usr/man/man1/debhelper.1"); \
+                       open(O,">debian/debhelper/usr/share/man/man1/debhelper.1"); \
                        foreach (@lines) { \
                                s/#LIST#/$$collect/; \
                                print O; \
@@ -89,7 +95,6 @@ binary-indep: link-stamp build
                        close O; \
                }' *.1
        ./dh_installchangelogs
-#      ./dh_movefiles
        ./dh_link
        ./dh_compress
        ./dh_fixperms
@@ -99,43 +104,12 @@ binary-indep: link-stamp build
        ./dh_md5sums
        ./dh_builddeb
 
-# Install in the proper location on my ftp server and web server. Not intended
-# for use by anyone except the author.
-OLD_VER=$(shell perl -e '<>;<>;while(<>){last if /^ --/};<>;$$_=<>;print m/\((.*?)\)/'<debian/changelog)
-dist: commit link-stamp
-       dpkg-buildpackage -rfakeroot -tc
-       if [ `hostname` = 'kite' ] ; then \
-               cp ../debhelper_$(VERSION).tar.gz ../../public; \
-               rm /home/ftp/pub/code/debhelper/* || true; \
-               cp debian/changelog /home/pub/programs/debhelper/CHANGES; \
-               echo $(VERSION) > /home/pub/programs/debhelper/LATEST-VERSION-IS; \
-               cd ..; rm -rf debhelper-$(OLD_VER); \
-               [ -f ../public/debhelper_$(OLD_VER).tar.gz ] && \
-               tar zxf ../public/debhelper_$(OLD_VER).tar.gz || \
-               tar zxf ../outdated/debhelper_$(OLD_VER).tar.gz; \
-               diff -r -u --new-file debhelper-$(OLD_VER) debhelper-$(VERSION) > \
-                       /home/ftp/pub/code/debhelper/diffs/debhelper-$(VERSION).diff; \
-               gzip -9f /home/ftp/pub/code/debhelper/diffs/debhelper-$(VERSION).diff; \
-               cd /tmp; rm -f debhelper-$(OLD-VER); \
-        fi
-
-link-stamp:
-       sh -e debian/fixlinks
-       touch link-stamp
-
-# This is for local use - it tags the current code with the debian version
-# number, then commits the current code using the contents of the changelog
-# as the cvs changelog, then increments the version number
-commit:
-       cvs -Q commit -m "`dpkg-parsechangelog | grep '^  '`"
-       cvs -Q tag rel-$(shell dpkg-parsechangelog | grep ^Version: \
-               |cut -d " " -f 2 |tr '.' '-')
-       
-new:
-       # Update w/o editing.
-       EDITOR=true dch -i 2>/dev/null
-       # Dch has to change the bloody directory name. Feh.
-       mv . ../debhelper
+# Update the debhelper web page. Not intended for use by anyone except the
+# author.
+installhook:
+       cp debian/changelog /home/pub/programs/debhelper/CHANGES
+       echo -n $(VERSION) > /home/pub/programs/debhelper/LATEST-VERSION-IS
 
 binary: binary-indep binary-arch
 .PHONY: build clean binary-indep binary-arch binary dist
+