diff --git a/irc/hexchat/Makefile b/irc/hexchat/Makefile index ff518814c0de..d0ee55a51e40 100644 --- a/irc/hexchat/Makefile +++ b/irc/hexchat/Makefile @@ -1,90 +1,92 @@ # Created by: Rusmir Dusko PORTNAME= hexchat -PORTVERSION= 2.14.3 -PORTREVISION= 1 +PORTVERSION= 2.16.0 DISTVERSIONPREFIX= v CATEGORIES= irc gnome MAINTAINER= pkubaj@FreeBSD.org COMMENT= IRC chat program with GTK and Text Frontend LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING -BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/iso-codes.pc:misc/iso-codes +BUILD_DEPENDS= ${LOCALBASE}/libdata/pkgconfig/iso-codes.pc:misc/iso-codes \ + ${PYTHON_PKGNAMEPREFIX}cffi>0:devel/py-cffi@${PY_FLAVOR} LIB_DEPENDS= libproxy.so:net/libproxy \ libfontconfig.so:x11-fonts/fontconfig \ libdbus-1.so:devel/dbus \ libfreetype.so:print/freetype2 RUN_DEPENDS= ${LOCALBASE}/share/xml/iso-codes/iso_639.xml:misc/iso-codes USES= compiler:c++11-lang desktop-file-utils gettext-tools gnome \ libtool localbase meson ninja pkgconfig python:3.5+ shebangfix \ ssl xorg USE_GNOME= cairo gtk20 intltool libxml2 USE_XORG= x11 USE_GITHUB= yes -MESON_ARGS= -Dwith-ssl=true -Dwith-gtk=true -Dwith-python=python-${PYTHON_VER} +MESON_ARGS= -Dtls=enabled -Dgtk-frontend=true -Dwith-python=python-${PYTHON_VER} INSTALLS_ICONS= yes INSTALL_TARGET= install-strip LIBS+= -lX11 SUB_FILES= pkg-message PORTDOCS= * -OPTIONS_DEFINE= CA_BUNDLE CANBERRA DBUS DOCS FISHLIM LUA NOTIFY \ - PERL TEXTFE SYSINFO +OPTIONS_DEFINE= CA_BUNDLE CANBERRA DBUS DOCS FISHLIM LUA PERL TEXTFE \ + SYSINFO OPTIONS_DEFAULT= CA_BUNDLE CANBERRA DBUS NOTIFY PERL OPTIONS_SUB= yes CA_BUNDLE_DESC= Include CA bundle for SSL verification CANBERRA_DESC= Audio support via Libcanberra FISHLIM_DESC= FiSHLiM plugin TEXTFE_DESC= Text frontend SYSINFO_DESC= Sysinfo plugin CA_BUNDLE_RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss CA_BUNDLE_VARS= CA_BUNDLE="${LOCALBASE}/share/certs/ca-root-nss.crt" CA_BUNDLE_VARS_OFF= CA_BUNDLE=NULL CANBERRA_LIB_DEPENDS= libcanberra.so:audio/libcanberra -CANBERRA_MESON_TRUE= with-libcanberra +CANBERRA_MESON_ON= -Dlibcanberra=enabled +CANBERRA_MESON_OFF= -Dlibcanberra=disabled DBUS_LIB_DEPENDS= libdbus-glib-1.so:devel/dbus-glib -DBUS_MESON_TRUE= with-dbus +DBUS_MESON_ON= -Ddbus=enabled +DBUS_MESON_OFF= -Ddbus=disabled FISHLIM_MESON_TRUE= with-fishlim LUA_MESON_ON= -Dwith-lua=lua-${LUA_VER} LUA_MESON_OFF= -Dwith-lua=false LUA_USES= lua LUA_USE= GCC=any NOTIFY_LIB_DEPENDS= libnotify.so:devel/libnotify NOTIFY_MESON_TRUE= with-libnotify PERL_MESON_TRUE= with-perl PERL_USES= perl5 -TEXTFE_MESON_TRUE= with-text +TEXTFE_MESON_TRUE= text-frontend SYSINFO_MESON_TRUE= with-sysinfo +BINARY_ALIAS= python3=${PYTHON_CMD} + SHEBANG_FILES= meson_post_install.py \ plugins/perl/generate_header.py \ src/common/make-te.py post-patch: - @${REINPLACE_CMD} -e 's|%%CA_BUNDLE%%|${CA_BUNDLE}|' \ - ${WRKSRC}/src/common/server.c @${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' \ -e 's|%%PERL_VER%%|${PERL_VER}|g' \ ${WRKSRC}/plugins/perl/meson.build post-install: ${LN} -sf ../share/icons/hicolor/48x48/apps/${PORTNAME}.png \ ${STAGEDIR}${PREFIX}/share/pixmaps/ post-install-DOCS-on: @${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/*.md ${STAGEDIR}${DOCSDIR} .include diff --git a/irc/hexchat/distinfo b/irc/hexchat/distinfo index e74990e9e733..98ce823099ff 100644 --- a/irc/hexchat/distinfo +++ b/irc/hexchat/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1577021248 -SHA256 (hexchat-hexchat-v2.14.3_GH0.tar.gz) = 3e32b120a0fde6a3949cc9d2b87b00534e11c150b3249830736e7f86b050343a -SIZE (hexchat-hexchat-v2.14.3_GH0.tar.gz) = 2759502 +TIMESTAMP = 1633136688 +SHA256 (hexchat-hexchat-v2.16.0_GH0.tar.gz) = 5c7f35317bb3bc437fc5fb57392ddc13ba11c173718cdfe4de89d69c30a40b06 +SIZE (hexchat-hexchat-v2.16.0_GH0.tar.gz) = 2769078 diff --git a/irc/hexchat/files/patch-meson.build b/irc/hexchat/files/patch-meson.build index 80ac239f3c41..f953c239872b 100644 --- a/irc/hexchat/files/patch-meson.build +++ b/irc/hexchat/files/patch-meson.build @@ -1,44 +1,56 @@ ---- meson.build.orig 2019-12-21 06:38:06 UTC -+++ meson.build -@@ -16,11 +16,21 @@ cc = meson.get_compiler('c') +--- meson.build.orig 2021-10-01 21:52:09.000000000 +0200 ++++ meson.build 2021-10-07 10:35:49.739120000 +0200 +@@ -15,7 +15,7 @@ + libgio_dep = dependency('gio-2.0', version: '>= 2.34.0') libgmodule_dep = dependency('gmodule-2.0') - global_deps = [] +- +libssl_dep_found = false - if cc.get_id() == 'msvc' - libssl_dep = cc.find_library('libeay32') + libcanberra_dep = dependency('libcanberra', version: '>= 0.22', + required: get_option('libcanberra')) + dbus_glib_dep = dependency('dbus-glib-1', required: get_option('dbus')) +@@ -25,7 +25,16 @@ + libssl_dep = cc.find_library('libssl') else libssl_dep = dependency('openssl', version: '>= 0.9.8', -- required: get_option('with-ssl')) +- required: get_option('tls')) + required: false) + if not libssl_dep.found() + libssl_dep = [ -+ cc.find_library('ssl', required: get_option('with-ssl')), -+ cc.find_library('crypto', required: get_option('with-ssl')) ++ cc.find_library('ssl', required: get_option('tls')), ++ cc.find_library('crypto', required: get_option('tls')) + ] + libssl_dep_found = libssl_dep[0].found() + else + libssl_dep_found = libssl_dep.found() + endif endif config_h = configuration_data() -@@ -49,7 +59,7 @@ config_h.set('GLIB_VERSION_MIN_REQUIRED', 'GLIB_VERSIO - config_h.set('HAVE_MEMRCHR', cc.has_function('memrchr')) - config_h.set('HAVE_STRINGS_H', cc.has_header('strings.h')) +@@ -37,7 +46,7 @@ + config_h.set10('ENABLE_NLS', true) + + # Optional features +-config_h.set('USE_OPENSSL', libssl_dep.found()) ++config_h.set('USE_OPENSSL', libssl_dep_found) + config_h.set('USE_LIBCANBERRA', libcanberra_dep.found()) + config_h.set('USE_DBUS', dbus_glib_dep.found()) + config_h.set('USE_PLUGIN', get_option('plugin')) +@@ -57,7 +66,7 @@ + join_paths(get_option('prefix'), get_option('libdir'), 'hexchat/plugins') + ) -if libssl_dep.found() +if libssl_dep_found config_h.set('HAVE_X509_GET_SIGNATURE_NID', cc.has_function('X509_get_signature_nid', dependencies: libssl_dep) ) -@@ -129,9 +139,6 @@ global_ldflags = [] - test_ldflags = [ - '-Wl,-z,relro', - '-Wl,-z,now', -- # mingw -- '-Wl,--dynamicbase', -- '-Wl,--nxcompat', - ] - foreach ldflag : test_ldflags - if meson.version().version_compare('>= 0.46.0') +@@ -178,7 +187,7 @@ + }, section: 'Directories') + + summary({ +- 'TLS (openssl)': libssl_dep.found(), ++ 'TLS (openssl)': libssl_dep_found, + 'Plugin Support': get_option('plugin'), + 'DBus Support': dbus_glib_dep.found(), + 'libcanberra': libcanberra_dep.found(), diff --git a/irc/hexchat/files/patch-plugins_sysinfo_meson.build b/irc/hexchat/files/patch-plugins_sysinfo_meson.build deleted file mode 100644 index b925d3296d7c..000000000000 --- a/irc/hexchat/files/patch-plugins_sysinfo_meson.build +++ /dev/null @@ -1,18 +0,0 @@ ---- plugins/sysinfo/meson.build.orig 2019-12-22 13:48:33 UTC -+++ plugins/sysinfo/meson.build -@@ -13,13 +13,13 @@ sysinfo_includes = [] - sysinfo_cargs = [] - - system = host_machine.system() --if system == 'linux' or system == 'gnu' or system.startswith('gnu/') or system == 'darwin' -+if system == 'linux' or system == 'gnu' or system.startswith('gnu/') or system == 'darwin' or system == 'freebsd' - sysinfo_includes += 'shared' - sysinfo_sources += [ - 'shared/df.c' - ] - -- if system == 'linux' or system == 'gnu' or system.startswith('gnu/') -+ if system == 'linux' or system == 'gnu' or system.startswith('gnu/') or system == 'freebsd' - libpci = dependency('libpci', required: false, method: 'pkg-config') - if libpci.found() - sysinfo_deps += libpci diff --git a/irc/hexchat/files/patch-src__common__server.c b/irc/hexchat/files/patch-src__common__server.c deleted file mode 100644 index fd3fd906f47e..000000000000 --- a/irc/hexchat/files/patch-src__common__server.c +++ /dev/null @@ -1,11 +0,0 @@ ---- src/common/server.c.orig 2018-08-29 16:41:08 UTC -+++ src/common/server.c -@@ -748,7 +748,7 @@ server_connect_success (server *serv) - - /* it'll be a memory leak, if connection isn't terminated by - server_cleanup() */ -- if ((err = _SSL_set_verify (serv->ctx, ssl_cb_verify, NULL))) -+ if ((err = _SSL_set_verify (serv->ctx, ssl_cb_verify, "%%CA_BUNDLE%%"))) - { - EMIT_SIGNAL (XP_TE_CONNFAIL, serv->server_session, err, NULL, - NULL, NULL, 0); diff --git a/irc/hexchat/files/patch-src_common_meson.build b/irc/hexchat/files/patch-src_common_meson.build new file mode 100644 index 000000000000..159a277f2b28 --- /dev/null +++ b/irc/hexchat/files/patch-src_common_meson.build @@ -0,0 +1,11 @@ +--- src/common/meson.build.orig 2021-10-07 15:54:34.995639000 +0200 ++++ src/common/meson.build 2021-10-07 15:54:46.304819000 +0200 +@@ -73,7 +73,7 @@ + # SIGACTION + # HAVE_GTK_MAC + +-if libssl_dep.found() ++if libssl_dep_found + common_sources += 'ssl.c' + common_deps += libssl_dep + endif diff --git a/irc/hexchat/pkg-plist b/irc/hexchat/pkg-plist index 6a574bdd48ba..d4424ac9952f 100644 --- a/irc/hexchat/pkg-plist +++ b/irc/hexchat/pkg-plist @@ -1,70 +1,73 @@ bin/hexchat %%TEXTFE%%bin/hexchat-text include/hexchat-plugin.h lib/hexchat/plugins/checksum.so %%FISHLIM%%lib/hexchat/plugins/fishlim.so %%PERL%%lib/hexchat/plugins/perl.so lib/hexchat/plugins/python.so %%LUA%%lib/hexchat/plugins/lua.so %%SYSINFO%%lib/hexchat/plugins/sysinfo.so +lib/hexchat/python/_hexchat.py +lib/hexchat/python/hexchat.py +lib/hexchat/python/xchat.py libdata/pkgconfig/hexchat-plugin.pc man/man1/hexchat.1.gz share/metainfo/io.github.Hexchat.appdata.xml share/applications/io.github.Hexchat.desktop %%DBUS%%share/dbus-1/services/org.hexchat.service.service share/icons/hicolor/48x48/apps/hexchat.png share/icons/hicolor/scalable/apps/hexchat.svg share/locale/af/LC_MESSAGES/hexchat.mo share/locale/am/LC_MESSAGES/hexchat.mo share/locale/ast/LC_MESSAGES/hexchat.mo share/locale/az/LC_MESSAGES/hexchat.mo share/locale/be/LC_MESSAGES/hexchat.mo share/locale/bg/LC_MESSAGES/hexchat.mo share/locale/ca/LC_MESSAGES/hexchat.mo share/locale/cs/LC_MESSAGES/hexchat.mo share/locale/da/LC_MESSAGES/hexchat.mo share/locale/de/LC_MESSAGES/hexchat.mo share/locale/el/LC_MESSAGES/hexchat.mo share/locale/en_GB/LC_MESSAGES/hexchat.mo share/locale/es/LC_MESSAGES/hexchat.mo share/locale/et/LC_MESSAGES/hexchat.mo share/locale/eu/LC_MESSAGES/hexchat.mo share/locale/fi/LC_MESSAGES/hexchat.mo share/locale/fr/LC_MESSAGES/hexchat.mo share/locale/gl/LC_MESSAGES/hexchat.mo share/locale/gu/LC_MESSAGES/hexchat.mo share/locale/hi/LC_MESSAGES/hexchat.mo share/locale/hu/LC_MESSAGES/hexchat.mo share/locale/id/LC_MESSAGES/hexchat.mo share/locale/it/LC_MESSAGES/hexchat.mo share/locale/ja_JP/LC_MESSAGES/hexchat.mo share/locale/kn/LC_MESSAGES/hexchat.mo share/locale/ko/LC_MESSAGES/hexchat.mo share/locale/lt/LC_MESSAGES/hexchat.mo share/locale/lv/LC_MESSAGES/hexchat.mo share/locale/mk/LC_MESSAGES/hexchat.mo share/locale/ml/LC_MESSAGES/hexchat.mo share/locale/ms/LC_MESSAGES/hexchat.mo share/locale/nb/LC_MESSAGES/hexchat.mo share/locale/nl/LC_MESSAGES/hexchat.mo share/locale/no/LC_MESSAGES/hexchat.mo share/locale/pa/LC_MESSAGES/hexchat.mo share/locale/pl/LC_MESSAGES/hexchat.mo share/locale/pt/LC_MESSAGES/hexchat.mo share/locale/pt_BR/LC_MESSAGES/hexchat.mo share/locale/ru/LC_MESSAGES/hexchat.mo share/locale/rw/LC_MESSAGES/hexchat.mo share/locale/sk/LC_MESSAGES/hexchat.mo share/locale/sl/LC_MESSAGES/hexchat.mo share/locale/sq/LC_MESSAGES/hexchat.mo share/locale/sr/LC_MESSAGES/hexchat.mo share/locale/sr@latin/LC_MESSAGES/hexchat.mo share/locale/sv/LC_MESSAGES/hexchat.mo share/locale/th/LC_MESSAGES/hexchat.mo share/locale/tr/LC_MESSAGES/hexchat.mo share/locale/uk/LC_MESSAGES/hexchat.mo share/locale/vi/LC_MESSAGES/hexchat.mo share/locale/wa/LC_MESSAGES/hexchat.mo share/locale/zh_CN/LC_MESSAGES/hexchat.mo share/locale/zh_TW/LC_MESSAGES/hexchat.mo share/pixmaps/hexchat.png