Gentoo Archives: gentoo-commits

From: Jeroen Roovers <jer@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: app-office/sc/, app-office/sc/files/
Date: Sat, 04 Jun 2016 11:33:25
Message-Id: 1465039993.e5d64740c7a12799f5b954010a2edaecdd8f9812.jer@gentoo
1 commit: e5d64740c7a12799f5b954010a2edaecdd8f9812
2 Author: Jeroen Roovers <jer <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jun 4 11:32:47 2016 +0000
4 Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org>
5 CommitDate: Sat Jun 4 11:33:13 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5d64740
7
8 app-office/sc: Fix various issues
9
10 - Remove blocker on removed package dev-lang/stratego
11 - Have description explain the name, move previous content to metadata.xml
12 - Add some missing includes
13 - Initialise one variable (although it strictly isn't needed)
14
15 Package-Manager: portage-2.3.0_rc1
16
17 app-office/sc/files/sc-7.16-c.patch | 147 ++++++++++++++++++++++++++++++++++++
18 app-office/sc/metadata.xml | 4 +
19 app-office/sc/sc-7.16-r2.ebuild | 68 +++++++++++++++++
20 3 files changed, 219 insertions(+)
21
22 diff --git a/app-office/sc/files/sc-7.16-c.patch b/app-office/sc/files/sc-7.16-c.patch
23 new file mode 100644
24 index 0000000..fd4f06f
25 --- /dev/null
26 +++ b/app-office/sc/files/sc-7.16-c.patch
27 @@ -0,0 +1,147 @@
28 +--- a/abbrev.c
29 ++++ b/abbrev.c
30 +@@ -122,7 +122,7 @@
31 + del_abbr(char *abbrev)
32 + {
33 + struct abbrev *a;
34 +- struct abbrev **prev;
35 ++ struct abbrev **prev = NULL;
36 +
37 + if (!(a = find_abbr(abbrev, strlen(abbrev), prev)))
38 + return;
39 +--- a/help.c
40 ++++ b/help.c
41 +@@ -14,6 +14,10 @@
42 + #include "sc.h"
43 + #endif /* QREF */
44 +
45 ++#ifdef TROFF
46 ++#include <stdlib.h>
47 ++#endif /* TROFF */
48 ++
49 + char *intro[] = {
50 + " ",
51 + #if defined(QREF) && defined(TROFF)
52 +--- a/lex.c
53 ++++ b/lex.c
54 +@@ -27,6 +27,8 @@
55 +
56 + #ifdef IEEE_MATH
57 + #include <ieeefp.h>
58 ++#else
59 ++#include <math.h>
60 + #endif /* IEEE_MATH */
61 +
62 + #include <stdlib.h>
63 +--- a/sc.h
64 ++++ b/sc.h
65 +@@ -14,6 +14,9 @@
66 + #include <stdio.h>
67 + #endif
68 +
69 ++#include <unistd.h>
70 ++#include <curses.h>
71 ++
72 + #define ATBL(tbl, row, col) (*(tbl + row) + (col))
73 +
74 + #define MINROWS 100 /* minimum size at startup */
75 +@@ -390,6 +393,7 @@
76 + extern char *v_name(int row, int col);
77 + extern double eval(register struct enode *e);
78 + extern int any_locked_cells(int r1, int c1, int r2, int c2);
79 ++extern int are_abbrevs();
80 + extern int are_colors();
81 + extern int are_frames();
82 + extern int are_ranges();
83 +@@ -425,6 +429,7 @@
84 + extern struct crange *find_crange(int row, int col);
85 + extern struct frange *find_frange(int row, int col);
86 + extern void EvalAll();
87 ++extern void add_abbr(char *string);
88 + extern void add_crange(struct ent *r_left, struct ent *r_right, int pair);
89 + extern void add_frange(struct ent *or_left, struct ent *or_right,
90 + struct ent *ir_left, struct ent *ir_right, int toprows, int bottomrows,
91 +@@ -434,6 +439,7 @@
92 + extern void addplugin(char *ext, char *plugin, char type);
93 + extern void backcol(int arg);
94 + extern void backrow(int arg);
95 ++extern void center(int sr, int sc, int er, int ec);
96 + extern void change_color(int pair, struct enode *e);
97 + extern void checkbounds(int *rowp, int *colp);
98 + extern void clearent(struct ent *v);
99 +@@ -456,9 +462,12 @@
100 + extern void diesave();
101 + extern void doend(int rowinc, int colinc);
102 + extern void doformat(int c1, int c2, int w, int p, int r);
103 ++extern void dogetkey();
104 + extern void dupcol();
105 + extern void duprow();
106 + extern void doquery(char *s, char *data, int fd);
107 ++extern void doeval(struct enode *e, char *fmt, int row, int col, int fd);
108 ++extern void doseval(struct enode *e, int row, int col, int fd);
109 + extern void dostat(int fd);
110 + extern void dotick(int tick);
111 + extern void editexp(int row, int col);
112 +@@ -486,11 +495,14 @@
113 + extern void free_ent(register struct ent *p, int unlock);
114 + extern void getexp(int r0, int c0, int rn, int cn, int fd);
115 + extern void getfmt(int r0, int c0, int rn, int cn, int fd);
116 ++extern void getframe(int fd);
117 + extern void getformat(int col, int fd);
118 + extern void getnum(int r0, int c0, int rn, int cn, int fd);
119 ++extern void getrange(char *name, int fd);
120 + extern void getstring(int r0, int c0, int rn, int cn, int fd);
121 + extern void go_last();
122 + extern void goraw();
123 ++extern void gotonote();
124 + extern void help();
125 + extern void hide_col(int arg);
126 + extern void hide_row(int arg);
127 +@@ -507,6 +519,8 @@
128 + extern void label(register struct ent *v, register char *s, int flushdir);
129 + extern void let(struct ent *v, struct enode *e);
130 + extern void list_colors(FILE *f);
131 ++extern void ljustify(int sr, int sc, int er, int ec);
132 ++extern void list_frames(FILE *f);
133 + extern void list_ranges(FILE *f);
134 + extern void lock_cells(struct ent *v1, struct ent *v2);
135 + extern void markcell();
136 +@@ -523,6 +537,7 @@
137 + extern void read_hist();
138 + extern void remember(int save);
139 + extern void resetkbd();
140 ++extern void rjustify(int sr, int sc, int er, int ec);
141 + extern void rowshow_op();
142 + extern void scxfree(char *p);
143 + extern void setauto(int i);
144 +@@ -560,6 +575,9 @@
145 + extern void write_line(int c);
146 + extern void write_ranges(FILE *f);
147 + extern void yank_area(int sr, int sc, int er, int ec);
148 ++extern void yankcol(int arg);
149 ++extern void yankr(struct ent *v1, struct ent *v2);
150 ++extern void yankrow(int arg);
151 + extern void yyerror(char *err);
152 + extern int yylex();
153 + extern int yyparse();
154 +--- a/screen.c
155 ++++ b/screen.c
156 +@@ -870,7 +870,7 @@
157 + }
158 + } /* else */
159 + } else
160 +- if (!*pp && color && has_colors && cr && cr->r_color != 1) {
161 ++ if (!*pp && color && has_colors() && cr && cr->r_color != 1) {
162 + move(r, c);
163 + color_set(cr->r_color, NULL);
164 + printw("%*s", fwidth[col], " ");
165 +--- a/vi.c
166 ++++ b/vi.c
167 +@@ -5,6 +5,7 @@
168 + */
169 +
170 + #include <sys/types.h>
171 ++#include <sys/wait.h>
172 + #ifdef BSD42
173 + #include <strings.h>
174 + #else
175
176 diff --git a/app-office/sc/metadata.xml b/app-office/sc/metadata.xml
177 index 6f49eba..dc41733 100644
178 --- a/app-office/sc/metadata.xml
179 +++ b/app-office/sc/metadata.xml
180 @@ -2,4 +2,8 @@
181 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
182 <pkgmetadata>
183 <!-- maintainer-needed -->
184 +<longdescription lang="en">
185 +sc is a free curses-based spreadsheet program that uses key bindings similar to
186 +vi and less
187 +</longdescription>
188 </pkgmetadata>
189
190 diff --git a/app-office/sc/sc-7.16-r2.ebuild b/app-office/sc/sc-7.16-r2.ebuild
191 new file mode 100644
192 index 0000000..ae2776c
193 --- /dev/null
194 +++ b/app-office/sc/sc-7.16-r2.ebuild
195 @@ -0,0 +1,68 @@
196 +# Copyright 1999-2016 Gentoo Foundation
197 +# Distributed under the terms of the GNU General Public License v2
198 +# $Id$
199 +
200 +EAPI=6
201 +inherit eutils multilib toolchain-funcs
202 +
203 +DESCRIPTION="Spreadsheet Calculator"
204 +SRC_URI="ftp://ibiblio.org/pub/Linux/apps/financial/spreadsheet/${P}.tar.gz"
205 +HOMEPAGE="http://ibiblio.org/pub/Linux/apps/financial/spreadsheet/"
206 +
207 +SLOT="0"
208 +LICENSE="public-domain"
209 +KEYWORDS="~amd64 ~ppc ~sparc ~x86"
210 +
211 +COMMON_DEPEND="
212 + >=sys-libs/ncurses-5.2
213 +"
214 +DEPEND="
215 + virtual/pkgconfig
216 +"
217 +RDEPEND="
218 + ${COMMON_DEPEND}
219 +"
220 +
221 +PATCHES=(
222 + "${FILESDIR}"/${P}-amd64.patch
223 + "${FILESDIR}"/${P}-lex-syntax.patch
224 + "${FILESDIR}"/${P}-c.patch
225 +)
226 +
227 +src_prepare() {
228 + default
229 +
230 + sed -i \
231 + -e "/^prefix=/ s:/usr:${D}/usr:" \
232 + -e "/^MANDIR=/ s:${prefix}/man:${prefix}/share/man:" \
233 + -e "/^LIBDIR=/ s:${prefix}/lib:${prefix}/$(get_libdir):" \
234 + -e '/^LIB=/s|-lncurses|$(shell ${PKG_CONFIG} --libs ncurses)|g' \
235 + -e "/^CC=/ s:gcc:$(tc-getCC):" \
236 + -e "/^CFLAGS/ s:=-DSYSV3 -O2 -pipe:+=-DSYSV3:" \
237 + -e "/strip/ s:^:#:g" \
238 + Makefile || die
239 +
240 + eapply_user
241 +}
242 +
243 +src_compile() {
244 + tc-export PKG_CONFIG
245 + # no autoconf
246 + emake prefix="${D}"/usr
247 +
248 + emake ${PN}.1
249 + sed -i -e "s:${D}::g" sc.1 || die
250 +}
251 +
252 +src_install () {
253 + dodir /usr/bin
254 + dodir /usr/$(get_libdir)/sc
255 + dodir /usr/share/man/man1
256 +
257 + emake install
258 +
259 + doman sc.1 psc.1
260 +
261 + dodoc CHANGES README tutorial.sc
262 + dodoc VMS_NOTES ${P}.lsm TODO SC.MACROS
263 +}