a bit more code cleanup
[tor.git] / contrib / package_nsis.sh
blobd27f673068bf824aceb45707d055df75d159f1b1
1 #!/bin/sh
3 # Script to package a Tor installer on win32. This script assumes that
4 # you have already built Tor, that you are running cygwin, and that your
5 # environment is basically exactly the same as Nick's.
7 rm -rf win_tmp
8 mkdir win_tmp
9 mkdir win_tmp/bin
10 mkdir win_tmp/contrib
11 mkdir win_tmp/doc
12 mkdir win_tmp/doc/design-paper
13 mkdir win_tmp/doc/contrib
14 mkdir win_tmp/src
15 mkdir win_tmp/src/config
16 mkdir win_tmp/tmp
18 cp Win32Build/vc7/Tor/Debug/Tor.exe win_tmp/bin/tor.exe
19 cp Win32Build/vc7/tor_resolve/Debug/tor_resolve.exe win_tmp/bin
20 cp c:/windows/system32/libeay32.dll win_tmp/bin
21 cp c:/windows/system32/ssleay32.dll win_tmp/bin
23 man2html doc/tor.1.in > win_tmp/tmp/tor-reference.html
24 man2html doc/tor-resolve.1 > win_tmp/tmp/tor-resolve.html
26 clean_newlines() {
27 perl -pe 's/^\n$/\r\n/mg; s/([^\r])\n$/\1\r\n/mg;' $1 >$2
30 clean_localstatedir() {
31 perl -pe 's/^\n$/\r\n/mg; s/([^\r])\n$/\1\r\n/mg; s{\@LOCALSTATEDIR\@/(lib|log)/tor/}{C:\\Documents and Settings\\Application Data\\Tor\\}' $1 >$2
34 for fn in tor-spec.txt HACKING rend-spec.txt control-spec.txt \
35 tor-doc.html tor-doc.css version-spec.txt; do
36 clean_newlines doc/$fn win_tmp/doc/$fn
37 done
39 cp doc/design-paper/tor-design.pdf win_tmp/doc/design-paper/tor-design.pdf
41 for fn in tor-reference.html tor-resolve.html; do \
42 clean_newlines win_tmp/tmp/$fn win_tmp/doc/$fn
43 done
45 for fn in README AUTHORS ChangeLog LICENSE; do \
46 clean_newlines $fn win_tmp/$fn
47 done
49 clean_localstatedir src/config/torrc.sample.in win_tmp/src/config/torrc.sample
51 cp contrib/tor.nsi win_tmp/contrib
53 cd win_tmp/contrib
54 makensis tor.nsi
55 mv tor-*.exe ../..