commit:     87936449631e29d8fd3cc000abf4305a4b0be4cc
Author:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 14 16:47:38 2017 +0000
Commit:     Ian Stakenvicius <axs <AT> gentoo <DOT> org>
CommitDate: Thu Dec 14 16:56:02 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=87936449

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

 sci-mathematics/snns/files/4.2-ldflags.patch       |   8 +-
 sci-mathematics/snns/files/4.3-bison-version.patch |   4 +-
 .../snns/files/4.3-expand-path-strings.patch       |  33 ++++++
 sci-mathematics/snns/snns-4.3-r3.ebuild            | 124 +++++++++++++++++++++
 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 752380d1d8f..9ff4769731d 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 73da7018725..ceb4b1e43c0 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 00000000000..e62a3cfa6cd
--- /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 00000000000..416fa9499a5
--- /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*/*
+}

Reply via email to