963c38139332aa886b27867b71cbf7157c0eb44f
[novacoin.git] / contrib / gitian-win32.yml
1 ---
2 name: "bitcoin"
3 suites:
4 - "lucid"
5 architectures:
6 - "i386"
7 packages: 
8 - "mingw32"
9 - "git-core"
10 - "unzip"
11 - "nsis"
12 - "faketime"
13 reference_datetime: "2011-01-30 00:00:00"
14 remotes:
15 - "url": "https://github.com/bitcoin/bitcoin.git"
16   "dir": "bitcoin"
17 files:
18 - "wxwidgets-win32-2.9.2-gitian.zip"
19 - "boost-win32-1.47.0-gitian.zip"
20 - "openssl-1.0.0d.tar.gz"
21 - "db-4.8.30.NC.tar.gz"
22 - "miniupnpc-1.6.tar.gz"
23 script: |
24   #
25   mkdir wxWidgets-2.9.2
26   cd wxWidgets-2.9.2
27   mkdir lib
28   unzip ../wxwidgets-win32-2.9.2-gitian.zip
29   cd bin/$GBUILD_BITS
30   for lib in wx_mswu; do
31     i586-mingw32msvc-ar rc ../../lib/lib${lib}-2.9-i586-mingw32msvc.a $lib/*.o
32     i586-mingw32msvc-ranlib ../../lib/lib${lib}-2.9-i586-mingw32msvc.a
33   done
34   cp -a wx ../../lib
35   cd ../..
36   mv include/wx-2.9/wx include
37   cd ..
38   #
39   mkdir boost_1_47_0
40   cd boost_1_47_0
41   mkdir -p stage/lib
42   unzip ../boost-win32-1.47.0-gitian.zip
43   cd bin/$GBUILD_BITS
44   for lib in *; do
45     i586-mingw32msvc-ar rc ../../stage/lib/libboost_${lib}-mt-s.a $lib/*.o
46     i586-mingw32msvc-ranlib ../../stage/lib/libboost_${lib}-mt-s.a
47   done
48   cd ../..
49   mv include/boost .
50   cd ..
51   #
52   tar xzf openssl-1.0.0d.tar.gz
53   cd openssl-1.0.0d
54   ./Configure --cross-compile-prefix=i586-mingw32msvc- mingw
55   make
56   cd ..
57   #
58   tar xzf db-4.8.30.NC.tar.gz
59   cd db-4.8.30.NC/build_unix
60   ../dist/configure --enable-mingw --enable-cxx --host=i586-mingw32msvc CFLAGS="-I/usr/i586-mingw32msvc/include"
61   make $MAKEOPTS
62   cd ../..
63   #
64   tar xzf miniupnpc-1.6.tar.gz
65   cd miniupnpc-1.6
66   sed 's/dllwrap -k --driver-name gcc/$(DLLWRAP) -k --driver-name $(CC)/' -i Makefile.mingw
67   sed 's|wingenminiupnpcstrings $< $@|./wingenminiupnpcstrings $< $@|' -i Makefile.mingw
68   make -f Makefile.mingw DLLWRAP=i586-mingw32msvc-dllwrap CC=i586-mingw32msvc-gcc AR=i586-mingw32msvc-ar
69   cd ..
70   mv miniupnpc-1.6 miniupnpc
71   #
72   cd bitcoin
73   mkdir -p $OUTDIR/src
74   cp -a . $OUTDIR/src
75   rm -rf $OUTDIR/src/.git
76   cp -a $OUTDIR/src/locale $OUTDIR
77   cp $OUTDIR/src/doc/README_windows.txt $OUTDIR/readme.txt
78   cp $OUTDIR/src/COPYING $OUTDIR/license.txt
79   cd src
80   sed 's/$(DEBUGFLAGS)/-frandom-seed=bitcoin/' -i makefile.linux-mingw
81   export LD_PRELOAD=/usr/lib/faketime/libfaketime.so.1
82   export FAKETIME=$REFERENCE_DATETIME
83   export TZ=UTC
84   make -f makefile.linux-mingw $MAKEOPTS DEPSDIR=$HOME/build bitcoin.exe USE_UPNP=1
85   make -f makefile.linux-mingw $MAKEOPTS DEPSDIR=$HOME/build bitcoind.exe USE_UPNP=0
86   i586-mingw32msvc-strip bitcoin.exe
87   i586-mingw32msvc-strip bitcoind.exe
88   makensis ../share/setup.nsi
89   cp bitcoin.exe ../share/bitcoin-*-win32-setup.exe $OUTDIR/
90   mkdir $OUTDIR/daemon
91   cp bitcoind.exe $OUTDIR/daemon