Signed-off-by: Liu Shaofei liushaofei5@huawei.com --- doc/how-to-create-a-PKGBUILD.md | 162 ++++++++++++++++---------------- 1 file changed, 83 insertions(+), 79 deletions(-)
diff --git a/doc/how-to-create-a-PKGBUILD.md b/doc/how-to-create-a-PKGBUILD.md index 01e1084..d94b113 100644 --- a/doc/how-to-create-a-PKGBUILD.md +++ b/doc/how-to-create-a-PKGBUILD.md @@ -1,79 +1,83 @@ -# ������������PKGBUILD - -## PKGBUILD������������ - - PKGBUILD���������shell���������makepkg������PKGBUILD������������������������������������������������������������������������������ - -## PKGBUILD��������������� - - PKGBUILD��������������������������������������� - - 1������������������ - - - pkgname: ���������������������������������������; - - pkgver: ��������������������������������������������� - - pkgrel: ��������������������������������������������� - - arch: ������������������������������������������������������ - - depends: ��������������������������������������������������������������� - - makedepends: ��������������������������������������������������������� - - source: ���������������������������������������MD5��������������������������������������������������������������� - - 2������������������ - - - package������ - package��������������������������������������������������������������������������������������������������� - - prepare������ - ���������������prepare������������������������������������������������������������ - - build������ - ���������������build������������������������/������������������ - - check������ - ���������������check������������������������������������������������ - - ���������srcdir ��� pkgdir - - - srcdir: ������������������������������������������������������������srcdir��������������������� - - pkgdir: ������������������������������������package������������������ - -## ������������PKGBUILD��� - - 1������������PKGBUILD������������������������PKGBUILD������������ - - `touch PKGBUILD` - - 2������������vim������PKGBUILD���������PKGBUILD��������������� - - ������������������������PKGBUILD��������� - - pkgname=zstd - pkgver=1.4.4 - pkgrel=2 - arch=('i686' 'x86_64' 'aarch64') - url='https://github.com/facebook/zstd' - license=('custom:BSD3' 'GPL2') - depends=('xz' 'zlib' 'lz4') - makedepends=('git') - source=('git://github.com/facebook/zstd.git#branch=dev') - md5sums=('SKIP') - - pkgver() { - cd "$srcdir/$pkgname" - git describe --long --tags | sed 's/([^-]*-g)/r\1/;s/-/./g;s/^v//g' - } - - build() { - cd "$srcdir/$pkgname" - make - make -C contrib/pzstd - } - - package() { - cd "$srcdir/$pkgname" - make PREFIX="/usr" DESTDIR="$pkgdir/" install - install -D -m755 contrib/pzstd/pzstd "$pkgdir/usr/bin/pzstd" - install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" - } - -## ������ - - https://www.archlinux.org/pacman/PKGBUILD.5.html - https://git.archlinux.org/pacman.git/plain/proto/PKGBUILD.proto +# PKGBUILD������������ +----------------- + +PKGBUILD���������shell���������makepkg������PKGBUILD������������������������������������������������������������������������������ + +# PKGBUILD��������������� +------------------- + +PKGBUILD��������������������������������������� + +## ������������ + +- pkgname: ���������������������������������������; +- pkgver: ��������������������������������������������� +- pkgrel: ��������������������������������������������� +- arch: ������������������������������������������������������ +- depends: ��������������������������������������������������������������� +- makedepends: ��������������������������������������������������������� +- source: ���������������������������������������MD5��������������������������������������������������������������� + +## ������������ + +- package������ + package��������������������������������������������������������������������������������������������������� +- prepare������ + ���������������prepare������������������������������������������������������������ +- build������ + ���������������build������������������������/������������������ +- check������ + ���������������check������������������������������������������������ + +> ��������� +> srcdir ��� pkgdir +> - srcdir: ������������������������������������������������������������srcdir��������������������� +> - pkgdir: ������������������������������������package������������������ + +# ������������PKGBUILD��� +------------------- + +## ������PKGBUILD������������������������PKGBUILD������������ + +`touch PKGBUILD` + +## ������vim������PKGBUILD���������PKGBUILD��������������� + +������������������������PKGBUILD��������� + +```shell +pkgname=zstd +pkgver=1.4.4 +pkgrel=2 +arch=('i686' 'x86_64' 'aarch64') +url='https://github.com/facebook/zstd' +license=('custom:BSD3' 'GPL2') +depends=('xz' 'zlib' 'lz4') +makedepends=('git') +source=('git://github.com/facebook/zstd.git#branch=dev') +md5sums=('SKIP') + +pkgver() { + cd "$srcdir/$pkgname" + git describe --long --tags | sed 's/([^-]*-g)/r\1/;s/-/./g;s/^v//g' +} + +build() { + cd "$srcdir/$pkgname" + make + make -C contrib/pzstd +} + +package() { + cd "$srcdir/$pkgname" + make PREFIX="/usr" DESTDIR="$pkgdir/" install + install -D -m755 contrib/pzstd/pzstd "$pkgdir/usr/bin/pzstd" + install -D -m644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} +``` + +# ������ +------ + +- [PKGBUILD(5) Manual Page](https://www.archlinux.org/pacman/PKGBUILD.5.html) +- [pkgbuild demo������](https://git.archlinux.org/pacman.git/plain/proto/PKGBUILD.proto)