summaryrefslogtreecommitdiff
path: root/editors/joe-devel
diff options
context:
space:
mode:
authorDavid W. Chapman Jr. <dwcjr@FreeBSD.org>2001-06-26 02:38:23 +0000
committerDavid W. Chapman Jr. <dwcjr@FreeBSD.org>2001-06-26 02:38:23 +0000
commit09d91258bb2de96c6c82f905fa290f86fc53ba00 (patch)
tree9d23f9ce675d47141e43050de4e58f45b95a5db7 /editors/joe-devel
parentBetter style (diff)
Update new port to 2.9.6
Give maintainership to new fork of joe Remove unneeded patches Fix up pkg-descr PR: 26773 Submitted by: Pete Fritchman <petef@databits.net>
Notes
Notes: svn path=/head/; revision=44437
Diffstat (limited to 'editors/joe-devel')
-rw-r--r--editors/joe-devel/Makefile31
-rw-r--r--editors/joe-devel/distinfo2
-rw-r--r--editors/joe-devel/files/patch-aa106
-rw-r--r--editors/joe-devel/files/patch-ab64
-rw-r--r--editors/joe-devel/files/patch-ac16
-rw-r--r--editors/joe-devel/files/patch-ad140
-rw-r--r--editors/joe-devel/files/patch-ae16
-rw-r--r--editors/joe-devel/files/patch-af26
-rw-r--r--editors/joe-devel/pkg-descr22
-rw-r--r--editors/joe-devel/pkg-plist15
10 files changed, 123 insertions, 315 deletions
diff --git a/editors/joe-devel/Makefile b/editors/joe-devel/Makefile
index d309251b62ce..f7c7d3c7320f 100644
--- a/editors/joe-devel/Makefile
+++ b/editors/joe-devel/Makefile
@@ -1,22 +1,29 @@
-# New ports collection makefile for: joe
-# Date created: 01 Jul 1995
-# Whom: torstenb@FreeBSD.org
+# New ports collection makefile for: joe-devel
+# Date created: 25 Jul 2001
+# Whom: dwcjr@FreeBSD.org
#
# $FreeBSD$
#
PORTNAME= joe
-PORTVERSION= 2.8
-PORTREVISION= 3
-CATEGORIES+= editors
-MASTER_SITES= ftp://ftp.std.com/src/editors/
-DISTNAME= ${PORTNAME}${PORTVERSION}
-EXTRACT_SUFX= .tar.Z
+PORTVERSION= 2.9.6
+CATEGORIES= editors
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= joe-editor
+EXTRACT_SUFX= .tgz
-MAINTAINER?= toasty@dragondata.com
+MAINTAINER= petef@databits.net
-WRKSRC= ${WRKDIR}/joe
-ALL_TARGET= joe
MAN1= joe.1
+GNU_CONFIGURE= yes
+USE_GMAKE= yes
+
+post-install:
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${PREFIX}/share/doc/joe
+ ${INSTALL_DATA} ${WRKSRC}/INFO ${WRKSRC}/README ${PREFIX}/share/doc/joe
+ ${INSTALL_DATA} ${WRKSRC}/LIST ${PREFIX}/share/doc/joe/CommandList
+.endif
+
.include <bsd.port.mk>
diff --git a/editors/joe-devel/distinfo b/editors/joe-devel/distinfo
index 58ec9d53e361..95f119a5e9f2 100644
--- a/editors/joe-devel/distinfo
+++ b/editors/joe-devel/distinfo
@@ -1 +1 @@
-MD5 (joe2.8.tar.Z) = bad4221aa63ca432e37dac1a953294b1
+MD5 (joe-2.9.6.tgz) = 304084bd8e32ec3a4ac2d90bbfef19b3
diff --git a/editors/joe-devel/files/patch-aa b/editors/joe-devel/files/patch-aa
deleted file mode 100644
index 755912494edf..000000000000
--- a/editors/joe-devel/files/patch-aa
+++ /dev/null
@@ -1,106 +0,0 @@
-*** Makefile.orig Sat Jul 1 18:43:39 1995
---- Makefile Sat Jul 1 18:59:47 1995
-***************
-*** 9,17 ****
- # to go and where you want the man page
- # to go:
-
-! WHEREJOE = /usr/local/bin
-! WHERERC = /usr/local/lib
-! WHEREMAN = /usr/man/man1
-
- # If you want to use TERMINFO, you have to set
- # the following variable to 1. Also you have to
---- 9,17 ----
- # to go and where you want the man page
- # to go:
-
-! WHEREJOE = ${PREFIX}/bin
-! WHERERC = ${PREFIX}/lib
-! WHEREMAN = ${PREFIX}/man/man1
-
- # If you want to use TERMINFO, you have to set
- # the following variable to 1. Also you have to
-***************
-*** 27,33 ****
-
- # C compiler options: make's built-in rules use this variable
-
-! CFLAGS = -O
-
- # C compiler to use: make's built-in rules use this variable
-
---- 27,33 ----
-
- # C compiler options: make's built-in rules use this variable
-
-! # CFLAGS = -O
-
- # C compiler to use: make's built-in rules use this variable
-
-***************
-*** 84,100 ****
-
- # Install proceedure
-
-! install: joe termidx
- strip joe
-! strip termidx
- if [ ! -d $(WHEREJOE) ]; then mkdir $(WHEREJOE); chmod a+rx $(WHEREJOE); fi
-! rm -f $(WHEREJOE)/joe $(WHEREJOE)/jmacs $(WHEREJOE)/jstar $(WHEREJOE)/jpico $(WHEREJOE)/rjoe $(WHEREJOE)/termidx
- mv joe $(WHEREJOE)
- ln $(WHEREJOE)/joe $(WHEREJOE)/jmacs
- ln $(WHEREJOE)/joe $(WHEREJOE)/jstar
- ln $(WHEREJOE)/joe $(WHEREJOE)/rjoe
- ln $(WHEREJOE)/joe $(WHEREJOE)/jpico
-! mv termidx $(WHEREJOE)
- if [ ! -d $(WHERERC) ]; then mkdir $(WHERERC); chmod a+rx $(WHERERC); fi
- rm -f $(WHERERC)/joerc $(WHERERC)/jmacsrc $(WHERERC)/jstarrc $(WHERERC)/jpicorc $(WHERERC)/rjoerc $(WHEREMAN)/joe.1
- cp joerc $(WHERERC)
---- 84,100 ----
-
- # Install proceedure
-
-! install: joe # termidx
- strip joe
-! # strip termidx
- if [ ! -d $(WHEREJOE) ]; then mkdir $(WHEREJOE); chmod a+rx $(WHEREJOE); fi
-! rm -f $(WHEREJOE)/joe $(WHEREJOE)/jmacs $(WHEREJOE)/jstar $(WHEREJOE)/jpico $(WHEREJOE)/rjoe # $(WHEREJOE)/termidx
- mv joe $(WHEREJOE)
- ln $(WHEREJOE)/joe $(WHEREJOE)/jmacs
- ln $(WHEREJOE)/joe $(WHEREJOE)/jstar
- ln $(WHEREJOE)/joe $(WHEREJOE)/rjoe
- ln $(WHEREJOE)/joe $(WHEREJOE)/jpico
-! # mv termidx $(WHEREJOE)
- if [ ! -d $(WHERERC) ]; then mkdir $(WHERERC); chmod a+rx $(WHERERC); fi
- rm -f $(WHERERC)/joerc $(WHERERC)/jmacsrc $(WHERERC)/jstarrc $(WHERERC)/jpicorc $(WHERERC)/rjoerc $(WHEREMAN)/joe.1
- cp joerc $(WHERERC)
-***************
-*** 114,126 ****
- chmod a+r $(WHERERC)/rjoerc
- chmod a+r $(WHERERC)/jpicorc
- chmod a+r $(WHEREMAN)/joe.1
-! chmod a+x $(WHEREJOE)/termidx
-! rm -f $(WHERERC)/termcap
-! cp termcap $(WHERERC)/termcap
-! chmod a+r $(WHERERC)/termcap
-! rm -f $(WHERERC)/terminfo
-! cp terminfo $(WHERERC)/terminfo
-! chmod a+r $(WHERERC)/terminfo
-
- # Cleanup proceedure
-
---- 114,126 ----
- chmod a+r $(WHERERC)/rjoerc
- chmod a+r $(WHERERC)/jpicorc
- chmod a+r $(WHEREMAN)/joe.1
-! # chmod a+x $(WHEREJOE)/termidx
-! # rm -f $(WHERERC)/termcap
-! # cp termcap $(WHERERC)/termcap
-! # chmod a+r $(WHERERC)/termcap
-! # rm -f $(WHERERC)/terminfo
-! # cp terminfo $(WHERERC)/terminfo
-! # chmod a+r $(WHERERC)/terminfo
-
- # Cleanup proceedure
-
diff --git a/editors/joe-devel/files/patch-ab b/editors/joe-devel/files/patch-ab
deleted file mode 100644
index 1624db3df769..000000000000
--- a/editors/joe-devel/files/patch-ab
+++ /dev/null
@@ -1,64 +0,0 @@
---- main.c.orig Sat Jan 21 19:21:08 1995
-+++ main.c Wed Feb 28 18:52:17 2001
-@@ -18,6 +18,10 @@
-
- #include <stdio.h>
- #include <fcntl.h>
-+#ifdef __FreeBSD__
-+#include <locale.h>
-+#include <ctype.h>
-+#endif
- #include "config.h"
- #include "w.h"
- #include "tty.h"
-@@ -187,6 +191,20 @@
- run=namprt(argv[0]);
- #endif
-
-+#ifdef __FreeBSD__
-+ setlocale(LC_ALL, "");
-+ for(c=0;c<256;c++)
-+ { int a=0;
-+ if(iscntrl(c))
-+ a|=UNDERLINE;
-+ if((c&0x80)&&!isprint(c))
-+ a|=INVERSE;
-+ xlata[c]=a;
-+ if(isprint(c))
-+ xlatc[c]=c;
-+ }
-+#endif
-+
- if(s=getenv("LINES")) sscanf(s,"%d",&lines);
- if(s=getenv("COLUMNS")) sscanf(s,"%d",&columns);
- if(s=getenv("BAUD")) sscanf(s,"%u",&Baud);
-@@ -234,20 +252,6 @@
-
- #else
-
-- s=vsncpy(NULL,0,sc("."));
-- s=vsncpy(sv(s),sv(run));
-- s=vsncpy(sv(s),sc("rc"));
-- c=procrc(cap,s);
-- if(c==0) goto donerc;
-- if(c==1)
-- {
-- char buf[8];
-- fprintf(stderr,"There were errors in '%s'. Use it anyway?",s);
-- fflush(stderr);
-- fgets(buf,8,stdin);
-- if(buf[0]=='y' || buf[0]=='Y') goto donerc;
-- }
--
- vsrm(s);
- s=getenv("HOME");
- if(s)
-@@ -365,7 +369,7 @@
- maint->curwin=maint->topwin;
- if(help) helpon(maint);
- if(!nonotice)
-- msgnw(lastw(maint)->object,"\\i** Joe's Own Editor v2.8 ** Copyright (C) 1995 Joseph H. Allen **\\i");
-+ msgnw(lastw(maint)->object,"\\i** Joe's Own Editor v2.8l ** Copyright (C) 1995 Joseph H. Allen **\\i");
- edloop(0);
- vclose(vmem);
- nclose(n);
diff --git a/editors/joe-devel/files/patch-ac b/editors/joe-devel/files/patch-ac
deleted file mode 100644
index a479bec93fe6..000000000000
--- a/editors/joe-devel/files/patch-ac
+++ /dev/null
@@ -1,16 +0,0 @@
---- scrn.c.old Thu Oct 6 02:10:07 1994
-+++ scrn.c Thu Sep 11 11:45:47 1997
-@@ -288,6 +288,12 @@
- if(!(t->uc=jgetstr(t->cap,"uc"))) if(t->ul) t->uc="_";
- if(t->uc) t->avattr|=UNDERLINE;
-
-+/* If we don't have underline, but we do have bold, print underline as bold */
-+if (!(t->avattr & UNDERLINE) && t->md != NULL)
-+ {
-+ t->us = t->md ; t->ue = t->me ; t->avattr |= UNDERLINE;
-+ }
-+
- t->ms=getflag(t->cap,"ms");
-
- t->da=getflag(t->cap,"da");
-
diff --git a/editors/joe-devel/files/patch-ad b/editors/joe-devel/files/patch-ad
index 38113e698cfc..7058d4f93000 100644
--- a/editors/joe-devel/files/patch-ad
+++ b/editors/joe-devel/files/patch-ad
@@ -1,98 +1,66 @@
---- b.c.orig Fri Jan 20 00:38:25 1995
-+++ b.c Sun Dec 3 09:58:21 2000
-@@ -21,6 +21,9 @@
+--- b.c.orig Wed Apr 11 17:10:49 2001
++++ b.c Sat Apr 21 23:11:38 2001
+@@ -16,6 +16,9 @@
#include <pwd.h>
#endif
#include <errno.h>
+#include <sys/file.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+ #include <stdlib.h>
+ #include <ctype.h>
+ #include <string.h>
+@@ -178,6 +181,7 @@
+ else
+ b->o = pdefault;
+ mset (b->marks, 0, sizeof (b->marks));
++ b->filehandle = -1; /* initialize filehandle &&& ob */
+ b->rdonly = 0;
+ b->orphan = 0;
+ b->oldcur = 0;
+@@ -229,6 +233,11 @@
+ void brm (B *b) {
+ if (b && !--b->count)
+ {
++ if (b->filehandle != -1) {
++ /* close filehandle, free lock &&& ob */
++ close (b->filehandle);
++ }
++
+ if (b->changed)
+ abrerr (b->name);
+ if (b == errbuf)
+@@ -1867,7 +1876,8 @@
+ B *b;
+ long skip, amnt;
+ char *n;
+- int nowrite = 0;
++ struct stat sb;
++ int nowrite = 0, fh = -1;
- #include "config.h"
- #include "blocks.h"
-@@ -201,6 +204,7 @@
- if(prop) b->o=prop->o;
- else b->o=pdefault;
- mset(b->marks,0,sizeof(b->marks));
-+ b->filehandle = -1; /* initialize filehandle &&& ob */
- b->rdonly=0;
- b->orphan=0;
- b->oldcur=0;
-@@ -255,6 +259,10 @@
- {
- if(b && !--b->count)
- {
-+ if (b->filehandle != -1) {
-+ /* close filehandle, free lock &&& ob */
-+ close (b->filehandle);
-+ }
- if(b->changed) abrerr(b->name);
- if(b==errbuf) errbuf=0;
- if(b->undo) undorm(b->undo);
-@@ -1671,7 +1679,8 @@
- B *b;
- long skip,amnt;
- char *n;
-- int nowrite=0;
-+ struct stat sb;
-+ int nowrite=0,fh=-1;
+ if (!s || !s[0])
+ {
+@@ -1920,6 +1930,14 @@
+ goto opnerr;
+ }
- if(!s || !s[0])
- {
-@@ -1704,6 +1713,28 @@
- else fclose(fi);
- fi=fopen(n,"r");
- if(!fi) nowrite=0;
-+/*printf ("nowrite open=%i\n", nowrite); */
-+
-+ /* check file mod, if no write flags set,
-+ joe in read only mode. &&& ob */
-+
-+ if (!nowrite) {
-+ nowrite = (!stat (n, &sb)) && (!(sb.st_mode & (S_IWUSR | S_IWGRP | S_IWOTH)));
-+ }
-+/*printf ("nowrite stat=%i\n", nowrite); */
++ /* Lock the file &&& ob,petef */
++ if (fi)
++ {
++ fh = dup( fileno(fi) );
++ nowrite = (flock (fh, LOCK_EX | LOCK_NB));
++ }
+
-+ /* lock the file if writable, or go into read only mode if
-+ already locked, */
-+
-+ if ((fi) && (!nowrite)) {
-+ fh = dup( fileno(fi) );
-+ nowrite = (flock (fh, LOCK_EX | LOCK_NB));
-+ }
-+/*printf ("nowrite flock=%i\n", nowrite); */
+
-+/*nowrite = 1; */ /* for test purpose */
-+/*printf ("nowrite=%i\n", nowrite); */
-+
- }
- joesep(n);
-
-@@ -1761,6 +1792,7 @@
- vsrm(n);
+ /* Skip data if we need to */
+ if (skip && lseek (fileno (fi), skip, 0) < 0)
+ {
+@@ -1978,6 +1996,8 @@
+ vsrm (n);
- b->er=error;
-+ if( fh != -1 ) b->filehandle = fh;
- return b;
- }
+ b->er = error;
++ if (fh != -1)
++ b->filehandle = fh;
+ return b;
+ }
-@@ -1990,7 +2022,18 @@
- {
- long tim=time(0);
- B *b;
-- FILE *f=fopen("DEADJOE","a");
-+ FILE *f;
-+ struct stat sb;
-+ if ((lstat("DEADJOE", &sb) == 0) && (((sb.st_mode & S_IFLNK) && (sb.st_uid != getuid())) || (sb.st_nlink > 1)))
-+ {
-+ printf("*** JOE was aborted ");
-+ if (sig) printf("by signal %d, cannot save DEADJOE due to unsafe symlink\n",sig);
-+ else printf("because the terminal closed, cannot save DEADJOE due to unsafe symlink\n");
-+ if(sig) ttclsn();
-+ _exit(1);
-+ }
-+ f=fopen("DEADJOE","a");
-+ chmod("DEADJOE", S_IRUSR | S_IWUSR);
- fprintf(f,"\n*** Modified files in JOE when it aborted on %s",ctime(&tim));
- if(sig) fprintf(f,"*** JOE was aborted by signal %d\n",sig);
- else fprintf(f,"*** JOE was aborted because the terminal closed\n");
diff --git a/editors/joe-devel/files/patch-ae b/editors/joe-devel/files/patch-ae
index 4f01692773cc..433805bd2b46 100644
--- a/editors/joe-devel/files/patch-ae
+++ b/editors/joe-devel/files/patch-ae
@@ -1,8 +1,10 @@
---- b.h.orig Wed Dec 21 13:04:46 1994
-+++ b.h Tue Dec 7 13:35:11 1999
-@@ -61,4 +61,5 @@
- int internal; /* Set for internal buffers */
- int er; /* Error code when file was loaded */
-+ int filehandle; /* File handle for locking */
- };
+--- b.h.orig Sat Apr 21 23:15:48 2001
++++ b.h Sat Apr 21 23:16:16 2001
+@@ -56,6 +56,7 @@
+ P *oldtop; /* Last top screen position before orphaning */
+ int rdonly; /* Set for read-only */
+ int internal; /* Set for internal buffers */
++ int filehandle; /* File handle for locking */
+ int er; /* Error code when file was loaded */
+ };
diff --git a/editors/joe-devel/files/patch-af b/editors/joe-devel/files/patch-af
index d21c8801922f..62469a1d905d 100644
--- a/editors/joe-devel/files/patch-af
+++ b/editors/joe-devel/files/patch-af
@@ -1,11 +1,17 @@
---- conf.c.orig Fri Jun 1 19:32:10 2001
-+++ conf.c Fri Jun 1 19:33:37 2001
-@@ -204,8 +204,6 @@
- fprintf(f,"\n");
+--- conf.c.orig Wed Apr 11 16:11:00 2001
++++ conf.c Mon Jun 25 22:19:07 2001
+@@ -179,14 +179,6 @@
+ fprintf (f, "\n");
- fprintf(f,"char *getenv();\n");
-- if(sizeof(long)==8) fprintf(f,"int time();\n");
-- else fprintf(f,"long time();\n");
- fprintf(f,"void *malloc();\n");
- fprintf(f,"void free();\n");
- fprintf(f,"void *calloc();\n");
+ fprintf (f, "char *getenv();\n");
+-#if !defined(__linux__) || !defined(__alpha)
+- if (sizeof (long) == 8) {
+- fprintf (f, "int time();\n");
+- } else
+-#endif
+- {
+- fprintf (f, "long time();\n");
+- }
+ fprintf (f, "void *malloc();\n");
+ fprintf (f, "void free();\n");
+ fprintf (f, "void *calloc();\n");
diff --git a/editors/joe-devel/pkg-descr b/editors/joe-devel/pkg-descr
index fa4a0a0d104c..53ed0cdb6cac 100644
--- a/editors/joe-devel/pkg-descr
+++ b/editors/joe-devel/pkg-descr
@@ -1,9 +1,15 @@
- JOE is the professional freeware ASCII text screen editor for UNIX.
-It makes full use of the power and versatility of UNIX, but lacks the steep
-learning curve and basic nonsense you have to deal with in every other UNIX
-editor. JOE has the feel of most IBM PC text editors: The key-sequences are
-reminiscent of WordStar and Turbo-C. JOE is much more powerful than those
-editors, however. JOE has all of the features a UNIX user should expect:
-full use of termcap/terminfo, excellent screen update optimizations (JOE is
-fully useable at 2400 baud), simple installation, and all of the
+JOE is the professional freeware ASCII text screen editor for UNIX.
+It makes full use of the power and versatility of UNIX, but lacks
+the steep learning curve and basic nonsense you have to deal with
+in every other UNIX editor. JOE has the feel of most IBM PC text
+editors: the key-sequences are reminiscent of WordStar and Turbo-C.
+JOE is much more powerful than those editors, however. JOE has
+all of the features a UNIX user should expect: full use of
+termcap/terminfo, excellent screen update optimizations (JOE is
+fully usable at 2400 baud), simple installation, and all of the
UNIX-integration features of VI.
+
+WWW: http://sourceforge.net/projects/joe-editor/
+
+-Pete
+petef@databits.net
diff --git a/editors/joe-devel/pkg-plist b/editors/joe-devel/pkg-plist
index 52b3d39c3434..18d81732f7b6 100644
--- a/editors/joe-devel/pkg-plist
+++ b/editors/joe-devel/pkg-plist
@@ -3,8 +3,13 @@ bin/jmacs
bin/jstar
bin/rjoe
bin/jpico
-lib/joerc
-lib/jmacsrc
-lib/jstarrc
-lib/rjoerc
-lib/jpicorc
+bin/termidx
+etc/joerc
+etc/jmacsrc
+etc/jstarrc
+etc/rjoerc
+etc/jpicorc
+%%PORTDOCS%%share/doc/joe/INFO
+%%PORTDOCS%%share/doc/joe/README
+%%PORTDOCS%%share/doc/joe/CommandList
+%%PORTDOCS%%@dirrm share/doc/joe