efl/pkgbuild/PKGBUILD

105 lines
4.2 KiB
Bash

# Maintainer: Enlightenment Developers <enlightenment-devel@enlightenment.org>
pkgname=('efl' 'efl_doc')
[[ -d ../.git ]] && pkgname=('efl-git' 'efl_doc-git')
pkgver=1.17.99.46477.95808a2
pkgrel=1
pkgdesc="Enlightenment Foundation Libraries - GIT development snapshot"
arch=('i686' 'x86_64' 'arm')
url="http://www.enlightenment.org"
license=('BSD' 'LGPL2.1' 'GPL2' 'custom')
depends=('bullet' 'libpng' 'libjpeg-turbo'
'gstreamer' 'gst-plugins-base-libs' 'gst-plugins-base'
'gst-plugins-good' 'gst-plugins-bad'
'zlib' 'luajit' 'libtiff' 'openssl' 'util-linux' 'curl' 'dbus'
'glibc' 'fontconfig' 'freetype2' 'fribidi' 'libpulse'
'libsndfile' 'systemd' 'libx11' 'libxau' 'libxcomposite'
'libxdamage' 'libxdmcp' 'libxext' 'libxfixes' 'libxinerama'
'libxi' 'libxrandr' 'libxrender' 'libxss' 'libxtst'
'libxcursor' 'libxp' 'libgl' 'giflib' 'libwebp' 'harfbuzz'
'wayland' 'avahi' 'scim' 'libdrm')
[[ ! $(pacman -T "openjpeg") ]] && depends+=('openjpeg') #jpeg2k loader is autodetected at build time
makedepends=('doxygen' 'check')
[[ -d ../.git ]] && makedepends+=('git')
options=('debug')
install=efl.install
pkgver() {
cd "../.."
if [[ -d .git ]]; then
local efl_version=$(grep -m 1 EFL_VERSION configure.ac | grep -o "[[:digit:]]*" | tr '\n' '.')
efl_version=$(awk -F , -v efl_version=${efl_version%.} '/^AC_INIT/ {gsub(/efl_version/, efl_version); gsub(/[\[\] -]/, ""); print $2}' configure.ac)
printf "$efl_version.$(git rev-list --count HEAD).$(git rev-parse --short HEAD)"
else
./configure --version | awk '/^efl/ {gsub("-", ""); print $NF}'
fi
}
build() {
cd "../.."
export CFLAGS="$CFLAGS -fvisibility=hidden -fomit-frame-pointer"
export CXXFLAGS="$CXXFLAGS -fvisibility=hidden -fomit-frame-pointer"
[[ -e Makefile ]] && make clean distclean
[[ -e autogen.sh ]] && _configure=autogen.sh || _configure=configure
./$_configure --prefix=/usr \
--disable-static --disable-tslib --enable-fb \
--enable-xinput22 --enable-multisense --enable-systemd \
--enable-image-loader-webp --enable-harfbuzz \
--enable-wayland --enable-drm \
--enable-scim
make
make -j1 doc
}
#check() {
# cd "../.."
# make -k check
#}
package_efl() {
provides+=("ecore=$pkgver" "eldbus=$pkgver" "edje=$pkgver"
"eet=$pkgver" "eeze=$pkgver" "efreet=$pkgver"
"eina=$pkgver" "eio=$pkgver" "embryo=$pkgver" "emotion=$pkgver"
"ephysics=$pkgver" "ethumb=$pkgver" "evas=$pkgver")
conflicts+=('ecore' 'edje' 'eet' 'eeze' 'efreet' 'eina' 'eio' 'embryo' 'emotion'
'ethumb' 'evas')
cd "../.."
make -j1 DESTDIR="$pkgdir/" install
install -Dm644 README "$pkgdir/usr/share/doc/${pkgname%-git}/README"
install -Dm644 NEWS "$pkgdir/usr/share/doc/${pkgname%-git}/NEWS"
install -Dm644 ChangeLog "$pkgdir/usr/share/doc/${pkgname%-git}/ChangeLog"
install -Dm644 AUTHORS "$pkgdir/usr/share/doc/${pkgname%-git}/AUTHORS"
install -Dm644 COMPLIANCE "$pkgdir/usr/share/doc/${pkgname%-git}/COMPLIANCE"
install -Dm644 licenses/COPYING.BSD "$pkgdir/usr/share/licenses/$pkgname/COPYING.BSD"
install -Dm644 licenses/COPYING.GPL "$pkgdir/usr/share/licenses/$pkgname/COPYING.GPL"
install -Dm644 licenses/COPYING.LGPL "$pkgdir/usr/share/licenses/$pkgname/COPYING.LGPL"
install -Dm644 licenses/COPYING.SMALL "$pkgdir/usr/share/licenses/$pkgname/COPYING.SMALL"
ln -s "../licenses/$pkgname/COPYING.BSD" "$pkgdir/usr/share/doc/${pkgname%-git}/COPYING.BSD"
ln -s "../licenses/$pkgname/COPYING.GPL" "$pkgdir/usr/share/doc/${pkgname%-git}/COPYING.GPL"
ln -s "../licenses/$pkgname/COPYING.LGPL" "$pkgdir/usr/share/doc/${pkgname%-git}/COPYING.LGPL"
ln -s "../licenses/$pkgname/COPYING.SMALL" "$pkgdir/usr/share/doc/${pkgname%-git}/COPYING.SMALL"
}
package_efl-git() {
provides=("efl=$pkgver")
conflicts=('efl')
package_efl
}
package_efl_doc() {
pkgdesc="Documentation for the Enlightenment Foundation Libraries"
arch=('any')
unset license depends install
cd "../.."
mkdir -p "$pkgdir/usr/share/doc/${pkgname%-git}"
cp -a doc/html "$pkgdir/usr/share/doc/${pkgname%-git}/html"
cp -a doc/latex "$pkgdir/usr/share/doc/${pkgname%-git}/latex"
}
package_efl_doc-git() {
provides=("efl_doc=$pkgver")
conflicts=('efl_doc')
package_efl_doc
}