summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-office/sc')
-rw-r--r--app-office/sc/Manifest1
-rw-r--r--app-office/sc/files/sc-7.16-amd64.patch23
-rw-r--r--app-office/sc/files/sc-7.16-lex-syntax.patch11
-rw-r--r--app-office/sc/metadata.xml7
-rw-r--r--app-office/sc/sc-7.16-r1.ebuild59
5 files changed, 101 insertions, 0 deletions
diff --git a/app-office/sc/Manifest b/app-office/sc/Manifest
new file mode 100644
index 000000000000..b16658e28ee5
--- /dev/null
+++ b/app-office/sc/Manifest
@@ -0,0 +1 @@
+DIST sc-7.16.tar.gz 210809 SHA256 1997a00b6d82d189b65f6fd2a856a34992abc99e50d9ec463bbf1afb750d1765 SHA512 efa495ba21d01b578a53f09101ccc28b564437317e0860904ad59136a24df9619dfc8715339296ae1567eaa8d620cdabc9bc2784962bc1c93e3bbd086856407b WHIRLPOOL 2fa2f9fba21ab1e281d73367f5879edb90023126108573b737a0836efdd6294eaaa54a574f124311d9e1556dc97c469cc4cdd760942a45f81563dd290730d92b
diff --git a/app-office/sc/files/sc-7.16-amd64.patch b/app-office/sc/files/sc-7.16-amd64.patch
new file mode 100644
index 000000000000..e381609011bb
--- /dev/null
+++ b/app-office/sc/files/sc-7.16-amd64.patch
@@ -0,0 +1,23 @@
+--- a/xmalloc.c
++++ b/xmalloc.c
+@@ -3,19 +3,12 @@
+ * $Revision: 7.16 $
+ */
+
++#include <stdlib.h>
+ #include <curses.h>
+ #include "sc.h"
+
+-extern char *malloc();
+-extern char *realloc();
+-extern void free();
+ void fatal();
+
+-#ifdef SYSV3
+-extern void free();
+-extern void exit();
+-#endif
+-
+ #define MAGIC (double)1234567890.12344
+
+ char *
diff --git a/app-office/sc/files/sc-7.16-lex-syntax.patch b/app-office/sc/files/sc-7.16-lex-syntax.patch
new file mode 100644
index 000000000000..9dcb46f25f83
--- /dev/null
+++ b/app-office/sc/files/sc-7.16-lex-syntax.patch
@@ -0,0 +1,11 @@
+--- a/lex.c
++++ b/lex.c
+@@ -107,7 +107,7 @@
+ yylex()
+ {
+ char *p = line + linelim;
+- int ret;
++ int ret = 0;
+ static int isfunc = 0;
+ static bool isgoto = 0;
+ static bool colstate = 0;
diff --git a/app-office/sc/metadata.xml b/app-office/sc/metadata.xml
new file mode 100644
index 000000000000..d9cd2cad66c2
--- /dev/null
+++ b/app-office/sc/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+<email>maintainer-needed@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/app-office/sc/sc-7.16-r1.ebuild b/app-office/sc/sc-7.16-r1.ebuild
new file mode 100644
index 000000000000..d9e0962abbb8
--- /dev/null
+++ b/app-office/sc/sc-7.16-r1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils multilib toolchain-funcs
+
+DESCRIPTION="sc is a free curses-based spreadsheet program that uses key bindings similar to vi and less"
+SRC_URI="ftp://ibiblio.org/pub/Linux/apps/financial/spreadsheet/${P}.tar.gz"
+HOMEPAGE="http://ibiblio.org/pub/Linux/apps/financial/spreadsheet/"
+
+SLOT="0"
+LICENSE="public-domain"
+KEYWORDS="amd64 ppc sparc x86"
+
+COMMON_DEPEND=">=sys-libs/ncurses-5.2"
+DEPEND="virtual/pkgconfig"
+RDEPEND="
+ ${COMMON_DEPEND}
+ !dev-lang/stratego
+ !<sci-chemistry/ccp4-apps-6.1.3-r4
+"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-amd64.patch \
+ "${FILESDIR}"/${P}-lex-syntax.patch
+
+ sed -i \
+ -e "/^prefix=/ s:/usr:${D}/usr:" \
+ -e "/^MANDIR=/ s:${prefix}/man:${prefix}/share/man:" \
+ -e "/^LIBDIR=/ s:${prefix}/lib:${prefix}/$(get_libdir):" \
+ -e '/^LIB=/s|-lncurses|$(shell ${PKG_CONFIG} --libs ncurses)|g' \
+ -e "/^CC=/ s:gcc:$(tc-getCC):" \
+ -e "/^CFLAGS/ s:=-DSYSV3 -O2 -pipe:+=-DSYSV3:" \
+ -e "/strip/ s:^:#:g" \
+ Makefile || die
+
+}
+
+src_compile() {
+ tc-export PKG_CONFIG
+ # no autoconf
+ emake prefix="${D}"/usr || die
+}
+
+src_install () {
+ # yes the makefile is so dumb it can't even make it's own dirs
+ dodir /usr/bin
+ dodir /usr/$(get_libdir)/sc
+ dodir /usr/share/man/man1
+ emake install
+
+ sed -i -e "s:${D}::g" sc.1 || die
+ doman sc.1 psc.1
+
+ dodoc CHANGES README sc.doc psc.doc tutorial.sc
+ dodoc VMS_NOTES ${P}.lsm TODO SC.MACROS
+}