1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-23 00:43:28 +00:00

Add hexchat, which is a continuation of the XChat IRC client.

PR:		ports/174888
Submitted by:	nemysis <nemysis@gmx.ch>
This commit is contained in:
Koop Mast 2013-06-02 13:23:41 +00:00
parent c02e95ba19
commit ef54b3f0d3
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=319653
11 changed files with 364 additions and 0 deletions

View File

@ -29,6 +29,7 @@
SUBDIR += fisg
SUBDIR += gruftistats
SUBDIR += gseen.mod
SUBDIR += hexchat
SUBDIR += hybserv
SUBDIR += icbirc
SUBDIR += ii

166
irc/hexchat/Makefile Normal file
View File

@ -0,0 +1,166 @@
# Created by: nemysis <nemysis@gmx.ch>
# $FreeBSD$
PORTNAME= hexchat
PORTVERSION= 2.9.5
CATEGORIES= irc gnome ipv6
MASTER_SITES= http://dl.hexchat.org/${PORTNAME}/
MAINTAINER= nemysis@gmx.ch
COMMENT= IRC chat program with GTK and Text Frontend
LICENSE= GPLv2
LIB_DEPENDS= proxy:${PORTSDIR}/net/libproxy
USE_XZ= yes
USES= desktop-file-utils pathfix pkgconfig
USE_GNOME= gtk20 libxml2
WANT_PERL= yes
USE_AUTOTOOLS= automake autoconf libtool
GNU_CONFIGURE= yes
CONFIGURE_ARGS+=--enable-gtkfe --disable-sysinfo
USE_GMAKE= yes
INSTALLS_ICONS= yes
LDFLAGS+= -pthread
MAN1= hexchat.1
PORTDOCS= *
OPTIONS_DEFINE= NLS SOCKS XFT OPENSSL TEXTFE PYTHON PERL DOAT DBUS NOTIFY
OPTIONS_RADIO= SPELL
OPTIONS_RADIO_SPELL= LIBSEXY GTKSPELL STATIC
OPTIONS_DEFAULT= SOCKS XFT OPENSSL PERL DOAT DBUS NOTIFY LIBSEXY
TEXTFE_DESC= Build the Text frontend
DOAT_DESC= Enable Do At plugin
STATIC_DESC= Enable Spell checking
LIBSEXY_DESC= Enable Spell checking through Libsexy
GTKSPELL_DESC= Enable Spell checking through GTKSpell
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MNLS}
USES+= gettext
PLIST_SUB+= NLS=""
.else
CONFIGURE_ARGS+=--disable-nls
PLIST_SUB+= NLS="@comment "
.endif
.if ! ${PORT_OPTIONS:MLIBSEXY} && ! ${PORT_OPTIONS:MGTKSPELL} && ! ${PORT_OPTIONS:MSTATIC}
CONFIGURE_ARGS+=--enable-spell=none
.endif
.if ${PORT_OPTIONS:MSTATIC}
CONFIGURE_ARGS+=--enable-spell=static
.endif
.if ${PORT_OPTIONS:MLIBSEXY}
LIB_DEPENDS+= sexy:${PORTSDIR}/x11-toolkits/libsexy
CONFIGURE_ARGS+=--enable-spell=libsexy
.endif
.if ${PORT_OPTIONS:MGTKSPELL}
LIB_DEPENDS+= gtkspell:${PORTSDIR}/textproc/gtkspell
CONFIGURE_ARGS+=--enable-spell=gtkspell
.endif
.if ${PORT_OPTIONS:MSOCKS}
LIB_DEPENDS+= socks:${PORTSDIR}/net/dante
CONFIGURE_ARGS+=--enable-socks
.else
CONFIGURE_ARGS+=--disable-socks
.endif
.if ${PORT_OPTIONS:MXFT}
USE_XORG+= xft
CONFIGURE_ARGS+=--enable-xft
.else
CONFIGURE_ARGS+=--disable-xft
.endif
.if ${PORT_OPTIONS:MOPENSSL}
CONFIGURE_ARGS+=--enable-openssl
PLIST_SUB+= OPENSSL=""
.else
CONFIGURE_ARGS+=--disable-openssl
PLIST_SUB+= OPENSSL="@comment "
.endif
.if ${PORT_OPTIONS:MTEXTFE}
CONFIGURE_ARGS+=--enable-textfe
PLIST_SUB+= TEXTFE=""
.else
CONFIGURE_ARGS+=--disable-textfe
PLIST_SUB+= TEXTFE="@comment "
.endif
.if ${PORT_OPTIONS:MPYTHON}
USE_PYTHON= yes
CONFIGURE_ARGS+=--enable-python
PLIST_SUB+= PYTHON=""
.else
CONFIGURE_ARGS+=--disable-python
PLIST_SUB+= PYTHON="@comment "
.endif
.if ${PORT_OPTIONS:MPERL}
USE_PERL5= yes
CONFIGURE_ARGS+=--enable-perl
PLIST_SUB+= PERL=""
.else
CONFIGURE_ARGS+=--disable-perl
PLIST_SUB+= PERL="@comment "
.endif
.if ${PORT_OPTIONS:MDOAT}
CONFIGURE_ARGS+=--enable-doat
PLIST_SUB+= DOAT=""
.else
CONFIGURE_ARGS+=--disable-doat
PLIST_SUB+= DOAT="@comment "
.endif
.if ${PORT_OPTIONS:MDBUS}
LIB_DEPENDS+= dbus-glib-1:${PORTSDIR}/devel/dbus-glib
CONFIGURE_ARGS+=--enable-dbus
USE_GNOME+= gconf2
GCONF_SCHEMAS+= apps_hexchat_url_handler.schemas
PLIST_SUB+= DBUS=""
.else
CONFIGURE_ARGS+=--disable-dbus
PLIST_SUB+= DBUS="@comment "
.endif
.if ${PORT_OPTIONS:MNOTIFY}
RUN_DEPENDS+= notify-send:${PORTSDIR}/devel/libnotify
CONFIGURE_ARGS+=--enable-libnotify
PLIST_SUB+= NOTIFY=""
.else
CONFIGURE_ARGS+=--disable-libnotify
PLIST_SUB+= NOTIFY="@comment "
.endif
post-patch:
@${REINPLACE_CMD} -e 's|/bin/bash|/bin/sh|g' ${WRKSRC}/autogen.sh
@${REINPLACE_CMD} -e 's|po intl|po|g' ${WRKSRC}/Makefile.am
pre-configure:
@(cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./autogen.sh)
post-install:
${LN} -sf ${PREFIX}/share/icons/hicolor/48x48/apps/${PORTNAME}.png ${PREFIX}/share/pixmaps
.if ${PORT_OPTIONS:MDOCS}
@${MKDIR} ${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/share/doc/*.md ${DOCSDIR}
.endif
@(cd ${PREFIX}/lib/hexchat/plugins/ && ${RM} -f *.a)
.include <bsd.port.mk>

2
irc/hexchat/distinfo Normal file
View File

@ -0,0 +1,2 @@
SHA256 (hexchat-2.9.5.tar.xz) = 11dfd0fbfb88d8dbb38f631fab8a7dffbb179f7f7dafe316953ed6f513ac623d
SIZE (hexchat-2.9.5.tar.xz) = 1309112

View File

@ -0,0 +1,32 @@
--- configure.ac.orig 2013-04-02 01:07:55.000000000 +0000
+++ configure.ac 2013-06-02 13:07:55.000000000 +0000
@@ -191,9 +191,9 @@
AC_MSG_ERROR(Cannot find GLib!)
fi
-COMMON_CFLAGS="$GLIB_CFLAGS"
+COMMON_CFLAGS="$GLIB_CFLAGS -DG_DISABLE_SINGLE_INCLUDES"
COMMON_LIBS="$GLIB_LIBS"
-COMMON_LIBS="$COMMON_LIBS -lgmodule-2.0"
+COMMON_LIBS="$COMMON_LIBS -lgmodule-2.0 -lgobject-2.0"
dnl *********************************************************************
dnl ** GTK **************************************************************
@@ -201,7 +201,7 @@
# we might get undefined macro without this test
if test "$gtkfe" = yes ; then
- AM_PATH_GTK_2_0(2.10.0, havegtk=yes, havegtk=no)
+ AM_PATH_GTK_2_0(2.14.0, havegtk=yes, havegtk=no)
if test "$havegtk" = no; then
gtkfe=no
@@ -222,7 +222,7 @@
dnl *********************************************************************
GUI_LIBS="$GUI_LIBS $GTK_LIBS"
-GUI_CFLAGS="$GUI_CFLAGS $GTK_CFLAGS"
+GUI_CFLAGS="$GUI_CFLAGS $GTK_CFLAGS -DG_DISABLE_SINGLE_INCLUDES -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES"
#if test "$gnome" = yes; then
# AC_PATH_PROG(pkgconfigpath, pkg-config)

View File

@ -0,0 +1,11 @@
--- src/fe-gtk/Makefile.am.orig 2013-04-02 03:07:55.000000000 +0200
+++ src/fe-gtk/Makefile.am 2013-04-04 21:02:35.000000000 +0200
@@ -2,7 +2,7 @@
bin_PROGRAMS = hexchat
-AM_CPPFLAGS = $(GUI_CFLAGS) -DG_DISABLE_CAST_CHECKS -DLOCALEDIR=\"$(localedir)\"
+AM_CPPFLAGS = $(GUI_CFLAGS) -DLOCALEDIR=\"$(localedir)\"
hexchat_LDADD = ../common/libhexchatcommon.a $(GUI_LIBS)

View File

@ -0,0 +1,30 @@
--- src/fe-gtk/banlist.c.orig 2013-04-02 03:07:55.000000000 +0200
+++ src/fe-gtk/banlist.c 2013-04-04 20:31:29.000000000 +0200
@@ -37,6 +37,7 @@
#include <gtk/gtktreeview.h>
#include <gtk/gtktreeselection.h>
#include <gtk/gtktogglebutton.h>
+#include <gtk/gtkcheckbutton.h>
#include <gtk/gtktable.h>
#include <glib.h>
@@ -583,7 +584,7 @@
* #define DATE_FORMAT "%a %b %d %T %Y"
*/
static void
-strptime (char *ti, struct tm *tm)
+banlist_strptime (char *ti, struct tm *tm)
{
/* Expect something like "Sat Mar 16 21:24:27 2013" */
static char *mon[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
@@ -625,8 +626,8 @@
gtk_tree_model_get(model, a, DATE_COLUMN, &time1, -1);
gtk_tree_model_get(model, b, DATE_COLUMN, &time2, -1);
- strptime (time1, &tm1);
- strptime (time2, &tm2);
+ banlist_strptime (time1, &tm1);
+ banlist_strptime (time2, &tm2);
t1 = mktime (&tm1);
t2 = mktime (&tm2);

View File

@ -0,0 +1,11 @@
--- src/fe-gtk/custom-list.h.orig 2013-04-02 03:07:55.000000000 +0200
+++ src/fe-gtk/custom-list.h 2013-04-04 21:09:51.000000000 +0200
@@ -22,6 +22,8 @@
#include <gtk/gtk.h>
+GType custom_list_get_type (void);
+
/* Some boilerplate GObject defines. 'klass' is used
* instead of 'class', because 'class' is a C++ keyword */

View File

@ -0,0 +1,11 @@
--- src/fe-gtk/fe-gtk.c.orig 2013-04-02 03:07:55.000000000 +0200
+++ src/fe-gtk/fe-gtk.c 2013-04-04 20:46:15.000000000 +0200
@@ -134,7 +134,7 @@
{"no-plugins", 'n', 0, G_OPTION_ARG_NONE, &arg_skip_plugins, N_("Don't auto load any plugins"), NULL},
{"plugindir", 'p', 0, G_OPTION_ARG_NONE, &arg_show_autoload, N_("Show plugin/script auto-load directory"), NULL},
{"configdir", 'u', 0, G_OPTION_ARG_NONE, &arg_show_config, N_("Show user config directory"), NULL},
- {"url", 0, 0, G_OPTION_ARG_STRING, &arg_url, N_("Open an irc://server:port/channel URL"), "URL"},
+ {"url", 0, 0, G_OPTION_ARG_STRING, &arg_url, N_("Open an irc://server:port/channel?key URL"), "URL"},
#ifndef WIN32 /* uses DBUS */
{"command", 'c', 0, G_OPTION_ARG_STRING, &arg_command, N_("Execute command:"), "COMMAND"},
{"existing", 'e', 0, G_OPTION_ARG_NONE, &arg_existing, N_("Open URL or execute command in an existing HexChat"), NULL},

View File

@ -0,0 +1,16 @@
--- ./src/common/dbus/dbus-client.c.orig 2013-04-02 01:07:55.000000000 +0000
+++ ./src/common/dbus/dbus-client.c 2013-04-13 13:50:32.000000000 +0000
@@ -53,11 +53,13 @@
GError *error = NULL;
char *command = NULL;
+#if !GLIB_CHECK_VERSION (2, 32, 0)
/* GnomeVFS >=2.15 uses D-Bus and threads, so threads should be
* initialised before opening for the first time a D-Bus connection */
if (!g_thread_supported ()) {
g_thread_init (NULL);
}
+#endif
dbus_g_thread_init ();
/* if there is nothing to do, return now. */

8
irc/hexchat/pkg-descr Normal file
View File

@ -0,0 +1,8 @@
HexChat is an IRC chat program.
It allows you to join multiple IRC channels (chat rooms) at the same time,
talk publicly, private one-on-one conversations etc.
HexChat is based on XChat, but unlike XChat it's completely free for both
Windows and Unix-like systems. Since XChat is open source, it's perfectly legal.
WWW: http://www.hexchat.org/

76
irc/hexchat/pkg-plist Normal file
View File

@ -0,0 +1,76 @@
bin/hexchat
%%TEXTFE%%bin/hexchat-text
include/hexchat-plugin.h
%%OPENSSL%%lib/hexchat/plugins/checksum.la
%%OPENSSL%%lib/hexchat/plugins/checksum.so
%%DOAT%%lib/hexchat/plugins/doat.la
%%DOAT%%lib/hexchat/plugins/doat.so
%%OPENSSL%%lib/hexchat/plugins/fishlim.la
%%OPENSSL%%lib/hexchat/plugins/fishlim.so
%%PERL%%lib/hexchat/plugins/perl.la
%%PERL%%lib/hexchat/plugins/perl.so
%%PYTHON%%lib/hexchat/plugins/python.la
%%PYTHON%%lib/hexchat/plugins/python.so
share/applications/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
%%NLS%%share/locale/af/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/am/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/ast/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/az/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/be/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/bg/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/ca/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/cs/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/da/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/de/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/el/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/en_GB/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/es/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/et/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/eu/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/fi/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/fr/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/gl/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/gu/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/hi/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/hu/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/id/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/it/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/ja/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/kn/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/ko/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/lt/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/lv/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/mk/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/ml/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/ms/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/nb/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/nl/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/no/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/pa/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/pl/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/pt/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/pt_BR/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/ru/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/rw/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/sk/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/sl/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/sq/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/sr/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/sv/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/th/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/uk/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/vi/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/wa/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/zh_CN/LC_MESSAGES/hexchat.mo
%%NLS%%share/locale/zh_TW/LC_MESSAGES/hexchat.mo
share/pixmaps/hexchat.png
%%NLS%%@dirrmtry share/locale/rw/LC_MESSAGES
%%NLS%%@dirrmtry share/locale/rw
%%NLS%%@dirrmtry share/locale/ast/LC_MESSAGES
%%NLS%%@dirrmtry share/locale/ast
@dirrmtry share/applications
@dirrm lib/hexchat/plugins
@dirrm lib/hexchat