diff options
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 +} |