aboutsummaryrefslogtreecommitdiff
path: root/www/elinks
diff options
context:
space:
mode:
authorDustin Marquess <jailbird@fdf.net>2022-09-17 11:09:22 +0000
committerFernando ApesteguĂ­a <fernape@FreeBSD.org>2022-09-19 10:53:46 +0000
commit1d53e772ca84748e5eb98efa9cfa84b5788e20ec (patch)
treed9c1c2afb66670f50abb3b6fd91326235569f68a /www/elinks
parent4eb96dfad8d7d2ae42eb9e8589f0ab28f007d4e4 (diff)
www/elinks: update to 0.15.1
ChangeLog: https://github.com/rkd77/elinks/releases/tag/v0.15.1 * about:config * option --always-load-config * compilation fixes on Windows * added ui.background_char * sample build scripts and docker files * experimental DGI support * DOS port based on links code * configurable Accept-Header * minor compilation fixes PR: 266305 Reported by: jailbird@fdf.net (maintainer)
Diffstat (limited to 'www/elinks')
-rw-r--r--www/elinks/Makefile90
-rw-r--r--www/elinks/distinfo6
-rw-r--r--www/elinks/files/patch-configure.ac19
-rw-r--r--www/elinks/files/patch-meson.build13
-rw-r--r--www/elinks/files/patch-src_config_options.c28
-rw-r--r--www/elinks/files/patch-src_intl_gettext_libintl.h11
6 files changed, 107 insertions, 60 deletions
diff --git a/www/elinks/Makefile b/www/elinks/Makefile
index 415717d681c4..30b5c821a985 100644
--- a/www/elinks/Makefile
+++ b/www/elinks/Makefile
@@ -1,6 +1,6 @@
PORTNAME= elinks
DISTVERSIONPREFIX= v
-DISTVERSION= 0.15.0
+DISTVERSION= 0.15.1
CATEGORIES= www
MAINTAINER= jailbird@fdf.net
@@ -10,24 +10,27 @@ WWW= https://github.com/rkd77/elinks/
LICENSE= GPLv2
LICENSE_FILE= ${WRKSRC}/COPYING
-GNU_CONFIGURE= yes
-USES= autoreconf bison:alias cpe gmake iconv pkgconfig ssl
+USES= bison:alias cpe gmake iconv meson perl5 pkgconfig python:3.7+ ssl
+BUILD_DEPENDS= xmlto:textproc/xmlto
USE_GITHUB= yes
GH_ACCOUNT= rkd77
LIBS+= -lexecinfo
+CONIGURE_ENV= PYTHON_PATH="${PYTHON_CMD}"
+MESON_ARGS= -Dgpm=false -Dperl=true
-OPTIONS_DEFINE= 256COLORS 88COLORS BITTORRENT BROTLI EXMODE \
+OPTIONS_DEFINE= 256COLORS 88COLORS TRUECOLORS BITTORRENT BROTLI EXMODE \
FASTMEM FINGER FSP FTP GOPHER GUILE HIGHLIGHT \
IDN LOCAL_CGI LUA LZMA MOUSE NLS NNTP NOROOT \
- PERL SMB SPIDERMONKEY XBELMARKS ZSTD
+ SMB SPIDERMONKEY TRE XBELMARKS ZSTD
OPTIONS_DEFAULT= 256COLORS 88COLORS BROTLI EXMODE FASTMEM FTP \
HIGHLIGHT LZMA MOUSE
OPTIONS_SUB= yes
88COLORS_DESC= 88 color support
256COLORS_DESC= 256 color support
+TRUECOLORS_DESC= True color support
SPIDERMONKEY_DESC= ECMAScript support (via SpiderMonkey)
XBELMARKS_DESC= XBEL bookmarks (via expat)
LOCAL_CGI_DESC= Local CGI support
@@ -36,75 +39,86 @@ EXMODE_DESC= Exmode (CLI) support
HIGHLIGHT_DESC= HTML highlighting using DOM engine
NOROOT_DESC= Prevention of usage by root
FASTMEM_DESC= Fast memory allocation functions
+TRE_DESC= TRE regex search support
BROTLI_LIB_DEPENDS= libbrotlidec.so:archivers/brotli
-BROTLI_CONFIGURE_ON= --with-brotli
+BROTLI_MESON_TRUE= brotli
NLS_USES= gettext
-NLS_CONFIGURE_OFF= --disable-nls
+NLS_MESON_TRUE= nls
GUILE_LIB_DEPENDS= libguile-3.0.so:lang/guile
-GUILE_CONFIGURE_WITH= guile
+GUILE_MESON_TRUE= guile
-LUA_USES= lua
-LUA_CONFIGURE_ON= --with-luapkg=lua-${LUA_VER}
+LUA_USES= lua:52-53
+LUA_MESON_ON= -Dluapkg=lua-${LUA_VER}
-LZMA_CONFIGURE_ON= --with-lzma
+LZMA_MESON_TRUE= lzma
-PERL_USES= perl5
-PERL_CONFIGURE_WITH= perl
-
-FASTMEM_CONFIGURE_ON= --enable-fastmem
+FASTMEM_MESON_TRUE= fastmem
IDN_LIB_DEPENDS= libidn.so:dns/libidn
IDN_USES= localbase
-IDN_CONFIGURE_WITH= idn
+IDN_MESON_TRUE= idn
-NOROOT_CONFIGURE_ON= --enable-no-root
+NOROOT_MESON_TRUE= no-root
-HIGHLIGHT_CONFIGURE_ON= --enable-html-highlight
+HIGHLIGHT_MESON_TRUE= html-highlight
-EXMODE_CONFIGURE_ON= --enable-exmode
+EXMODE_MESON_TRUE= exmode
SMB_USES= samba # smbclient
-SMB_CONFIGURE_ENABLE= smb
+SMB_MESON_TRUE= smb
FSP_RUN_DEPENDS= ${LOCALBASE}/lib/libfsplib.a:net/fsplib
FSP_BUILD_DEPENDS= ${LOCALBASE}/lib/libfsplib.a:net/fsplib
-FSP_CONFIGURE_ENABLE= fsp
+FSP_MESON_TRUE= fsp
-FTP_CONFIGURE_ENABLE= ftp
+FTP_MESON_TRUE= ftp
-NNTP_CONFIGURE_ENABLE= nntp
+NNTP_MESON_TRUE= nntp
-BITTORRENT_CONFIGURE_ENABLE= bittorrent
+BITTORRENT_MESON_TRUE= bittorrent
-GOPHER_CONFIGURE_ENABLE= gopher
+GOPHER_MESON_TRUE= gopher
-MOUSE_CONFIGURE_ENABLE= mouse
+MOUSE_MESON_TRUE= mouse
-FINGER_CONFIGURE_ENABLE= finger
+FINGER_MESON_TRUE= finger
-LOCAL_CGI_CONFIGURE_ENABLE= cgi
+LOCAL_CGI_MESON_TRUE= cgi
XBELMARKS_LIB_DEPENDS= libexpat.so:textproc/expat2
-XBELMARKS_CONFIGURE_OFF=--disable-xbel
+XBELMARKS_MESON_TRUE= xbel
+
+256COLORS_MESON_TRUE= 256-colors
-256COLORS_CONFIGURE_ON= --enable-256-colors
+88COLORS_MESON_TRUE= 88-colors
-88COLORS_CONFIGURE_ON= --enable-88-colors
+TRUECOLORS_MESON_TRUE= true-color
-SPIDERMONKEY_BUILD_DEPENDS= ${LOCALBASE}/lib/libjs.so:lang/spidermonkey17
-SPIDERMONKEY_RUN_DEPENDS= js:lang/spidermonkey17
-SPIDERMONKEY_LIB_DEPENDS= libnspr4.so:devel/nspr
+SPIDERMONKEY_USES= compiler:c++17-lang sqlite
+SPIDERMONKEY_BUILD_DEPENDS= ${LOCALBASE}/lib/libmozjs-78.so:lang/spidermonkey78 \
+ ${LOCALBASE}/lib/libxml++-5.0.so:textproc/libxml++
+SPIDERMONKEY_RUN_DEPENDS= js78:lang/spidermonkey78
+SPIDERMONKEY_LIB_DEPENDS= libnspr4.so:devel/nspr \
+ libxml++-5.0.so:textproc/libxml++
SPIDERMONKEY_CFLAGS= -I${LOCALBASE}/include/nspr \
- -I${LOCALBASE}/include/js-1.7
+ -I${LOCALBASE}/include/js-78
+SPIDERMONKEY_CXXFLAGS= -I${LOCALBASE}/include/nspr \
+ -I${LOCALBASE}/include/js-78
SPIDERMONKEY_LDFLAGS= -L${LOCALBASE}/lib -lnspr4 -lpthread -lm
-SPIDERMONKEY_CONFIGURE_ON= --enable-sm-scripting --with-spidermonkey
-SPIDERMONKEY_CONFIGURE_OFF= --disable-sm-scripting --without-spidermonkey
+SPIDERMONKEY_MESON_ON= -Dsm-scripting=true -Dspidermonkey=true
+
+TRE_LIB_DEPENDS= libtre.so:textproc/libtre
+TRE_MESON_TRUE= tre
ZSTD_LIB_DEPENDS= libzstd.so:archivers/zstd
ZSTD_USES= localbase
-ZSTD_CONFIGURE_ON= --with-zstd
+ZSTD_MESON_TRUE= zstd
+
+post-patch:
+ @${REINPLACE_CMD} -e 's|/usr/bin/perl|${PERL}|g' ${WRKSRC}/doc/tools/help2xml
+ @${REINPLACE_CMD} -e 's|/usr/bin/env python3|${PYTHON_CMD}|g' ${WRKSRC}/doc/tools/asciidoc/asciidoc.py
.include <bsd.port.mk>
diff --git a/www/elinks/distinfo b/www/elinks/distinfo
index 554e1bfa4a6b..1d11b36105a2 100644
--- a/www/elinks/distinfo
+++ b/www/elinks/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1644995066
-SHA256 (rkd77-elinks-v0.15.0_GH0.tar.gz) = 49e261fb7a6b061b51ca38b7152712caba90c8eaa6996bcf4c00fe2867a7f366
-SIZE (rkd77-elinks-v0.15.0_GH0.tar.gz) = 3783388
+TIMESTAMP = 1659262740
+SHA256 (rkd77-elinks-v0.15.1_GH0.tar.gz) = a3ebb14e179fcf97f93874b7771b4b05c1b7fdc704807334e865273d9de8428f
+SIZE (rkd77-elinks-v0.15.1_GH0.tar.gz) = 3860003
diff --git a/www/elinks/files/patch-configure.ac b/www/elinks/files/patch-configure.ac
deleted file mode 100644
index 3c9bfe209491..000000000000
--- a/www/elinks/files/patch-configure.ac
+++ /dev/null
@@ -1,19 +0,0 @@
---- configure.ac.orig 2021-12-24 19:53:43 UTC
-+++ configure.ac
-@@ -531,6 +531,7 @@ else
- if $PKG_CONFIG $pkg_config_static libbrotlidec; then
- BROTLI_CFLAGS=`$PKG_CONFIG $pkg_config_static --cflags libbrotlidec`
- BROTLI_LIBS=`$PKG_CONFIG $pkg_config_static --libs libbrotlidec`
-+ CFLAGS="$BROTLI_CFLAGS $CFLAGS"
- LIBS="$BROTLI_LIBS $LIBS"
- CONFIG_BROTLI=yes
- AC_DEFINE([CONFIG_BROTLI], [1], [Define as 1 to use the libbrotli library.])
-@@ -1861,7 +1862,7 @@ if test "x$ac_cv_c_compiler_gnu" = "xyes"; then
- ;;
- 10|10.*|11|11.*)
- # gettext
-- CFLAGS="$CFLAGS -fno-strict-aliasing -Wno-builtin-declaration-mismatch -Wno-array-bounds"
-+ CFLAGS="$CFLAGS -fno-strict-aliasing -Wno-array-bounds"
- ;;
- *)
- # These should be ok using -Werror
diff --git a/www/elinks/files/patch-meson.build b/www/elinks/files/patch-meson.build
new file mode 100644
index 000000000000..dd8549a15b67
--- /dev/null
+++ b/www/elinks/files/patch-meson.build
@@ -0,0 +1,13 @@
+--- meson.build.orig 2022-07-31 10:16:29 UTC
++++ meson.build
+@@ -3,9 +3,7 @@ srcdir = meson.source_root()
+
+ srcdir = meson.source_root()
+
+-txt = run_command('git', '--git-dir=' + srcdir + '/.git', 'rev-parse', 'HEAD').stdout().strip()
+-dirty = run_command(srcdir + '/git-dirty.sh').stdout().strip()
+-add_global_arguments('-DBUILD_ID="' + txt + dirty + '"', language : 'c')
++add_global_arguments('-DBUILD_ID="\\0"', language : 'c')
+
+ conf_data = configuration_data()
+ conf_data.set('VERSION', meson.project_version())
diff --git a/www/elinks/files/patch-src_config_options.c b/www/elinks/files/patch-src_config_options.c
new file mode 100644
index 000000000000..b59ebc61f415
--- /dev/null
+++ b/www/elinks/files/patch-src_config_options.c
@@ -0,0 +1,28 @@
+--- src/config/options.c.orig 2022-07-31 10:16:29 UTC
++++ src/config/options.c
+@@ -892,6 +892,7 @@ change_hook_ui_double_esc(struct session *ses, struct
+ return 0;
+ }
+
++#ifdef CONFIG_MOUSE
+ static int
+ change_hook_ui_mouse_disable(struct session *ses, struct option *current, struct option *changed)
+ {
+@@ -907,6 +908,7 @@ change_hook_ui_mouse_disable(struct session *ses, stru
+ }
+ return 0;
+ }
++#endif
+
+
+ /** Make option templates visible or invisible in the option manager.
+@@ -984,7 +986,9 @@ static const struct change_hook_info change_hooks[] =
+ { "ui.colors", change_hook_ui_colors },
+ { "ui.double_esc", change_hook_ui_double_esc },
+ { "ui.language", change_hook_language },
++#ifdef CONFIG_MOUSE
+ { "ui.mouse_disable", change_hook_ui_mouse_disable },
++#endif
+ { "ui", change_hook_ui },
+ { NULL, NULL },
+ };
diff --git a/www/elinks/files/patch-src_intl_gettext_libintl.h b/www/elinks/files/patch-src_intl_gettext_libintl.h
new file mode 100644
index 000000000000..827752d8ad8f
--- /dev/null
+++ b/www/elinks/files/patch-src_intl_gettext_libintl.h
@@ -0,0 +1,11 @@
+--- src/intl/gettext/libintl.h.orig 2022-07-31 10:16:29 UTC
++++ src/intl/gettext/libintl.h
+@@ -44,7 +44,7 @@ _(const char *msg, struct terminal *term)
+ return (char *)gettext_noop(msg);
+ }
+
+-static inline char *
++static inline const char *
+ n_(const char *msg1, const char *msg2, unsigned long int n, struct terminal *term)
+ {
+ return gettext_noop(msg1);