ports/139107: [patch] sysutils/jfbterm: convert to bsdmake
Anonymous
swell.k at gmail.com
Mon May 3 21:10:05 UTC 2010
The following reply was made to PR ports/139107; it has been noted by GNATS.
From: Anonymous <swell.k at gmail.com>
To: bug-followup at FreeBSD.org
Cc:
Subject: Re: ports/139107: [patch] sysutils/jfbterm: convert to bsdmake
Date: Tue, 04 May 2010 01:01:26 +0400
Erm, more cleanups. I'm splitting some patches into separate PRs in case
this one continues to be ignored, e.g. ports/146271, ports/146230.
- use PREFIX in man pages, sample config file and pkg-message
- remove redundant PKGMESSAGE assign
- remove no longer needed step from pkg-message
- update to 0.6.1
- some cosmetic changes
BTW, I'm not sure why we need kldload step in pkg-message when setuid
binary will try to load vesa.ko anyway.
--- jfbterm.diff begins here ---
Index: sysutils/jfbterm/Makefile
===================================================================
RCS file: /a/.cvsup/ports/sysutils/jfbterm/Makefile,v
retrieving revision 1.10
diff -u -p -r1.10 Makefile
--- sysutils/jfbterm/Makefile 28 Mar 2010 06:43:51 -0000 1.10
+++ sysutils/jfbterm/Makefile 3 May 2010 20:27:57 -0000
@@ -5,34 +5,65 @@
# $FreeBSD: ports/sysutils/jfbterm/Makefile,v 1.10 2010/03/28 06:43:51 dinoex Exp $
PORTNAME= jfbterm
-PORTVERSION= 0.6.0
-PORTREVISION= 2
+PORTVERSION= 0.6.1
CATEGORIES= sysutils
-MASTER_SITES= http://www.ac.auone-net.jp/~baba/jfbterm/ \
+MASTER_SITES= http://www.ac.auone-net.jp/~baba/${PORTNAME}/ \
http://chirashi-no-ura.net/files/
DISTNAME= ${PORTNAME}-FreeBSD-${PORTVERSION}
MAINTAINER= bsdports at gmail.com
COMMENT= Multilanguage can be displayed on the console
-LIB_DEPENDS= png.6:${PORTSDIR}/graphics/png
-RUN_DEPENDS= ${LOCALBASE}/lib/X11/fonts/local/unifont.pcf.gz:${PORTSDIR}/x11-fonts/gnu-unifont
-
-USE_ICONV= yes
-USE_GNOME= pkgconfig
-PKGMESSAGE= ${WRKDIR}/pkg-message
SUB_FILES= pkg-message
-USE_GMAKE= yes
-GNU_CONFIGURE= yes
-USE_AUTOTOOLS= autoconf:262 automake:14
-CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
- LDFLAGS="-L${LOCALBASE}/lib" \
- --mandir="${LOCALBASE}/man"
+MAKEFILE= BSDmakefile
+
+OPTIONS= ICONV "encodings support" On \
+ PNG "splash .png support" On \
+ UNIFONT "install pan-unicode font" On
-MAN1= jfbterm.1
-MAN5= jfbterm.conf.5
+.include <bsd.port.pre.mk>
-post-install:
- @${CAT} ${PKGMESSAGE}
+.if !defined(NOMAN)
+MAN1= ${PORTNAME}.1
+MAN5= ${PORTNAME}.conf.5
+.endif
+
+.if !defined(NOMANCOMPRESS)
+MANCOMPRESSED= yes
+.endif
+
+.if !defined(WITHOUT_ICONV)
+USE_ICONV= yes
+.else
+MAKE_ENV+= WITHOUT_ICONV=
+.endif
+
+.if !defined(WITHOUT_PNG)
+LIB_DEPENDS+= png.6:${PORTSDIR}/graphics/png
+.else
+MAKE_ENV+= WITHOUT_PNG=
+.endif
+
+.if !defined(WITHOUT_UNIFONT)
+RUN_DEPENDS+= ${LOCALBASE}/lib/X11/fonts/local/unifont.pcf.gz:${PORTSDIR}/x11-fonts/gnu-unifont
+.endif
+
+post-extract: .SILENT
+ ${MKDIR} ${WRKSRC}/obj
+.for f in BSDmakefile config.h
+ ${CP} ${FILESDIR}/${f} ${WRKSRC}
+.endfor
+
+post-patch: .SILENT
+ ( cd ${WRKSRC}; ${REINPLACE_CMD} 's|/usr/local|${PREFIX}|g' \
+ ${MAN1} ${MAN5} ${PORTNAME}.conf.sample.FreeBSD )
+ ${REINPLACE_CMD} '/VERSION/s/".*"/"${PORTVERSION}"/' ${WRKSRC}/config.h
+
+post-install: .SILENT
+ if [ ! -f ${PREFIX}/etc/${PORTNAME}.conf ]; then \
+ ${INSTALL_DATA} ${PREFIX}/etc/${PORTNAME}.conf.sample \
+ ${PREFIX}/etc/${PORTNAME}.conf; \
+ fi
+ ${CAT} ${PKGMESSAGE}
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
Index: sysutils/jfbterm/distinfo
===================================================================
RCS file: /a/.cvsup/ports/sysutils/jfbterm/distinfo,v
retrieving revision 1.4
diff -u -p -r1.4 distinfo
--- sysutils/jfbterm/distinfo 1 Mar 2009 19:38:06 -0000 1.4
+++ sysutils/jfbterm/distinfo 2 May 2010 14:26:11 -0000
@@ -1,3 +1,3 @@
-MD5 (jfbterm-FreeBSD-0.6.0.tar.gz) = 6b29125e987e11d779093bfe22c16792
-SHA256 (jfbterm-FreeBSD-0.6.0.tar.gz) = adad94867d07e4f29020c31144786de9927d97752529b9ff6f7d81d1fc402915
-SIZE (jfbterm-FreeBSD-0.6.0.tar.gz) = 203682
+MD5 (jfbterm-FreeBSD-0.6.1.tar.gz) = fc5946d2ee0a9dae0d5aa6fc806416c3
+SHA256 (jfbterm-FreeBSD-0.6.1.tar.gz) = 8cd44a8adcf3e329fdff762e7395ad1f37bcc23702a655802175d9baf5416026
+SIZE (jfbterm-FreeBSD-0.6.1.tar.gz) = 218596
Index: sysutils/jfbterm/pkg-plist
===================================================================
RCS file: /a/.cvsup/ports/sysutils/jfbterm/pkg-plist,v
retrieving revision 1.1
diff -u -p -r1.1 pkg-plist
--- sysutils/jfbterm/pkg-plist 19 Mar 2008 06:43:16 -0000 1.1
+++ sysutils/jfbterm/pkg-plist 30 Sep 2009 18:17:47 -0000
@@ -1,7 +1,9 @@
bin/jfbterm
+ at unexec if cmp -s %D/etc/jfbterm.conf.sample %D/etc/jfbterm.conf; then rm -f %D/etc/jfbterm.conf; fi
etc/jfbterm.conf.sample
-%%DATADIR%%/fonts/vt100-graphics.pcf.gz
-%%DATADIR%%/termcap.jfbterm
-%%DATADIR%%/terminfo.jfbterm
- at dirrm %%DATADIR%%/fonts
- at dirrm %%DATADIR%%
+ at exec if [ ! -f %D/etc/jfbterm.conf ]; then cp -p %D/%F %B/jfbterm.conf; fi
+%%PORTDATA%%%%DATADIR%%/fonts/vt100-graphics.pcf.gz
+%%PORTDATA%%%%DATADIR%%/termcap.jfbterm
+%%PORTDATA%%%%DATADIR%%/terminfo.jfbterm
+%%PORTDATA%%@dirrm %%DATADIR%%/fonts
+%%PORTDATA%%@dirrm %%DATADIR%%
Index: sysutils/jfbterm/files/BSDmakefile
===================================================================
RCS file: sysutils/jfbterm/files/BSDmakefile
diff -N sysutils/jfbterm/files/BSDmakefile
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ sysutils/jfbterm/files/BSDmakefile 3 May 2010 19:09:15 -0000
@@ -0,0 +1,71 @@
+PROG = jfbterm
+MAN = ${PROG}.1 ${PROG}.conf.5
+
+ARCH ?= ${MACHINE_ARCH}
+LOCALBASE ?= /usr/local
+PREFIX ?= ${LOCALBASE}
+BINDIR ?= ${PREFIX}/bin
+MANDIR ?= ${PREFIX}/man/man
+DATADIR ?= ${PREFIX}/share/${PROG}
+LIBICONV ?= ${LOCALBASE}/lib/libiconv.a
+LIBPNG ?= ${LOCALBASE}/lib/libpng.a
+INSTALL_DIR ?= ${INSTALL} -d
+INSTALL_DATA ?= ${INSTALL} -o ${SHAREOWN} -g ${SHAREGRP} -m ${SHAREMODE}
+
+CSTD ?= gnu89
+CFLAGS += -I${LOCALBASE}/include
+CFLAGS += -DHAVE_CONFIG_H
+CFLAGS += -DSYSCONFDIR=\"${PREFIX}/etc\"
+DPADD += ${LIBUTIL}
+LDADD += -lutil
+
+.if ${ARCH:Mamd64} || ${ARCH:Mi386}
+CFLAGS += -DENABLE_VGA16FB
+.endif
+
+.if defined(WITH_DEBUG)
+DEBUG_FLAGS ?= -g
+CFLAGS += -DDEBUG
+CFLAGS += -DPCF_DEBUG
+.endif
+
+.if !defined(WITHOUT_ICONV)
+CFLAGS += -DENABLE_UTF8
+CFLAGS += -DENABLE_OTHER_CODING_SYSTEM
+LDADD += -L${LOCALBASE}/lib
+LDADD += -liconv
+DPADD += ${LIBICONV}
+.endif
+
+.if !defined(WITHOUT_PNG)
+CFLAGS += -DWITH_LIBPNG
+LDADD += -L${LOCALBASE}/lib
+LDADD += -lpng
+LDADD += -lz
+LDADD += -lm
+DPADD += ${LIBPNG}
+DPADD += ${LIBZ}
+DPADD += ${LIBM}
+.endif
+
+.if !defined(WITHOUT_SETUID)
+BINMODE = 4555
+.endif
+
+SRCS = main.c console.c framebuffer.c memctl.c accessor.c palette.c \
+ eastasianwidth.c font.c picofont.c getcap.c pcf.c pen.c term.c \
+ utilities.c privilege.c csv.c vterm.c vtermlow.c cursor.c \
+ splash-bmp.c splash-png.c splash.c bell.c screensaver.c mouse.c \
+ clipboard.c keyboard.c
+
+afterinstall:
+ ${INSTALL_DATA} ${.CURDIR}/jfbterm.conf.sample.FreeBSD \
+ ${PREFIX}/etc/${PROG}.conf.sample
+.if !defined(NOPORTDATA)
+ ${INSTALL_DIR} ${DATADIR}/fonts
+ ${INSTALL_DATA} ${.CURDIR}/fonts/*.pcf.gz ${DATADIR}/fonts
+ ${INSTALL_DATA} ${.CURDIR}/termcap.jfbterm ${DATADIR}
+ ${INSTALL_DATA} ${.CURDIR}/terminfo.jfbterm ${DATADIR}
+.endif
+
+.include <bsd.prog.mk>
Index: sysutils/jfbterm/files/config.h
===================================================================
RCS file: sysutils/jfbterm/files/config.h
diff -N sysutils/jfbterm/files/config.h
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ sysutils/jfbterm/files/config.h 3 May 2010 19:58:01 -0000
@@ -0,0 +1,9 @@
+#define VERSION "0.6.1"
+#define GUNZIP_PATH "/usr/bin/gunzip"
+#define ENABLE_8BPP 1
+#define ENABLE_15BPP 1
+#define ENABLE_16BPP 1
+#define ENABLE_24BPP 1
+#define ENABLE_32BPP 1
+#define ENABLE_SPLASH_SCREEN 1
+#define ENABLE_256_COLOR 1
Index: sysutils/jfbterm/files/patch-configure
===================================================================
RCS file: sysutils/jfbterm/files/patch-configure
diff -N sysutils/jfbterm/files/patch-configure
--- sysutils/jfbterm/files/patch-configure 12 Mar 2010 20:39:12 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,11 +0,0 @@
---- configure.in.orig 2009-02-10 19:40:45.000000000 -0500
-+++ configure.in 2010-02-22 16:37:33.000000000 -0500
-@@ -111,7 +111,7 @@
- case $system in
- Linux|FreeBSD)
- case $machine in
-- i?86|x86_64)
-+ amd64|i?86|x86_64)
- AC_DEFINE(ENABLE_VGA16FB)
- ;;
- *)
Index: sysutils/jfbterm/files/patch-screensaver.c
===================================================================
RCS file: sysutils/jfbterm/files/patch-screensaver.c
diff -N sysutils/jfbterm/files/patch-screensaver.c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ sysutils/jfbterm/files/patch-screensaver.c 24 Sep 2009 08:42:21 -0000
@@ -0,0 +1,11 @@
+--- screensaver.c~
++++ screensaver.c
+@@ -61,7 +61,7 @@
+ #define UNBLANK (V_DISPLAY_ON)
+ #elif defined (__NetBSD__) || defined (__OpenBSD__)
+ #define UNBLANK (WSDISPLAYIO_VIDEO_ON)
+-#elif
++#else
+ #error not implement
+ #endif
+
Index: sysutils/jfbterm/files/patch-splash-png.c
===================================================================
RCS file: sysutils/jfbterm/files/patch-splash-png.c
diff -N sysutils/jfbterm/files/patch-splash-png.c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ sysutils/jfbterm/files/patch-splash-png.c 2 May 2010 08:59:29 -0000
@@ -0,0 +1,11 @@
+--- splash-png.c~
++++ splash-png.c
+@@ -103,7 +103,7 @@ u_char *read_png_file(FILE *stream, u_in
+ if (color_type == PNG_COLOR_TYPE_PALETTE)
+ png_set_palette_to_rgb(png_ptr);
+ if (color_type == PNG_COLOR_TYPE_GRAY && bit_depth < 8)
+- png_set_gray_1_2_4_to_8(png_ptr);
++ png_set_expand_gray_1_2_4_to_8(png_ptr);
+ if (png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS))
+ png_set_tRNS_to_alpha(png_ptr);
+ if (bit_depth == 16)
Index: sysutils/jfbterm/files/patch-utmpx
===================================================================
RCS file: sysutils/jfbterm/files/patch-utmpx
diff -N sysutils/jfbterm/files/patch-utmpx
--- sysutils/jfbterm/files/patch-utmpx 4 Feb 2010 17:04:19 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,95 +0,0 @@
---- term.c.orig 2009-02-07 12:30:17.000000000 -0500
-+++ term.c 2010-01-28 13:40:25.000000000 -0500
-@@ -59,7 +59,11 @@
- #include <termios.h>
- #include <time.h>
- #include <unistd.h>
-+#ifdef HAVE_UTMP_H
- #include <utmp.h>
-+#else
-+#include <utmpx.h>
-+#endif
-
- #if defined (__linux__)
- #include <sys/vt.h>
-@@ -523,6 +527,41 @@ static void writeLoginRecord(void)
- pututline(&utmp);
- endutent();
- privilege_off();
-+#elif defined (__FreeBSD__) && (__FreeBSD_version >= 900007)
-+ struct utmpx utmp;
-+ struct passwd *pw;
-+ char *tn;
-+
-+ assert(initialized);
-+
-+ bzero(&utmp, sizeof(utmp));
-+ pw = getpwuid(privilege_getUID());
-+ if (pw == NULL) {
-+ warnx("who are you?");
-+ return; /* give up */
-+ }
-+ if (strncmp(self->device, "/dev/pts/", 9) == 0 ||
-+ strncmp(self->device, "/dev/tty", 8) == 0) {
-+ /* Unix98 style: "/dev/pts/\*" */
-+ /* BSD style: "/dev/tty[l-sL-S][0-9a-v]" */
-+ tn = self->device + strlen("/dev/");
-+ if (strlen(tn) < 5)
-+ return; /* bad format */
-+ strncpy(utmp.ut_id, tn, sizeof(utmp.ut_id));
-+ } else
-+ return; /* bad format */
-+ utmp.ut_type = DEAD_PROCESS;
-+ privilege_on();
-+ setutxent();
-+ getutxid(&utmp);
-+ utmp.ut_type = USER_PROCESS;
-+ utmp.ut_pid = getpid();
-+ strncpy(utmp.ut_line, tn, sizeof(utmp.ut_line));
-+ strncpy(utmp.ut_user, pw->pw_name, sizeof(utmp.ut_user));
-+ gettimeofday(&(utmp.ut_tv), NULL);
-+ pututxline(&utmp);
-+ endutxent();
-+ privilege_off();
- #elif defined (__FreeBSD__) || defined (__NetBSD__) || defined (__OpenBSD__)
- struct utmp utmp;
- struct passwd *pw;
-@@ -600,6 +639,38 @@ static void eraseLoginRecord(void)
- pututline(utp);
- endutent();
- privilege_off();
-+#elif defined (__FreeBSD__) && (__FreeBSD_version >= 900007)
-+ struct utmpx utmp, *utp;
-+ char *tn;
-+
-+ assert(initialized);
-+
-+ bzero(&utmp, sizeof(utmp));
-+ if (strncmp(self->device, "/dev/pts/", 9) == 0 ||
-+ strncmp(self->device, "/dev/tty", 8) == 0) {
-+ /* Unix98 style: "/dev/pts/\*" */
-+ /* BSD style: "/dev/tty[l-sL-S][0-9a-v]" */
-+ tn = self->device + strlen("/dev/");
-+ if (strlen(tn) < 5)
-+ return; /* bad format */
-+ strncpy(utmp.ut_id, tn, sizeof(utmp.ut_id));
-+ } else
-+ return; /* bad format */
-+ utmp.ut_type = USER_PROCESS;
-+ privilege_on();
-+ setutxent();
-+ utp = getutxid(&utmp);
-+ if (utp == NULL) {
-+ endutxent();
-+ privilege_off();
-+ return; /* give up */
-+ }
-+ utp->ut_type = DEAD_PROCESS;
-+ bzero(utp->ut_user, sizeof(utmp.ut_user));
-+ gettimeofday(&(utp->ut_tv), NULL);
-+ pututxline(utp);
-+ endutxent();
-+ privilege_off();
- #elif defined (__FreeBSD__) || defined (__NetBSD__) || defined (__OpenBSD__)
- struct utmp utmp;
- char *tn;
Index: sysutils/jfbterm/files/pkg-message.in
===================================================================
RCS file: /a/.cvsup/ports/sysutils/jfbterm/files/pkg-message.in,v
retrieving revision 1.2
diff -u -p -r1.2 pkg-message.in
--- sysutils/jfbterm/files/pkg-message.in 22 Apr 2008 15:39:30 -0000 1.2
+++ sysutils/jfbterm/files/pkg-message.in 3 May 2010 20:44:12 -0000
@@ -10,12 +10,9 @@ When you want to read automatically when
please write vesa_load="YES" in /boot/loader.conf
Add terminal capability of jfbterm.
- # cat %%LOCALBASE%%/share/jfbterm/termcap.jfbterm >> /usr/share/misc/termcap
+ # cat %%PREFIX%%/share/jfbterm/termcap.jfbterm >> /usr/share/misc/termcap
# cap_mkdb /usr/share/misc/termcap
-Prepare configuration file
- # cp /usr/local/etc/jfbterm.conf.sample /usr/local/etc/jfbterm.conf
-
Please confirm details on author's page.
http://www.ac.auone-net.jp/~baba/jfbterm/
--- jfbterm.diff ends here ---
More information about the freebsd-ports-bugs
mailing list