sigrok-cross-mingw: Document required MXE fixes/workarounds.
[sigrok-util.git] / cross-compile / mingw / mxe_fixes.patch
1 These patches are currently required to get a properly working
2 MXE setup for sigrok usage.
3
4  - Force libzip to use its own mkstemp() implementation.
5    http://sigrok.org/bugzilla/show_bug.cgi?id=570#c2
6
7  - Disable currently broken freetds (optional Qt dependency).
8    https://github.com/mxe/mxe/issues/770
9
10  - Disable currently broken qtassistant (we don't need it anyway).
11    https://github.com/mxe/mxe/issues/565
12    
13 diff --git a/src/libzip.mk b/src/libzip.mk
14 index 99606d3..fd18276 100644
15 --- a/src/libzip.mk
16 +++ b/src/libzip.mk
17 @@ -18,7 +18,8 @@ endef
18  
19  define $(PKG)_BUILD
20      cd '$(1)' && ./configure \
21 -        $(MXE_CONFIGURE_OPTS)
22 +        $(MXE_CONFIGURE_OPTS) \
23 +       ac_cv_func_mkstemp=no
24      $(MAKE) -C '$(1)' -j '$(JOBS)' install $(MXE_DISABLE_CRUFT) SUBDIRS=lib
25  
26      '$(TARGET)-gcc' \
27 diff --git a/src/qt.mk b/src/qt.mk
28 index f71f5c9..d7fdff1 100644
29 --- a/src/qt.mk
30 +++ b/src/qt.mk
31 @@ -8,7 +8,7 @@ $(PKG)_CHECKSUM := 76aef40335c0701e5be7bb3a9101df5d22fe3666
32  $(PKG)_SUBDIR   := $(PKG)-everywhere-opensource-src-$($(PKG)_VERSION)
33  $(PKG)_FILE     := $(PKG)-everywhere-opensource-src-$($(PKG)_VERSION).tar.gz
34  $(PKG)_URL      := http://download.qt.io/official_releases/qt/4.8/$($(PKG)_VERSION)/$($(PKG)_FILE)
35 -$(PKG)_DEPS     := gcc postgresql freetds openssl zlib libpng jpeg libmng tiff sqlite dbus
36 +$(PKG)_DEPS     := gcc postgresql openssl zlib libpng jpeg libmng tiff sqlite dbus
37  
38  define $(PKG)_UPDATE
39      $(WGET) -q -O- http://download.qt-project.org/official_releases/qt/4.8/ | \
40 @@ -56,7 +56,6 @@ define $(PKG)_BUILD
41          -qt-sql-odbc \
42          -qt-sql-psql \
43          -no-sql-mysql \
44 -        -qt-sql-tds -D Q_USE_SYBASE \
45          -system-zlib \
46          -system-libpng \
47          -system-libjpeg \
48 @@ -76,12 +75,12 @@ define $(PKG)_BUILD
49      $(MAKE) -C '$(1)/tools/linguist/lrelease' -j '$(JOBS)' install
50      ln -fs '$(PREFIX)/$(TARGET)/bin/lrelease' '$(PREFIX)/bin/$(TARGET)-lrelease'
51  
52 -    cd '$(1)/tools/assistant' && '$(1)/bin/qmake' assistant.pro
53 -    # can't figure out where -lQtCLucene comes from so use
54 -    # sed on the output instead of patching the input
55 -    $(MAKE) -C '$(1)/tools/assistant' sub-lib-qmake_all
56 -    $(SED) -i 's,-lQtCLucene$$,-lQtCLucene4,' '$(1)/tools/assistant/lib/Makefile.Release'
57 -    $(MAKE) -C '$(1)/tools/assistant' -j '$(JOBS)' install
58 +    ## cd '$(1)/tools/assistant' && '$(1)/bin/qmake' assistant.pro
59 +    ## # can't figure out where -lQtCLucene comes from so use
60 +    ## # sed on the output instead of patching the input
61 +    ## $(MAKE) -C '$(1)/tools/assistant' sub-lib-qmake_all
62 +    ## $(SED) -i 's,-lQtCLucene$$,-lQtCLucene4,' '$(1)/tools/assistant/lib/Makefile.Release'
63 +    ## $(MAKE) -C '$(1)/tools/assistant' -j '$(JOBS)' install
64  
65      # likewise for these two
66      cd '$(1)/tools/designer/src/designer' && '$(1)/bin/qmake' designer.pro