git: 60b4312a011b - main - japanese/jvim3: Refactor

From: Kousuke Kannagi <mce_at_FreeBSD.org>
Date: Thu, 17 Sep 2026 15:58:09 UTC
The branch main has been updated by mce:

URL: https://cgit.FreeBSD.org/ports/commit/?id=60b4312a011b3e47c75ab4e1f88dda29bf358c87

commit 60b4312a011b3e47c75ab4e1f88dda29bf358c87
Author:     Kousuke Kannagi <mce@FreeBSD.org>
AuthorDate: 2026-09-17 07:59:17 +0000
Commit:     Kousuke Kannagi <mce@FreeBSD.org>
CommitDate: 2026-09-17 15:54:08 +0000

    japanese/jvim3: Refactor
    
    Add USES=localbase.
    Remove ALL_TARGET, PLIST_SUB.
    Switch MAKE_ARGS to CANNNA_MAKE_ARGS.
    Lint with portclippy and portfmt
    Switch LN to RLN.
    Add post-install-DOCS-on.
    Regenerate patch files.
    
    PR:             276459
    Approved by:    fluffy (mentor)
---
 japanese/jvim3/Makefile                            | 60 ++++++++++------------
 japanese/jvim3/files/patch-src-makjunix.mak        | 18 +++----
 japanese/jvim3/files/patch-src-term.c              |  6 +--
 japanese/jvim3/files/patch-src-unix.h              |  6 +--
 japanese/jvim3/files/patch-src__unix.c             |  8 +--
 .../{patch-mkcmdtab.c => patch-src_mkcmdtab.c}     |  4 +-
 6 files changed, 49 insertions(+), 53 deletions(-)

diff --git a/japanese/jvim3/Makefile b/japanese/jvim3/Makefile
index 2a5184453d39..b2b32aaadd9b 100644
--- a/japanese/jvim3/Makefile
+++ b/japanese/jvim3/Makefile
@@ -11,52 +11,48 @@ MAINTAINER=	mce@FreeBSD.org
 COMMENT=	Japanized Vim-3.0
 WWW=		https://ftp.st.ryukoku.ac.jp/pub/editor/jvim/jvim3/vim.html
 
+USES=		localbase
+
+MAKEFILE=	makjunix.mak
+
+CPPFLAGS+=	-DBSD_UNIX -DUSE_LOCALE
+LIBS+=		-ltermlib
+
 EXTRA_PATCHES=	${WRKDIR}/${PORTNAME}.diff
-WRKSRC=		${WRKDIR}/vim
+
 BUILD_WRKSRC=	${WRKSRC}/src
 INSTALL_WRKSRC=	${WRKSRC}/src
-MAKEFILE=	makjunix.mak
-ALL_TARGET=	# empty
-PLIST_SUB=	VERSION=${PORTVERSION}
-MAKE_ARGS=	FEPOPT='${FEPOPT}' \
-		FEPLIBS="${FEPLIBS}" \
-		FEPOBJS="${FEPOBJS}" \
-		LIBS="${LIBS}"
-
-OPTIONS_DEFINE=	CANNA DOCS X11
-OPTIONS_DEFAULT=X11
-CANNA_DESC=		Canna support
-CANNA_LIB_DEPENDS=	libcanna.so:japanese/canna-lib
+WRKSRC=		${WRKDIR}/vim
 
-PORTDOCS=	differen.doc fepctrl.doc readme.doc termcap.dos uganda.jp \
-		tutor.j
+PORTDOCS=	differen.doc fepctrl.doc readme.doc termcap.dos tutor.j \
+		uganda.jp
 
-CPPFLAGS+=	-DBSD_UNIX -DUSE_LOCALE
-LIBS+=		-ltermlib -L${LOCALBASE}/lib
+OPTIONS_DEFINE=		CANNA DOCS X11
+OPTIONS_DEFAULT=	X11
+
+CANNA_DESC=		Canna support
+CANNA_LIB_DEPENDS=	libcanna.so:japanese/canna-lib
+CANNA_MAKE_ARGS=	FEPLIBS=-lcanna \
+			FEPOBJS=fepcanna.o \
+			FEPOPT='-DJP_DEF=\"EEE\" -DFEPCTRL -DCANNA'
+CANNA_VARS=		JVIM3RC="set fepctrl"
 
 X11_USES=	xorg
 X11_USE=	XORG=x11,xorgproto
-X11_CPPFLAGS=	-DUSE_X11 -I${LOCALBASE}/include
-X11_LIBS=	-lX11 -L${LOCALBASE}/lib
-
-.include <bsd.port.options.mk>
-
-.if ${PORT_OPTIONS:MCANNA}
-FEPOPT=		-DJP_DEF=\"EEE\" -DFEPCTRL -DCANNA
-FEPLIBS=	-lcanna -L${LOCALBASE}/lib
-FEPOBJS=	fepcanna.o
-JVIM3RC=	"set fepctrl"
-.endif
+X11_CPPFLAGS=	-DUSE_X11
+X11_LIBS=	-lX11
 
 post-build:
-	${INSTALL_DATA} ${WRKSRC}/doc.j/tutor/tutor.j ${WRKSRC}/doc.j
 	${ECHO_CMD} "${JVIM3RC}" > ${WRKSRC}/jvim3rc.dist
 
 post-install:
-	${LN} -sf jvim3 ${STAGEDIR}${PREFIX}/bin/jvim
+	${RLN} jvim3 ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
 	${INSTALL_PROGRAM} ${WRKSRC}/src/grep.bin ${STAGEDIR}${PREFIX}/bin/jgrep
 	${INSTALL_DATA} ${WRKSRC}/jvim3rc.dist ${STAGEDIR}${PREFIX}/etc/
-	${MKDIR} ${STAGEDIR}${DOCSDIR}
-	cd ${WRKSRC}/doc.j && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
+
+post-install-DOCS-on:
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	cd ${WRKSRC}/doc.j && ${INSTALL_DATA} \
+		${PORTDOCS:S,tutor.j,tutor/tutor.j,} ${STAGEDIR}${DOCSDIR}
 
 .include <bsd.port.mk>
diff --git a/japanese/jvim3/files/patch-src-makjunix.mak b/japanese/jvim3/files/patch-src-makjunix.mak
index d476df094e3a..e914167de5b7 100644
--- a/japanese/jvim3/files/patch-src-makjunix.mak
+++ b/japanese/jvim3/files/patch-src-makjunix.mak
@@ -1,5 +1,5 @@
---- src/makjunix.mak.orig	2014-08-30 01:12:22.000000000 +0900
-+++ src/makjunix.mak	2014-08-30 01:19:58.000000000 +0900
+--- src/makjunix.mak.orig	2025-12-15 09:04:17 UTC
++++ src/makjunix.mak
 @@ -72,19 +72,19 @@
  
  
@@ -25,7 +25,7 @@
  
  ### Program to run on installed binary
  STRIP = strip
-@@ -100,7 +101,7 @@
+@@ -100,7 +100,7 @@ MANFILE = ../doc/vim.1
  
  MANFILE = ../doc/vim.1
  
@@ -34,7 +34,7 @@
  
  #
  # PART 2: various choices
-@@ -168,7 +169,8 @@
+@@ -168,7 +168,8 @@ DEFS = -DDIGRAPHS -DTERMCAP -DSOME_BUILTIN_TCAPS -DNO_
  
  DEFS = -DDIGRAPHS -DTERMCAP -DSOME_BUILTIN_TCAPS -DNO_FREE_NULL -DVIM_ISSPACE \
  		-DWEBB_COMPLETE -DWEBB_KEYWORD_COMPL \
@@ -44,7 +44,7 @@
  		-DKANJI -DUCODE -DTRACK -DCRMARK -DFEXRC -DUSE_GREP -DUSE_TAGEX -DUSE_OPT $(FEPOPT)
  
  #
-@@ -424,7 +426,7 @@
+@@ -424,7 +425,7 @@ DEFS = -DDIGRAPHS -DTERMCAP -DSOME_BUILTIN_TCAPS -DNO_
  ##   no changes required below this line      ##
  ################################################
  
@@ -53,7 +53,7 @@
  
  INCL = vim.h globals.h param.h keymap.h macros.h ascii.h term.h unix.h structs.h proto.h
  
-@@ -438,36 +440,32 @@
+@@ -438,36 +439,32 @@ GOBJ = grep.o alloc.o charset.o kanji.o regexp.o regsu
  
  GOBJ = grep.o alloc.o charset.o kanji.o regexp.o regsub.o u2s.o s2u.o
  
@@ -106,7 +106,7 @@
  	-rm -f *.bak
  	-rm -f $(GOBJ)
  #	-rm -f jptab.h jptab
-@@ -490,97 +488,97 @@
+@@ -490,97 +487,97 @@ alloc.o:	alloc.c  $(INCL)
  ###########################################################################
  
  alloc.o:	alloc.c  $(INCL)
@@ -235,7 +235,7 @@
  
  cmdtab.h: cmdtab.tab mkcmdtab
  	./mkcmdtab cmdtab.tab cmdtab.h
-@@ -589,19 +587,19 @@
+@@ -589,19 +586,19 @@ mkcmdtab.o: mkcmdtab.c
  	$(CC) -o mkcmdtab mkcmdtab.o
  
  mkcmdtab.o: mkcmdtab.c
@@ -260,7 +260,7 @@
  
  #jptab.h: jptab
  #	./jptab > jptab.h
-@@ -610,19 +608,19 @@
+@@ -610,19 +607,19 @@ jptab.o: jptab.c
  	$(CC) -o jptab jptab.o
  
  jptab.o: jptab.c
diff --git a/japanese/jvim3/files/patch-src-term.c b/japanese/jvim3/files/patch-src-term.c
index 80b26435c0ce..0678fd047216 100644
--- a/japanese/jvim3/files/patch-src-term.c
+++ b/japanese/jvim3/files/patch-src-term.c
@@ -1,6 +1,6 @@
---- src/term.c.~1~	Thu Sep 17 11:58:38 1998
-+++ src/term.c	Fri Sep 18 09:26:33 1998
-@@ -207,7 +207,9 @@
+--- src/term.c.orig	2025-12-15 09:04:17 UTC
++++ src/term.c
+@@ -207,7 +207,9 @@ set_term(term)
  			T_CDL = TGETSTR("DL", &tp);
  			T_CS = TGETSTR("cs", &tp);
  			T_ED = TGETSTR("cl", &tp);
diff --git a/japanese/jvim3/files/patch-src-unix.h b/japanese/jvim3/files/patch-src-unix.h
index 6dccd0ee3a14..9382e8d53716 100644
--- a/japanese/jvim3/files/patch-src-unix.h
+++ b/japanese/jvim3/files/patch-src-unix.h
@@ -1,6 +1,6 @@
---- src/unix.h.orig	2013-09-05 04:16:52.000000000 +0900
-+++ src/unix.h	2013-09-05 04:18:11.000000000 +0900
-@@ -104,7 +104,7 @@
+--- src/unix.h.orig	2025-12-15 09:04:17 UTC
++++ src/unix.h
+@@ -104,7 +104,7 @@ extern void bcopy __ARGS((char *, char *, int));
  # define strrchr(ptr, c)		rindex((ptr), (c))
  #endif
  
diff --git a/japanese/jvim3/files/patch-src__unix.c b/japanese/jvim3/files/patch-src__unix.c
index 5a7f0e9efaa5..73c01943e227 100644
--- a/japanese/jvim3/files/patch-src__unix.c
+++ b/japanese/jvim3/files/patch-src__unix.c
@@ -1,5 +1,5 @@
---- src/unix.c.orig	Sun Jun 27 12:56:25 2004
-+++ src/unix.c	Sun Jun 27 12:58:11 2004
+--- src/unix.c.orig	2025-12-15 09:04:17 UTC
++++ src/unix.c
 @@ -17,6 +17,7 @@
  #include "param.h"
  #include "proto.h"
@@ -8,7 +8,7 @@
  #include <fcntl.h>
  #if !defined(pyr) && !defined(NOT_BOTH_TIME)
  # include <time.h>			/* on some systems time.h should not be
-@@ -73,6 +74,10 @@
+@@ -73,6 +74,10 @@ extern int execvp __ARGS((const char *, const char **)
  #  if defined(hpux) && !defined(SIGWINCH)	/* hpux 9.01 has it */
  #   define SIGWINCH SIGWINDOW
  #  endif
@@ -19,7 +19,7 @@
  # else
  #  include <sgtty.h>
  # endif	/* hpux */
-@@ -828,7 +833,7 @@
+@@ -828,7 +833,7 @@ mch_settmode(raw)
  {
  #if defined(ECHOE) && defined(ICANON) && !defined(__NeXT__)
  	/* for "new" tty systems */
diff --git a/japanese/jvim3/files/patch-mkcmdtab.c b/japanese/jvim3/files/patch-src_mkcmdtab.c
similarity index 58%
rename from japanese/jvim3/files/patch-mkcmdtab.c
rename to japanese/jvim3/files/patch-src_mkcmdtab.c
index 1ad655baff17..5ffa58dca9fb 100644
--- a/japanese/jvim3/files/patch-mkcmdtab.c
+++ b/japanese/jvim3/files/patch-src_mkcmdtab.c
@@ -1,5 +1,5 @@
---- src/mkcmdtab.c.orig	2010-05-29 01:52:51.281691000 +0900
-+++ src/mkcmdtab.c	2010-05-29 01:54:05.558527228 +0900
+--- src/mkcmdtab.c.orig	2025-12-15 09:04:17 UTC
++++ src/mkcmdtab.c
 @@ -14,11 +14,7 @@
  
  #include "vim.h"