--- /dev/null
+Fix building with C++14, which errors out due -Wnarrowing conversions.
+See also: https://bugs.gentoo.org/show_bug.cgi?id=594680
+
+--- a/include/lcm_ssecomplex.h
++++ b/include/lcm_ssecomplex.h
+@@ -151,7 +151,7 @@
+ {
+ static const union {
+ int i[4]; ssecomplex_t v;
+- } signbithigh = {{0,0,0,0x80000000}};
++ } signbithigh = {{0,0,0,(int)0x80000000}};
+ ssecomplex_t b_im = _mm_shuffle_pd(b,b,3); // Imag. part of b in both
+ const ssecomplex_t b_re = _mm_shuffle_pd(b,b,0); // Real part of b in both
+ const ssecomplex_t tmp=_mm_mul_pd(a,b_re);
+@@ -166,7 +166,7 @@
+ ssecomplex_t b_re = _mm_set1_pd(b);
+ static const union {
+ int i[4]; ssecomplex_t v;
+- } signbithigh = {{0,0,0,0x80000000}};
++ } signbithigh = {{0,0,0,(int)0x80000000}};
+ b_re = _mm_xor_pd(b_re, signbithigh.v); // Change sign of high
+ return complex(_mm_mul_pd(a.z_, b_re));
+ }
+@@ -184,14 +184,14 @@
+ inline complex operator- (const complex& a) {
+ static const union { // (signbit,signbit)
+ int i[4]; ssecomplex_t v;
+- } signbits = {{0,0x80000000,0,0x80000000}};
++ } signbits = {{0,(int)0x80000000,0,(int)0x80000000}};
+ return complex(_mm_xor_pd(a, signbits.v)); // Change sign of both elements
+ }
+
+ inline complex conj(const complex& a) {
+ static const union { // (signbit,signbit)
+ int i[4]; ssecomplex_t v;
+- } signbithigh = {{0,0,0,0x80000000}};
++ } signbithigh = {{0,0,0,(int)0x80000000}};
+ return complex(_mm_xor_pd(a.z_, signbithigh.v)); // Change sign of imag. part
+ }
+
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
-EAPI=5
+EAPI=6
-AUTOTOOLS_AUTORECONF=true
-
-inherit autotools-utils
+inherit autotools
MY_P="${PN}${PV}_lite"
DESCRIPTION="lite version of pNMRsim"
HOMEPAGE="http://www.dur.ac.uk/paul.hodgkinson/pNMRsim/"
-#SRC_URI="${HOMEPAGE}/${MY_P}.tar.gz"
SRC_URI="https://dev.gentoo.org/~jlec/distfiles/${P}.tar.gz"
LICENSE="all-rights-reserved"
RESTRICT=mirror
-S="${WORKDIR}"/${PN}R3
+S="${WORKDIR}/${PN}R3"
+DOCS=( CHANGES docs/cmatrix.pdf )
PATCHES=(
- "${FILESDIR}"/${PV}-shared.patch
- "${FILESDIR}"/3.2.1-minuit2.patch
- "${FILESDIR}"/3.2.1-gcc4.4.patch
- "${FILESDIR}"/3.2.1-gcc4.6.patch
- "${FILESDIR}"/3.2.1-gcc4.7.patch
- "${FILESDIR}"/3.9.0-atlas.patch
- "${FILESDIR}"/${P}-gcc5.2.patch
- )
-
-AUTOTOOLS_IN_SOURCE_BUILD=1
+ "${FILESDIR}/${PN}-3.11.0-shared.patch"
+ "${FILESDIR}/${PN}-3.2.1-minuit2.patch"
+ "${FILESDIR}/${PN}-3.2.1-gcc4.4.patch"
+ "${FILESDIR}/${PN}-3.2.1-gcc4.6.patch"
+ "${FILESDIR}/${PN}-3.2.1-gcc4.7.patch"
+ "${FILESDIR}/${PN}-3.9.0-atlas.patch"
+ "${FILESDIR}/${PN}-3.11.0-gcc5.2.patch"
+ "${FILESDIR}/${PN}-3.11.0-fix-c++14.patch"
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
src_configure() {
econf \
dolib.so lib/*.so*
insinto /usr/include/${PN}R3
- doins include/*
+ doins -r include/.
- dodoc CHANGES docs/*
+ einstalldocs
}