makepkg-template man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]

MAKEPKG-TEMPLATE(1)		 Pacman Manual		   MAKEPKG-TEMPLATE(1)

NAME
       makepkg-template - package build templating utility

SYNOPSIS
       makepkg-template [options]

DESCRIPTION
       makepkg-template is a script to ease the work of maintaining multiple
       similar PKGBUILDs. It allows you to move most of the code from the
       PKGBUILD into a template file and uses markers to allow in-place
       updating of existing PKGBUILDs if the template has been changed.

       Template files can contain any code allowed in a PKGBUILD. You can
       think of them like external files included with "." or "source", but
       they will be inlined into the PKGBUILD by makepkg-template so you do
       not depend on the template file when building the package.

       Markers are bash comments in the form of:

	   # template start; key=value; key2=value2; ...

       and

	   # template end;

       Currently used keys are: name (mandatory) and version. Template names
       are limited to alphanumerics, "@", "+", ".", "-", and "_". Versions are
       limited to numbers and ".".

       For initial creation there is a one line short cut which does not need
       an end marker:

	   # template input; key=value;

       Using this short-cut will result in makepkg-template replacing it with
       start and end markers and the template code on the first run.

       Template files should be stored in one directory and filenames should
       be "$template_name-$version.template" with a symlink
       "$template_name.template" pointing to the most recent template. If the
       version is not set in the marker, makepkg-template will automatically
       use the most recent version of the template, otherwise the specified
       version will be used. This allows for easier verification of untrusted
       PKGBUILDs if the template is trusted. You verify the non-template code
       and then use a command similar to this:

	   diff -u <(makepkg-template -o -) PKGBUILD

       Template files may also contain markers leading to nested templates in
       the resulting PKGBUILD. If you use markers in a template, please set
       the version you used/tested with in the start/input marker so other
       people can properly recreate from templates.

OPTIONS
       -p, --input <build script>
	   Read the package script build script instead of the default.

       -o, --output <build script>
	   Write the updated file to build script instead of overwriting the
	   input file.

       -n, --newest
	   Always use the newest available template file.

       --template-dir <dir>
	   Change the dir where we are looking for template files.

EXAMPLE PKGBUILD
	   pkgname=perl-config-simple
	   pkgver=4.58
	   pkgrel=1
	   pkgdesc="simple configuration file class"
	   arch=('any')
	   license=('PerlArtistic' 'GPL')
	   depends=('perl')
	   source=("http://search.cpan.org/CPAN/authors/id/S/SH/SHERZODR/Config-Simple-${pkgver}.tar.gz")
	   md5sums=('f014aec54f0a1e2e880d317180fce502')
	   _distname="Config-Simple"

	   # template start; name=perl-module; version=1.0;
	   _distdir="${_distname}-${pkgver}"
	   url="https://metacpan.org/release/${_distname}"
	   options+=('!emptydirs')

	   build() {
		   cd "$srcdir/$_distdir"
		   perl Makefile.PL INSTALLDIRS=vendor
		   make
	   }

	   check() {
		   cd "$srcdir/$_distdir"
		   make test
	   }

	   package() {
		   cd "$srcdir/$_distdir"
		   make DESTDIR="$pkgdir" install
	   }
	   # template end;

SEE ALSO
       makepkg(8), PKGBUILD(5)

       See the pacman website at https://www.archlinux.org/pacman/ for current
       information on pacman and its related tools.

BUGS
       Bugs? You must be kidding; there are no bugs in this software. But if
       we happen to be wrong, send us an email with as much detail as possible
       to pacman-dev@archlinux.org.

AUTHORS
       Current maintainers:

       ·   Allan McRae <allan@archlinux.org>

       ·   Andrew Gregory <andrew.gregory.8@gmail.com>

       ·   Dan McGee <dan@archlinux.org>

       ·   Dave Reisner <dreisner@archlinux.org>

       Past major contributors:

       ·   Judd Vinet <jvinet@zeroflux.org>

       ·   Aurelien Foret <aurelien@archlinux.org>

       ·   Aaron Griffin <aaron@archlinux.org>

       ·   Xavier Chantry <shiningxc@gmail.com>

       ·   Nagy Gabor <ngaba@bibl.u-szeged.hu>

       For additional contributors, use git shortlog -s on the pacman.git
       repository.

Pacman 4.2.0			  2014-12-19		   MAKEPKG-TEMPLATE(1)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net