On Fri, Feb 28, 2014 at 9:04 AM, Pierre Neidhardt <[email protected]>wrote:
> 1. Packagers who want to test the package() function, i.e. to check the > content > of the pkg/ folder. > > 2. Developers who want to check how the packaged version of a program > looks, in > other words how the pkg/ folder looks. > > 3. For users of systems with no port tree, makepkg can ease package > creation. > However the resulting archive of the whole makepkg process is often > useless. > > For all situations, makepkg will usually be called several times. But no > archive > (the final package) is needed in any cases. The archive creation ends up > being a > waste of time and resource, especially for big applications and slow > machines. > > Signed-off-by: Pierre Neidhardt <[email protected]> > --- > Not looking at the code, outside of noting this uses a shortopt for a likely not-oft-used feature. So -1 for having '-a', although the idea behind the patch seems fine and accessing it via '--noarchive' seems friendly enough. > scripts/makepkg.sh.in | 18 +++++++++++++----- > 1 file changed, 13 insertions(+), 5 deletions(-) > > diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in > index b69c071..d84b635 100644 > --- a/scripts/makepkg.sh.in > +++ b/scripts/makepkg.sh.in > @@ -74,6 +74,7 @@ INFAKEROOT=0 > INSTALL=0 > LOGGING=0 > NEEDED=0 > +NOARCHIVE=0 > NOBUILD=0 > NODEPS=0 > NOEXTRACT=0 > @@ -1844,6 +1845,10 @@ write_pkginfo() { > } > > create_package() { > + if (( NOARCHIVE )); then > + return 1 > + fi > + > if [[ ! -d $pkgdir ]]; then > error "$(gettext "Missing %s directory.")" "\$pkgdir/" > plain "$(gettext "Aborting...")" > @@ -2488,6 +2493,7 @@ usage() { > printf -- "$(gettext "Usage: %s [options]")\n" "$0" > echo > printf -- "$(gettext "Options:")\n" > + printf -- "$(gettext " -a, --noarchive Do not create archive > from %s and do not install")\n" "\$pkgdir" > printf -- "$(gettext " -A, --ignorearch Ignore incomplete %s > field in %s")\n" "arch" "$BUILDSCRIPT" > printf -- "$(gettext " -c, --clean Clean up work files after > build")\n" > printf -- "$(gettext " -C, --cleanbuild Remove %s dir before > building the package")\n" "\$srcdir/" > @@ -2557,11 +2563,12 @@ fi > ARGLIST=("$@") > > # Parse Command Line Options. > -OPT_SHORT="AcCdefFghiLmop:rRsSV" > +OPT_SHORT="aAcCdefFghiLmop:rRsSV" > + > OPT_LONG=('allsource' 'asroot' 'check' 'clean' 'cleanbuild' 'config:' > 'force' 'geninteg' > - 'help' 'holdver' 'ignorearch' 'install' 'key:' 'log' 'nobuild' > 'nocolor' > - 'nocheck' 'nodeps' 'noextract' 'noprepare' 'nosign' 'pkg:' > 'repackage' 'rmdeps' > - 'sign' 'skipchecksums' 'skipinteg' 'skippgpcheck' 'source' > 'syncdeps' > + 'help' 'holdver' 'ignorearch' 'install' 'key:' 'log' > 'noarchive' 'nobuild' > + 'nocolor' 'nocheck' 'nodeps' 'noextract' 'noprepare' 'nosign' > 'pkg:' 'repackage' > + 'rmdeps' 'sign' 'skipchecksums' 'skipinteg' 'skippgpcheck' > 'source' 'syncdeps' > 'verifysource' 'version') > > # Pacman Options > @@ -2584,6 +2591,7 @@ while true; do > # Makepkg Options > --allsource) SOURCEONLY=2 ;; > --asroot) ASROOT=1 ;; > + -a|--noarchive) NOARCHIVE=1; INSTALL=0 ;; > -A|--ignorearch) IGNOREARCH=1 ;; > -c|--clean) CLEANUP=1 ;; > -C|--cleanbuild) CLEANBUILD=1 ;; > @@ -2595,7 +2603,7 @@ while true; do > -F) INFAKEROOT=1 ;; > -g|--geninteg) GENINTEG=1 ;; > --holdver) HOLDVER=1 ;; > - -i|--install) INSTALL=1 ;; > + -i|--install) INSTALL=1; NOARCHIVE=0 ;; > --key) shift; GPGKEY=$1 ;; > -L|--log) LOGGING=1 ;; > -m|--nocolor) USE_COLOR='n' ;; > -- > 1.9.0 > > >
