/pidgin/main: 4432aff3b90d: Merge with release-2.x.y

Daniel Atallah datallah at pidgin.im
Sat Jan 3 17:50:43 EST 2015


Changeset: 4432aff3b90d3ced8c0a1fe43782fe1cf9133a29
Author:	 Daniel Atallah <datallah at pidgin.im>
Date:	 2015-01-03 17:50 -0500
Branch:	 default
URL: https://hg.pidgin.im/pidgin/main/rev/4432aff3b90d

Description:

Merge with release-2.x.y

diffstat:

 COPYRIGHT                                    |    1 +
 ChangeLog                                    |   10 ++
 Makefile.mingw                               |    9 +-
 libpurple/Makefile.mingw                     |   12 +-
 libpurple/plugins/Makefile.mingw             |    4 -
 libpurple/plugins/perl/Makefile.mingw        |    2 +-
 libpurple/plugins/perl/common/Makefile.mingw |    2 +-
 libpurple/plugins/perl/common/module.h       |    1 -
 libpurple/plugins/perl/perl-common.h         |    1 -
 libpurple/protocols/irc/Makefile.mingw       |    4 +-
 libpurple/protocols/jabber/Makefile.mingw    |    4 +-
 libpurple/win32/global.mak                   |    3 +-
 pidgin/plugins/perl/common/Makefile.mingw    |    2 +-
 pidgin/win32/nsis/generate_gtk_zip.sh        |  128 ++++++++++++++++++++------
 pidgin/win32/nsis/pidgin-installer.nsi       |   39 +++----
 pidgin/win32/winpidgin.c                     |   76 ----------------
 16 files changed, 137 insertions(+), 161 deletions(-)

diffs (truncated from 582 to 300 lines):

diff --git a/COPYRIGHT b/COPYRIGHT
--- a/COPYRIGHT
+++ b/COPYRIGHT
@@ -510,6 +510,7 @@ Michael Shkutkov
 Shreevatsa R
 Dylan Simon <dylan at dylex.net>
 Ettore Simone
+Renato Silva
 John Silvestri
 Mukund Sivaraman
 Craig Slusher
diff --git a/ChangeLog b/ChangeLog
--- a/ChangeLog
+++ b/ChangeLog
@@ -75,6 +75,16 @@ version 3.0.0 (??/??/????):
 	* The Offline Message Emulation plugin now adds a note that the message
 	  was an offline message. (Flavius Anton) (#2497)
 
+version 2.10.12 (MM/DD/YY):
+	Windows-Specific Changes:
+	* Updates to dependencies:
+		* Cyrus SASL 2.1.26
+		* libxml2 2.9.2
+		* NSS 3.17.3 and NSPR 4.10.7
+		* Perl 5.20.1
+		* SILC 1.1.12
+	* Remove support for Tcl plugins
+
 version 2.10.11 (11/23/14):
 	General:
 	* Fix handling of Self-Signed SSL/TLS Certificates when using the NSS
diff --git a/Makefile.mingw b/Makefile.mingw
--- a/Makefile.mingw
+++ b/Makefile.mingw
@@ -59,14 +59,7 @@ PIDGIN_INST_DEP_DIR="$(WIN32_DEV_TOP)/pi
 # Any *.dll or *.exe files included in win32-install-dir that we don't compile
 # should be included in this list so they don't get stripped
 EXTERNAL_DLLS = \
-	exchndl.dll \
-	libsasl.dll \
-	saslANONYMOUS.dll \
-	saslCRAMMD5.dll \
-	saslDIGESTMD5.dll \
-	saslGSSAPI.dll \
-	saslLOGIN.dll \
-	saslPLAIN.dll
+	exchndl.dll
 
 #build an expression for `find` to use to ignore the above files
 EXTERNAL_DLLS_FIND_EXP = $(patsubst %,-o -name %,$(EXTERNAL_DLLS))
diff --git a/libpurple/Makefile.mingw b/libpurple/Makefile.mingw
--- a/libpurple/Makefile.mingw
+++ b/libpurple/Makefile.mingw
@@ -10,15 +10,13 @@ include $(PIDGIN_TREE_TOP)/libpurple/win
 TARGET = libpurple
 
 ifeq ($(CYRUS_SASL), 1)
-NEEDED_DLLS = $(CYRUS_SASL_TOP)/bin/libsasl.dll
+NEEDED_DLLS = $(CYRUS_SASL_TOP)/bin/libsasl2-3.dll
 
 CYRUS_SASL_PLUGINS = \
-                        $(CYRUS_SASL_TOP)/bin/sasl2/saslANONYMOUS.dll \
-                        $(CYRUS_SASL_TOP)/bin/sasl2/saslCRAMMD5.dll \
-                        $(CYRUS_SASL_TOP)/bin/sasl2/saslDIGESTMD5.dll \
-                        $(CYRUS_SASL_TOP)/bin/sasl2/saslGSSAPI.dll \
-                        $(CYRUS_SASL_TOP)/bin/sasl2/saslLOGIN.dll \
-                        $(CYRUS_SASL_TOP)/bin/sasl2/saslPLAIN.dll
+                        $(CYRUS_SASL_TOP)/lib/sasl2/libanonymous-3.dll \
+                        $(CYRUS_SASL_TOP)/lib/sasl2/libcrammd5-3.dll \
+                        $(CYRUS_SASL_TOP)/lib/sasl2/libdigestmd5-3.dll \
+                        $(CYRUS_SASL_TOP)/lib/sasl2/libplain-3.dll
 
 endif
 
diff --git a/libpurple/plugins/Makefile.mingw b/libpurple/plugins/Makefile.mingw
--- a/libpurple/plugins/Makefile.mingw
+++ b/libpurple/plugins/Makefile.mingw
@@ -8,7 +8,6 @@ PIDGIN_TREE_TOP := ../..
 include $(PIDGIN_TREE_TOP)/libpurple/win32/global.mak
 
 PERL_PLUGIN := ./perl
-TCL_PLUGIN := ./tcl
 SSL_PLUGIN := ./ssl
 KEYRING_PLUGIN := ./keyrings
 
@@ -47,13 +46,11 @@ LIBS =	\
 
 all: $(PURPLE_DLL).a plugins
 	$(MAKE_at) $(MAKE) -C $(PERL_PLUGIN) -f $(MINGW_MAKEFILE)
-	$(MAKE_at) $(MAKE) -C $(TCL_PLUGIN) -f $(MINGW_MAKEFILE)
 	$(MAKE_at) $(MAKE) -C $(SSL_PLUGIN) -f $(MINGW_MAKEFILE)
 	$(MAKE_at) $(MAKE) -C $(KEYRING_PLUGIN) -f $(MINGW_MAKEFILE)
 
 install: all $(PURPLE_INSTALL_PLUGINS_DIR)
 	$(MAKE_at) $(MAKE) -C $(PERL_PLUGIN) -f $(MINGW_MAKEFILE) install
-	$(MAKE_at) $(MAKE) -C $(TCL_PLUGIN) -f $(MINGW_MAKEFILE) install
 	$(MAKE_at) $(MAKE) -C $(SSL_PLUGIN) -f $(MINGW_MAKEFILE) install
 	$(MAKE_at) $(MAKE) -C $(KEYRING_PLUGIN) -f $(MINGW_MAKEFILE) install
 	cp *.dll $(PURPLE_INSTALL_PLUGINS_DIR)
@@ -78,7 +75,6 @@ plugins: \
 clean:
 	rm -f *.o *.dll
 	$(MAKE_at) $(MAKE) -C $(PERL_PLUGIN) -f $(MINGW_MAKEFILE) clean
-	$(MAKE_at) $(MAKE) -C $(TCL_PLUGIN) -f $(MINGW_MAKEFILE) clean
 	$(MAKE_at) $(MAKE) -C $(SSL_PLUGIN) -f $(MINGW_MAKEFILE) clean
 	$(MAKE_at) $(MAKE) -C $(KEYRING_PLUGIN) -f $(MINGW_MAKEFILE) clean
 
diff --git a/libpurple/plugins/perl/Makefile.mingw b/libpurple/plugins/perl/Makefile.mingw
--- a/libpurple/plugins/perl/Makefile.mingw
+++ b/libpurple/plugins/perl/Makefile.mingw
@@ -52,7 +52,7 @@ LIBS =	\
 			-lws2_32 \
 			-lintl \
 			-lpurple \
-			-lperl510
+			-lperl520
 
 include $(PIDGIN_COMMON_RULES)
 
diff --git a/libpurple/plugins/perl/common/Makefile.mingw b/libpurple/plugins/perl/common/Makefile.mingw
--- a/libpurple/plugins/perl/common/Makefile.mingw
+++ b/libpurple/plugins/perl/common/Makefile.mingw
@@ -83,7 +83,7 @@ OBJECTS = $(C_FILES:%.c=%.o)
 ##
 ## LIBRARIES
 ##
-LIBS =			-lperl510 \
+LIBS =			-lperl520 \
 			-lperl \
 			-lpurple \
 			-lglib-2.0 \
diff --git a/libpurple/plugins/perl/common/module.h b/libpurple/plugins/perl/common/module.h
--- a/libpurple/plugins/perl/common/module.h
+++ b/libpurple/plugins/perl/common/module.h
@@ -11,7 +11,6 @@ typedef struct group *Purple__Group;
 #include <glib.h>
 #ifdef _WIN32
 #undef pipe
-#undef STRINGIFY
 #endif
 
 #define SILENT_NO_TAINT_SUPPORT 0
diff --git a/libpurple/plugins/perl/perl-common.h b/libpurple/plugins/perl/perl-common.h
--- a/libpurple/plugins/perl/perl-common.h
+++ b/libpurple/plugins/perl/perl-common.h
@@ -3,7 +3,6 @@
 
 #include <glib.h>
 #ifdef _WIN32
-#undef STRINGIFY
 #undef pipe
 #endif
 
diff --git a/libpurple/protocols/irc/Makefile.mingw b/libpurple/protocols/irc/Makefile.mingw
--- a/libpurple/protocols/irc/Makefile.mingw
+++ b/libpurple/protocols/irc/Makefile.mingw
@@ -58,8 +58,8 @@ LIBS =	\
 
 ifeq ($(CYRUS_SASL), 1)
 INCLUDE_PATHS += -I$(CYRUS_SASL_TOP)/include
-LIB_PATHS += -L$(CYRUS_SASL_TOP)/bin
-LIBS += -llibsasl
+LIB_PATHS += -L$(CYRUS_SASL_TOP)/lib
+LIBS += -llibsasl2
 endif
 
 include $(PIDGIN_COMMON_RULES)
diff --git a/libpurple/protocols/jabber/Makefile.mingw b/libpurple/protocols/jabber/Makefile.mingw
--- a/libpurple/protocols/jabber/Makefile.mingw
+++ b/libpurple/protocols/jabber/Makefile.mingw
@@ -125,8 +125,8 @@ LIBS = \
 
 ifeq ($(CYRUS_SASL), 1)
 INCLUDE_PATHS += -I$(CYRUS_SASL_TOP)/include
-LIB_PATHS += -L$(CYRUS_SASL_TOP)/bin
-LIBS += -llibsasl
+LIB_PATHS += -L$(CYRUS_SASL_TOP)/lib
+LIBS += -llibsasl2
 endif
 
 include $(PIDGIN_COMMON_RULES)
diff --git a/libpurple/win32/global.mak b/libpurple/win32/global.mak
--- a/libpurple/win32/global.mak
+++ b/libpurple/win32/global.mak
@@ -24,10 +24,9 @@ GTK_BIN ?= $(GTK_TOP)/bin
 JSON_GLIB_TOP ?= $(WIN32_DEV_TOP)/json-glib-0.14
 LIBXML2_TOP ?= $(WIN32_DEV_TOP)/libxml2-2.9
 MEANWHILE_TOP ?= $(WIN32_DEV_TOP)/meanwhile-1.0
-NSS_TOP ?= $(WIN32_DEV_TOP)/nss-3.17.1-nspr-4.10.7
+NSS_TOP ?= $(WIN32_DEV_TOP)/nss-3.17.3-nspr-4.10.7
 PERL_LIB_TOP ?= $(WIN32_DEV_TOP)/perl-5.10
 SILC_TOOLKIT ?= $(WIN32_DEV_TOP)/silc-toolkit-1.1
-TCL_LIB_TOP ?= $(WIN32_DEV_TOP)/tcl-8.5
 GSTREAMER_TOP ?= $(WIN32_DEV_TOP)/gstreamer-0.10
 GCC_SSP_TOP ?= $(shell dirname $(shell which $(CC)))
 CYRUS_SASL_TOP ?= $(WIN32_DEV_TOP)/cyrus-sasl-2.1
diff --git a/pidgin/plugins/perl/common/Makefile.mingw b/pidgin/plugins/perl/common/Makefile.mingw
--- a/pidgin/plugins/perl/common/Makefile.mingw
+++ b/pidgin/plugins/perl/common/Makefile.mingw
@@ -78,7 +78,7 @@ OBJECTS = $(C_FILES:%.c=%.o)
 ##
 ## LIBRARIES
 ##
-LIBS =			-lperl510 \
+LIBS =			-lperl520 \
 			-lperl \
 			-lpurple \
 			-lpidgin \
diff --git a/pidgin/win32/nsis/generate_gtk_zip.sh b/pidgin/win32/nsis/generate_gtk_zip.sh
--- a/pidgin/win32/nsis/generate_gtk_zip.sh
+++ b/pidgin/win32/nsis/generate_gtk_zip.sh
@@ -20,6 +20,7 @@ STAGE_DIR=`readlink -f $PIDGIN_BASE/pidg
 CERT_PATH=`readlink -f $PIDGIN_BASE/pidgin/win32/nsis`/cacert.pem
 #Subdirectory of $STAGE_DIR
 INSTALL_DIR=Gtk
+SRC_INSTALL_DIR=src_install
 CONTENTS_FILE=$INSTALL_DIR/CONTENTS
 PIDGIN_VERSION=$( < $PIDGIN_BASE/VERSION )
 
@@ -27,6 +28,7 @@ PIDGIN_VERSION=$( < $PIDGIN_BASE/VERSION
 BUNDLE_VERSION=2.24.18.0
 BUNDLE_SHA1SUM="5957b0bf3f5e520863cf8ba64db7592383e9dd42"
 ZIP_FILE="$PIDGIN_BASE/pidgin/win32/nsis/gtk-runtime-$BUNDLE_VERSION.zip"
+SRC_ZIP_FILE="$PIDGIN_BASE/pidgin/win32/nsis/gtk-runtime-$BUNDLE_VERSION-src.zip"
 #BUNDLE_URL="https://pidgin.im/win32/download_redir.php?version=$PIDGIN_VERSION&gtk_version=$BUNDLE_VERSION&dl_pkg=gtk"
 BUNDLE_URL="https://pidgin.im/~twasilczyk/win32/gtk-runtime-$BUNDLE_VERSION.zip"
 
@@ -92,6 +94,8 @@ fi
 DOWNLOAD_HOST="https://pidgin.im/~twasilczyk/win32/runtime-deps/"
 
 ALL=""
+#Format for packages is "binary_url name version binary_validation src_url src_validation"
+#TODO: Fix packages SRC handling
 
 ARC_ATK="${DOWNLOAD_HOST}mingw32-atk-2.8.0-1.5.noarch.rpm ATK 2.8.0-1.5 sha1sum:0c682eadc299963aaa5d7998d655e46ead7d7515"
 ALL+="ARC_ATK "
@@ -280,11 +284,15 @@ ARC_ZLIB="${DOWNLOAD_HOST}mingw32-zlib-1
 ALL+="ARC_ZLIB "
 
 mkdir -p $STAGE_DIR
+mkdir -p $STAGE_DIR/src
 cd $STAGE_DIR
 
 rm -rf $INSTALL_DIR
 mkdir $INSTALL_DIR
 
+rm -rf $SRC_INSTALL_DIR
+mkdir $SRC_INSTALL_DIR
+
 #new CONTENTS file
 echo Bundle Version $BUNDLE_VERSION > $CONTENTS_FILE
 
@@ -334,27 +342,16 @@ function rpm_install {
 	fi
 }
 
-function download_and_extract {
-	URL=${1%%\ *}
-	VALIDATION=${1##*\ }
-	NAME=${1%\ *}
-	NAME=${NAME#*\ }
-	FILE=$(basename $URL)
-	MINGW_DIR="usr/i686-w64-mingw32/sys-root/mingw"
-	MINGW_DIR_TOP="usr"
-	if [ ! -e $FILE ]; then
-		echo "Downloading $NAME"
-		download "$URL" "$FILE" || exit 1
-	else
-		echo "Extracting $NAME"
-	fi
+function validate_file {
+	VALIDATION=$1
+	FILE=$2
 	VALIDATION_TYPE=${VALIDATION%%:*}
 	VALIDATION_VALUE=${VALIDATION##*:}
-	if [ $VALIDATION_TYPE == 'sha1sum' ]; then
-		CHECK_SHA1SUM=`sha1sum $FILE`
-		CHECK_SHA1SUM=${CHECK_SHA1SUM%%\ *}
-		if [ "$CHECK_SHA1SUM" != "$VALIDATION_VALUE" ]; then
-			echo "sha1sum ($CHECK_SHA1SUM) for $FILE doesn't match expected value of $VALIDATION_VALUE"
+	if [ $VALIDATION_TYPE == 'sha1sum' -o $VALIDATION_TYPE == 'sha256sum' ]; then
+		CHECK_SUM=`$VALIDATION_TYPE "$FILE"`
+		CHECK_SUM=${CHECK_SUM%%\ *}
+		if [ "$CHECK_SUM" != "$VALIDATION_VALUE" ]; then
+			echo "$VALIDATION_TYPE ($CHECK_SUM) for $FILE doesn't match expected value of $VALIDATION_VALUE"
 			exit 1
 		fi
 	elif [ $VALIDATION_TYPE == 'gpg' ]; then
@@ -364,36 +361,99 @@ function download_and_extract {
 		fi
 		#Use our own keyring to avoid adding stuff to the main keyring
 		#This doesn't use $GPG_SIGN because we don't this validation to be bypassed when people are skipping signing output
-		GPG_BASE="gpg -q --keyring $STAGE_DIR/$VALIDATION_VALUE-keyring.gpg" 
-		if [[ ! -e $STAGE_DIR/$VALIDATION_VALUE-keyring.gpg \
+		GPG_BASE="gpg -q --keyring $STAGE_DIR/$VALIDATION_VALUE-keyring.gpg"
+		if [[ ! -e "$STAGE_DIR/$VALIDATION_VALUE-keyring.gpg" \
 				|| `$GPG_BASE --list-keys "$VALIDATION_VALUE" > /dev/null && echo -n "0"` -ne 0 ]]; then
-			touch $STAGE_DIR/$VALIDATION_VALUE-keyring.gpg
-		       	$GPG_BASE --no-default-keyring --keyserver pgp.mit.edu --recv-key "$VALIDATION_VALUE" || exit 1
+			touch "$STAGE_DIR/$VALIDATION_VALUE-keyring.gpg"



More information about the Commits mailing list