summaryrefslogtreecommitdiff
path: root/sci-electronics/gwave
diff options
context:
space:
mode:
Diffstat (limited to 'sci-electronics/gwave')
-rw-r--r--sci-electronics/gwave/Manifest15
-rw-r--r--sci-electronics/gwave/files/gwave-20090213-as-needed.patch54
-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-20090213-r1.ebuild57
-rw-r--r--sci-electronics/gwave/gwave-20120229.ebuild73
-rw-r--r--sci-electronics/gwave/metadata.xml18
12 files changed, 511 insertions, 0 deletions
diff --git a/sci-electronics/gwave/Manifest b/sci-electronics/gwave/Manifest
new file mode 100644
index 000000000000..a3e597222c90
--- /dev/null
+++ b/sci-electronics/gwave/Manifest
@@ -0,0 +1,15 @@
+AUX gwave-20090213-as-needed.patch 2257 SHA256 02a9606cd1182b1a86ed1793299105cd76bef10284ebdf1c6f74d0364918b469 SHA512 299c92352456b50af69a3b5606b9c97d36975ad597cc0c7871db60249652b6472a85d0d971dfe91e987a52877520951645fd68b13818e126960fd23e5f4d8f88 WHIRLPOOL 3f204f4d332ef041ba57ddabd02fa075884136d083b4e18a65745da92d594001d1a2bbb8aca40fbdb39274debab4d19f8c598a42287746104d2d53db6bf26d1c
+AUX gwave-20120229_as-needed.patch 2565 SHA256 64a0d3956ae8450a06489c55c21d5c942ebb5e7180cadb44fce01ed5b8fb6cdb SHA512 df46790d8da9bfd346b1435f02b64accb7378d610269d8e2fa7093a053178eeb5ef752ad60c46025d938fbd2523245a358ba99aa2580b92bf755ef516cd77471 WHIRLPOOL 13a471691848740c4cc16606aa1a5e5b5f4848be4cd2f1663a3a7be82b89d2563ac42dd653e4e54468e5f57be11348e2a2fe3eeae8902f64f85091eafd9d4b43
+AUX gwave-20120229_doc.patch 1689 SHA256 9fdf2b2374af7f9fef15996a51071c4a52aadc68d96ee16d677a61c04b9ffd54 SHA512 e9f60a0a04a2655ff9c4e99d0f9858ee2f19b7827d9ddf6c8f3e7ca0ce314c34d1852092127b177b8f869418f20fcc8282bdf851d2e20f614e760ababdf67e1a WHIRLPOOL a426a365917380de1e2bea87e4cb0c34665c40e4ec58f0dee4e23e9ae148aec0217dd7820a98ffd6ec0b0ceb82d7463825f00bbf4449a16784b51c46a667ff50
+AUX gwave-20120229_missing_externs.patch 969 SHA256 f2ab0c31d8c859fdc650a0522edf8c2c363a65d2b116d61f124d8a13cc33005a SHA512 bef1ea5a0df3588b4a851fb1d17a4570e17143c01edef36c794dff5910b42d582319951dc6de36b7102a2fcbb6f1e75f176da0c9e5a4176e92597429e88f087e WHIRLPOOL 0b63311b06385836333fc4c79fe3f5a4b269361da5714396e6826cbd336044832288636e2e450fcb4cc8be655f8f55570efe785107e8d111f8d4f5024101674f
+AUX gwave-20120229_remove_gh.patch 3324 SHA256 c02070d0dadfb4f2bca0986a081f515cd0efaab10d098debedc4ddf04d226096 SHA512 c9d9a1a974e2a950bb033c001dea6593da1b4fa91a534e8230066ddf43e8407699a19c4cddcdccb06c6940b95b8144f63e54ce16465688e3bae5d11e9fb0d19c WHIRLPOOL 766365e11d427e3797020ab97ef35cc81b2f8f37f35c335c7ccb2080d77676c9f80e27ec700982e49b4ad7266bc07c4b09d9fe0fb92891ab0c121913a51de91c
+AUX gwave-20120229_remove_old_and_broken_compatibility_check.patch 1757 SHA256 a61394d82985e062e5b95cd6eb8bf374231ddae5926d1b388b72d587c079ed77 SHA512 2abbaae746743ac2f287985656778fa12b0f23f2d9e0d726925656aeab48ba07d92c13c30aea236439aa6cbac32ceb22e6dbb66c9649277ab315b4fe6ff3a7fe WHIRLPOOL 4bcdc62fef8d80aef2c61604d7eacb2a6c2974e8adf6f1c73f6f4eedcc6891d7cc4414693d1cfe79258b9018270edde4d230bc328fba14a5a80ec33e8ce503a9
+AUX gwave-20120229_stdlib.patch 396 SHA256 94a222753d0fd57942e3072c29302383e3a3d0ee65e4d2ca4affd3a1ee4b8ad0 SHA512 5a960da39b2bc3f9d6646bbbac5f291e407578e13be7910c3f14dc3ecf5a5b6a3fe907cae8322e3888035d3d5844266d7ddb912ad567377543866671a640ae5c WHIRLPOOL 73b8447a789fbab28d17c7de5d17ffd165c3b0d2f0b6affd7aebff090bf427fe30315472bdf58116c9731e36a4ab08c98355920c4c06cf4477b6615f833b4677
+AUX gwave-20120229_unistd.patch 802 SHA256 74f36150c6df122a0818610c1085a862bc3df696b63bc56195c07104146bdc86 SHA512 4b45b5606072675e3bede8852c5aaa25f25d2d9544970cf5eb81f896ed9c65fcc18e7f301254490165736b07dd9203e63bab93681366482baff8d995f0c105ea WHIRLPOOL 17c4329f8540cc44f341558cbc34c217e669fa8e7246382dbea2ed47c9104d356b6d6c7c9330dcd64646d14c16ee9926b0ce980d132e2e4e71a1a9743174dd64
+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
+EBUILD gwave-20090213-r1.ebuild 1222 SHA256 8ebd952a50916415abd115db0d72d69c7634e940829307e0506f643f87fda9d2 SHA512 29fb7ac7333112d58ae9d38d35271d58f6a93d4f2803459e8ce600ff1be252a7413735e23119d0ae36a2d9fc64d65f5fef0743b4c46d9e5be1a19624f08b5d9f WHIRLPOOL 83a8ec0ffab3595e60507df0c5bed18ff20ca779e15c9736d8c27f2bf5ad8fe92d36aa37d7afa3aaa96e6a1ca379058b934805856a5afdd18a0464ea01794a78
+EBUILD gwave-20120229.ebuild 1690 SHA256 28c6539a91bb4fe09d3d9fda8786b1d326201d3d24d2bc2fd96734ddac39f76c SHA512 0cfa4d5cf7549565a21cb6b304412a8c7d3632a841375ff563be9a913f65ead73625f620941a82c7d1639b66098be2b50f51de378c81f876faa585025d19e34d WHIRLPOOL 0211dbbcf40dbaaffb09957acee941f023bb07c97f5c4917eb9297b02d0f8f8f0e666ae789795d11d1836e11807dea498d3f181dc10b094e7bd0acd2a790f215
+MISC ChangeLog 2988 SHA256 7d4a97d731edae6f9631e8634b0d4a4e2a08ca6f66307acfb5b53ca7239dcd6f SHA512 e6599885f0ddfbdb5c90818fe0b5394dd9a22d55035915e51ce1862fc670e974c03a4322a1b12a76e9385af4d2f12c3797a64198bd9bb36ddc34ef3732b376b7 WHIRLPOOL 56e615098091f2f8c69a75f37be013e0509d7bcefdaa1e56af0370546b7d033db61191ca37e98faae4fbdb0303c6078d28381ce850cbfe96dc3971f6c045ef11
+MISC ChangeLog-2015 5737 SHA256 3e0875bef0b2a83dbd02986d1fd7955ba65b3e4061181e9e30122ca2fe409ec9 SHA512 ef5ade014c7f5fa1a0c1c73fb8aff169dd77d54e7e0a38840e088a6f6cac362bab1048505e6fbabd56cd586df2be3a6beae50339d62921a1b791708aba223a5b WHIRLPOOL 3ef00cf05242b80d2ad5173e5819240a302ec3dcb2c5891ad3a738bdbfc07f2462e0e28ee8e8edd4c2941635128daa3fc57329242813a80d3c9caaa535bd143f
+MISC metadata.xml 729 SHA256 a95b160fe3fbed96b804048e9f6b5bb1a68772af568367b3e9b15606840ee89f SHA512 c38f63a842618cfed2e78374219eaabb16a0cd9198ccb339701e1a4a86cf90689d12a70277b19dc781522f9b67a7ab740fdb5475c1eda0d9cdadbe4556ee2966 WHIRLPOOL 7144033bfba5a9b7468877ad2d145ef6c5e3532870c8a010e94f9718ce470ce4e7541c4928b1ae7231696e4d9aebae9e5832914f3c4473cd4dd0b03ed8c85a46
diff --git a/sci-electronics/gwave/files/gwave-20090213-as-needed.patch b/sci-electronics/gwave/files/gwave-20090213-as-needed.patch
new file mode 100644
index 000000000000..7ec72ed2aab7
--- /dev/null
+++ b/sci-electronics/gwave/files/gwave-20090213-as-needed.patch
@@ -0,0 +1,54 @@
+--- gwave2-20090213.orig/src/Makefile.am 2008-01-22 05:36:59.000000000 +0100
++++ gwave2-20090213/src/Makefile.am 2010-02-06 18:10:38.011218381 +0100
+@@ -15,8 +15,7 @@
+ rgeval.c xgserver.c measurebtn.c measurebtn.h \
+ GtkTable_indel.c GtkTable_indel.h xsnarf.h
+
+-gwave_LDADD = ../spicefile/libspicefile.a @GTK_LIBS@ @GUILE_GNOME_LIBS@
+-gwave_LDFLAGS = @GUILE_LDFLAGS@
++gwave_LDADD = ../spicefile/libspicefile.a @GTK_LIBS@ @GUILE_GNOME_LIBS@ @GUILE_LDFLAGS@
+
+ AM_CFLAGS = @GTK_CFLAGS@ @GUILE_CFLAGS@ @GUILE_GNOME_CFLAGS@ \
+ -DDATADIR=\"$(datadir)\" -DBINGWAVE=\"$(bindir)/gwave\"
+--- gwave2-20090213.orig/spicefile/Makefile.am 2008-01-22 05:31:45.000000000 +0100
++++ gwave2-20090213/spicefile/Makefile.am 2010-02-06 18:11:53.008964326 +0100
+@@ -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@
+
+--- gwave2-20090213.orig/configure.ac 2009-02-13 06:00:57.000000000 +0100
++++ gwave2-20090213/configure.ac 2010-02-06 18:23:11.522964311 +0100
+@@ -84,7 +84,8 @@
+ dnl GUILE_MODULE_REQUIRED(gnome gtk)
+
+ PKG_CHECK_MODULES(GUILE_GNOME, guile-gnome-gtk-2, ,AC_MSG_ERROR(Can not find Guile-gnome-platform))
+-
++PKG_CHECK_MODULES([X11], [x11])
++PKG_CHECK_MODULES([GLIB], [glib-2.0])
+ dnl remind myself how to check for somthing I know exists
+ dnl GUILE_MODULE_EXPORTS(foo_widget_show, (gnome-0)(gnome gtk),gtk-widget-show)
+ dnl if test "$foo_widget_show" = yes; then
+--- gwave2-20090213.orig/remote/Makefile.am 2010-02-06 18:33:14.340215309 +0100
++++ gwave2-20090213/remote/Makefile.am 2010-02-06 18:34:19.810967947 +0100
+@@ -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_CFLAGS= @X11_CFLAGS@
++gwave_exec_LDADD= @GTK_LIBS@ @X11_LIBS@
+
+ gwaverepl_SOURCES=gwaverepl.c xgclient.c xgexec.h repllib.c
+-gwaverepl_LDADD= @GTK_LIBS@ @READLINE_LIB@
++gwaverepl_CFLAGS= @X11_CFLAGS@ @GLIB_CFLAGS@
++gwaverepl_LDADD= @GTK_LIBS@ @READLINE_LIB@ @X11_LIBS@ @GLIB_LIBS@
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-20090213-r1.ebuild b/sci-electronics/gwave/gwave-20090213-r1.ebuild
new file mode 100644
index 000000000000..14779b8361a6
--- /dev/null
+++ b/sci-electronics/gwave/gwave-20090213-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit autotools eutils flag-o-matic fdo-mime gnome2-utils
+
+MY_PN="gwave2"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Analog waveform viewer for SPICE-like simulations"
+LICENSE="GPL-2"
+HOMEPAGE="http://gwave.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.gz"
+
+KEYWORDS="amd64 ppc x86"
+IUSE="gnuplot plotutils"
+SLOT="0"
+
+DEPEND="=dev-scheme/guile-1.8*[networking]
+ =dev-scheme/guile-gnome-platform-2.16*"
+
+RDEPEND="${DEPEND}
+ sci-electronics/electronics-menu
+ gnuplot? ( sci-visualization/gnuplot )
+ plotutils? ( media-libs/plotutils )"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+ append-libs -lX11
+ epatch "${FILESDIR}"/${P}-as-needed.patch
+ 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
+}
diff --git a/sci-electronics/gwave/gwave-20120229.ebuild b/sci-electronics/gwave/gwave-20120229.ebuild
new file mode 100644
index 000000000000..8d3fc5038203
--- /dev/null
+++ b/sci-electronics/gwave/gwave-20120229.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+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
+}
diff --git a/sci-electronics/gwave/metadata.xml b/sci-electronics/gwave/metadata.xml
new file mode 100644
index 000000000000..90ea59796e84
--- /dev/null
+++ b/sci-electronics/gwave/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci-electronics@gentoo.org</email>
+ <name>Gentoo Electronics Project</name>
+ </maintainer>
+ <longdescription>
+ Gwave is a waveform viewer. Gwave can read binary or ascii files written by
+ HSpice from transient, AC, or Sweep analyses, "raw" files written by Spice2,
+ Spice3, or ngspice, and transient analysis files from the CAzM simulator. It
+ can also read a generic tabular ASCII format suitable for use with GnuCap or
+ homegrown tools.
+ </longdescription>
+ <upstream>
+ <remote-id type="sourceforge">gwave</remote-id>
+ </upstream>
+</pkgmetadata>