New port shells/bicon

BiCon, short for Bidirectional-Console, is a tool which allows the usage
of Arabic on Linux/Unix consoles or terminal emulators with basic Unicode
rendering support, like gnome-terminal, xterm, or PuTTY.

WWW: https://www.arabeyes.org/Bicon
This commit is contained in:
Carlos J. Puga Medina 2018-06-03 00:21:47 +00:00
parent 0c61fa4fc8
commit e80f39316a
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=471436
8 changed files with 181 additions and 0 deletions

View file

@ -8,6 +8,7 @@
SUBDIR += bash-completion
SUBDIR += bash-static
SUBDIR += bashc
SUBDIR += bicon
SUBDIR += ch
SUBDIR += dash
SUBDIR += envy

35
shells/bicon/Makefile Normal file
View file

@ -0,0 +1,35 @@
# Created by: Carlos Jacobo Puga Medina <cpm@FreeBSD.org>
# $FreeBSD$
PORTNAME= bicon
PORTVERSION= 0.5
CATEGORIES= shells
MAINTAINER= cpm@FreeBSD.org
COMMENT= Bidirectional text console
LICENSE= LGPL21
LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libfribidi.so:converters/fribidi
USES= autoreconf libtool pathfix pkgconfig shebangfix
SHEBANG_FILES= bin/bicon.in \
font/bicon-bdf2psf.pl
USE_LDCONFIG= yes
GNU_CONFIGURE= yes
INSTALL_TARGET= install-strip
USE_GITHUB= yes
GH_ACCOUNT= behdad
PORTDOCS= AUTHORS HISTORY HISTORY.farsi NEWS README THANKS TODO
OPTIONS_DEFINE= DOCS
post-install-DOCS-on:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
cd ${WRKSRC} && ${INSTALL_DATA} ${PORTDOCS} ${STAGEDIR}${DOCSDIR}
.include <bsd.port.mk>

3
shells/bicon/distinfo Normal file
View file

@ -0,0 +1,3 @@
TIMESTAMP = 1527952811
SHA256 (behdad-bicon-0.5_GH0.tar.gz) = 268a95b548b8f66289ae4e0869b977ad22044e542b29f14c7f92b52af6345c29
SIZE (behdad-bicon-0.5_GH0.tar.gz) = 128158

View file

@ -0,0 +1,42 @@
--- bicon/pty_spawn.c.orig 2015-08-20 10:07:00 UTC
+++ bicon/pty_spawn.c
@@ -13,7 +13,13 @@ namely the PSF License Agreement For Python 2.2.3
#include <string.h>
#include <unistd.h>
#include <errno.h>
+#ifdef __linux__
#include <pty.h>
+#endif
+#ifdef __FreeBSD__
+#include <termios.h>
+#include <sys/ioctl.h>
+#endif
#include <sys/time.h>
#include <sys/types.h>
#include <sys/select.h>
@@ -119,7 +125,7 @@ _copy (
{
if (errno == EINTR && !done)
continue;
- return;
+ return 0;
}
if (0 == ret)
{
@@ -150,14 +156,14 @@ _copy (
{
count = _xread (master_read, master_fd, buf, sizeof (buf));
if (count == -1)
- return;
+ return 0;
_xwrite (1, buf, count);
}
if (FD_ISSET (0, &rfds))
{
count = _xread (stdin_read, 0, buf, sizeof (buf));
if (count == -1)
- return;
+ return 0;
_xwrite (master_fd, buf, count);
}
/* Set timeout, such that if things are steady, we update cwd

View file

@ -0,0 +1,44 @@
--- font/Makefile.am.orig 2018-06-02 15:24:33 UTC
+++ font/Makefile.am
@@ -1,27 +1,20 @@
include fonts.mk
-ALL_CONSOLE_FONTS_PSFU_GZ = $(ALL_CONSOLE_FONTS_PSFU:=.gz)
-
fontdir = $(pkgdatadir)/font
-dist_font_DATA = $(ALL_CONSOLE_FONTS_PSFU_GZ) $(BDF)
noinst_DATA = $(ALL_CONSOLE_FONTS_SFM)
EXTRA_DIST = $(ALL_SUBSFMS) bicon-bdf2psf.pl
BDF2PSF = $(srcdir)/bicon-bdf2psf.pl
-CLEANFILES = *.sfm *.psf *.psfu *.psfu.gz *.tmp
+CLEANFILES = *.sfm *.tmp
-SUFFIXES = .bdf .bdf-maintain .sfm -ltr.sfm .psf -ltr.psf .psfu .psfu.gz
+SUFFIXES = .bdf .bdf-maintain .sfm -ltr.sfm
# Note: I replaced the non-portable rules below with old suffix way to make
# them portable. But unfortunately this way the dependancies like %.psf: $(BDF)
# do not work anymore :(. Perhaps a check for GNU make should happen...
-# %.psfu.gz: %.psfu
-.psfu.psfu.gz:
- gzip --best -c $< > $@
-
# %-set-names: %.bdf
.bdf.bdf-maintain:
$(srcdir)/bdf_set_names $< > $<.tmp && mv -f $<.tmp $<
@@ -37,11 +30,6 @@ SUFFIXES = .bdf .bdf-maintain .sfm -ltr.sfm .psf -ltr.
# %-ltr.sfm: %.sfm
.sfm-ltr.sfm:
$(LN_S) $< $@
-
-# %.psfu: %.psf %.sfm
-.psf.psfu:
- $(MAKE) $(AM_MAKEFLAGS) $*.sfm
- psfaddtable $*.psf $*.sfm $*.psfu
bicon-8x16-512.sfm: bicon-ascii.sub-sfm bicon-arabic.sub-sfm bicon-nomarks.sub-sfm
cat $^ > $@

View file

@ -0,0 +1,10 @@
--- font/fonts.mk.orig 2018-06-02 15:26:11 UTC
+++ font/fonts.mk
@@ -5,7 +5,6 @@ ALL_CONSOLE_FONTS = \
bicon-8x16-512-marks-ltr
ALL_CONSOLE_FONTS_SFM = $(ALL_CONSOLE_FONTS:=.sfm)
-ALL_CONSOLE_FONTS_PSFU = $(ALL_CONSOLE_FONTS:=.psfu)
ALL_SUBSFMS = \
bicon-ascii.sub-sfm \

5
shells/bicon/pkg-descr Normal file
View file

@ -0,0 +1,5 @@
BiCon, short for Bidirectional-Console, is a tool which allows the usage
of Arabic on Linux/Unix consoles or terminal emulators with basic Unicode
rendering support, like gnome-terminal, xterm, or PuTTY.
WWW: https://www.arabeyes.org/Bicon

41
shells/bicon/pkg-plist Normal file
View file

@ -0,0 +1,41 @@
bin/bicon
bin/bicon.bin
include/bicon/bconsole.h
include/bicon/bconsole_ligature.h
include/bicon/bconsole_log2con.h
include/bicon/bjoining.h
include/bicon/bjoining_charprop.h
include/bicon/bjoining_compose.h
include/bicon/bjoining_log2cuni.h
include/bicon/bjoining_vis2cuni.h
include/bicon/bjoining_ye.h
lib/bicon/libbconsole.a
lib/bicon/libbconsole.so
lib/bicon/libbconsole.so.0
lib/bicon/libbconsole.so.0.0.0
lib/bicon/libbjoining.a
lib/bicon/libbjoining.so
lib/bicon/libbjoining.so.0
lib/bicon/libbjoining.so.0.0.0
libdata/pkgconfig/bicon.pc
man/man1/bicon.1.gz
man/man1/bicon.bin.1.gz
%%DATADIR%%/keymap/ae.map.gz
%%DATADIR%%/keymap/arabic.map.gz
%%DATADIR%%/keymap/bh.map.gz
%%DATADIR%%/keymap/dz.map.gz
%%DATADIR%%/keymap/eg.map.gz
%%DATADIR%%/keymap/iq.map.gz
%%DATADIR%%/keymap/ir.map.gz
%%DATADIR%%/keymap/jo.map.gz
%%DATADIR%%/keymap/kw.map.gz
%%DATADIR%%/keymap/lb.map.gz
%%DATADIR%%/keymap/ly.map.gz
%%DATADIR%%/keymap/ma.map.gz
%%DATADIR%%/keymap/om.map.gz
%%DATADIR%%/keymap/qa.map.gz
%%DATADIR%%/keymap/sa.map.gz
%%DATADIR%%/keymap/sd.map.gz
%%DATADIR%%/keymap/sy.map.gz
%%DATADIR%%/keymap/tn.map.gz
%%DATADIR%%/keymap/ye.map.gz