From: short <> Date: Mon, 18 Aug 2003 16:05:49 +0000 (+0000) Subject: +Debian .deb packaging. X-Git-Tag: lufs_0_9_6_captive1~21 X-Git-Url: http://git.jankratochvil.net/?p=macros.git;a=commitdiff_plain;h=d2a8675c8edfc62d3b4d237163f2406288425181;ds=sidebyside +Debian .deb packaging. --- diff --git a/AutoGen.pm b/AutoGen.pm index f2e6978..554310a 100644 --- a/AutoGen.pm +++ b/AutoGen.pm @@ -164,28 +164,35 @@ my(@files)=@_; _remove @files; } -# $args{ -# "sign"=>bool, -# }, -sub _rpmbuild +sub _prepdist { -my($class,%args)=@_; +my($class,$name)=@_; - my $name=$Options{"name"}; - _remove "nocheck",\1, - _rpmeval("_tmppath" )."/$name-*-root", - _rpmeval("_builddir")."/$name-*"; my($specsrc)=map((-e $_ ? $_ : "$name.spec.in"),"$name.spec.m4.in"); my $spec=_readfile $specsrc; $spec=~s/\\\n/ /gs; my $configure_args=($spec=~/^[%]configure\b[ \t]*(.*)$/m)[0]; $configure_args=~s/--disable-gtk-doc\b/--enable-gtk-doc/g; # optional; gtk-doc reqd for 'make dist' $class->run(%Options, - "ARGV"=>["--copy"], + "ARGV"=>[qw(--copy)], "configure_args"=>[split /\s+/,$configure_args], ); _remove "ChangeLog"; # force its rebuild by Makefile/rcs2log _system "make dist $name.spec"; +} + +# $args{ +# "sign"=>bool, +# }, +sub _rpmbuild +{ +my($class,%args)=@_; + + my $name=$Options{"name"}; + _remove "nocheck",\1, + _rpmeval("_tmppath" )."/$name-*-root", + _rpmeval("_builddir")."/$name-*"; + $class->_prepdist($name); _copy "$name-*.tar.gz",_rpmeval("_sourcedir"); _system(join(" ","rpmbuild", "-ba", @@ -197,7 +204,27 @@ my($class,%args)=@_; _system "make dist-tarZ" if $Options{"dist-tarZ"}; _move _rpmeval("_srcrpmdir")."/$name-*.src.rpm","."; _move _rpmeval("_rpmdir")."/"._rpmeval("_target_cpu")."/$name-*."._rpmeval("_target_cpu").".rpm","."; - _system "ls -l $name-*"; + _system "ls -l $name-*"; + exit 0; # should never return +} + +# $args{ +# "sign"=>bool, +# }, +sub _debbuild +{ +my($class,%args)=@_; + + my $name=$Options{"name"}; + $class->_prepdist($name); + _system "tar xzf $name-*.tar.gz"; + _remove "$name-*.tar.gz"; # permit "cd $name-*" below + _system(join(" ","cd $name-*;dpkg-buildpackage", + "-rfakeroot", + ($args{"sign"} ? () : ("-us","-uc")), + )); + _remove \1,"$name-*"; + _system "ls -l ${name}_*"; exit 0; # should never return } @@ -251,6 +278,8 @@ sub _cleanfiles ./ABOUT-NLS ./-[0-9]* ./-devel-[0-9]* ./.spec ./.m4 ./.spec.m4 + ./debian/tmp ./debian/ + ./_[0-9]* ./macros/macros.dep ./po/Makefile.in.in ./po/POTFILES* ./po/cat-id-tbl.c ./po/cat-id-tbl.tmp ./po/*.gmo ./po/*.mo ./po/stamp-cat-id ./po/.pot ./po/ChangeLog @@ -380,6 +409,8 @@ my($class,%options)=@_; print _help() and confess if !GetOptions( "rpm" ,sub { $class->_rpmbuild("sign"=>1); }, "rpmtest" ,sub { $class->_rpmbuild("sign"=>0); }, + "deb" ,sub { $class->_debbuild("sign"=>1); }, + "debtest" ,sub { $class->_debbuild("sign"=>0); }, "dist" ,\$Options{"ARGV_dist"}, "copy!" ,\$Options{"ARGV_copy"}, "fullclean",\$Options{"ARGV_fullclean"},