diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore diff --git a/0001-Added-port-numbers-for-Freenode.patch b/0001-Added-port-numbers-for-Freenode.patch new file mode 100644 index 0000000..3e336fd --- /dev/null +++ b/0001-Added-port-numbers-for-Freenode.patch @@ -0,0 +1,35 @@ +From bc98c28e891408145bed2b18d3c02adbadadde31 Mon Sep 17 00:00:00 2001 +From: Debarshi Ray +Date: Sat, 30 Jan 2010 13:05:21 +0200 +Subject: [PATCH] Added port numbers for Freenode + +http://freenode.net/irc_servers.shtml +--- + src/common/servlist.c | 11 ++++++++++- + 1 files changed, 10 insertions(+), 1 deletions(-) + +diff --git a/src/common/servlist.c b/src/common/servlist.c +index c6839e0..3082966 100644 +--- a/src/common/servlist.c ++++ b/src/common/servlist.c +@@ -207,7 +207,16 @@ static const struct defaultserver def[] = + {0, "irc.vendetta.com"}, + + {"FreeNode", 0}, +- {0, "irc.freenode.net"}, ++ {0, "irc.freenode.net/6665"}, ++ {0, "irc.freenode.net/6666"}, ++ {0, "irc.freenode.net/6667"}, ++ {0, "irc.freenode.net/8000"}, ++ {0, "irc.freenode.net/8001"}, ++ {0, "irc.freenode.net/8002"}, ++#ifdef USE_OPENSSL ++ {0, "irc.freenode.net/+7000"}, ++ {0, "irc.freenode.net/+7070"}, ++#endif + + /* {"Freeworld", 0}, + {0, "kabel.freeworld.nu"}, +-- +1.6.6 + diff --git a/0001-Fix-DCC-transfer-timeouts-when-dcc_auto_send-2.patch b/0001-Fix-DCC-transfer-timeouts-when-dcc_auto_send-2.patch new file mode 100644 index 0000000..2124709 --- /dev/null +++ b/0001-Fix-DCC-transfer-timeouts-when-dcc_auto_send-2.patch @@ -0,0 +1,37 @@ +From 48af97ebe635389c8f176cc2ea5f9151474ca3eb Mon Sep 17 00:00:00 2001 +From: Adam Buchbinder +Date: Tue, 27 Oct 2009 11:04:00 -0400 +Subject: [PATCH] Fix DCC transfer timeouts when dcc_auto_send == 2. + +The default in xchat2 is to set dcc_auto_send to 2, which means +"browse for a download directory". However, xchat-gnome only uses +the values 0 and 1, and when the default is provided (inherited +from xchat2), the transfer simply waits for a confirmation popup +which never appears. + +The fix here is to make the default act the same as "0"; the user +will be prompted as to whether or not they want to save the file. + +This closes bug 599781. + +Signed-off-by: Adam Buchbinder +--- + src/fe-gnome/dcc-window.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/src/fe-gnome/dcc-window.c b/src/fe-gnome/dcc-window.c +index 463a974..92f2026 100644 +--- a/src/fe-gnome/dcc-window.c ++++ b/src/fe-gnome/dcc-window.c +@@ -207,7 +207,7 @@ dcc_window_add (DccWindow *window, struct DCC *dcc) + + /* If this is a recieve and auto-accept isn't turned on, pop up a + * confirmation dialog */ +- if ((dcc->type == TYPE_RECV) && (dcc->dccstat == STAT_QUEUED) && (prefs.autodccsend == FALSE)) { ++ if ((dcc->type == TYPE_RECV) && (dcc->dccstat == STAT_QUEUED) && (prefs.autodccsend != 1)) { + GtkWidget *dialog; + gint response; + +-- +1.6.0.4 + diff --git a/Makefile b/Makefile deleted file mode 100644 index 928c5f5..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: xchat-gnome -# $Id: Makefile,v 1.1 2005/11/12 14:44:36 bpepple Exp $ -NAME := xchat-gnome -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$d/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attept a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/xchat-gnome-DSOLink.patch b/xchat-gnome-DSOLink.patch new file mode 100644 index 0000000..f92bec0 --- /dev/null +++ b/xchat-gnome-DSOLink.patch @@ -0,0 +1,44 @@ +diff -urp xchat-gnome-0.26.1.OLD/src/fe-gnome/Makefile.am xchat-gnome-0.26.1/src/fe-gnome/Makefile.am +--- xchat-gnome-0.26.1.OLD/src/fe-gnome/Makefile.am 2007-04-24 18:43:05.000000000 -0400 ++++ xchat-gnome-0.26.1/src/fe-gnome/Makefile.am 2010-03-07 15:45:35.667276790 -0500 +@@ -113,6 +113,7 @@ xchat_gnome_CFLAGS = \ + $(AM_CFLAGS) + + xchat_gnome_LDFLAGS = \ ++ -lX11 \ + -export-dynamic \ + $(AM_LDFLAGS) + +diff -urp xchat-gnome-0.26.1.OLD/src/fe-gnome/Makefile.in xchat-gnome-0.26.1/src/fe-gnome/Makefile.in +--- xchat-gnome-0.26.1.OLD/src/fe-gnome/Makefile.in 2009-04-12 13:48:06.000000000 -0400 ++++ xchat-gnome-0.26.1/src/fe-gnome/Makefile.in 2010-03-07 15:45:55.309526635 -0500 +@@ -449,6 +449,7 @@ xchat_gnome_CFLAGS = \ + $(AM_CFLAGS) + + xchat_gnome_LDFLAGS = \ ++ -lX11 \ + -export-dynamic \ + $(AM_LDFLAGS) + +diff -urp xchat-gnome-0.26.1.OLD/src/libcontrast/Makefile.am xchat-gnome-0.26.1/src/libcontrast/Makefile.am +--- xchat-gnome-0.26.1.OLD/src/libcontrast/Makefile.am 2007-04-24 18:43:04.000000000 -0400 ++++ xchat-gnome-0.26.1/src/libcontrast/Makefile.am 2010-03-07 15:56:15.164278726 -0500 +@@ -12,6 +12,7 @@ libcontrast_la_CFLAGS = \ + $(AM_CFLAGS) + + libcontrast_la_LDFLAGS = \ ++ -lm \ + $(AM_LDFLAGS) \ + -static + +diff -urp xchat-gnome-0.26.1.OLD/src/libcontrast/Makefile.in xchat-gnome-0.26.1/src/libcontrast/Makefile.in +--- xchat-gnome-0.26.1.OLD/src/libcontrast/Makefile.in 2009-04-12 13:48:06.000000000 -0400 ++++ xchat-gnome-0.26.1/src/libcontrast/Makefile.in 2010-03-07 15:56:35.529527068 -0500 +@@ -297,6 +297,7 @@ libcontrast_la_CFLAGS = \ + $(AM_CFLAGS) + + libcontrast_la_LDFLAGS = \ ++ -lm \ + $(AM_LDFLAGS) \ + -static + diff --git a/xchat-gnome.spec b/xchat-gnome.spec index b008633..d331d48 100644 --- a/xchat-gnome.spec +++ b/xchat-gnome.spec @@ -1,6 +1,6 @@ Name: xchat-gnome Version: 0.26.1 -Release: 8%{?dist} +Release: 11%{?dist} Summary: GNOME front-end to xchat Group: Applications/Internet @@ -16,6 +16,13 @@ Patch1: xchat-topic-update.patch Patch2: %{name}-crasher.patch # http://git.gnome.org/browse/xchat-gnome/commit/?id=ac131cab5e5429525aed592b504bae9d6ee92069 Patch3: status_fix.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=564820 +Patch4: %{name}-DSOLink.patch +# https://bugzilla.gnome.org/show_bug.cgi?id=608515 +Patch5: 0001-Added-port-numbers-for-Freenode.patch +Patch6: xg-depreciated-macros.patch +# https://bugzilla.gnome.org/599781 +Patch7: 0001-Fix-DCC-transfer-timeouts-when-dcc_auto_send-2.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) @@ -35,6 +42,7 @@ BuildRequires: perl-devel BuildRequires: perl(XML::Parser) BuildRequires: perl(ExtUtils::Embed) BuildRequires: gnome-doc-utils +BuildRequires: GConf2 Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) @@ -59,6 +67,10 @@ common settings will be included in the main user interface. . %patch1 -p1 -b .topic %patch2 -p1 -b .crasher %patch3 -p1 -b .status +%patch4 -p1 -b .dsolink +%patch5 -p1 -b .freenode +%patch6 -p1 -b .macros +%patch7 -p1 -b .dcc %build @@ -80,28 +92,12 @@ desktop-file-install --vendor fedora --delete-original \ $RPM_BUILD_ROOT%{_datadir}/applications/%{name}.desktop -%clean -rm -rf $RPM_BUILD_ROOT - - %pre -if [ "$1" -gt 1 ]; then - export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` - SCHEMAS="apps_xchat.schemas notification.schemas urlscraper.schemas url_handler.schemas" - for i in $SCHEMAS; do - gconftool-2 --makefile-uninstall-rule \ - %{_sysconfdir}/gconf/schemas/$i >/dev/null || : - done -fi +%gconf_schema_prepare apps_xchat notification urlscraper url_handler %post -export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` -SCHEMAS="apps_xchat.schemas notification.schemas urlscraper.schemas url_handler.schemas" -for i in $SCHEMAS; do - gconftool-2 --makefile-install-rule \ - %{_sysconfdir}/gconf/schemas/$i > /dev/null || : -done +%gconf_schema_upgrade apps_xchat notification urlscraper url_handler scrollkeeper-update -q -o %{_datadir}/omf/%{name} || : touch --no-create %{_datadir}/icons/hicolor || : if [ -x %{_bindir}/gtk-update-icon-cache ]; then @@ -110,14 +106,7 @@ fi %preun -if [ "$1" -eq 0 ]; then - export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` - SCHEMAS="apps_xchat.schemas notification.schemas urlscraper.schemas url_handler.schemas" - for i in $SCHEMAS; do - gconftool-2 --makefile-uninstall-rule \ - %{_sysconfdir}/gconf/schemas/$i > /dev/null || : - done -fi +%gconf_schema_remove apps_xchat notification urlscraper url_handler %postun @@ -147,6 +136,18 @@ fi %changelog +* Sun Apr 25 2010 Brian Pepple - 0.26.1-11 +- Remove clean section. No longer needed. +- Update scriptlets for gconf macros. + +* Sun Mar 28 2010 Brian Pepple - 0.26.1-10 +- Add patch for depreciated gtk macros. +- Add patch to fix auto-accept dcc transfers. +- Add patch for FreeNode port numbers. + +* Sun Mar 7 2010 Brian Pepple - 0.26.1-9 +- Add patch to fix DSOLinking. (#564820) + * Mon Jan 18 2010 Brian Pepple - 0.26.1-8 - Add patch to fix regression with bing unable to set status 'back'. diff --git a/xg-depreciated-macros.patch b/xg-depreciated-macros.patch new file mode 100644 index 0000000..7a5dced --- /dev/null +++ b/xg-depreciated-macros.patch @@ -0,0 +1,137 @@ +diff -urp xchat-gnome-0.26.1.OLD/src/fe-gnome/fe-gnome.c xchat-gnome-0.26.1/src/fe-gnome/fe-gnome.c +--- xchat-gnome-0.26.1.OLD/src/fe-gnome/fe-gnome.c 2008-09-07 09:18:45.000000000 -0400 ++++ xchat-gnome-0.26.1/src/fe-gnome/fe-gnome.c 2010-03-28 16:16:52.181405173 -0400 +@@ -753,7 +753,7 @@ fe_gui_info (session * sess, int info_ty + { + switch (info_type) { + case 0: +- if (!GTK_WIDGET_VISIBLE (GTK_WINDOW (gui.main_window))) { ++ if (!gtk_widget_get_visible (GTK_WIDGET (gui.main_window))) { + return 2; + } + if (gtk_window_is_active (GTK_WINDOW (gui.main_window))) { +diff -urp xchat-gnome-0.26.1.OLD/src/fe-gnome/find-bar.c xchat-gnome-0.26.1/src/fe-gnome/find-bar.c +--- xchat-gnome-0.26.1.OLD/src/fe-gnome/find-bar.c 2007-03-09 10:42:57.000000000 -0500 ++++ xchat-gnome-0.26.1/src/fe-gnome/find-bar.c 2010-03-28 16:26:24.300405158 -0400 +@@ -247,7 +247,7 @@ find_bar_close (FindBar *bar) + { + gint position; + +- if (!GTK_WIDGET_VISIBLE (bar)) { ++ if (!gtk_widget_get_visible (GTK_WIDGET (bar))) { + return; + } + +diff -urp xchat-gnome-0.26.1.OLD/src/fe-gnome/text-entry.c xchat-gnome-0.26.1/src/fe-gnome/text-entry.c +--- xchat-gnome-0.26.1.OLD/src/fe-gnome/text-entry.c 2008-09-07 10:02:45.000000000 -0400 ++++ xchat-gnome-0.26.1/src/fe-gnome/text-entry.c 2010-03-28 16:39:48.755153605 -0400 +@@ -667,7 +667,7 @@ text_entry_set_current (TextEntry *entry + char *selection = NULL, *text = NULL; + int start, end; + +- g_return_if_fail (GTK_WIDGET_REALIZED (widget)); ++ g_return_if_fail (gtk_widget_get_realized (GTK_WIDGET (widget))); + + if (sess == priv->current) { + return; +diff -urp xchat-gnome-0.26.1.OLD/src/fe-gnome/userlist-gui.c xchat-gnome-0.26.1/src/fe-gnome/userlist-gui.c +--- xchat-gnome-0.26.1.OLD/src/fe-gnome/userlist-gui.c 2008-10-13 17:02:16.000000000 -0400 ++++ xchat-gnome-0.26.1/src/fe-gnome/userlist-gui.c 2010-03-28 16:47:55.703154452 -0400 +@@ -261,12 +261,12 @@ userlist_gui_show (void) + + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (gui.userlist_toggle), TRUE); + +- if (!GTK_WIDGET_REALIZED (gui.userlist_window)) { ++ if (!gtk_widget_get_realized (GTK_WIDGET (gui.userlist_window))) { + gtk_widget_realize (gui.userlist_window); + } + gtk_widget_size_request (gui.userlist, &request); + +- if (GTK_WIDGET_REALIZED (gui.userlist_toggle)) ++ if (gtk_widget_get_realized (GTK_WIDGET (gui.userlist_toggle))) + anchor_widget = gui.userlist_toggle; + else + anchor_widget = gui.main_window; +diff -urp xchat-gnome-0.26.1.OLD/src/fe-gnome/xtext.c xchat-gnome-0.26.1/src/fe-gnome/xtext.c +--- xchat-gnome-0.26.1.OLD/src/fe-gnome/xtext.c 2009-01-16 08:17:31.000000000 -0500 ++++ xchat-gnome-0.26.1/src/fe-gnome/xtext.c 2010-03-28 16:57:17.441402617 -0400 +@@ -1086,7 +1086,7 @@ gtk_xtext_size_allocate (GtkWidget * wid + xtext->avoid_trans = FALSE; + + widget->allocation = *allocation; +- if (GTK_WIDGET_REALIZED (widget)) ++ if (gtk_widget_get_realized (GTK_WIDGET (widget))) + { + xtext->buffer->window_width = allocation->width; + xtext->buffer->window_height = allocation->height; +@@ -4113,7 +4113,7 @@ gtk_xtext_set_palette (GtkXText * xtext, + xtext->palette[i] = palette[i].pixel; + } + +- if (GTK_WIDGET_REALIZED (xtext)) ++ if (gtk_widget_get_realized (GTK_WIDGET (xtext))) + { + xtext_set_fg (xtext, xtext->fgc, XTEXT_FG); + xtext_set_bg (xtext, xtext->fgc, XTEXT_BG); +@@ -4211,7 +4211,7 @@ gtk_xtext_set_font (GtkXText *xtext, cha + + gtk_xtext_fix_indent (xtext->buffer); + +- if (GTK_WIDGET_REALIZED (xtext)) ++ if (gtk_widget_get_realized (GTK_WIDGET (xtext))) + gtk_xtext_recalc_widths (xtext->buffer, TRUE); + + return TRUE; +@@ -4248,7 +4248,7 @@ gtk_xtext_set_background (GtkXText * xte + if (trans) + { + xtext->shaded = shaded; +- if (GTK_WIDGET_REALIZED (xtext)) ++ if (gtk_widget_get_realized (GTK_WIDGET (xtext))) + gtk_xtext_load_trans (xtext); + return; + } +@@ -4260,14 +4260,14 @@ gtk_xtext_set_background (GtkXText * xte + if (pixmap != 0) + { + g_object_ref (pixmap); +- if (GTK_WIDGET_REALIZED (xtext)) ++ if (gtk_widget_get_realized (GTK_WIDGET (xtext))) + { + gdk_gc_set_tile (xtext->bgc, pixmap); + gdk_gc_set_ts_origin (xtext->bgc, 0, 0); + xtext->ts_x = xtext->ts_y = 0; + gdk_gc_set_fill (xtext->bgc, GDK_TILED); + } +- } else if (GTK_WIDGET_REALIZED (xtext)) ++ } else if (gtk_widget_get_realized (GTK_WIDGET (xtext))) + { + g_object_unref (xtext->bgc); + val.subwindow_mode = GDK_INCLUDE_INFERIORS; +@@ -4516,7 +4516,7 @@ gtk_xtext_render_page (GtkXText * xtext) + int subline; + int startline = xtext->adj->value; + +- if(!GTK_WIDGET_REALIZED(xtext)) ++ if(!gtk_widget_get_realized (GTK_WIDGET (xtext))) + return; + + if (xtext->buffer->indent < MARGIN) +@@ -4636,7 +4636,7 @@ gtk_xtext_render_page (GtkXText * xtext) + void + gtk_xtext_refresh (GtkXText * xtext, int do_trans) + { +- if (GTK_WIDGET_REALIZED (GTK_WIDGET (xtext))) ++ if (gtk_widget_get_realized (GTK_WIDGET (xtext))) + { + #if defined(USE_XLIB) || defined(WIN32) + if (xtext->transparent && do_trans) +@@ -5204,7 +5204,7 @@ gtk_xtext_buffer_show (GtkXText *xtext, + xtext->io_tag = 0; + } + +- if (!GTK_WIDGET_REALIZED (GTK_WIDGET (xtext))) ++ if (!gtk_widget_get_realized (GTK_WIDGET (xtext))) + gtk_widget_realize (GTK_WIDGET (xtext)); + + gdk_drawable_get_size (GTK_WIDGET (xtext)->window, &w, &h);