diff --git a/community/io/PATCH-Fix-for-inlining-in-C11-mode.patch b/community/io/PATCH-Fix-for-inlining-in-C11-mode.patch new file mode 100644 index 000000000..0efd48ab7 --- /dev/null +++ b/community/io/PATCH-Fix-for-inlining-in-C11-mode.patch @@ -0,0 +1,57 @@ +From 2ab9505240c7d32ea5cb4d367c86af0146ac0b7c Mon Sep 17 00:00:00 2001 +From: Peter Hull +Date: Sun, 24 Jan 2016 13:19:27 +0000 +Subject: [PATCH] Fix for inlining in C11 mode + +--- + libs/basekit/source/Common_inline.h | 36 ++++++++++++++++++++++++------------ + 1 file changed, 24 insertions(+), 12 deletions(-) + +diff --git a/libs/basekit/source/Common_inline.h b/libs/basekit/source/Common_inline.h +index a4086d7..19f8d47 100755 +--- a/libs/basekit/source/Common_inline.h ++++ b/libs/basekit/source/Common_inline.h +@@ -117,19 +117,31 @@ Kudos to Daniel A. Koepke + #endif + + #elif defined(__linux__) || defined(__OpenBSD__) || defined(__NetBSD__) || defined(__FreeBSD__) +- +- #ifdef IO_IN_C_FILE +- // in .c +- #define IO_DECLARE_INLINES +- #define IOINLINE inline +- #define IOINLINE_RECURSIVE inline ++ #ifdef __GNUC_STDC_INLINE__ ++ #ifdef IO_IN_C_FILE ++ // in .c ++ #define IO_DECLARE_INLINES ++ #define IOINLINE ++ #define IOINLINE_RECURSIVE ++ #else ++ // in .h ++ #define IO_DECLARE_INLINES ++ #define IOINLINE inline ++ #define IOINLINE_RECURSIVE inline ++ #endif + #else +- // in .h +- #define IO_DECLARE_INLINES +- #define IOINLINE extern inline +- #define IOINLINE_RECURSIVE extern inline +- #endif +- ++ #ifdef IO_IN_C_FILE ++ // in .c ++ #define IO_DECLARE_INLINES ++ #define IOINLINE inline ++ #define IOINLINE_RECURSIVE inline ++ #else ++ // in .h ++ #define IO_DECLARE_INLINES ++ #define IOINLINE extern inline ++ #define IOINLINE_RECURSIVE extern inline ++ #endif ++ #endif + #else + + #ifdef IO_IN_C_FILE diff --git a/community/io/PATCH-added--msse2-to-compile-flags-for.patch b/community/io/PATCH-added--msse2-to-compile-flags-for.patch new file mode 100644 index 000000000..e9f8b99fc --- /dev/null +++ b/community/io/PATCH-added--msse2-to-compile-flags-for.patch @@ -0,0 +1,23 @@ +From 2ca83eac52092eb297b7f3cee3d6057377e57c67 Mon Sep 17 00:00:00 2001 +From: Peter Hull +Date: Mon, 25 Jan 2016 09:21:13 +0000 +Subject: [PATCH] Added -msse2 to compile flags for all sources. Under GCC 5 + it's needed, otherwise compiling UArray_math.c fails. + +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 7e3a3bc..e6d19e5 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -39,7 +39,7 @@ IF(CMAKE_COMPILER_IS_GNUCC) + SET(CMAKE_BUILD_TYPE_DebugFast) + SET(CMAKE_CXX_FLAGS_DEBUGFAST "-g -O0") + SET(CMAKE_C_FLAGS_DEBUGFAST "-g -O0") +- ++ SET(CMAKE_C_FLAGS "-msse2") + if(NOT CMAKE_BUILD_TYPE) + SET(CMAKE_BUILD_TYPE "DebugFast") + endif(NOT CMAKE_BUILD_TYPE) diff --git a/community/io/PKGBUILD b/community/io/PKGBUILD new file mode 100644 index 000000000..ab88b41d5 --- /dev/null +++ b/community/io/PKGBUILD @@ -0,0 +1,47 @@ +# $Id$ +# Maintainer: Alexander Rødseth +# Contributor: Gergely Imreh + +# ALARM: Kevin Mihelich +# - don't patch PATCH-added--msse2-to-compile-flags-for.patch + +pkgname=io +pkgver=2015.11.11 +pkgrel=1 +pkgdesc='IO programming language' +arch=('x86_64' 'i686') +url='http://iolanguage.com/' +license=('BSD') +depends=('pcre' 'libsndfile' 'libxmu' 'freetype2' 'libedit' 'libxml2' 'libtiff' 'libevent' 'yajl' 'libmysqlclient' 'lzo' 'libpng' 'python2' 'util-linux' 'freeglut' 'libjpeg-turbo' 'libtheora') +makedepends=('cmake' 'git') +options=('!makeflags' '!buildflags') +source=("git://github.com/stevedekorte/io#tag=$pkgver" + PATCH-Fix-for-inlining-in-C11-mode.patch + PATCH-added--msse2-to-compile-flags-for.patch) +md5sums=('SKIP' + 'a3bab046cbc4be88ec95bb22c28abab3' + '83552f6cabb4224cbcdcc01cb3bd4b90') + +prepare() { + cd io + patch -p1 -i../PATCH-Fix-for-inlining-in-C11-mode.patch + #patch -p1 -i../PATCH-added--msse2-to-compile-flags-for.patch +} + +build() { + cd io + sed -i "s:20140919:${pkgver//./}:" libs/iovm/source/IoVersion.h + mkdir -p build + cd build + cmake -DCMAKE_INSTALL_PREFIX=/usr .. + make # Does not build with ninja +} + +package() { + cd io + make -C build DESTDIR="$pkgdir" install + install -Dm644 license/bsd_license.txt \ + "$pkgdir/usr/share/licenses/$pkgname/bsd_license.txt" +} + +# vim:set ts=2 sw=2 et: