[MacPorts] #387: new port: editors/jove
MacPorts
noreply at macports.org
Thu Mar 24 06:26:15 PDT 2016
#387: new port: editors/jove
-------------------------+------------------------
Reporter: vivek@… | Owner: michaelm@…
Type: submission | Status: closed
Priority: Normal | Milestone:
Component: ports | Version: 1.0
Resolution: fixed | Keywords:
Port: jove |
-------------------------+------------------------
Changes (by ryandesign@…):
* type: defect => submission
* port: => jove
Old description:
> This is mostly a transliteration of the freebsd port for jove, an emacs-
> inspired
> editor. only difference from freebsd version is in how the Makefile is
> patched.
>
> # This is a shell archive. Save it in a file, remove anything before
> # this line, and then unpack it by entering "sh file". Note, it may
> # create directories; files and directories will be owned by you and
> # have default permissions.
> #
> # This archive contains:
> #
> # jove
> # jove/files
> # jove/files/patch-aa
> # jove/files/patch-ab
> # jove/files/patch-ac
> # jove/files/patch-ad
> # jove/files/patch-ae
> # jove/files/patch-af
> # jove/files/patch-ag
> # jove/Portfile
> #
> echo c - jove
> mkdir -p jove > /dev/null 2>&1
> echo c - jove/files
> mkdir -p jove/files > /dev/null 2>&1
> echo x - jove/files/patch-aa
> sed 's/^X//' >jove/files/patch-aa << 'END-of-jove/files/patch-aa'
> X--- Makefile.orig Tue Mar 19 13:44:33 1996
> X+++ Makefile Wed Dec 20 05:39:12 2000
> X@@ -27,16 +27,16 @@
> X # LIBDIR and SHAREDIR. All others must already exist.
> X
> X SHELL = /bin/sh
> X-TMPDIR = /usr/tmp
> X+TMPDIR = /var/tmp
> X RECDIR = /usr/preserve
> X
> X-JOVEHOME = /usr/local
> X-SHAREDIR = $(JOVEHOME)/lib/jove
> X-LIBDIR = $(JOVEHOME)/lib/jove
> X+JOVEHOME = __PREFIX
> X+SHAREDIR = $(JOVEHOME)/share/jove
> X+LIBDIR = $(JOVEHOME)/libexec/jove
> X BINDIR = $(JOVEHOME)/bin
> X MANDIR = $(JOVEHOME)/man/man$(MANEXT)
> X MANEXT = 1
> X-DFLTSHELL = /bin/csh
> X+DFLTSHELL = /bin/sh
> X
> X # The install commands of BSD and System V differ in unpleasant ways:
> X # -c: copy (BSD); -c dir: destination directory (SysV)
> X@@ -50,12 +50,12 @@
> X INSTALLFLAGS = # -g bin -o root
> X
> X # to install executable files
> X-XINSTALL=cp
> X-#XINSTALL=/usr/ucb/install $(INSTALLFLAGS) -c -m 755 # -s
> X+#XINSTALL=cp
> X+XINSTALL=install $(INSTALLFLAGS) -c -m 755 -s
> X
> X # to install text files
> X-TINSTALL=cp
> X-#TINSTALL=/usr/ucb/install $(INSTALLFLAGS) -c -m 644
> X+#TINSTALL=cp
> X+TINSTALL=install $(INSTALLFLAGS) -c -m 644
> X
> X # These should all just be right if the above ones are.
> X # You will confuse JOVE if you move anything from LIBDIR or SHAREDIR.
> X@@ -79,7 +79,7 @@
> X # compiler, adding -Xa -v will increase compiler checking.
> X # On DEC OSF/1, -std1 -O
> X
> X-OPTFLAGS = -O
> X+#OPTFLAGS = -O
> X
> X # For making dependencies under BSD systems
> X DEPENDFLAG = -M
> X@@ -163,13 +163,13 @@
> X #
> X # You can just say 'make SYSDEFS=-Dwhatever' on these systems.
> X
> X-SYSDEFS =
> X+SYSDEFS = -DBSDPOSIX
> X
> X # for SCO Xenix, set
> X # MEMFLAGS = -Mle
> X # CFLAGS = -LARGE -O -F 3000 -K -Mle (say -Mle2 for an 80286)
> X
> X-CFLAGS = $(OPTFLAGS) $(SYSDEFS)
> X+CFLAGS += $(OPTFLAGS) $(SYSDEFS)
> X
> X # For SYSVR4 (/usr/ucb/cc will NOT work because of setjmp.h):
> X # CC = /usr/bin/cc
> X@@ -213,7 +213,7 @@
> X TROFF = troff -Tpost
> X TROFFPOST = | /usr/lib/lp/postscript/dpost - >troff.out.ps
> X
> X-MANUALS = $(JOVEM) $(TEACHJOVEM) $(XJOVEM) $(JOVETOOLM)
> X+MANUALS = $(JOVEM) $(TEACHJOVEM) # $(XJOVEM) $(JOVETOOLM)
> X
> X C_SRC = commands.c commands.tab abbrev.c argcount.c ask.c buf.c c.c
> case.c
> jctype.c \
> X delete.c disp.c extend.c fp.c fmt.c insert.c io.c iproc.c \
> END-of-jove/files/patch-aa
> echo x - jove/files/patch-ab
> sed 's/^X//' >jove/files/patch-ab << 'END-of-jove/files/patch-ab'
> X*** mouse.c.org Thu Mar 7 12:34:43 1996
> X--- mouse.c Thu Jun 25 14:17:16 1998
> X***************
> X*** 266,272 ****
> X /* Format of command to xterm to start or stop mouse hilite
> tracking:
> X * ^[ [ func ; startx ; starty ; firstrow ; lastrow T
> X */
> X! #define XTERMBUG
> X #ifdef XTERMBUG
> X static const char hl_fmt[] = "\033[%d;%d;%d;%d;%dTX";
> X #else
> X--- 266,272 ----
> X /* Format of command to xterm to start or stop mouse hilite
> tracking:
> X * ^[ [ func ; startx ; starty ; firstrow ; lastrow T
> X */
> X! /* #undef XTERMBUG */
> X #ifdef XTERMBUG
> X static const char hl_fmt[] = "\033[%d;%d;%d;%d;%dTX";
> X #else
> END-of-jove/files/patch-ab
> echo x - jove/files/patch-ac
> sed 's/^X//' >jove/files/patch-ac << 'END-of-jove/files/patch-ac'
> X--- sysdep.h.orig Mon Jul 20 16:39:19 1998
> X+++ sysdep.h Mon Jul 20 16:40:08 1998
> X@@ -154,6 +154,7 @@
> X # define USE_FSYNC 1
> X # define USE_FSTAT 1
> X # define USE_FCHMOD 1
> X+# define USE_CTYPE 1
> X #endif
> X
> X #ifdef IRIX
> END-of-jove/files/patch-ac
> echo x - jove/files/patch-ad
> sed 's/^X//' >jove/files/patch-ad << 'END-of-jove/files/patch-ad'
> X--- abbrev.c.orig Fri Mar 8 02:34:41 1996
> X+++ abbrev.c Wed Dec 20 05:19:33 2000
> X@@ -274,7 +274,16 @@
> X "jabbXXXXXX"
> X #endif
> X );
> X+#ifndef NO_MKSTEMP
> X+ {
> X+ int fd = mkstemp(tname);
> X+ if ( fd == -1 )
> X+ err( 1, "can't create temp file %s", tname );
> X+ close( fd );
> X+ }
> X+#else
> X (void) mktemp(tname);
> X+#endif
> X save_abbrevs(tname);
> X setfname(ebuf, tname);
> X read_file(tname, NO);
> END-of-jove/files/patch-ad
> echo x - jove/files/patch-ae
> sed 's/^X//' >jove/files/patch-ae << 'END-of-jove/files/patch-ae'
> X--- io.c.orig Fri Mar 8 02:34:42 1996
> X+++ io.c Wed Dec 20 05:19:17 2000
> X@@ -1193,10 +1193,16 @@
> X #endif
> X );
> X tfname = copystr(buf);
> X+#ifdef NO_MKSTEMP
> X tfname = mktemp(tfname);
> X+#endif
> X #ifndef MSFILESYSTEM
> X+#ifndef NO_MKSTEMP
> X+ tmpfd = mkstemp(tfname);
> X+#else
> X (void) close(creat(tfname, 0600));
> X tmpfd = open(tfname, 2);
> X+#endif
> X #else /* MSFILESYSTEM */
> X tmpfd = open(tfname, O_CREAT|O_EXCL|O_BINARY|O_RDWR,
> S_IWRITE|S_IREAD);
> X #endif /* MSFILESYSTEM */
> END-of-jove/files/patch-ae
> echo x - jove/files/patch-af
> sed 's/^X//' >jove/files/patch-af << 'END-of-jove/files/patch-af'
> X--- proc.c.orig Sat Mar 9 06:46:40 1996
> X+++ proc.c Wed Dec 20 05:20:13 2000
> X@@ -827,8 +827,14 @@
> X int ph;
> X
> X swritef(pnbuf, sizeof(pnbuf), "%s/%s", TmpDir,
> "jpXXXXXX");
> X+#ifndef NO_MKSTEMP
> X+ pipename = pnbuf;
> X+ ph = mkstemp( pipename );
> X+#else
> X pipename = mktemp(pnbuf);
> X- if ((ph = creat(pipename, S_IWRITE|S_IREAD)) < 0)
> X+ ph = creat(pipename, S_IWRITE|S_IREAD);
> X+#endif
> X+ if (ph == -1)
> X complain("cannot make pipe for filter: %s",
> strerror(errno));
> X close(1);
> X close(2);
> X@@ -923,7 +929,18 @@
> X jmp_buf sav_jmp;
> X
> X swritef(tnambuf, sizeof(tnambuf), "%s/%s", TmpDir, "jfXXXXXX");
> X+#ifndef NO_MKSTEMP
> X+ {
> X+ int fd = mkstemp(tnambuf);
> X+ if ( fd == -1 )
> X+ complain( "can't create temp file %s: %s",
> X+ tnambuf, strerror(errno) );
> X+ close( fd );
> X+ tname = tnambuf;
> X+ }
> X+#else
> X tname = mktemp(tnambuf);
> X+#endif
> X fp = open_file(tname, iobuff, F_WRITE, YES);
> X push_env(sav_jmp);
> X if (setjmp(mainjmp) == 0) {
> END-of-jove/files/patch-af
> echo x - jove/files/patch-ag
> sed 's/^X//' >jove/files/patch-ag << 'END-of-jove/files/patch-ag'
> X--- rec.c.orig Fri Mar 8 02:34:43 1996
> X+++ rec.c Wed Dec 20 05:19:50 2000
> X@@ -55,8 +55,12 @@
> X #endif
> X );
> X recfname = copystr(buf);
> X+#ifndef NO_MKSTEMP
> X+ rec_fd = mkstemp(recfname);
> X+#else
> X recfname = mktemp(recfname);
> X rec_fd = creat(recfname, 0644);
> X+#endif
> X if (rec_fd == -1) {
> X complain("Cannot create \"%s\"; recovery disabled.",
> recfname);
> X /*NOTREACHED*/
> END-of-jove/files/patch-ag
> echo x - jove/Portfile
> sed 's/^X//' >jove/Portfile << 'END-of-jove/Portfile'
> X# $Id: $
> X
> XPortSystem 1.0
> Xname jove
> Xversion 4.16
> Xworksrcdir jove
> Xconfigure {
> X cd ${worksrcpath}
> X reinplace "s|__PREFIX|${prefix}|g" Makefile
> X }
> Xcategories editors
> Xmaintainers vivek at khera.org
> Xdescription Jonathan's Own Version of Emacs
> Xlong_description \
> XJove is a simple text editor in the spirit of GNU emacs, but somewhat \
> Xsmaller and faster to start up.
> Xplatforms darwin freebsd
> Xmaster_sites ftp://ftp.cs.toronto.edu/pub/moraes/jove/
> Xpatchfiles patch-aa patch-ab patch-ac patch-ad patch-ae patch-af patch-
> ag
> Xchecksums md5 38ebd64355a99b0d007aaef17b0d00b1
> END-of-jove/Portfile
> exit
New description:
This is mostly a transliteration of the freebsd port for jove, an emacs-
inspired
editor. only difference from freebsd version is in how the Makefile is
patched.
{{{
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# jove
# jove/files
# jove/files/patch-aa
# jove/files/patch-ab
# jove/files/patch-ac
# jove/files/patch-ad
# jove/files/patch-ae
# jove/files/patch-af
# jove/files/patch-ag
# jove/Portfile
#
echo c - jove
mkdir -p jove > /dev/null 2>&1
echo c - jove/files
mkdir -p jove/files > /dev/null 2>&1
echo x - jove/files/patch-aa
sed 's/^X//' >jove/files/patch-aa << 'END-of-jove/files/patch-aa'
X--- Makefile.orig Tue Mar 19 13:44:33 1996
X+++ Makefile Wed Dec 20 05:39:12 2000
X@@ -27,16 +27,16 @@
X # LIBDIR and SHAREDIR. All others must already exist.
X
X SHELL = /bin/sh
X-TMPDIR = /usr/tmp
X+TMPDIR = /var/tmp
X RECDIR = /usr/preserve
X
X-JOVEHOME = /usr/local
X-SHAREDIR = $(JOVEHOME)/lib/jove
X-LIBDIR = $(JOVEHOME)/lib/jove
X+JOVEHOME = __PREFIX
X+SHAREDIR = $(JOVEHOME)/share/jove
X+LIBDIR = $(JOVEHOME)/libexec/jove
X BINDIR = $(JOVEHOME)/bin
X MANDIR = $(JOVEHOME)/man/man$(MANEXT)
X MANEXT = 1
X-DFLTSHELL = /bin/csh
X+DFLTSHELL = /bin/sh
X
X # The install commands of BSD and System V differ in unpleasant ways:
X # -c: copy (BSD); -c dir: destination directory (SysV)
X@@ -50,12 +50,12 @@
X INSTALLFLAGS = # -g bin -o root
X
X # to install executable files
X-XINSTALL=cp
X-#XINSTALL=/usr/ucb/install $(INSTALLFLAGS) -c -m 755 # -s
X+#XINSTALL=cp
X+XINSTALL=install $(INSTALLFLAGS) -c -m 755 -s
X
X # to install text files
X-TINSTALL=cp
X-#TINSTALL=/usr/ucb/install $(INSTALLFLAGS) -c -m 644
X+#TINSTALL=cp
X+TINSTALL=install $(INSTALLFLAGS) -c -m 644
X
X # These should all just be right if the above ones are.
X # You will confuse JOVE if you move anything from LIBDIR or SHAREDIR.
X@@ -79,7 +79,7 @@
X # compiler, adding -Xa -v will increase compiler checking.
X # On DEC OSF/1, -std1 -O
X
X-OPTFLAGS = -O
X+#OPTFLAGS = -O
X
X # For making dependencies under BSD systems
X DEPENDFLAG = -M
X@@ -163,13 +163,13 @@
X #
X # You can just say 'make SYSDEFS=-Dwhatever' on these systems.
X
X-SYSDEFS =
X+SYSDEFS = -DBSDPOSIX
X
X # for SCO Xenix, set
X # MEMFLAGS = -Mle
X # CFLAGS = -LARGE -O -F 3000 -K -Mle (say -Mle2 for an 80286)
X
X-CFLAGS = $(OPTFLAGS) $(SYSDEFS)
X+CFLAGS += $(OPTFLAGS) $(SYSDEFS)
X
X # For SYSVR4 (/usr/ucb/cc will NOT work because of setjmp.h):
X # CC = /usr/bin/cc
X@@ -213,7 +213,7 @@
X TROFF = troff -Tpost
X TROFFPOST = | /usr/lib/lp/postscript/dpost - >troff.out.ps
X
X-MANUALS = $(JOVEM) $(TEACHJOVEM) $(XJOVEM) $(JOVETOOLM)
X+MANUALS = $(JOVEM) $(TEACHJOVEM) # $(XJOVEM) $(JOVETOOLM)
X
X C_SRC = commands.c commands.tab abbrev.c argcount.c ask.c buf.c c.c
case.c
jctype.c \
X delete.c disp.c extend.c fp.c fmt.c insert.c io.c iproc.c \
END-of-jove/files/patch-aa
echo x - jove/files/patch-ab
sed 's/^X//' >jove/files/patch-ab << 'END-of-jove/files/patch-ab'
X*** mouse.c.org Thu Mar 7 12:34:43 1996
X--- mouse.c Thu Jun 25 14:17:16 1998
X***************
X*** 266,272 ****
X /* Format of command to xterm to start or stop mouse hilite
tracking:
X * ^[ [ func ; startx ; starty ; firstrow ; lastrow T
X */
X! #define XTERMBUG
X #ifdef XTERMBUG
X static const char hl_fmt[] = "\033[%d;%d;%d;%d;%dTX";
X #else
X--- 266,272 ----
X /* Format of command to xterm to start or stop mouse hilite
tracking:
X * ^[ [ func ; startx ; starty ; firstrow ; lastrow T
X */
X! /* #undef XTERMBUG */
X #ifdef XTERMBUG
X static const char hl_fmt[] = "\033[%d;%d;%d;%d;%dTX";
X #else
END-of-jove/files/patch-ab
echo x - jove/files/patch-ac
sed 's/^X//' >jove/files/patch-ac << 'END-of-jove/files/patch-ac'
X--- sysdep.h.orig Mon Jul 20 16:39:19 1998
X+++ sysdep.h Mon Jul 20 16:40:08 1998
X@@ -154,6 +154,7 @@
X # define USE_FSYNC 1
X # define USE_FSTAT 1
X # define USE_FCHMOD 1
X+# define USE_CTYPE 1
X #endif
X
X #ifdef IRIX
END-of-jove/files/patch-ac
echo x - jove/files/patch-ad
sed 's/^X//' >jove/files/patch-ad << 'END-of-jove/files/patch-ad'
X--- abbrev.c.orig Fri Mar 8 02:34:41 1996
X+++ abbrev.c Wed Dec 20 05:19:33 2000
X@@ -274,7 +274,16 @@
X "jabbXXXXXX"
X #endif
X );
X+#ifndef NO_MKSTEMP
X+ {
X+ int fd = mkstemp(tname);
X+ if ( fd == -1 )
X+ err( 1, "can't create temp file %s", tname );
X+ close( fd );
X+ }
X+#else
X (void) mktemp(tname);
X+#endif
X save_abbrevs(tname);
X setfname(ebuf, tname);
X read_file(tname, NO);
END-of-jove/files/patch-ad
echo x - jove/files/patch-ae
sed 's/^X//' >jove/files/patch-ae << 'END-of-jove/files/patch-ae'
X--- io.c.orig Fri Mar 8 02:34:42 1996
X+++ io.c Wed Dec 20 05:19:17 2000
X@@ -1193,10 +1193,16 @@
X #endif
X );
X tfname = copystr(buf);
X+#ifdef NO_MKSTEMP
X tfname = mktemp(tfname);
X+#endif
X #ifndef MSFILESYSTEM
X+#ifndef NO_MKSTEMP
X+ tmpfd = mkstemp(tfname);
X+#else
X (void) close(creat(tfname, 0600));
X tmpfd = open(tfname, 2);
X+#endif
X #else /* MSFILESYSTEM */
X tmpfd = open(tfname, O_CREAT|O_EXCL|O_BINARY|O_RDWR,
S_IWRITE|S_IREAD);
X #endif /* MSFILESYSTEM */
END-of-jove/files/patch-ae
echo x - jove/files/patch-af
sed 's/^X//' >jove/files/patch-af << 'END-of-jove/files/patch-af'
X--- proc.c.orig Sat Mar 9 06:46:40 1996
X+++ proc.c Wed Dec 20 05:20:13 2000
X@@ -827,8 +827,14 @@
X int ph;
X
X swritef(pnbuf, sizeof(pnbuf), "%s/%s", TmpDir,
"jpXXXXXX");
X+#ifndef NO_MKSTEMP
X+ pipename = pnbuf;
X+ ph = mkstemp( pipename );
X+#else
X pipename = mktemp(pnbuf);
X- if ((ph = creat(pipename, S_IWRITE|S_IREAD)) < 0)
X+ ph = creat(pipename, S_IWRITE|S_IREAD);
X+#endif
X+ if (ph == -1)
X complain("cannot make pipe for filter: %s",
strerror(errno));
X close(1);
X close(2);
X@@ -923,7 +929,18 @@
X jmp_buf sav_jmp;
X
X swritef(tnambuf, sizeof(tnambuf), "%s/%s", TmpDir, "jfXXXXXX");
X+#ifndef NO_MKSTEMP
X+ {
X+ int fd = mkstemp(tnambuf);
X+ if ( fd == -1 )
X+ complain( "can't create temp file %s: %s",
X+ tnambuf, strerror(errno) );
X+ close( fd );
X+ tname = tnambuf;
X+ }
X+#else
X tname = mktemp(tnambuf);
X+#endif
X fp = open_file(tname, iobuff, F_WRITE, YES);
X push_env(sav_jmp);
X if (setjmp(mainjmp) == 0) {
END-of-jove/files/patch-af
echo x - jove/files/patch-ag
sed 's/^X//' >jove/files/patch-ag << 'END-of-jove/files/patch-ag'
X--- rec.c.orig Fri Mar 8 02:34:43 1996
X+++ rec.c Wed Dec 20 05:19:50 2000
X@@ -55,8 +55,12 @@
X #endif
X );
X recfname = copystr(buf);
X+#ifndef NO_MKSTEMP
X+ rec_fd = mkstemp(recfname);
X+#else
X recfname = mktemp(recfname);
X rec_fd = creat(recfname, 0644);
X+#endif
X if (rec_fd == -1) {
X complain("Cannot create \"%s\"; recovery disabled.",
recfname);
X /*NOTREACHED*/
END-of-jove/files/patch-ag
echo x - jove/Portfile
sed 's/^X//' >jove/Portfile << 'END-of-jove/Portfile'
X# $Id: $
X
XPortSystem 1.0
Xname jove
Xversion 4.16
Xworksrcdir jove
Xconfigure {
X cd ${worksrcpath}
X reinplace "s|__PREFIX|${prefix}|g" Makefile
X }
Xcategories editors
Xmaintainers vivek at khera.org
Xdescription Jonathan's Own Version of Emacs
Xlong_description \
XJove is a simple text editor in the spirit of GNU emacs, but somewhat \
Xsmaller and faster to start up.
Xplatforms darwin freebsd
Xmaster_sites ftp://ftp.cs.toronto.edu/pub/moraes/jove/
Xpatchfiles patch-aa patch-ab patch-ac patch-ad patch-ae patch-af patch-ag
Xchecksums md5 38ebd64355a99b0d007aaef17b0d00b1
END-of-jove/Portfile
exit
}}}
--
--
Ticket URL: <https://trac.macports.org/ticket/387#comment:7>
MacPorts <https://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list