summaryrefslogtreecommitdiff
path: root/data/sc-im
diff options
context:
space:
mode:
Diffstat (limited to 'data/sc-im')
-rw-r--r--data/sc-im/_metadata/description1
-rw-r--r--data/sc-im/_metadata/in.1443.000
l---------data/sc-im/_metadata/libxml2.dep1
l---------data/sc-im/_metadata/libzip.dep1
l---------data/sc-im/_metadata/maintainer1
-rw-r--r--data/sc-im/_metadata/name1
l---------data/sc-im/_metadata/ncurses.dep1
-rw-r--r--data/sc-im/_metadata/priority1
-rw-r--r--data/sc-im/_metadata/role1
-rw-r--r--data/sc-im/_metadata/section1
-rw-r--r--data/sc-im/_metadata/tags1
-rw-r--r--data/sc-im/_metadata/version1
-rw-r--r--data/sc-im/make.sh4
-rw-r--r--data/sc-im/makefile.diff105
-rw-r--r--data/sc-im/v0.7.0.tar.gzbin0 -> 1109887 bytes
-rw-r--r--data/sc-im/wordexp.diff338
16 files changed, 458 insertions, 0 deletions
diff --git a/data/sc-im/_metadata/description b/data/sc-im/_metadata/description
new file mode 100644
index 000000000..f8090566a
--- /dev/null
+++ b/data/sc-im/_metadata/description
@@ -0,0 +1 @@
+Spreadsheet program for the terminal, using ncurses
diff --git a/data/sc-im/_metadata/in.1443.00 b/data/sc-im/_metadata/in.1443.00
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/data/sc-im/_metadata/in.1443.00
diff --git a/data/sc-im/_metadata/libxml2.dep b/data/sc-im/_metadata/libxml2.dep
new file mode 120000
index 000000000..076284360
--- /dev/null
+++ b/data/sc-im/_metadata/libxml2.dep
@@ -0,0 +1 @@
+../../libxml2 \ No newline at end of file
diff --git a/data/sc-im/_metadata/libzip.dep b/data/sc-im/_metadata/libzip.dep
new file mode 120000
index 000000000..319c30a8f
--- /dev/null
+++ b/data/sc-im/_metadata/libzip.dep
@@ -0,0 +1 @@
+../../libzip \ No newline at end of file
diff --git a/data/sc-im/_metadata/maintainer b/data/sc-im/_metadata/maintainer
new file mode 120000
index 000000000..0c538aadb
--- /dev/null
+++ b/data/sc-im/_metadata/maintainer
@@ -0,0 +1 @@
+../../../people/mac \ No newline at end of file
diff --git a/data/sc-im/_metadata/name b/data/sc-im/_metadata/name
new file mode 100644
index 000000000..ddac7ee42
--- /dev/null
+++ b/data/sc-im/_metadata/name
@@ -0,0 +1 @@
+SC-IM
diff --git a/data/sc-im/_metadata/ncurses.dep b/data/sc-im/_metadata/ncurses.dep
new file mode 120000
index 000000000..a395fad08
--- /dev/null
+++ b/data/sc-im/_metadata/ncurses.dep
@@ -0,0 +1 @@
+../../ncurses \ No newline at end of file
diff --git a/data/sc-im/_metadata/priority b/data/sc-im/_metadata/priority
new file mode 100644
index 000000000..134d9bc32
--- /dev/null
+++ b/data/sc-im/_metadata/priority
@@ -0,0 +1 @@
+optional
diff --git a/data/sc-im/_metadata/role b/data/sc-im/_metadata/role
new file mode 100644
index 000000000..52b4d7301
--- /dev/null
+++ b/data/sc-im/_metadata/role
@@ -0,0 +1 @@
+hacker
diff --git a/data/sc-im/_metadata/section b/data/sc-im/_metadata/section
new file mode 100644
index 000000000..19814b684
--- /dev/null
+++ b/data/sc-im/_metadata/section
@@ -0,0 +1 @@
+Utilities
diff --git a/data/sc-im/_metadata/tags b/data/sc-im/_metadata/tags
new file mode 100644
index 000000000..ad5d50831
--- /dev/null
+++ b/data/sc-im/_metadata/tags
@@ -0,0 +1 @@
+purpose::console
diff --git a/data/sc-im/_metadata/version b/data/sc-im/_metadata/version
new file mode 100644
index 000000000..faef31a43
--- /dev/null
+++ b/data/sc-im/_metadata/version
@@ -0,0 +1 @@
+0.7.0
diff --git a/data/sc-im/make.sh b/data/sc-im/make.sh
new file mode 100644
index 000000000..4c6e8ed0d
--- /dev/null
+++ b/data/sc-im/make.sh
@@ -0,0 +1,4 @@
+pkg:setup
+cd src
+pkg:make prefix=${PKG_TAPF} PKGCONFIG="$(realpath "${PKG_BASE}/util/pkg-config.sh")"
+pkg:install prefix=${PKG_TAPF} PKGCONFIG="$(realpath "${PKG_BASE}/util/pkg-config.sh")"
diff --git a/data/sc-im/makefile.diff b/data/sc-im/makefile.diff
new file mode 100644
index 000000000..6d3ab2b0c
--- /dev/null
+++ b/data/sc-im/makefile.diff
@@ -0,0 +1,105 @@
+diff -Naur sc-im-0.7.0/src/Makefile sc-im-0.7.0+iPhone/src/Makefile
+--- sc-im-0.7.0/src/Makefile 2017-12-13 17:48:59.000000000 +0000
++++ sc-im-0.7.0+iPhone/src/Makefile 2019-04-17 17:23:24.489629635 +0000
+@@ -68,63 +68,68 @@
+ # Have threads? Set these two, if you want the autobackup feature to work with threads.
+ CFLAGS += -DHAVE_PTHREAD
+
+-ifneq ($(shell uname -s),Darwin)
++#ifneq ($(shell uname -s),Darwin)
+ LDLIBS += -pthread
+-endif
++#endif
+
+ # NOTE: libxlsxwriter is required for xlsx file export support
+-ifneq (,$(wildcard /usr/include/xlsxwriter.h))
+- CFLAGS += -DXLSX_EXPORT
+- LDLIBS += -lxlsxwriter
+-endif
+-ifneq (,$(wildcard /usr/local/include/xlsxwriter.h))
+- CFLAGS += -DXLSX_EXPORT
+- LDLIBS += -lxlsxwriter
+-endif
++#ifneq (,$(wildcard /usr/include/xlsxwriter.h))
++# CFLAGS += -DXLSX_EXPORT
++# LDLIBS += -lxlsxwriter
++#endif
++#ifneq (,$(wildcard /usr/local/include/xlsxwriter.h))
++# CFLAGS += -DXLSX_EXPORT
++# LDLIBS += -lxlsxwriter
++#endif
+
+ # Check for gnuplot existance
+-ifneq (, $(shell which gnuplot))
+- CFLAGS += -DGNUPLOT
+-endif
++#ifneq (, $(shell which gnuplot))
++# CFLAGS += -DGNUPLOT
++#endif
+
+ # dynamic linking (should not be used in FreeBSD
+-ifneq ($(shell uname -s),FreeBSD)
+- LDLIBS += -ldl
+-endif
++#ifneq ($(shell uname -s),FreeBSD)
++# LDLIBS += -ldl
++#endif
+
+-ifneq (, $(shell which pkg-config))
++PKGCONFIG := pkg-config
++
++ifneq ($(PKGCONFIG),)
+ # Any system with pkg-config
+
+ # NOTE: ncursesw (required)
+ ifeq ($(shell uname -s),Darwin)
+ # macOS' ncurses is built with wide-char support
+ LDFLAGS += -lncurses
+- else ifneq ($(shell pkg-config --exists ncursesw || echo 'no'),no)
+- CFLAGS += $(shell pkg-config --cflags ncursesw)
+- LDLIBS += $(shell pkg-config --libs ncursesw)
+- else ifneq ($(shell pkg-config --exists ncurses || echo 'no'),no)
++ else ifneq ($(shell $(PKGCONFIG) --exists ncursesw || echo 'no'),no)
++ CFLAGS += $(shell $(PKGCONFIG) --cflags ncursesw)
++ LDLIBS += $(shell $(PKGCONFIG) --libs ncursesw)
++ else ifneq ($(shell $(PKGCONFIG) --exists ncurses || echo 'no'),no)
+ # hopefully this includes wide character support then
+- CFLAGS += $(shell pkg-config --cflags ncurses)
+- LDLIBS += $(shell pkg-config --libs ncurses)
++ CFLAGS += $(shell $(PKGCONFIG) --cflags ncurses)
++ LDLIBS += $(shell $(PKGCONFIG) --libs ncurses)
+ else
+ LDLIBS += -lncursesw
+ endif
+
+ # NOTE: libxml and libzip are required for xlsx file import support
+- ifneq ($(shell pkg-config --exists libzip libxml-2.0 || echo 'no'),no)
+- CFLAGS += -DXLSX $(shell pkg-config --cflags libxml-2.0 libzip)
+- LDLIBS += $(shell pkg-config --libs libxml-2.0 libzip)
++ ifneq ($(shell $(PKGCONFIG) --exists libzip libxml-2.0 || echo 'no'),no)
++ CFLAGS += -DXLSX $(shell $(PKGCONFIG) --cflags libzip)
++ LDLIBS += $(shell $(PKGCONFIG) --libs libzip)
++ # The pkg-wrapper can't handle two at once for some reason.
++ CFLAGS += $(shell $(PKGCONFIG) --cflags libxml-2.0 )
++ LDLIBS += $(shell $(PKGCONFIG) --libs libxml-2.0)
+ endif
+
+ # NOTE: lua support
+- ifneq ($(shell pkg-config --exists lua51 || echo 'no'),no)
+- CFLAGS += -DXLUA $(shell pkg-config --cflags lua51)
+- LDLIBS += $(shell pkg-config --libs lua51) -Wl,--export-dynamic
+- else ifneq ($(shell pkg-config --exists lua-5.1 || echo 'no'),no) # FreeBSD
+- CFLAGS += -DXLUA $(shell pkg-config --cflags lua-5.1)
+- LDLIBS += $(shell pkg-config --libs lua-5.1) -Wl,--export-dynamic
++ ifneq ($(shell $(PKGCONFIG) --exists lua51 || echo 'no'),no)
++ CFLAGS += -DXLUA $(shell $(PKGCONFIG) --cflags lua51)
++ LDLIBS += $(shell $(PKGCONFIG) --libs lua51) -Wl,--export-dynamic
++ else ifneq ($(shell $(PKGCONFIG) --exists lua-5.1 || echo 'no'),no) # FreeBSD
++ CFLAGS += -DXLUA $(shell $(PKGCONFIG) --cflags lua-5.1)
++ LDLIBS += $(shell $(PKGCONFIG) --libs lua-5.1) -Wl,--export-dynamic
+ endif
+-else ifeq ($(shell uname -s),Darwin)
++else ifeq ($(echo Darwin),Darwin)
+ # macOS without pkg-config
+
+ # macOS' ncurses is built with wide-char support
diff --git a/data/sc-im/v0.7.0.tar.gz b/data/sc-im/v0.7.0.tar.gz
new file mode 100644
index 000000000..cb840c980
--- /dev/null
+++ b/data/sc-im/v0.7.0.tar.gz
Binary files differ
diff --git a/data/sc-im/wordexp.diff b/data/sc-im/wordexp.diff
new file mode 100644
index 000000000..0a9bdcf5e
--- /dev/null
+++ b/data/sc-im/wordexp.diff
@@ -0,0 +1,338 @@
+diff -Naur sc-im-0.7.0/src/cmds_command.c sc-im-0.7.0+iPhone/src/cmds_command.c
+--- sc-im-0.7.0/src/cmds_command.c 2017-12-13 17:48:59.000000000 +0000
++++ sc-im-0.7.0+iPhone/src/cmds_command.c 2019-04-17 14:23:10.309275806 +0000
+@@ -46,7 +46,7 @@
+ #include <wchar.h>
+ #include <stdlib.h>
+ #include <ctype.h> // for isprint()
+-#include <wordexp.h>
++#include "wordexp.h"
+ #include "sc.h" // for rescol
+ #include "conf.h"
+ #include "cmds_command.h"
+diff -Naur sc-im-0.7.0/src/file.c sc-im-0.7.0+iPhone/src/file.c
+--- sc-im-0.7.0/src/file.c 2017-12-13 17:48:59.000000000 +0000
++++ sc-im-0.7.0+iPhone/src/file.c 2019-04-17 14:22:52.813269422 +0000
+@@ -53,7 +53,7 @@
+ #include <unistd.h>
+ #include <wchar.h>
+ #include <sys/wait.h>
+-#include <wordexp.h>
++#include "wordexp.h"
+
+ #include "conf.h"
+ #include "maps.h"
+diff -Naur sc-im-0.7.0/src/main.c sc-im-0.7.0+iPhone/src/main.c
+--- sc-im-0.7.0/src/main.c 2017-12-13 17:48:59.000000000 +0000
++++ sc-im-0.7.0+iPhone/src/main.c 2019-04-17 14:22:24.025259625 +0000
+@@ -60,7 +60,7 @@
+ #include <fcntl.h> // for F_GETFL O_NONBLOCK F_SETFL
+ #include <locale.h>
+ #include <wchar.h>
+-#include <wordexp.h>
++#include "wordexp.h"
+ #include <sys/ioctl.h> // for ioctl
+
+ #include "main.h"
+diff -Naur sc-im-0.7.0/src/wordexp.c sc-im-0.7.0+iPhone/src/wordexp.c
+--- sc-im-0.7.0/src/wordexp.c 1970-01-01 00:00:00.000000000 +0000
++++ sc-im-0.7.0+iPhone/src/wordexp.c 2019-04-17 14:25:52.777348253 +0000
+@@ -0,0 +1,209 @@
++/*
++ * Copyright 1994, University Corporation for Atmospheric Research
++ * See ../COPYRIGHT file for copying and redistribution conditions.
++ */
++/*
++ * Reproduction of ../COPYRIGHT file:
++ *
++ *********************************************************************
++
++Copyright 1995-2002 University Corporation for Atmospheric Research/Unidata
++
++Portions of this software were developed by the Unidata Program at the
++University Corporation for Atmospheric Research.
++
++Access and use of this software shall impose the following obligations
++and understandings on the user. The user is granted the right, without
++any fee or cost, to use, copy, modify, alter, enhance and distribute
++this software, and any derivative works thereof, and its supporting
++documentation for any purpose whatsoever, provided that this entire
++notice appears in all copies of the software, derivative works and
++supporting documentation. Further, UCAR requests that the user credit
++UCAR/Unidata in any publications that result from the use of this
++software or in any product that includes this software. The names UCAR
++and/or Unidata, however, may not be used in any advertising or publicity
++to endorse or promote any products or commercial entity unless specific
++written permission is obtained from UCAR/Unidata. The user also
++understands that UCAR/Unidata is not obligated to provide the user with
++any support, consulting, training or assistance of any kind with regard
++to the use, operation and performance of this software nor to provide
++the user with any updates, revisions, new versions or "bug fixes."
++
++THIS SOFTWARE IS PROVIDED BY UCAR/UNIDATA "AS IS" AND ANY EXPRESS OR
++IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
++WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++DISCLAIMED. IN NO EVENT SHALL UCAR/UNIDATA BE LIABLE FOR ANY SPECIAL,
++INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
++FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
++NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
++WITH THE ACCESS, USE OR PERFORMANCE OF THIS SOFTWARE.
++
++ *********************************************************************
++ */
++
++/* $Id: wordexp.c,v 1.13 2002/12/26 16:46:46 steve Exp $ */
++
++#include <stdlib.h>
++#include <string.h>
++#include <ctype.h>
++
++#include "wordexp.h"
++
++
++
++/*
++ * Translate return value from wordexp() into a string
++ */
++const char *
++s_wrde_err(int wrde_err)
++{
++ switch(wrde_err) {
++ case 0: return "No Error";
++ case WRDE_BADCHAR: return "WRDE_BADCHAR";
++ case WRDE_BADVAL: return "WRDE_BADVAL";
++ case WRDE_CMDSUB: return "WRDE_CMDSUB";
++ case WRDE_NOSPACE: return "WRDE_NOSPACE";
++ case WRDE_SYNTAX: return "WRDE_SYNTAX";
++ }
++ /* default */
++ return "Unknown Error";
++}
++
++
++/*ARGSUSED*/
++int
++wordexp(const char *words, wordexp_t *pwordexp, int flags)
++{
++ const char *ccp;
++ char **argv;
++ const char *buf;
++ size_t argc;
++ enum states {ARGSTART, IN_QUOTE, NOT_IN_QUOTE, DONE};
++ enum classes {EOS, SPACE, QUOTE, OTHER};
++ int state = ARGSTART;
++ char *argbuf;
++ const char *sp;
++ char *dp;
++ int status = 0;
++
++ /* devour leading white space */
++ for(ccp = words; *ccp != 0 && isspace(*ccp); )
++ ccp++;
++ /* skip comments */
++ if(*ccp == '#')
++ {
++ pwordexp->we_wordc = 0;
++ pwordexp->we_wordv = NULL;
++ return 0;
++ }
++
++/* If every other character was a space ... */
++#define MAXNARGS(str) ((strlen(str) +1)/2 +1)
++ argv = (char **)calloc(MAXNARGS(ccp), sizeof(char *));
++ if(argv == NULL)
++ return WRDE_NOSPACE;
++
++ buf = ccp;
++
++ argbuf = malloc(strlen(words)+1); /* where each arg is built */
++ if (argbuf == NULL)
++ {
++ free(argv);
++ return WRDE_NOSPACE;
++ }
++
++ sp = buf;
++ dp = argbuf;
++ argc = 0;
++ while(state != DONE)
++ {
++ int class;
++
++ if (*sp == 0)
++ class = EOS;
++ else if (isspace(*sp))
++ class = SPACE;
++ else if (*sp == '"')
++ class = QUOTE;
++ else
++ class = OTHER;
++ switch (state) {
++ case ARGSTART:
++ switch(class) {
++ case EOS:
++ state = DONE;
++ break;
++ case SPACE:
++ sp++;
++ break;
++ case QUOTE:
++ sp++;
++ state = IN_QUOTE;
++ break;
++ case OTHER:
++ *dp++ = *sp++;
++ state = NOT_IN_QUOTE;
++ break;
++ }
++ break;
++ case IN_QUOTE:
++ switch(class) {
++ case EOS: /* unmatched quote */
++ state = DONE;
++ status = WRDE_SYNTAX;
++ break;
++ case QUOTE:
++ sp++;
++ state = NOT_IN_QUOTE;
++ break;
++ case SPACE:
++ case OTHER:
++ *dp++ = *sp++;
++ break;
++ }
++ break;
++ case NOT_IN_QUOTE:
++ switch(class) {
++ case EOS:
++ *dp = 0;
++ dp = argbuf;
++ argv[argc++] = strdup(argbuf);
++ state = DONE;
++ break;
++ case SPACE:
++ *dp = 0;
++ dp = argbuf;
++ argv[argc++] = strdup(argbuf);
++ sp++;
++ state = ARGSTART;
++ break;
++ case QUOTE:
++ sp++;
++ state = IN_QUOTE;
++ break;
++ case OTHER:
++ *dp++ = *sp++;
++ break;
++ }
++ break;
++ }
++ }
++ argv[argc] = NULL;
++
++ pwordexp->we_wordc = argc;
++ pwordexp->we_wordv = argv;
++
++ free(argbuf);
++
++ return status;
++}
++
++void
++wordfree(wordexp_t *pwordexp)
++{
++ if(pwordexp == NULL || pwordexp->we_wordv == NULL)
++ return;
++ if(*pwordexp->we_wordv)
++ free(*pwordexp->we_wordv);
++ free(pwordexp->we_wordv);
++}
+diff -Naur sc-im-0.7.0/src/wordexp.h sc-im-0.7.0+iPhone/src/wordexp.h
+--- sc-im-0.7.0/src/wordexp.h 1970-01-01 00:00:00.000000000 +0000
++++ sc-im-0.7.0+iPhone/src/wordexp.h 2019-04-17 14:24:09.137299413 +0000
+@@ -0,0 +1,85 @@
++/*
++ * Copyright 1994, University Corporation for Atmospheric Research
++ * See ../COPYRIGHT file for copying and redistribution conditions.
++ */
++/*
++ * Reproduction of ../COPYRIGHT file:
++ *
++ *********************************************************************
++
++Copyright 1995-2002 University Corporation for Atmospheric Research/Unidata
++
++Portions of this software were developed by the Unidata Program at the
++University Corporation for Atmospheric Research.
++
++Access and use of this software shall impose the following obligations
++and understandings on the user. The user is granted the right, without
++any fee or cost, to use, copy, modify, alter, enhance and distribute
++this software, and any derivative works thereof, and its supporting
++documentation for any purpose whatsoever, provided that this entire
++notice appears in all copies of the software, derivative works and
++supporting documentation. Further, UCAR requests that the user credit
++UCAR/Unidata in any publications that result from the use of this
++software or in any product that includes this software. The names UCAR
++and/or Unidata, however, may not be used in any advertising or publicity
++to endorse or promote any products or commercial entity unless specific
++written permission is obtained from UCAR/Unidata. The user also
++understands that UCAR/Unidata is not obligated to provide the user with
++any support, consulting, training or assistance of any kind with regard
++to the use, operation and performance of this software nor to provide
++the user with any updates, revisions, new versions or "bug fixes."
++
++THIS SOFTWARE IS PROVIDED BY UCAR/UNIDATA "AS IS" AND ANY EXPRESS OR
++IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
++WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
++DISCLAIMED. IN NO EVENT SHALL UCAR/UNIDATA BE LIABLE FOR ANY SPECIAL,
++INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING
++FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
++NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
++WITH THE ACCESS, USE OR PERFORMANCE OF THIS SOFTWARE.
++
++ *********************************************************************
++ *
++ */
++
++/* $Id: wordexp.h,v 1.5 1994/05/12 20:46:40 davis Exp $ */
++#ifndef _WORDEXP_H
++#define _WORDEXP_H
++
++#include <sys/cdefs.h>
++#include <_types.h>
++#include <sys/_types/_size_t.h>
++#include <Availability.h>
++
++typedef struct {
++ size_t we_wordc;
++ char **we_wordv;
++ size_t we_offs;
++} wordexp_t;
++
++/* wordexp() flags Argument */
++#define WRDE_APPEND 0x01
++#define WRDE_DOOFFS 0x02
++#define WRDE_NOCMD 0x04
++#define WRDE_REUSE 0x08
++#define WRDE_SHOWERR 0x10
++#define WRDE_UNDEF 0x20
++
++/*
++ * wordexp() Return Values
++ */
++/* required */
++#define WRDE_BADCHAR 1
++#define WRDE_BADVAL 2
++#define WRDE_CMDSUB 3
++#define WRDE_NOSPACE 4
++#define WRDE_NOSYS 5
++#define WRDE_SYNTAX 6
++
++
++__BEGIN_DECLS
++int wordexp(const char * __restrict, wordexp_t * __restrict, int);
++void wordfree(wordexp_t *);
++__END_DECLS
++
++#endif /* _WORDEXP_H */