Signature checking when using makepkg does NOT use pacman's keyring, but
the build users keyring!
If a signature file (.sig or .asc) is part of the source array, makepkg
automatically attempts to verify it.
nach dem buildvorgang ggf. makepkg --clean aufrufen
PKGBUILD für Qt
Damit qmake die gesetzten CFLAGS und CXXFLAGS und so honoriert, muss das da
ins PKGBUILD:
PKGBUILD
...
build() {
cd "$srcdir/$_pkgname-$pkgver-src"
qmake-qt4 "$srcdir/$_pkgname-$pkgver-src/$_pkgname.pro" \
PREFIX=/usr \
QMAKE_CFLAGS="${CFLAGS}" \
QMAKE_CXXFLAGS="${CXXFLAGS}"
make
}
...
für das install directory MIT QMAKE:
package() {
cd "$srcdir/$_pkgname-$pkgver-src"
make INSTALL_ROOT="$pkgdir" install
}
Paketversion aus dem Source Git Repo heraus generieren
Wenn die Quelle des Pakets ein Git Repo ist, generiere ich die Paketversion
aus den Angaben des Git Repos. Bei meinen Projekten ist es inzwischen ohnehin
so, dass die Versionsnummer der Software ebenfalls aus Git heraus generiert
wird.
PKGBUILD
pkgver() {
cd "${srcdir}/${pkgname}"
( set -o pipefail
git describe --long 2>/dev/null | sed 's/-/./g;s/v//g' ||
printf "v0r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
)
}
Wenn man der Zahl der commits ein "r" voranstellen möchte (wie in
ettlichen Projekten üblich), verwendet man dies:
PKGBUILD
pkgver() {
cd "${srcdir}/${pkgname}"
( set -o pipefail
git describe --long 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/v//g' ||
printf "v0r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
)
}