efl/pkgbuild/PKGBUILD

105 lines
4.2 KiB
Bash
Raw Normal View History

# Maintainer: Enlightenment Developers <enlightenment-devel@enlightenment.org>
pkgname=('efl' 'efl_doc')
[[ -d ../.git ]] && pkgname=('efl-git' 'efl_doc-git')
pkgver=1.8.99.24136.8c094d1
pkgrel=1
pkgdesc="Enlightenment Foundation Libraries - GIT development snapshot"
arch=('i686' 'x86_64' 'arm')
url="http://www.enlightenment.org"
PKGBUILD cleanup Summary: Some of the files in the "efl" package (emotion engine and others IIRC) were linked to libs in the efl_x11 package. This created a circular dep requiring both to be installed. Should just be one package in that case. LGPL2 is actually LGPL2.1. Added 'custom' to license array to cover COPYING.SMALL. There is no 'dbus-core' package, it's part of 'dbus' now. Doesn't build without 'check' installed. provides_efl doesn't work, changed to just provides. Got rid of tabs in depends and provides, replaced with spaces. No need to add default 'strip', 'docs', and 'zipman' options, if someone want to override them, there's no reason to stop them. buildflags doesn't work as a variable, added them to CFLAGS and CXXFLAGS manually. -O2 and -g are already included by default, if someone wants to change them on their system, there's no reason to override them. Add install script to update mime database. Change shebang on eina-bench-cmp so it runs with python2, python is 3 on Arch. make dist doesn't tar Makefile, so we need to check that it exists before running "make clean distclean". Otherwise the build just fails. Building of docs should be done in the build function. Quoted all uses of $pkgdir and $srcdir Each package function gets it's own $pkgdir, so rm-ing them at the beginning of the function isn't needed. Use cp -a instead of cp -r to make sure permissions are preserved. Set correct pkgdesc, arch, license, depends, provides, and install for the doc package. Reviewers: raster Reviewed By: raster CC: cedric Differential Revision: https://phab.enlightenment.org/D240
2013-10-26 07:56:25 -07:00
license=('BSD' 'LGPL2.1' 'GPL2' 'custom')
2013-12-22 20:00:10 -08:00
depends=('bullet' 'libpng' 'libjpeg-turbo'
'gstreamer' 'gst-plugins-base-libs' 'gst-plugins-base'
'gst-plugins-good' 'gst-plugins-bad'
2014-01-17 16:25:43 -08:00
'zlib' 'luajit' 'libtiff' 'openssl' 'util-linux' 'curl' 'dbus'
PKGBUILD cleanup Summary: Some of the files in the "efl" package (emotion engine and others IIRC) were linked to libs in the efl_x11 package. This created a circular dep requiring both to be installed. Should just be one package in that case. LGPL2 is actually LGPL2.1. Added 'custom' to license array to cover COPYING.SMALL. There is no 'dbus-core' package, it's part of 'dbus' now. Doesn't build without 'check' installed. provides_efl doesn't work, changed to just provides. Got rid of tabs in depends and provides, replaced with spaces. No need to add default 'strip', 'docs', and 'zipman' options, if someone want to override them, there's no reason to stop them. buildflags doesn't work as a variable, added them to CFLAGS and CXXFLAGS manually. -O2 and -g are already included by default, if someone wants to change them on their system, there's no reason to override them. Add install script to update mime database. Change shebang on eina-bench-cmp so it runs with python2, python is 3 on Arch. make dist doesn't tar Makefile, so we need to check that it exists before running "make clean distclean". Otherwise the build just fails. Building of docs should be done in the build function. Quoted all uses of $pkgdir and $srcdir Each package function gets it's own $pkgdir, so rm-ing them at the beginning of the function isn't needed. Use cp -a instead of cp -r to make sure permissions are preserved. Set correct pkgdesc, arch, license, depends, provides, and install for the doc package. Reviewers: raster Reviewed By: raster CC: cedric Differential Revision: https://phab.enlightenment.org/D240
2013-10-26 07:56:25 -07:00
'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')
[[ ! $(pacman -T "openjpeg") ]] && depends+=('openjpeg') #jpeg2k loader is autodetected at build time
makedepends=('doxygen' 'check')
[[ -d ../.git ]] && makedepends+=('git')
options=('debug')
PKGBUILD cleanup Summary: Some of the files in the "efl" package (emotion engine and others IIRC) were linked to libs in the efl_x11 package. This created a circular dep requiring both to be installed. Should just be one package in that case. LGPL2 is actually LGPL2.1. Added 'custom' to license array to cover COPYING.SMALL. There is no 'dbus-core' package, it's part of 'dbus' now. Doesn't build without 'check' installed. provides_efl doesn't work, changed to just provides. Got rid of tabs in depends and provides, replaced with spaces. No need to add default 'strip', 'docs', and 'zipman' options, if someone want to override them, there's no reason to stop them. buildflags doesn't work as a variable, added them to CFLAGS and CXXFLAGS manually. -O2 and -g are already included by default, if someone wants to change them on their system, there's no reason to override them. Add install script to update mime database. Change shebang on eina-bench-cmp so it runs with python2, python is 3 on Arch. make dist doesn't tar Makefile, so we need to check that it exists before running "make clean distclean". Otherwise the build just fails. Building of docs should be done in the build function. Quoted all uses of $pkgdir and $srcdir Each package function gets it's own $pkgdir, so rm-ing them at the beginning of the function isn't needed. Use cp -a instead of cp -r to make sure permissions are preserved. Set correct pkgdesc, arch, license, depends, provides, and install for the doc package. Reviewers: raster Reviewed By: raster CC: cedric Differential Revision: https://phab.enlightenment.org/D240
2013-10-26 07:56:25 -07:00
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
PKGBUILD cleanup Summary: Some of the files in the "efl" package (emotion engine and others IIRC) were linked to libs in the efl_x11 package. This created a circular dep requiring both to be installed. Should just be one package in that case. LGPL2 is actually LGPL2.1. Added 'custom' to license array to cover COPYING.SMALL. There is no 'dbus-core' package, it's part of 'dbus' now. Doesn't build without 'check' installed. provides_efl doesn't work, changed to just provides. Got rid of tabs in depends and provides, replaced with spaces. No need to add default 'strip', 'docs', and 'zipman' options, if someone want to override them, there's no reason to stop them. buildflags doesn't work as a variable, added them to CFLAGS and CXXFLAGS manually. -O2 and -g are already included by default, if someone wants to change them on their system, there's no reason to override them. Add install script to update mime database. Change shebang on eina-bench-cmp so it runs with python2, python is 3 on Arch. make dist doesn't tar Makefile, so we need to check that it exists before running "make clean distclean". Otherwise the build just fails. Building of docs should be done in the build function. Quoted all uses of $pkgdir and $srcdir Each package function gets it's own $pkgdir, so rm-ing them at the beginning of the function isn't needed. Use cp -a instead of cp -r to make sure permissions are preserved. Set correct pkgdesc, arch, license, depends, provides, and install for the doc package. Reviewers: raster Reviewed By: raster CC: cedric Differential Revision: https://phab.enlightenment.org/D240
2013-10-26 07:56:25 -07:00
}
build() {
cd "../.."
PKGBUILD cleanup Summary: Some of the files in the "efl" package (emotion engine and others IIRC) were linked to libs in the efl_x11 package. This created a circular dep requiring both to be installed. Should just be one package in that case. LGPL2 is actually LGPL2.1. Added 'custom' to license array to cover COPYING.SMALL. There is no 'dbus-core' package, it's part of 'dbus' now. Doesn't build without 'check' installed. provides_efl doesn't work, changed to just provides. Got rid of tabs in depends and provides, replaced with spaces. No need to add default 'strip', 'docs', and 'zipman' options, if someone want to override them, there's no reason to stop them. buildflags doesn't work as a variable, added them to CFLAGS and CXXFLAGS manually. -O2 and -g are already included by default, if someone wants to change them on their system, there's no reason to override them. Add install script to update mime database. Change shebang on eina-bench-cmp so it runs with python2, python is 3 on Arch. make dist doesn't tar Makefile, so we need to check that it exists before running "make clean distclean". Otherwise the build just fails. Building of docs should be done in the build function. Quoted all uses of $pkgdir and $srcdir Each package function gets it's own $pkgdir, so rm-ing them at the beginning of the function isn't needed. Use cp -a instead of cp -r to make sure permissions are preserved. Set correct pkgdesc, arch, license, depends, provides, and install for the doc package. Reviewers: raster Reviewed By: raster CC: cedric Differential Revision: https://phab.enlightenment.org/D240
2013-10-26 07:56:25 -07:00
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
PKGBUILD cleanup Summary: Some of the files in the "efl" package (emotion engine and others IIRC) were linked to libs in the efl_x11 package. This created a circular dep requiring both to be installed. Should just be one package in that case. LGPL2 is actually LGPL2.1. Added 'custom' to license array to cover COPYING.SMALL. There is no 'dbus-core' package, it's part of 'dbus' now. Doesn't build without 'check' installed. provides_efl doesn't work, changed to just provides. Got rid of tabs in depends and provides, replaced with spaces. No need to add default 'strip', 'docs', and 'zipman' options, if someone want to override them, there's no reason to stop them. buildflags doesn't work as a variable, added them to CFLAGS and CXXFLAGS manually. -O2 and -g are already included by default, if someone wants to change them on their system, there's no reason to override them. Add install script to update mime database. Change shebang on eina-bench-cmp so it runs with python2, python is 3 on Arch. make dist doesn't tar Makefile, so we need to check that it exists before running "make clean distclean". Otherwise the build just fails. Building of docs should be done in the build function. Quoted all uses of $pkgdir and $srcdir Each package function gets it's own $pkgdir, so rm-ing them at the beginning of the function isn't needed. Use cp -a instead of cp -r to make sure permissions are preserved. Set correct pkgdesc, arch, license, depends, provides, and install for the doc package. Reviewers: raster Reviewed By: raster CC: cedric Differential Revision: https://phab.enlightenment.org/D240
2013-10-26 07:56:25 -07:00
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"
PKGBUILD cleanup Summary: Some of the files in the "efl" package (emotion engine and others IIRC) were linked to libs in the efl_x11 package. This created a circular dep requiring both to be installed. Should just be one package in that case. LGPL2 is actually LGPL2.1. Added 'custom' to license array to cover COPYING.SMALL. There is no 'dbus-core' package, it's part of 'dbus' now. Doesn't build without 'check' installed. provides_efl doesn't work, changed to just provides. Got rid of tabs in depends and provides, replaced with spaces. No need to add default 'strip', 'docs', and 'zipman' options, if someone want to override them, there's no reason to stop them. buildflags doesn't work as a variable, added them to CFLAGS and CXXFLAGS manually. -O2 and -g are already included by default, if someone wants to change them on their system, there's no reason to override them. Add install script to update mime database. Change shebang on eina-bench-cmp so it runs with python2, python is 3 on Arch. make dist doesn't tar Makefile, so we need to check that it exists before running "make clean distclean". Otherwise the build just fails. Building of docs should be done in the build function. Quoted all uses of $pkgdir and $srcdir Each package function gets it's own $pkgdir, so rm-ing them at the beginning of the function isn't needed. Use cp -a instead of cp -r to make sure permissions are preserved. Set correct pkgdesc, arch, license, depends, provides, and install for the doc package. Reviewers: raster Reviewed By: raster CC: cedric Differential Revision: https://phab.enlightenment.org/D240
2013-10-26 07:56:25 -07:00
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() {
PKGBUILD cleanup Summary: Some of the files in the "efl" package (emotion engine and others IIRC) were linked to libs in the efl_x11 package. This created a circular dep requiring both to be installed. Should just be one package in that case. LGPL2 is actually LGPL2.1. Added 'custom' to license array to cover COPYING.SMALL. There is no 'dbus-core' package, it's part of 'dbus' now. Doesn't build without 'check' installed. provides_efl doesn't work, changed to just provides. Got rid of tabs in depends and provides, replaced with spaces. No need to add default 'strip', 'docs', and 'zipman' options, if someone want to override them, there's no reason to stop them. buildflags doesn't work as a variable, added them to CFLAGS and CXXFLAGS manually. -O2 and -g are already included by default, if someone wants to change them on their system, there's no reason to override them. Add install script to update mime database. Change shebang on eina-bench-cmp so it runs with python2, python is 3 on Arch. make dist doesn't tar Makefile, so we need to check that it exists before running "make clean distclean". Otherwise the build just fails. Building of docs should be done in the build function. Quoted all uses of $pkgdir and $srcdir Each package function gets it's own $pkgdir, so rm-ing them at the beginning of the function isn't needed. Use cp -a instead of cp -r to make sure permissions are preserved. Set correct pkgdesc, arch, license, depends, provides, and install for the doc package. Reviewers: raster Reviewed By: raster CC: cedric Differential Revision: https://phab.enlightenment.org/D240
2013-10-26 07:56:25 -07:00
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
}