]> sigrok.org Git - sigrok-util.git/blobdiff - cross-compile/mingw/sigrok-cross-mingw
sigrok-cross-mingw: Fix for installing 64bit programs into 'Program Files'
[sigrok-util.git] / cross-compile / mingw / sigrok-cross-mingw
index 5cf478fc9620d1da466b5961e729b64755ab9481..52895b7019cf83866820fc2b695a82f46d467ed5 100755 (executable)
@@ -2,7 +2,7 @@
 ##
 ## This file is part of the sigrok-util project.
 ##
-## Copyright (C) 2013-2018 Uwe Hermann <uwe@hermann-uwe.de>
+## Copyright (C) 2013-2020 Uwe Hermann <uwe@hermann-uwe.de>
 ##
 ## This program is free software; you can redistribute it and/or modify
 ## it under the terms of the GNU General Public License as published by
@@ -45,8 +45,6 @@ DEBUG=0
 
 # -----------------------------------------------------------------------------
 
-SF_MIRROR=switch.dl.sourceforge.net
-
 WGET="wget -c --quiet"
 GIT_CLONE="git clone --depth=1"
 
@@ -108,6 +106,11 @@ mkdir -p $PREFIX
 $WGET http://www.sigrok.org/tmp/Python34_$TARGET.tar.gz -O $PREFIX/Python34.tar.gz
 tar xzf $PREFIX/Python34.tar.gz -C $PREFIX
 
+# Fix for bug #1195.
+if [ $TARGET = "x86_64" ]; then
+       patch -p1 $PREFIX/Python34/include/pyconfig.h < ../pyconfig.patch
+fi
+
 # Create a dummy python3.pc file so that pkg-config finds Python 3.
 mkdir -p $PREFIX/lib/pkgconfig
 cat >$PREFIX/lib/pkgconfig/python3.pc <<EOF 
@@ -145,19 +148,13 @@ if [ $TARGET = "x86_64" ]; then
        rm -f python34.dll
 fi
 
+# We need to include the *.pyd files from python34.zip into the installers,
+# otherwise importing certain modules (e.g. ctypes) won't work (bug #1409).
+unzip -q $PREFIX/python34.zip *.pyd -d $PREFIX
+
 # Zadig (we ship this with frontends for easy driver switching).
-$WGET http://zadig.akeo.ie/downloads/zadig.exe -O $PREFIX/zadig.exe
-$WGET http://zadig.akeo.ie/downloads/zadig_xp.exe -O $PREFIX/zadig_xp.exe
-
-# libusb
-$GIT_CLONE git://github.com/dickens/libusb -b event-abstraction-v4
-cd libusb
-patch -p1 < ../../libusb_raw_io.patch
-./bootstrap.sh
-./configure $C $L
-make -j1 $V
-make install $V
-cd ..
+$WGET https://github.com/pbatard/libwdi/releases/download/b721/zadig-2.4.exe -O $PREFIX/zadig.exe
+$WGET https://github.com/pbatard/libwdi/releases/download/v1.2.5/zadig_xp-2.2.exe -O $PREFIX/zadig_xp.exe
 
 # libserialport
 $GIT_CLONE $REPO_BASE/libserialport
@@ -218,7 +215,11 @@ cd sigrok-cli
 ./configure $C
 make $PARALLEL $V
 make install $V
-makensis contrib/sigrok-cli_cross.nsi
+if [ $TARGET = "i686" ]; then
+       makensis contrib/sigrok-cli_cross.nsi
+else
+       makensis -DPE64=1 contrib/sigrok-cli_cross.nsi
+fi
 cd ..
 
 # PulseView
@@ -232,11 +233,16 @@ $CMAKE \
        -DENABLE_TESTS=y \
        .
 make $PARALLEL $V
+make manual
 if [ $DEBUG = 1 ]; then
        make install $V
 else
        make install/strip $V
 fi
-makensis contrib/pulseview_cross.nsi
+if [ $TARGET = "i686" ]; then
+       makensis contrib/pulseview_cross.nsi
+else
+       makensis -DPE64=1 contrib/pulseview_cross.nsi
+fi
 cd ..