summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Stakenvicius <axs@gentoo.org>2017-12-14 11:47:38 -0500
committerIan Stakenvicius <axs@gentoo.org>2017-12-14 11:56:02 -0500
commit87936449631e29d8fd3cc000abf4305a4b0be4cc (patch)
tree303c2f99d266c9b0abaa8986f73bbfa7ed46ab56 /sci-mathematics
parentapp-text/fbreader: use libunibreak instead of liblinebreak (diff)
downloadgentoo-87936449631e29d8fd3cc000abf4305a4b0be4cc.tar.gz
gentoo-87936449631e29d8fd3cc000abf4305a4b0be4cc.tar.bz2
gentoo-87936449631e29d8fd3cc000abf4305a4b0be4cc.zip
sci-mathematics/snns: bump EAPI, make patches eapply, expand string length for filenames
Some strings that hold filenames or file paths were limited to 50 chars, which for my personal use is way too short; expanded these to 256 chars. Also bumped EAPI and fixed patche headers so that they eapply cleanly via 'patch -p1' Package-Manager: Portage-2.3.13, Repoman-2.3.3
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/snns/files/4.2-ldflags.patch8
-rw-r--r--sci-mathematics/snns/files/4.3-bison-version.patch4
-rw-r--r--sci-mathematics/snns/files/4.3-expand-path-strings.patch33
-rw-r--r--sci-mathematics/snns/snns-4.3-r3.ebuild124
4 files changed, 163 insertions, 6 deletions
diff --git a/sci-mathematics/snns/files/4.2-ldflags.patch b/sci-mathematics/snns/files/4.2-ldflags.patch
index 752380d1d8f0..9ff4769731d1 100644
--- a/sci-mathematics/snns/files/4.2-ldflags.patch
+++ b/sci-mathematics/snns/files/4.2-ldflags.patch
@@ -2,8 +2,8 @@ Respect LDFLAGS
https://bugs.gentoo.org/show_bug.cgi?id=332475
---- tools/sources/Makefile
-+++ tools/sources/Makefile
+--- a/tools/sources/Makefile
++++ b/tools/sources/Makefile
@@ -147,19 +147,19 @@
# Linking of single stand alone programs
@@ -29,8 +29,8 @@ https://bugs.gentoo.org/show_bug.cgi?id=332475
# Make sure that kernel libs are available and up to date
---- xgui/sources/Makefile
-+++ xgui/sources/Makefile
+--- a/xgui/sources/Makefile
++++ b/xgui/sources/Makefile
@@ -202,7 +202,7 @@
# Linking of xgui
diff --git a/sci-mathematics/snns/files/4.3-bison-version.patch b/sci-mathematics/snns/files/4.3-bison-version.patch
index 73da70187254..ceb4b1e43c00 100644
--- a/sci-mathematics/snns/files/4.3-bison-version.patch
+++ b/sci-mathematics/snns/files/4.3-bison-version.patch
@@ -1,5 +1,5 @@
---- configure.old 2015-04-08 16:27:05.000000000 -0400
-+++ configure 2015-04-08 16:26:41.000000000 -0400
+--- a/configure 2015-04-08 16:27:05.000000000 -0400
++++ b/configure 2015-04-08 16:26:41.000000000 -0400
@@ -5071,7 +5071,7 @@
else
{ echo "$as_me:$LINENO: checking for version of bison" >&5
diff --git a/sci-mathematics/snns/files/4.3-expand-path-strings.patch b/sci-mathematics/snns/files/4.3-expand-path-strings.patch
new file mode 100644
index 000000000000..e62a3cfa6cd4
--- /dev/null
+++ b/sci-mathematics/snns/files/4.3-expand-path-strings.patch
@@ -0,0 +1,33 @@
+--- a/tools/sources/convert2snns.c 2008-04-21 03:56:07.000000000 -0400
++++ b/tools/sources/convert2snns.c 2017-12-14 11:13:12.056308969 -0500
+@@ -54,8 +54,8 @@
+ /* Init functionname */
+ #define KOHONEN_INIT_FUNC_NAME "Kohonen_Weights_v3.2"
+
+-char *control_file,pattern_file[80],weight_file[80],
+- string[80],name[50];
++char *control_file,pattern_file[256],weight_file[256],
++ string[256],name[256];
+ int no_of_exemplars,X,Y,
+ ret, i, j, unit_no,
+ IUnits, OUnits, HUnits;
+--- a/tools/sources/snns2c.c 2017-12-14 11:05:48.372487874 -0500
++++ b/tools/sources/snns2c.c 2017-12-14 11:11:08.484915822 -0500
+@@ -1622,7 +1622,7 @@
+ FILE *fOutFile, *fHeaderFile;
+ pList OutList, FunctionList;
+ time_t timer;
+- char HeaderFile[50];
++ char HeaderFile[256];
+
+ /* calculate time for the date in the header of the output file */
+ time(&timer);
+@@ -1824,7 +1824,7 @@
+ FILE *fOutFile, *fHeaderFile;
+ pList OutList, FunctionList;
+ time_t timer;
+- char HeaderFile[50];
++ char HeaderFile[256];
+
+ /* calculate time for the date in the header of the output file */
+ time(&timer);
diff --git a/sci-mathematics/snns/snns-4.3-r3.ebuild b/sci-mathematics/snns/snns-4.3-r3.ebuild
new file mode 100644
index 000000000000..416fa9499a5f
--- /dev/null
+++ b/sci-mathematics/snns/snns-4.3-r3.ebuild
@@ -0,0 +1,124 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 )
+DISTUTILS_OPTIONAL=1
+inherit distutils-r1
+
+MY_P="SNNSv${PV}"
+DESCRIPTION="Stuttgart Neural Network Simulator"
+HOMEPAGE="https://sourceforge.net/projects/snns/"
+SRC_URI="http://www.ra.cs.uni-tuebingen.de/downloads/SNNS/${MY_P}.tar.gz
+ doc? ( http://www.ra.cs.uni-tuebingen.de/downloads/SNNS/SNNSv4.2.Manual.pdf )"
+
+LICENSE="LGPL-2.1"
+KEYWORDS="~amd64 ~ppc ~x86"
+SLOT="0"
+IUSE="X doc python"
+
+RDEPEND="X? (
+ x11-libs/libX11
+ x11-libs/libXaw3d
+ x11-libs/libXt
+ )
+ python? ( ${PYTHON_DEPS} )"
+DEPEND="${RDEPEND}
+ X? ( x11-proto/xproto )
+ >=sys-devel/bison-1.2.2"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ eapply "${FILESDIR}"/4.3-unstrip.patch
+ eapply "${FILESDIR}"/4.3-bison-version.patch
+ eapply "${FILESDIR}"/4.2-ldflags.patch
+ eapply "${FILESDIR}"/4.3-snns-netperf.patch # bug 248322
+ eapply "${FILESDIR}"/4.3-expand-path-strings.patch
+
+ # change all references of Xaw to Xaw3d
+ cd "${S}"/xgui/sources
+ for file in *.c; do
+ sed -e "s:X11/Xaw/:X11/Xaw3d/:g" -i "${file}"
+ done
+
+ # clean up the dirty dist sources and remove files that apparently
+ # are not removed by any clean rules
+ emake clean
+ rm -Rf "${S}"/{tools,xgui}/bin \
+ "${S}"/{Makefile.def,config.h} \
+ "${S}"/configuration/config.{guess,log}
+
+ eapply_user
+
+ if use python; then
+ pushd "${S}"/python > /dev/null || die
+ distutils-r1_src_prepare
+ popd > /dev/null || die
+ fi
+}
+
+src_configure() {
+ econf --enable-global \
+ $(use_with X x)
+
+ if use python; then
+ pushd python > /dev/null || die
+ distutils-r1_src_configure
+ popd > /dev/null || die
+ fi
+}
+
+src_compile() {
+ local compileopts=( compile-kernel compile-tools )
+ use X && compileopts+=( compile-xgui )
+
+ # parallel make sometimes fails (phosphan)
+ # so emake each phase separately (axs)
+ for tgt in "${compileopts[@]}"; do
+ emake ${tgt}
+ done
+
+ if use python; then
+ pushd python > /dev/null || die
+ distutils-r1_src_compile
+ popd > /dev/null || die
+ fi
+}
+
+src_install() {
+ pushd "${S}"/tools/sources > /dev/null || die
+ emake TOOLSBINDIR="${ED}"usr/bin install
+ popd > /dev/null || die
+
+ if use X; then
+ newbin xgui/sources/xgui snns
+
+ echo XGUILOADPATH=/usr/share/doc/${PF} > "${T}"/99snns
+ doenvd "${T}"/99snns
+
+ docompress -x /usr/share/doc/${PF}/{default.cfg,help.hdoc}
+ insinto /usr/share/doc/${PF}
+ doins default.cfg help.hdoc
+ fi
+
+ if use python; then
+ pushd python > /dev/null || die
+ distutils-r1_src_install
+ insinto /usr/share/doc/${PF}/python-examples
+ doins examples/*
+ newdoc README README.python
+ popd > /dev/null || die
+ fi
+
+ if use doc; then
+ insinto /usr/share/doc/${PF}
+ doins "${DISTDIR}"/${MY_P}.Manual.pdf
+ fi
+
+ insinto /usr/share/doc/${PF}/examples
+ doins examples/*
+ doman man/man*/*
+}