mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 06:48:18 -07:00
media-libs/libprojectm: Allow for compiling with GCC 6
Gentoo-bug: 582866 * EAPI=6 * Make PATCHES -p1 compliant * Migrate away from 'base.eclass' Package-Manager: portage-2.3.0
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
Properly call namespaced std::isnan and use implicit
|
||||
conversion operators, such that they work in C++98 and C++14.
|
||||
See also:
|
||||
https://bugs.gentoo.org/show_bug.cgi?id=582866
|
||||
https://sourceforge.net/p/projectm/code/ci/92226e25192a69839b9ae3b66ea7173732c639b3
|
||||
|
||||
--- libprojectM/Common.hpp
|
||||
+++ libprojectM/Common.hpp
|
||||
@@ -63,7 +63,7 @@
|
||||
|
||||
#ifdef LINUX
|
||||
#include <cstdlib>
|
||||
-#define projectM_isnan isnan
|
||||
+#define projectM_isnan std::isnan
|
||||
|
||||
#endif
|
||||
|
||||
--- libprojectM/MilkdropPresetFactory/Parser.cpp
|
||||
+++ libprojectM/MilkdropPresetFactory/Parser.cpp
|
||||
@@ -1406,7 +1406,7 @@
|
||||
PerFrameEqn * per_frame_eqn;
|
||||
GenExpr * gen_expr;
|
||||
|
||||
- if (fs == NULL)
|
||||
+ if (fs.fail())
|
||||
return NULL;
|
||||
if (param_string == NULL)
|
||||
return NULL;
|
||||
@@ -1561,7 +1561,7 @@
|
||||
|
||||
if (preset == NULL)
|
||||
return NULL;
|
||||
- if (fs == NULL)
|
||||
+ if (fs.fail())
|
||||
return NULL;
|
||||
|
||||
if ((token = parseToken(fs, name)) != tEq)
|
||||
@@ -1875,7 +1875,7 @@
|
||||
/* Null argument checks */
|
||||
if (preset == NULL)
|
||||
return PROJECTM_FAILURE;
|
||||
- if (fs == NULL)
|
||||
+ if (fs.fail())
|
||||
return PROJECTM_FAILURE;
|
||||
if (token == NULL)
|
||||
return PROJECTM_FAILURE;
|
||||
@@ -2166,7 +2166,7 @@
|
||||
|
||||
if (token == NULL)
|
||||
return PROJECTM_FAILURE;
|
||||
- if (fs == NULL)
|
||||
+ if (fs.fail())
|
||||
return PROJECTM_FAILURE;
|
||||
if (preset == NULL)
|
||||
return PROJECTM_FAILURE;
|
||||
@@ -2348,7 +2348,7 @@
|
||||
if (token == NULL)
|
||||
|
||||
return PROJECTM_FAILURE;
|
||||
- if (fs == NULL)
|
||||
+ if (fs.fail())
|
||||
return PROJECTM_FAILURE;
|
||||
if (preset == NULL)
|
||||
return PROJECTM_FAILURE;
|
||||
@@ -1,6 +1,5 @@
|
||||
diff -urN projectM-complete-2.1.0-Source/src/libprojectM/CMakeLists.txt projectM-complete-2.1.0-Source.new/src/libprojectM/CMakeLists.txt
|
||||
--- projectM-complete-2.1.0-Source/src/libprojectM/CMakeLists.txt 2012-05-20 05:43:26.000000000 +0200
|
||||
+++ projectM-complete-2.1.0-Source.new/src/libprojectM/CMakeLists.txt 2013-01-21 21:07:49.097541426 +0100
|
||||
--- libprojectM/CMakeLists.txt
|
||||
+++ libprojectM/CMakeLists.txt
|
||||
@@ -35,7 +35,7 @@
|
||||
|
||||
ADD_DEFINITIONS(-DCMAKE_INSTALL_PREFIX="\\\"${CMAKE_INSTALL_PREFIX}\\\"")
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
Index: projectM-complete-2.1.0-Source/src/libprojectM/CMakeLists.txt
|
||||
===================================================================
|
||||
--- projectM-complete-2.1.0-Source.orig/src/libprojectM/CMakeLists.txt
|
||||
+++ projectM-complete-2.1.0-Source/src/libprojectM/CMakeLists.txt
|
||||
--- libprojectM/CMakeLists.txt
|
||||
+++ libprojectM/CMakeLists.txt
|
||||
@@ -33,7 +33,7 @@ set(PROJECTM_VERSION 2.1.0)
|
||||
set(PROJECTM_ABI_LEVEL 2)
|
||||
#
|
||||
|
||||
59
media-libs/libprojectm/libprojectm-2.1.0-r2.ebuild
Normal file
59
media-libs/libprojectm/libprojectm-2.1.0-r2.ebuild
Normal file
@@ -0,0 +1,59 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
|
||||
inherit cmake-utils flag-o-matic toolchain-funcs
|
||||
|
||||
MY_P=${PN/m/M}-complete-${PV}-Source
|
||||
MY_P=${MY_P/lib}
|
||||
|
||||
DESCRIPTION="A graphical music visualization plugin similar to milkdrop"
|
||||
HOMEPAGE="http://projectm.sourceforge.net"
|
||||
SRC_URI="mirror://sourceforge/projectm/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="LGPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
|
||||
IUSE="debug openmp video_cards_nvidia"
|
||||
|
||||
RDEPEND="media-fonts/dejavu
|
||||
>=media-libs/ftgl-2.1.3_rc5
|
||||
media-libs/freetype:2
|
||||
media-libs/mesa
|
||||
media-libs/glew:=
|
||||
sys-libs/zlib
|
||||
video_cards_nvidia? ( media-gfx/nvidia-cg-toolkit )"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/pkgconfig"
|
||||
|
||||
S=${WORKDIR}/${MY_P}/src/libprojectM
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}"/${P}-multilib.patch
|
||||
"${FILESDIR}"/${P}-path.patch
|
||||
"${FILESDIR}"/${P}-fix-c++14.patch
|
||||
)
|
||||
|
||||
src_configure() {
|
||||
if use video_cards_nvidia; then
|
||||
append-ldflags -L/opt/nvidia-cg-toolkit/$(get_libdir)
|
||||
append-ldflags -L/opt/nvidia-cg-toolkit/lib
|
||||
append-cppflags -I/opt/nvidia-cg-toolkit/include
|
||||
fi
|
||||
|
||||
local mycmakeargs=(
|
||||
-DUSE_CG=$(usex video_cards_nvidia)
|
||||
-DprojectM_FONT_MENU="${EPREFIX}/usr/share/fonts/dejavu/DejaVuSans.ttf"
|
||||
-DprojectM_FONT_TITLE="${EPREFIX}/usr/share/fonts/dejavu/DejaVuSansMono.ttf"
|
||||
)
|
||||
|
||||
if use openmp && tc-has-openmp; then
|
||||
mycmakeargs+=( -DUSE_OPENMP=ON )
|
||||
else
|
||||
mycmakeargs+=( -DUSE_OPENMP=OFF )
|
||||
fi
|
||||
|
||||
cmake-utils_src_configure
|
||||
}
|
||||
Reference in New Issue
Block a user