summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-electronics/gwave/Manifest1
-rw-r--r--sci-electronics/gwave/files/gwave-20120229_as-needed.patch58
-rw-r--r--sci-electronics/gwave/files/gwave-20120229_doc.patch42
-rw-r--r--sci-electronics/gwave/files/gwave-20120229_missing_externs.patch23
-rw-r--r--sci-electronics/gwave/files/gwave-20120229_remove_gh.patch92
-rw-r--r--sci-electronics/gwave/files/gwave-20120229_remove_old_and_broken_compatibility_check.patch45
-rw-r--r--sci-electronics/gwave/files/gwave-20120229_stdlib.patch11
-rw-r--r--sci-electronics/gwave/files/gwave-20120229_unistd.patch23
-rw-r--r--sci-electronics/gwave/gwave-20120229.ebuild74
9 files changed, 369 insertions, 0 deletions
diff --git a/sci-electronics/gwave/Manifest b/sci-electronics/gwave/Manifest
index 920b52616150..975aec8adccf 100644
--- a/sci-electronics/gwave/Manifest
+++ b/sci-electronics/gwave/Manifest
@@ -1 +1,2 @@
+DIST gwave-code-249-trunk.zip 415799 SHA256 be4316b8191d8c27dbc32ecdbcebb872490c3e315187334c3a9c1836645b0d5b SHA512 351e5db7c65a0ff3ff68785986c3c4f16e2fbf2386c944c8ed63ced4b4714e9e00c2d30a12f7180477bb8f1ac56a09208cf6379b0e0074dc92de71ff483d5d87 WHIRLPOOL 40ddc4c14585346bd5baebb1586f6eb8fafec23d0662ad185b0b1987ca8297cf4102af537a8eb91ce0e60faa0047cded8d52ed18c1c36b88e9b2e03081edc81b
DIST gwave2-20090213.tar.gz 403957 SHA256 464c7bc6f2bb84413959584b4ed08b3391361fd7524fc93f7fd1c1cde370ea7f SHA512 9b39ed2923901af18253abe8e3ae1a6f71a660e31181dce31b0d784eb1dd0800a31ff48158b2c68555fcd268029e20295e87626e8e1d4cebc236b3863fe25e8c WHIRLPOOL dd6dff26731063d23bea70129145e3551593b242f26145e77e2c61734a5e946fd01f951f007cd90093e77aebf969af149da750aab93692697e25e750fb10b247
diff --git a/sci-electronics/gwave/files/gwave-20120229_as-needed.patch b/sci-electronics/gwave/files/gwave-20120229_as-needed.patch
new file mode 100644
index 000000000000..75d57f26b710
--- /dev/null
+++ b/sci-electronics/gwave/files/gwave-20120229_as-needed.patch
@@ -0,0 +1,58 @@
+diff -ur gwave-code-249-trunk.orig/configure.ac gwave-code-249-trunk/configure.ac
+--- gwave-code-249-trunk.orig/configure.ac 2016-08-15 12:51:39.170423625 -0600
++++ gwave-code-249-trunk/configure.ac 2016-08-15 12:53:13.049707178 -0600
+@@ -140,6 +140,9 @@
+ AC_SUBST(ggtk_hack_cflags)
+ AC_SUBST(ggtk_extra_loadpath)
+
++PKG_CHECK_MODULES([X11], [x11])
++PKG_CHECK_MODULES([GLIB], [glib-2.0])
++
+ dnl doesn't work if prefix isn't specified.
+ dnl AC_DEFINE_UNQUOTED(DATADIR,"${datadir}",Installation prefix for finding necessary guile code)
+
+diff -ur gwave-code-249-trunk.orig/remote/Makefile.am gwave-code-249-trunk/remote/Makefile.am
+--- gwave-code-249-trunk.orig/remote/Makefile.am 2016-08-15 12:51:39.170423625 -0600
++++ gwave-code-249-trunk/remote/Makefile.am 2016-08-15 12:52:15.810144514 -0600
+@@ -4,7 +4,9 @@
+ AM_CFLAGS = @GTK_CFLAGS@
+ bin_PROGRAMS=gwave-exec gwaverepl
+ gwave_exec_SOURCES=gwave-exec.c xgclient.c xgexec.h
+-gwave_exec_LDADD= @GTK_LIBS@
++gwave_exec_LDADD= @GTK_LIBS@ @X11_LIBS@
++gwave_exec_CFLAGS= @X11_CFLAGS@
+
+ gwaverepl_SOURCES=gwaverepl.c xgclient.c xgexec.h repllib.c
+-gwaverepl_LDADD= @GTK_LIBS@ @READLINE_LIB@
++gwaverepl_LDADD= @GTK_LIBS@ @READLINE_LIB@ @X11_LIBS@ @GLIB_LIBS@
++gwaverepl_CFLAGS= @X11_CFLAGS@ @GLIB_CFLAGS@
+diff -ur gwave-code-249-trunk.orig/spicefile/Makefile.am gwave-code-249-trunk/spicefile/Makefile.am
+--- gwave-code-249-trunk.orig/spicefile/Makefile.am 2016-08-15 12:51:39.170423625 -0600
++++ gwave-code-249-trunk/spicefile/Makefile.am 2016-08-15 12:52:15.810144514 -0600
+@@ -10,11 +10,9 @@
+
+ noinst_PROGRAMS = test_read
+ test_read_SOURCES = test_read.c
+-test_read_LDFLAGS = @GTK_LIBS@
+-test_read_LDADD = libspicefile.a
++test_read_LDADD = libspicefile.a @GTK_LIBS@
+
+ bin_PROGRAMS=sp2sp
+ sp2sp_SOURCES=sp2sp.c
+-sp2sp_LDFLAGS= @GTK_LIBS@
+-sp2sp_LDADD= libspicefile.a
++sp2sp_LDADD= libspicefile.a @GTK_LIBS@
+
+diff -ur gwave-code-249-trunk.orig/src/Makefile.am gwave-code-249-trunk/src/Makefile.am
+--- gwave-code-249-trunk.orig/src/Makefile.am 2016-08-15 12:51:39.170423625 -0600
++++ gwave-code-249-trunk/src/Makefile.am 2016-08-15 12:52:15.810144514 -0600
+@@ -16,8 +16,7 @@
+ rgeval.c xgserver.c measurebtn.c measurebtn.h \
+ GtkTable_indel.c GtkTable_indel.h xsnarf.h
+
+-gwave_LDADD = ../spicefile/libspicefile.a @GTK_LIBS@ @GUILEGTK_LIBS@
+-gwave_LDFLAGS = @GUILE_LDFLAGS@
++gwave_LDADD = ../spicefile/libspicefile.a @GTK_LIBS@ @GUILEGTK_LIBS@ @GUILE_LDFLAGS@ -lX11 -lm
+
+ AM_CFLAGS = @GTK_CFLAGS@ @GUILE_CFLAGS@ @GUILEGTK_CFLAGS@ \
+ -DDATADIR=\"$(datadir)\" -DBINGWAVE=\"$(bindir)/gwave\" @ggtk_hack_cflags@
diff --git a/sci-electronics/gwave/files/gwave-20120229_doc.patch b/sci-electronics/gwave/files/gwave-20120229_doc.patch
new file mode 100644
index 000000000000..558de4aa75ee
--- /dev/null
+++ b/sci-electronics/gwave/files/gwave-20120229_doc.patch
@@ -0,0 +1,42 @@
+diff -ur gwave-code-249-trunk.orig/doc/Makefile.am gwave-code-249-trunk/doc/Makefile.am
+--- gwave-code-249-trunk.orig/doc/Makefile.am 2003-12-24 13:42:48.000000000 -0700
++++ gwave-code-249-trunk/doc/Makefile.am 2016-08-17 13:11:07.142818075 -0600
+@@ -18,7 +18,7 @@
+
+ # Make the reference-document textfiles
+ gwave-procedures.txt gwave-variables.txt gwave-hooks.txt gwave-concepts.txt:
+- @GUILE@ -e main -s $(top_srcdir)/utilities/doc-split --basename gwave $(top_srcdir)/src/*.doc $(top_srcdir)/scheme/*.doc
++ guile -e main -s $(top_srcdir)/utilities/doc-split --basename gwave $(top_srcdir)/src/*.doc $(top_srcdir)/scheme/*.doc
+
+ html: gwave.sgml
+ mkdir -p html && cd html && \
+@@ -39,7 +39,7 @@
+ SUFFIXES=.sgml .1 .5
+
+ .sgml.1:
+- docbook-to-man $*.sgml > $@
++ docbook2man $*.sgml
+
+ .PHONY: html tex dvi ps pdf
+
+diff -ur gwave-code-249-trunk.orig/utilities/doc-split.in gwave-code-249-trunk/utilities/doc-split.in
+--- gwave-code-249-trunk.orig/utilities/doc-split.in 2008-01-22 20:52:08.000000000 -0700
++++ gwave-code-249-trunk/utilities/doc-split.in 2016-08-17 13:13:59.944653789 -0600
+@@ -100,13 +100,13 @@
+ (if (not (eof-object? line))
+ (begin
+ (cond
+- ((regexp-exec #+"^Concept: " line)
++ ((regexp-exec (make-regexp "^Concept: ") line)
+ (set! fp concept-fp))
+- ((regexp-exec #+"^Hook: " line)
++ ((regexp-exec (make-regexp "^Hook: ") line)
+ (set! fp hook-fp))
+- ((regexp-exec #+"^Variable: " line)
++ ((regexp-exec (make-regexp "^Variable: ") line)
+ (set! fp var-fp))
+- ((regexp-exec #+"^Procedure: " line)
++ ((regexp-exec (make-regexp "^Procedure: ") line)
+ (set! fp proc-fp))
+ (else
+ (set! fp #f)))
diff --git a/sci-electronics/gwave/files/gwave-20120229_missing_externs.patch b/sci-electronics/gwave/files/gwave-20120229_missing_externs.patch
new file mode 100644
index 000000000000..c3c48ecddcfc
--- /dev/null
+++ b/sci-electronics/gwave/files/gwave-20120229_missing_externs.patch
@@ -0,0 +1,23 @@
+diff -ur gwave-code-249-trunk.orig/remote/gwaverepl.c gwave-code-249-trunk/remote/gwaverepl.c
+--- gwave-code-249-trunk.orig/remote/gwaverepl.c 2000-11-05 23:39:09.000000000 -0700
++++ gwave-code-249-trunk/remote/gwaverepl.c 2016-08-17 13:20:17.071406553 -0600
+@@ -32,6 +32,8 @@
+ Window w;
+
+ extern char *split_at(char **to_split, int i);
++extern int check_balance(char *expr);
++extern int appending_fgets(char **sofar);
+
+
+ int
+diff -ur gwave-code-249-trunk.orig/spicefile/spicestream.h gwave-code-249-trunk/spicefile/spicestream.h
+--- gwave-code-249-trunk.orig/spicefile/spicestream.h 2004-12-26 20:10:24.000000000 -0700
++++ gwave-code-249-trunk/spicefile/spicestream.h 2016-08-17 13:20:24.208011807 -0600
+@@ -100,6 +100,7 @@
+ extern int fread_line(FILE *fp, char **bufp, int *bufsize);
+ extern void ss_msg(SSMsgLevel type, const char *id, const char *msg, ...);
+ extern char *ss_filetype_name(int n);
++extern void ss_delete(SpiceStream *ss);
+
+
+ #ifdef __cplusplus
diff --git a/sci-electronics/gwave/files/gwave-20120229_remove_gh.patch b/sci-electronics/gwave/files/gwave-20120229_remove_gh.patch
new file mode 100644
index 000000000000..64cb026474af
--- /dev/null
+++ b/sci-electronics/gwave/files/gwave-20120229_remove_gh.patch
@@ -0,0 +1,92 @@
+diff -ur gwave-code-249-trunk.orig/src/guile-compat.c gwave-code-249-trunk/src/guile-compat.c
+--- gwave-code-249-trunk.orig/src/guile-compat.c 2008-12-27 12:19:42.000000000 -0700
++++ gwave-code-249-trunk/src/guile-compat.c 2016-08-15 11:35:19.686041341 -0600
+@@ -23,7 +23,7 @@
+ #include <config.h>
+ #endif
+
+-#include <guile/gh.h>
++#include <libguile.h>
+
+ #include "guile-compat.h"
+
+@@ -56,7 +56,7 @@
+ *lenp = 0;
+ return NULL;
+ }
+- len = scm_i_string_length (str);
++ len = scm_c_string_length (str);
+ res = scm_malloc (len + 1);
+ memcpy (res, scm_i_string_chars (str), len);
+ res[len] = '\0'; //unconditionaly null terminate
+diff -ur gwave-code-249-trunk.orig/src/rgeval.c gwave-code-249-trunk/src/rgeval.c
+--- gwave-code-249-trunk.orig/src/rgeval.c 2008-12-27 12:19:42.000000000 -0700
++++ gwave-code-249-trunk/src/rgeval.c 2016-08-15 11:35:19.686041341 -0600
+@@ -8,7 +8,7 @@
+ */
+ #include <stdio.h>
+ #include <string.h>
+-#include <guile/gh.h>
++#include <libguile.h>
+
+ #ifdef HAVE_CONFIG_H
+ #include "config.h"
+diff -ur gwave-code-249-trunk.orig/src/scwm_guile.c gwave-code-249-trunk/src/scwm_guile.c
+--- gwave-code-249-trunk.orig/src/scwm_guile.c 2008-01-22 20:52:08.000000000 -0700
++++ gwave-code-249-trunk/src/scwm_guile.c 2016-08-15 11:37:03.732234328 -0600
+@@ -31,7 +31,6 @@
+ #include <limits.h>
+ #include <assert.h>
+
+-#include <guile/gh.h>
+ #include <libguile.h>
+ #include <libguile/fluids.h>
+
+@@ -401,7 +400,7 @@
+
+ void init_scwm_guile()
+ {
+- run_hook_proc = gh_lookup("run-hook");
++ run_hook_proc = scm_variable_ref (scm_c_lookup ("run-hook"));
+
+ #ifndef SCM_MAGIC_SNARF_INITS
+ #include "scwm_guile.x"
+diff -ur gwave-code-249-trunk.orig/src/scwm_guile.h gwave-code-249-trunk/src/scwm_guile.h
+--- gwave-code-249-trunk.orig/src/scwm_guile.h 2008-01-22 20:52:08.000000000 -0700
++++ gwave-code-249-trunk/src/scwm_guile.h 2016-08-15 11:35:19.686041341 -0600
+@@ -12,7 +12,7 @@
+ #define SCWM_GUILE_H__
+
+ #include "arg_unused.h"
+-#include <guile/gh.h>
++#include <libguile.h>
+ #include "validate.h"
+ #include <xsnarf.h>
+
+diff -ur gwave-code-249-trunk.orig/src/validate.h gwave-code-249-trunk/src/validate.h
+--- gwave-code-249-trunk.orig/src/validate.h 2008-01-19 12:28:50.000000000 -0700
++++ gwave-code-249-trunk/src/validate.h 2016-08-15 11:35:19.686041341 -0600
+@@ -192,20 +192,20 @@
+
+ #define VALIDATE_ARG_STR_NEWCOPY(pos,scm,pch) \
+ do { \
+- if (SCM_NFALSEP (scm_string_p(scm))) pch = gh_scm2newstr(scm,NULL); \
++ if (SCM_NFALSEP (scm_string_p(scm))) pch = scm_to_locale_string(scm); \
+ else { pch = NULL; scm_wrong_type_arg(FUNC_NAME,pos,scm); } \
+ } while (0)
+
+ #define VALIDATE_ARG_STR_NEWCOPY_LEN(pos,scm,pch,len) \
+ do { \
+- if (SCM_NFALSEP (scm_string_p(scm))) pch = gh_scm2newstr(scm,&len); \
++ if (SCM_NFALSEP (scm_string_p(scm))) pch = scm_from_locale_stringn(scm,&len); \
+ else { pch = NULL; scm_wrong_type_arg(FUNC_NAME,pos,scm); } \
+ } while (0)
+
+ #define VALIDATE_ARG_STR_NEWCOPY_USE_NULL(pos,scm,pch) \
+ do { \
+ if (UNSET_SCM(scm)) pch = NULL; \
+- else if (SCM_NFALSEP (scm_string_p(scm))) pch = gh_scm2newstr(scm,NULL); \
++ else if (SCM_NFALSEP (scm_string_p(scm))) pch = scm_from_locale_string(scm); \
+ else { pch = NULL; scm_wrong_type_arg(FUNC_NAME,pos,scm); } \
+ } while (0)
+
diff --git a/sci-electronics/gwave/files/gwave-20120229_remove_old_and_broken_compatibility_check.patch b/sci-electronics/gwave/files/gwave-20120229_remove_old_and_broken_compatibility_check.patch
new file mode 100644
index 000000000000..b3444f6d5545
--- /dev/null
+++ b/sci-electronics/gwave/files/gwave-20120229_remove_old_and_broken_compatibility_check.patch
@@ -0,0 +1,45 @@
+diff -ur gwave-code-249-trunk.orig/src/scwm_guile.c gwave-code-249-trunk/src/scwm_guile.c
+--- gwave-code-249-trunk.orig/src/scwm_guile.c 2016-08-12 16:55:04.598733712 -0600
++++ gwave-code-249-trunk/src/scwm_guile.c 2016-08-12 16:55:43.508392247 -0600
+@@ -328,41 +328,6 @@
+ SCM port = scm_current_error_port();
+ #endif
+
+- /* GJB:FIXME:MS: is this a guile compatibility test that can be dropped
+- now? */
+- if (scm_ilength (throw_args) >= 3)
+- {
+- SCM fl;
+- fl = SCM_VARIABLE_REF (scm_the_last_stack_fluid_var);
+-
+- /* GJB:FIXME:MS: This is a horrible hack,
+- but DEREF_LAST_STACK macro was throwing a wrong type
+- argument at weird times, and I'm trying to avoid
+- a crash when I demo to RMS tomorrow, hence this
+- ugly hack --04/27/99 gjb */
+- if (SCM_NIMP (fl) && SCM_FLUIDP (fl)) {
+- SCM stack = DEREF_LAST_STACK;
+- SCM subr = SCM_CAR (throw_args);
+- SCM message = SCM_CADR (throw_args);
+- SCM args = SCM_CADDR (throw_args);
+-
+- scm_newline(port);
+- scm_display_backtrace (stack, port, SCM_UNDEFINED, SCM_UNDEFINED);
+- scm_newline(port);
+- scm_display_error (stack, port, subr, message, args, SCM_EOL);
+- } else {
+-/* scwm_msg(ERR,"scwm_handle_error","scm_the_last_stack_fluid not holding a fluid!"); */
+- }
+- }
+- else
+- {
+- scm_puts ("uncaught throw to ", port);
+- scm_prin1 (tag, port, 0);
+- scm_puts (": ", port);
+- scm_prin1 (throw_args, port, 1);
+- scm_putc ('\n', port);
+- exit (2);
+- }
+ /* GJB:FIXME:MS: can the scheme code display a backtrace without the
+ stack argument? */
+ return scwm_run_hook_message_only(error_hook, scm_cons(tag, throw_args));
diff --git a/sci-electronics/gwave/files/gwave-20120229_stdlib.patch b/sci-electronics/gwave/files/gwave-20120229_stdlib.patch
new file mode 100644
index 000000000000..fd7d6f6f6419
--- /dev/null
+++ b/sci-electronics/gwave/files/gwave-20120229_stdlib.patch
@@ -0,0 +1,11 @@
+diff -ur gwave-code-249-trunk.orig/src/xgserver.c gwave-code-249-trunk/src/xgserver.c
+--- gwave-code-249-trunk.orig/src/xgserver.c 2016-08-15 13:12:41.694012802 -0600
++++ gwave-code-249-trunk/src/xgserver.c 2016-08-15 13:13:26.810327097 -0600
+@@ -22,6 +22,7 @@
+ #include <sys/time.h>
+ #include <unistd.h>
+ #include <signal.h>
++#include <stdlib.h>
+
+ #include <X11/Xlib.h>
+ #include <X11/Xatom.h>
diff --git a/sci-electronics/gwave/files/gwave-20120229_unistd.patch b/sci-electronics/gwave/files/gwave-20120229_unistd.patch
new file mode 100644
index 000000000000..a9644468ff72
--- /dev/null
+++ b/sci-electronics/gwave/files/gwave-20120229_unistd.patch
@@ -0,0 +1,23 @@
+diff -ur gwave-code-249-trunk.orig/spicefile/sp2sp.c gwave-code-249-trunk/spicefile/sp2sp.c
+--- gwave-code-249-trunk.orig/spicefile/sp2sp.c 2016-08-12 14:00:32.647427290 -0600
++++ gwave-code-249-trunk/spicefile/sp2sp.c 2016-08-12 14:03:21.445956110 -0600
+@@ -26,6 +26,8 @@
+ #include <float.h>
+ #include <errno.h>
+ #include <glib.h>
++#include <unistd.h>
++
+ #include "spicestream.h"
+
+ #define SWEEP_NONE 0
+diff -ur gwave-code-249-trunk.orig/spicefile/test_read.c gwave-code-249-trunk/spicefile/test_read.c
+--- gwave-code-249-trunk.orig/spicefile/test_read.c 2016-08-12 14:00:32.647427290 -0600
++++ gwave-code-249-trunk/spicefile/test_read.c 2016-08-12 14:02:52.806205722 -0600
+@@ -27,6 +27,7 @@
+ #include <string.h>
+ #include <errno.h>
+ #include <glib.h>
++#include <unistd.h>
+
+ #include "wavefile.h"
+
diff --git a/sci-electronics/gwave/gwave-20120229.ebuild b/sci-electronics/gwave/gwave-20120229.ebuild
new file mode 100644
index 000000000000..bc16ece7ad2e
--- /dev/null
+++ b/sci-electronics/gwave/gwave-20120229.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="6"
+
+WANT_AUTOMAKE=1.9
+
+inherit autotools fdo-mime gnome2-utils
+
+rev=249
+
+DESCRIPTION="Analog waveform viewer for SPICE-like simulations"
+LICENSE="GPL-2"
+HOMEPAGE="http://gwave.sourceforge.net"
+SRC_URI="https://sourceforge.net/code-snapshots/svn/g/gw/gwave/code/gwave-code-${rev}-trunk.zip"
+
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="gnuplot plotutils"
+SLOT="0"
+
+DEPEND=">=dev-scheme/guile-2[deprecated,networking]
+ dev-scheme/guile-gnome-platform
+ x11-libs/guile-gtk"
+
+RDEPEND="${DEPEND}
+ sci-electronics/electronics-menu
+ gnuplot? ( sci-visualization/gnuplot )
+ plotutils? ( media-libs/plotutils )"
+
+DEPEND="${DEPEND}
+ app-text/docbook-sgml-utils"
+
+S="${WORKDIR}/gwave-code-${rev}-trunk"
+
+PATCHES=(
+ "${FILESDIR}"/${P}_as-needed.patch
+ "${FILESDIR}"/${P}_doc.patch
+ "${FILESDIR}"/${P}_missing_externs.patch
+ "${FILESDIR}"/${P}_remove_gh.patch
+ "${FILESDIR}"/${P}_remove_old_and_broken_compatibility_check.patch
+ "${FILESDIR}"/${P}_stdlib.patch
+ "${FILESDIR}"/${P}_unistd.patch
+ )
+
+src_prepare() {
+ sed 's/AM_INIT_AUTOMAKE(gwave, [0-9]*)/AM_INIT_AUTOMAKE(gwave, ${PV})/' -i configure.ac || die
+ epatch "${PATCHES[@]}"
+ eapply_user
+ eautoreconf
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+ dodoc AUTHORS NEWS README TODO
+ newicon icons/wave-drag-ok.xpm gwave.xpm
+ make_desktop_entry gwave "Gwave" gwave "Electronics"
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update
+}