Skip to content

Commit

Permalink
script changes for windows compilation to allow IPV6 handling. There's
Browse files Browse the repository at this point in the history
a new windows release terget for 64-bit XP (with no IPV6).  The regular
version is now 64-bit and requires at least Windows Vista for the IPV6
support.
  • Loading branch information
millerpuckette committed May 28, 2020
1 parent e42570d commit 15761e5
Show file tree
Hide file tree
Showing 4 changed files with 67 additions and 3 deletions.
4 changes: 2 additions & 2 deletions linux/README.txt
Expand Up @@ -17,8 +17,8 @@ release checklist
scp tarballs back to linux
... compile on windows:
cd msw
./sbuild-msw-64.sh <version>
./sbuild-msw-32.sh <version>
./build-msw-64.sh <version>
./build-msw-32.sh <version>
git tag (to see existing tags)
git tag 0.43-3test1 (e.g.)
git push origin
Expand Down
2 changes: 1 addition & 1 deletion msw/build-msw-64.sh
Expand Up @@ -29,7 +29,7 @@ cd pd-$pdversion
#do an autotools build
./autogen.sh
./configure --host=x86_64-w64-mingw32 --with-wish=wish86.exe \
CPPFLAGS='-DWISH=\"wish86.exe\"'
CPPFLAGS='-DWISH=\"wish86.exe\" -DWINVER=0x0600 -D_WIN32_WINNT=0x0600'

# for some reason, the generated libtool file has a reference to the 'msvcrt'
# lib which breaks compilation... so get rid of it. This might no longer be
Expand Down
File renamed without changes.
64 changes: 64 additions & 0 deletions msw/build-wxp-64.sh
@@ -0,0 +1,64 @@
#!/bin/sh
#usage: ./build-msw-64.sh 0.38-0 or 0.38-0test4

# This file documents how Miller builds the 64-bit windows binaries for Pd.
# It has not been tested on machines other than his. Most people wishing to
# compile Pd will want to use Dan Wilcox's scripts, tcltk-dir.sh and msw-app.sh
# directly, perhaps using this file as a guide.

if test x$1 = x
then
echo usage: ./build-wxp-64.sh 0.38-0 or 0.38-0test4
exit 1
fi

pdversion=$1
installerversion=$1.windows-installer.exe
tkversion=8.6.8


cd /tmp
rm -rf pd-$pdversion
git clone ~/pd pd-$pdversion
cd pd-$pdversion

#copy in the ASIO SDK and rename it ASIOSDK
(cd asio; unzip $HOME/work/asio/ASIOSDK2.3.zip;
rm -rf __MACOSX/; mv ASIOSDK2.3 ASIOSDK)

#do an autotools build
./autogen.sh
./configure --host=x86_64-w64-mingw32 --with-wish=wish86.exe \
CPPFLAGS='-DWISH=\"wish86.exe\"'

# for some reason, the generated libtool file has a reference to the 'msvcrt'
# lib which breaks compilation... so get rid of it. This might no longer be
# necessary.
sed -i '/-lmsvcrt/s/-lmsvcrt//g' libtool

make

# prepare to run Dan Wilcox's app-builcding script
cd msw
# copy in a pre-compiled version of TK (this was previously built using
# Dan's tk-building script here)
cp -a $HOME/bis/work/pd-versions/build-tk-on-win64/msw/tcltk-$tkversion .

# run the app building script itself
/home/msp/bis/work/pd-versions/build-tk-on-win64/msw/msw-app.sh \
--builddir .. --tk tcltk-$tkversion $pdversion

# On my machine at least, the wrong winpthread library gets loaded (the
# 32 bit one I think) - manually copy the correct one in. This too is
# probably no longer necessary.

cp /usr/x86_64-w64-mingw32/sys-root/mingw/bin/libwinpthread-1.dll \
pd-$pdversion/bin/

# make the zip archive
zip -r /tmp/pd-$pdversion.wxp.zip pd-$pdversion

# for convenience echo the finished filename and a command to quickly test
# it in wine
echo /tmp/pd-$pdversion.wxp.zip
echo wine `pwd`/pd-$pdversion/bin/wish86.exe `pwd`/pd-$pdversion/tcl/pd-gui.tcl

0 comments on commit 15761e5

Please sign in to comment.