From fcd48a50f5bfd4533b58bff6fa1429a47ba0ebbd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Sun, 24 Nov 2013 21:22:06 +0100 Subject: [PATCH] package: added Clang PKGBUILD. --- doc/building.dox | 7 ---- package/archlinux/PKGBUILD | 5 --- package/archlinux/PKGBUILD-clang | 49 +++++++++++++++++++++++++++ package/archlinux/PKGBUILD-es2 | 5 --- package/archlinux/PKGBUILD-es2desktop | 5 --- package/archlinux/PKGBUILD-es3 | 5 --- package/archlinux/PKGBUILD-release | 5 --- 7 files changed, 49 insertions(+), 32 deletions(-) create mode 100644 package/archlinux/PKGBUILD-clang diff --git a/doc/building.dox b/doc/building.dox index 27adeb34a..78278816e 100644 --- a/doc/building.dox +++ b/doc/building.dox @@ -261,13 +261,6 @@ project root: makepkg -p package/archlinux/ -If you want to build with another compiler (e.g. Clang), run makepkg this way: - - CXX=clang++ makepkg - -Development PKGBUILDs can detect when Clang is used and remove unsupported CXX -flags. - @section building-crosscompiling Crosscompiling For crosscompiling you need to have *both* target and native version of diff --git a/package/archlinux/PKGBUILD b/package/archlinux/PKGBUILD index 8ea54a4b0..5ef00d4c1 100644 --- a/package/archlinux/PKGBUILD +++ b/package/archlinux/PKGBUILD @@ -19,11 +19,6 @@ build() { newcxxflags=$(echo $CXXFLAGS | sed s/-O.//g | sed s/-D_FORTIFY_SOURCE=.//g) export CXXFLAGS="$newcxxflags" - if [ "$CXX" = clang++ ] ; then - newcxxflags=$(echo $CXXFLAGS | sed s/--param=ssp-buffer-size=4//g) - export CXXFLAGS="$newcxxflags" - fi - cmake .. \ -DCMAKE_BUILD_TYPE=Debug \ -DCMAKE_INSTALL_PREFIX=/usr \ diff --git a/package/archlinux/PKGBUILD-clang b/package/archlinux/PKGBUILD-clang new file mode 100644 index 000000000..6c8f7d717 --- /dev/null +++ b/package/archlinux/PKGBUILD-clang @@ -0,0 +1,49 @@ +# Author: mosra +pkgname=magnum +pkgver=dev.clang +pkgrel=1 +pkgdesc="C++11 and OpenGL 2D/3D graphics engine (built with clang)" +arch=('i686' 'x86_64') +url="https://github.com/mosra/magnum" +license=('MIT') +depends=('corrade' 'openal' 'freeglut' 'sdl2') +makedepends=('cmake' 'clang' 'ninja') +options=(!strip) +provides=('magnum-git') + +build() { + if [ ! -d "$startdir/build-clang" ] ; then + mkdir "$startdir/build-clang" + cd "$startdir/build-clang" + + cmake .. \ + -DCMAKE_CXX_COMPILER=clang++ \ + -G Ninja + fi + + cd "$startdir/build-clang" + + cmake .. \ + -DCMAKE_BUILD_TYPE=Debug \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DWITH_GLUTAPPLICATION=ON \ + -DWITH_GLXAPPLICATION=ON \ + -DWITH_SDL2APPLICATION=ON \ + -DWITH_MAGNUMFONT=ON \ + -DWITH_MAGNUMFONTCONVERTER=ON \ + -DWITH_TGAIMAGECONVERTER=ON \ + -DWITH_TGAIMPORTER=ON \ + -DWITH_WAVAUDIOIMPORTER=ON \ + -DBUILD_TESTS=TRUE + ninja +} + +check() { + cd "$startdir/build-clang" + ctest --output-on-failure +} + +package() { + cd "$startdir/build-clang" + DESTDIR="$pkgdir/" ninja install +} diff --git a/package/archlinux/PKGBUILD-es2 b/package/archlinux/PKGBUILD-es2 index 3fdc6db93..d33708476 100644 --- a/package/archlinux/PKGBUILD-es2 +++ b/package/archlinux/PKGBUILD-es2 @@ -15,11 +15,6 @@ build() { mkdir -p "$startdir/build-es2" cd "$startdir/build-es2" - if [ "$CXX" = clang++ ] ; then - newcxxflags=$(echo $CXXFLAGS | sed s/--param=ssp-buffer-size=4//g) - export CXXFLAGS="$newcxxflags" - fi - cmake .. \ -DCMAKE_BUILD_TYPE=Debug \ -DCMAKE_INSTALL_PREFIX=/usr \ diff --git a/package/archlinux/PKGBUILD-es2desktop b/package/archlinux/PKGBUILD-es2desktop index ec8961771..c7e4c70a5 100644 --- a/package/archlinux/PKGBUILD-es2desktop +++ b/package/archlinux/PKGBUILD-es2desktop @@ -15,11 +15,6 @@ build() { mkdir -p "$startdir/build-es2desktop" cd "$startdir/build-es2desktop" - if [ "$CXX" = clang++ ] ; then - newcxxflags=$(echo $CXXFLAGS | sed s/--param=ssp-buffer-size=4//g) - export CXXFLAGS="$newcxxflags" - fi - cmake .. \ -DCMAKE_BUILD_TYPE=Debug \ -DCMAKE_INSTALL_PREFIX=/usr \ diff --git a/package/archlinux/PKGBUILD-es3 b/package/archlinux/PKGBUILD-es3 index 1182f880c..c6477fdc2 100644 --- a/package/archlinux/PKGBUILD-es3 +++ b/package/archlinux/PKGBUILD-es3 @@ -15,11 +15,6 @@ build() { mkdir -p "$startdir/build-es3" cd "$startdir/build-es3" - if [ "$CXX" = clang++ ] ; then - newcxxflags=$(echo $CXXFLAGS | sed s/--param=ssp-buffer-size=4//g) - export CXXFLAGS="$newcxxflags" - fi - cmake .. \ -DCMAKE_BUILD_TYPE=Debug \ -DCMAKE_INSTALL_PREFIX=/usr \ diff --git a/package/archlinux/PKGBUILD-release b/package/archlinux/PKGBUILD-release index 1d41b3cfe..fcdb04932 100644 --- a/package/archlinux/PKGBUILD-release +++ b/package/archlinux/PKGBUILD-release @@ -14,11 +14,6 @@ build() { mkdir -p "$startdir/build" cd "$startdir/build/" - if [ "$CXX" = clang++ ] ; then - newcxxflags=$(echo $CXXFLAGS | sed s/--param=ssp-buffer-size=4//g) - export CXXFLAGS="$newcxxflags" - fi - cmake .. \ -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_INSTALL_PREFIX=/usr \