wine: Bump to 1.8
RFC 1/1 wine: Bump to 1.8
Hi,
In a couple of weeks Wine 1.8 will be released, 1.7.55 was the last 1.7.x version. To prepare for the version jump of two years, I want to make sure early if i do something wrong. So a quick overlook over the patch would be nice.
What about moving the patches around like I do? 0003->0001?
Note that this patches is missing a hash file, will be added back later
Thanks
--- ...revent-call-to-memset-with-a-null-pointer.patch | 40 ---------------------- package/wine/0001-sane-config-fix.patch | 22 ++++++++++++ package/wine/0002-detect-ncursesw.patch | 17 --------- package/wine/0003-sane-config-fix.patch | 21 ------------ package/wine/wine.hash | 2 -- package/wine/wine.mk | 27 +++++++++++++-- 6 files changed, 46 insertions(+), 83 deletions(-) delete mode 100644 package/wine/0001-Prevent-call-to-memset-with-a-null-pointer.patch create mode 100644 package/wine/0001-sane-config-fix.patch delete mode 100644 package/wine/0002-detect-ncursesw.patch delete mode 100644 package/wine/0003-sane-config-fix.patch delete mode 100644 package/wine/wine.hash
package/wine/0001-Prevent-call-to-memset-with-a-null-pointer.patch deleted +0 -40
@@ -1,40 +0,0 @@ -commit deb274226783ab886bdb44876944e156757efe2b -Author: Daniel Beitler <[email protected]> -Date: Sun May 18 13:27:42 2014 -0400 - - msi: Prevent call to memset with a null pointer - in get_tablecolumns function. - -Fix miscompilation with gcc >= 4.9 -See https://bugs.winehq.org/show_bug.cgi?id=36139 for the upstream -bug report. There won't be a Wine 1.6.3 so we need to address this -anyway. - -Backported from: deb274226783ab886bdb44876944e156757efe2b -Signed-off-by: Andr? Hentschel <[email protected]> ---- - dlls/msi/table.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/dlls/msi/table.c b/dlls/msi/table.c -index 8012369..9ed9421 100644 ---- a/dlls/msi/table.c -+++ b/dlls/msi/table.c -@@ -671,7 +671,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF - /* Note: _Columns table doesn't have non-persistent data */ - - /* if maxcount is non-zero, assume it's exactly right for this table */ -- memset( colinfo, 0, maxcount * sizeof(*colinfo) ); -+ if (colinfo) memset( colinfo, 0, maxcount * sizeof(*colinfo) ); - count = table->row_count; - for (i = 0; i < count; i++) - { -@@ -684,7 +684,7 @@ static UINT get_tablecolumns( MSIDATABASE *db, LPCWSTR szTableName, MSICOLUMNINF - /* check the column number is in range */ - if (col < 1 || col > maxcount) - { -- ERR("column %d out of range\n", col); -+ ERR("column %d out of range (maxcount: %d)\n", col, maxcount); - continue; - } - /* check if this column was already set */
package/wine/0001-sane-config-fix.patch new file +22 -0
@@ -0,0 +1,22 @@ +Add support for SANE_CONFIG variable + +Instead of using directly the sane-config command, allow to pass a +SANE_CONFIG environment variable to override where to find the +sane-config tool. + +Signed-off-by: Thomas Petazzoni <[email protected]> +Signed-off-by: Andr? Hentschel <[email protected]> + +Index: b/configure.ac +=================================================================== +--- a/configure.ac ++++ b/configure.ac +@@ -1329,7 +1329,7 @@ + dnl **** Check for SANE **** + if test "x$with_sane" != "xno" + then +- WINE_PACKAGE_FLAGS(SANE,[libsane],,[`sane-config --cflags 2>/dev/null`],[`sane-config --ldflags 2>/dev/null`], ++ WINE_PACKAGE_FLAGS(SANE,[libsane],,[`${SANE_CONFIG:-sane-config} --cflags 2>/dev/null`],[`${SANE_CONFIG:-sane-config} --ldflags 2>/dev/null`], + [AC_CHECK_HEADER(sane/sane.h, + [WINE_CHECK_SONAME(sane,sane_init,,[SANE_CFLAGS=""],[$SANE_LIBS])], + [SANE_CFLAGS=""])])
package/wine/0002-detect-ncursesw.patch deleted +0 -17
@@ -1,17 +0,0 @@ -Detect libncursesw as well. -Backport from upstream 8d4e1fa7d77636a88651c9d48a48d39fab931c49 - -Signed-off-by: Gustavo Zacarias <[email protected]> - -diff -Nura wine-1.6.2.orig/configure.ac wine-1.6.2/configure.ac ---- wine-1.6.2.orig/configure.ac 2015-05-01 09:24:24.741960685 -0300 -+++ wine-1.6.2/configure.ac 2015-05-01 09:25:26.860069750 -0300 -@@ -1359,7 +1359,7 @@ - CURSESLIBS="" - if test "$ac_cv_header_ncurses_h" = "yes" - then -- WINE_CHECK_SONAME(ncurses,waddch,[CURSESLIBS="-lncurses"]) -+ WINE_CHECK_SONAME(ncurses,waddch,[CURSESLIBS="-lncurses"],,,[[libncursesw\\{0,1\\}]]) - elif test "$ac_cv_header_curses_h" = "yes" - then - WINE_CHECK_SONAME(curses,waddch,[CURSESLIBS="-lcurses"])
package/wine/0003-sane-config-fix.patch deleted +0 -21
@@ -1,21 +0,0 @@ -Add support for SANE_CONFIG variable - -Instead of using directly the sane-config command, allow to pass a -SANE_CONFIG environment variable to override where to find the -sane-config tool. - -Signed-off-by: Thomas Petazzoni <[email protected]> - -Index: b/configure.ac -=================================================================== ---- a/configure.ac -+++ b/configure.ac -@@ -1375,7 +1375,7 @@ - if test "x$with_sane" != "xno" - then - ac_save_CPPFLAGS="$CPPFLAGS" -- WINE_PACKAGE_FLAGS(SANE,[libsane],,[`sane-config --cflags 2>/dev/null`],[`sane-config --ldflags 2>/dev/null`]) -+ WINE_PACKAGE_FLAGS(SANE,[libsane],,[`${SANE_CONFIG:-sane-config} --cflags 2>/dev/null`],[`${SANE_CONFIG:-sane-config} --ldflags 2>/dev/null`]) - AC_CHECK_HEADER(sane/sane.h, - [WINE_CHECK_SONAME(sane,sane_init,,[SANE_CFLAGS=""],[$SANE_LIBS])], - [SANE_CFLAGS=""])
package/wine/wine.hash deleted +0 -2
@@ -1,2 +0,0 @@ -# Locally calculated after checking pgp signature -sha256 f0ab9eede5a0ccacbf6e50682649f9377b9199e49cf55641f1787cf72405acbe wine-1.6.2.tar.bz2
package/wine/wine.mk +24 -3
@@ -4,9 +4,9 @@ # ################################################################################ -WINE_VERSION = 1.6.2 +WINE_VERSION = 1.7.55 WINE_SOURCE = wine-$(WINE_VERSION).tar.bz2 -WINE_SITE = https://dl.winehq.org/wine/source/1.6 +WINE_SITE = https://dl.winehq.org/wine/source/1.7 WINE_LICENSE = LGPLv2.1+ WINE_LICENSE_FILES = COPYING.LIB LICENSE WINE_DEPENDENCIES = host-bison host-flex host-wine
@@ -27,7 +27,6 @@ WINE_CONF_OPTS = \ --without-hal \ --without-openal \ --without-opencl \ - --without-osmesa \ --without-oss # Wine uses a wrapper around gcc, and uses the value of --host to
@@ -122,6 +121,13 @@ else WINE_CONF_OPTS += --without-glu endif +ifeq ($(BR2_PACKAGE_LIBPCAP),y) +WINE_CONF_OPTS += --with-pcap +WINE_DEPENDENCIES += libpcap +else +WINE_CONF_OPTS += --without-pcap +endif + ifeq ($(BR2_PACKAGE_LIBPNG),y) WINE_CONF_OPTS += --with-png WINE_DEPENDENCIES += libpng
@@ -171,6 +177,20 @@ else WINE_CONF_OPTS += --without-ldap endif +ifeq ($(BR2_PACKAGE_MESA3D_OSMESA),y) +WINE_CONF_OPTS += --with-osmesa +WINE_DEPENDENCIES += mesa3d +else +WINE_CONF_OPTS += --without-osmesa +endif + +ifeq ($(BR2_PACKAGE_SAMBA4),y) +WINE_CONF_OPTS += --with-netapi +WINE_DEPENDENCIES += samba4 +else +WINE_CONF_OPTS += --without-netapi +endif + ifeq ($(BR2_PACKAGE_SANE_BACKENDS),y) WINE_CONF_OPTS += --with-sane WINE_DEPENDENCIES += sane-backends
@@ -270,6 +290,7 @@ endif define HOST_WINE_BUILD_CMDS $(HOST_MAKE_ENV) $(MAKE) -C $(@D) \ tools \ + tools/sfnt2fon \ tools/widl \ tools/winebuild \ tools/winegcc \
Signature · 1 line
1.9.1
Dear Andr? Hentschel,
Quoted 5 lines · Andr? Hentschel
In a couple of weeks Wine 1.8 will be released, 1.7.55 was the last 1.7.x version. To prepare for the version jump of two years, I want to make sure early if i do something wrong. So a quick overlook over the patch would be nice.
What about moving the patches around like I do? 0003->0001?
Note that this patches is missing a hash file, will be added back later
The patch looks good to me, there is nothing really complicated in there. Just a few comments:
* Use 'git format-patch -M' to enable rename detection, so that the renaming of the patches is detected, and instead of seeing a complete file being removed, and a complete file being added, we see a rename.
* In your commit log, please explain what is happening: which patches are dropped and why, which changes are made to the package other than bumping the version.
Of course, don't forget your SoB in the commit log as well.
Last suggestion: can you submit the SANE_CONFIG patch upstream, so that hopefully they merge it before the 1.8 release, and we can have zero patches for the wine package ?
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
Am 18.11.2015 um 22:21 schrieb Thomas Petazzoni:
Quoted 1 line
Dear Andr? Hentschel,
Hi Thomas, thanks a lot for that quick review!
Quoted 8 lines · Andr? Hentschel
Quoted 6 lines
In a couple of weeks Wine 1.8 will be released, 1.7.55 was the last 1.7.x version. To prepare for the version jump of two years, I want to make sure early if i do something wrong. So a quick overlook over the patch would be nice.
What about moving the patches around like I do? 0003->0001?
Note that this patches is missing a hash file, will be added back later
Quoted 7 lines
The patch looks good to me, there is nothing really complicated in there. Just a few comments:
* Use 'git format-patch -M' to enable rename detection, so that the renaming of the patches is detected, and instead of seeing a complete file being removed, and a complete file being added, we see a rename.
I also adjusted the patch a bit to apply to the new version
Quoted 3 lines
* In your commit log, please explain what is happening: which patches are dropped and why, which changes are made to the package other than bumping the version.
I'll do my best to keep that in mind (Might still be 4-8 weeks in the future)
Quoted 1 line
Of course, don't forget your SoB in the commit log as well.
Sure, I just didn't want to sign this patch ;)
Quoted 3 lines
Last suggestion: can you submit the
SANE_CONFIGpatch upstream, so that hopefully they merge it before the 1.8 release, and we can have zero patches for the wine package ?
The patch won't go in as it is, because it would break non-cross-builds, also this problem is most likely not only true for sane, but also for other *-config programs, and I'm no configure guru...
But I'll file a bug about it.
Hello,
Quoted 6 lines · Andr? Hentschel
Quoted 4 lines
* Use 'git format-patch -M' to enable rename detection, so that the renaming of the patches is detected, and instead of seeing a complete file being removed, and a complete file being added, we see a rename.
I also adjusted the patch a bit to apply to the new version
Not a problem: if the changes are not too important, it will still detect the rename.
Quoted 8 lines
Quoted 3 lines
Last suggestion: can you submit the
SANE_CONFIGpatch upstream, so that hopefully they merge it before the 1.8 release, and we can have zero patches for the wine package ?The patch won't go in as it is, because it would break non-cross-builds, also this problem is most likely not only true for sane, but also for other *-config programs, and I'm no configure guru...
Why do you say it breaks non-cross-builds? I looked again at 0003-sane-config-fix.patch and I don't really see how it can break non-cross-builds.
The patch is just replacing 'sane-config' by
'${SANE_CONFIG:-sane-config}'.
${SANE_CONFIG:-sane-config} says "use the value of SANE_CONFIG is available, otherwise use sane-config".
So, if SANE_CONFIG is not defined in the environment, this patch makes zero difference compared to the existing situation. It only optionally allows to pass SANE_CONFIG.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
Am 18.11.2015 um 22:57 schrieb Thomas Petazzoni:
Quoted 9 lines
Hello,
Quoted 5 lines · Andr? Hentschel
Quoted 4 lines
* Use 'git format-patch -M' to enable rename detection, so that the renaming of the patches is detected, and instead of seeing a complete file being removed, and a complete file being added, we see a rename.
Quoted 4 lines
Quoted 1 line
I also adjusted the patch a bit to apply to the new version
Not a problem: if the changes are not too important, it will still detect the rename.
OK, I'll try that
Quoted 17 lines
Quoted 9 lines
Quoted 4 lines
Last suggestion: can you submit the
SANE_CONFIGpatch upstream, so that hopefully they merge it before the 1.8 release, and we can have zero patches for the wine package ?The patch won't go in as it is, because it would break non-cross-builds, also this problem is most likely not only true for sane, but also for other *-config programs, and I'm no configure guru...
Why do you say it breaks non-cross-builds? I looked again at 0003-sane-config-fix.patch and I don't really see how it can break non-cross-builds.
The patch is just replacing 'sane-config' by
'${SANE_CONFIG:-sane-config}'.
Quoted 7 lines
${SANE_CONFIG:-sane-config} says "use the value of
SANE_CONFIGis available, otherwise use sane-config".So, if
SANE_CONFIGis not defined in the environment, this patch makes zero difference compared to the existing situation. It only optionally allows to passSANE_CONFIG.
True, my mistake, but the other points hold true.