Package: nsis Version: 2.46-3 Severity: normal Tags: patch Hi,
In preparation for the forthcoming upload of mingw-w64, I've prepared a patch allowing nsis to build with it. Notably the old i586-mingw32msvc target is gone, replaced with the official i686-w64-mingw32 triplet (even for Win32 builds). You may ignore this bug until #594371 is closed (I'll tag this bug appropriately). Regards, Stephen
diff -Nru nsis-2.46/debian/changelog nsis-2.46/debian/changelog --- nsis-2.46/debian/changelog 2010-09-21 03:45:53.000000000 +0200 +++ nsis-2.46/debian/changelog 2011-03-30 02:20:09.000000000 +0200 @@ -1,3 +1,10 @@ +nsis (2.46-3.1) experimental; urgency=low + + * Non-maintainer upload. + * Build with mingw-w64. + + -- Stephen Kitt <st...@sk2.org> Wed, 30 Mar 2011 02:20:09 +0200 + nsis (2.46-3) experimental; urgency=low * Removed architecture restrictions diff -Nru nsis-2.46/debian/control nsis-2.46/debian/control --- nsis-2.46/debian/control 2010-09-21 03:45:53.000000000 +0200 +++ nsis-2.46/debian/control 2011-03-30 02:19:52.000000000 +0200 @@ -2,7 +2,7 @@ Section: devel Priority: optional Maintainer: Thomas Gaugler <tho...@dadie.net> -Build-Depends: debhelper (>= 7.0.50~), scons (>= 1.2.0), gcc-mingw32 (>= 4.4.0-3) | mingw32, mingw32-runtime, mingw32-binutils, xmlto, html2text, libcppunit-dev, zlib1g-dev +Build-Depends: debhelper (>= 7.0.50~), scons (>= 1.2.0), mingw-w64 (>= 1.0), xmlto, html2text, libcppunit-dev, zlib1g-dev Standards-Version: 3.9.1 Homepage: http://nsis.sourceforge.net/ Vcs-Svn: svn://svn.debian.org/collab-maint/ext-maint/nsis/trunk @@ -11,7 +11,7 @@ Package: nsis Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} -Suggests: wine, gcc-mingw32 +Suggests: wine, mingw-w64 Description: Nullsoft Scriptable Install System (modified for Debian) NSIS is a tool for creating quick and user friendly installers for Microsoft Windows (Win32) operating systems. diff -Nru nsis-2.46/debian/patches/mingw-w64.patch nsis-2.46/debian/patches/mingw-w64.patch --- nsis-2.46/debian/patches/mingw-w64.patch 1970-01-01 01:00:00.000000000 +0100 +++ nsis-2.46/debian/patches/mingw-w64.patch 2011-03-30 02:20:16.000000000 +0200 @@ -0,0 +1,33 @@ +--- nsis-2.46.orig/Contrib/InstallOptions/InstallerOptions.cpp ++++ nsis-2.46/Contrib/InstallOptions/InstallerOptions.cpp +@@ -14,6 +14,8 @@ + #include "resource.h" + #include "shellapi.h" + ++#include <algorithm> ++ + #include <nsis/pluginapi.h> // nsis plugin + + // Use for functions only called from one place to possibly reduce some code +@@ -759,7 +761,7 @@ + DrawText(lpdis->hDC, pField->pszText, -1, &rc, DT_VCENTER | DT_WORDBREAK | DT_CALCRECT); + + // Make some more room so the focus rect won't cut letters off +- rc.right = min(rc.right + 2, lpdis->rcItem.right); ++ rc.right = std::min(rc.right + 2, lpdis->rcItem.right); + + // Move rect to right if in RTL mode + if (bRTL) +--- nsis-2.46.orig/SCons/Tools/crossmingw.py ++++ nsis-2.46/SCons/Tools/crossmingw.py +@@ -58,6 +58,10 @@ + i486-pc-mingw32- + i586-pc-mingw32- + i686-pc-mingw32- ++ i386-w64-mingw32- ++ i486-w64-mingw32- ++ i586-w64-mingw32- ++ i686-w64-mingw32- + """) + + def find(env): diff -Nru nsis-2.46/debian/patches/series nsis-2.46/debian/patches/series --- nsis-2.46/debian/patches/series 2010-05-06 04:15:31.000000000 +0200 +++ nsis-2.46/debian/patches/series 2011-03-30 02:16:07.000000000 +0200 @@ -1,3 +1,4 @@ # list of patch file names in the order they are applied nsis_system_zlib.patch makensis_native_64bit.patch +mingw-w64.patch diff -Nru nsis-2.46/debian/README.Debian nsis-2.46/debian/README.Debian --- nsis-2.46/debian/README.Debian 2009-07-24 12:31:20.000000000 +0200 +++ nsis-2.46/debian/README.Debian 2011-03-30 02:18:15.000000000 +0200 @@ -9,12 +9,12 @@ The mingw32 include dir should be in the include path and it usually is there by default, if not, add this to CPPFLAGS: - -I /usr/i586-mingw32msvc/include + -I /usr/i686-w64-mingw32/include The nsis subdir of the mingw32 library dir should be in the linker path, you'll need the following in LDFLAGS: - -L /usr/i586-mingw32msvc/lib/nsis + -L /usr/i686-w64-mingw32/lib/nsis The nsis pluginapi static library needs to be linked against, you'll need the following in LDFLAGS: diff -Nru nsis-2.46/debian/rules nsis-2.46/debian/rules --- nsis-2.46/debian/rules 2010-05-06 04:15:32.000000000 +0200 +++ nsis-2.46/debian/rules 2011-03-30 02:19:20.000000000 +0200 @@ -4,7 +4,7 @@ #export DH_VERBOSE=1 VERSION=${shell dpkg-parsechangelog | sed -n 's/^Version: *//p'} -MINGW32_PATH=/usr/i586-mingw32msvc +MINGW32_PATH=/usr/i686-w64-mingw32 SCONSOPTS = VERSION=$(VERSION) \ PREFIX=/usr PREFIX_CONF=/etc \