diff options
author | Nick Mathewson <nickm@torproject.org> | 2014-04-28 11:34:53 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2014-04-28 11:34:53 -0400 |
commit | 9230bc7c65cec68c66fa9c75751d6c6bd600e9fc (patch) | |
tree | b9c2fe09bca52107a1595be0099bbc580dd39b19 /contrib/win32build/package_nsis-mingw.sh | |
parent | 78b431d3e30def3641f25707197c55a1c7200269 (diff) | |
download | tor-9230bc7c65cec68c66fa9c75751d6c6bd600e9fc.tar.gz tor-9230bc7c65cec68c66fa9c75751d6c6bd600e9fc.zip |
Clean the contrib directory with torch and machete.
We've accumulated a lot of cruft in this directory over the years: so
much, that it passed the point of being so disorganized that we no
longer browsed through it to see how bad it had gotten.
This patch (based on changes by rl1987) tries to remove the most
useless items, and split the others into reasonable directories. It
creates a new scripts/ directory for maint and test scripts.
This patch was generated with the script below. No other changes are made in
this patch.
#############
# new directories
mkdir -p contrib/test-tools
mkdir -p contrib/or-tools
mkdir -p contrib/dirauth-tools
mkdir -p contrib/operator-tools
mkdir -p contrib/client-tools
mkdir -p contrib/test-tools
mkdir -p contrib/dist
mkdir -p contrib/dist/suse
mkdir -p contrib/win32build
mkdir -p scripts/maint
mkdir -p scripts/test
############
# Deleted -- nobody who wants this is going to be looking for it here any
# longer. Also, nobody wants it.
git rm contrib/auto-naming/README
# Deleted: We no longer do polipo.
git rm contrib/polipo/Makefile.mingw
git rm contrib/polipo/README
git rm contrib/polipo/polipo-mingw.nsi
# We haven't even tried to run this for ages. It is a relic of a bygone era
git rm contrib/mdd.py
# contrib/dir-tools/directory-archive/
# Tools for running a directory archive. No longer used - deleting them.
git rm contrib/directory-archive/crontab.sample
git rm contrib/directory-archive/fetch-all
git rm contrib/directory-archive/fetch-all-v3
git rm contrib/directory-archive/tar-them-up
git rm contrib/directory-archive/fetch-all-functions
git rm contrib/directory-archive/sort-into-month-folder
# This appears to be related to very old windows packaging stuff.
git rm contrib/bundle.nsi
git rm contrib/package_nsis-weasel.sh
git rm contrib/package_nsis.sh
git rm contrib/netinst.nsi
git rm contrib/torinst32.ico
git rm contrib/xenobite.ico
# This should not be needed for cross-compilation any more, should it?
git rm contrib/cross.sh
# I don't think anyone ever used this.
git rm contrib/make-signature.sh
# These are attempts to send tor controller commands from the command-line.
# They don't support modern authentication.
git rm contrib/tor-ctrl.sh
# this is for fetching about a tor server from a dirauth. But it
# doesn't authenticate the dirauth: yuck.
git rm contrib/sd
# wow, such unused, very perl4.
git rm contrib/tor-stress
####### contrib/dirauth-tools/
# Tools for running a directory authority
git mv contrib/add-tor contrib/dirauth-tools/
git mv contrib/nagios-check-tor-authority-cert contrib/dirauth-tools/
#######
# contrib/or-tools/
# Tools for examining relays
git mv contrib/check-tor contrib/or-tools/check-tor
git mv contrib/checksocks.pl contrib/or-tools/checksocks.pl
git mv contrib/exitlist contrib/or-tools/exitlist
#######
# contrib/operator-tools
# Tools for running a relay.
git mv contrib/linux-tor-prio.sh contrib/operator-tools/linux-tor-prio.sh
git mv contrib/tor-exit-notice.html contrib/operator-tools/tor-exit-notice.html
git mv contrib/tor.logrotate.in contrib/operator-tools/
######
# contrib/dist
git mv contrib/rc.subr contrib/dist/
git mv contrib/tor.sh.in contrib/dist/
git mv contrib/torctl.in contrib/dist/
git mv contrib/suse/* contrib/dist/suse/
######
# client-tools
git mv contrib/torify contrib/client-tools/torify
git mv contrib/tor-resolve.py contrib/client-tools/
######
# win32build
git mv contrib/package_nsis-mingw.sh contrib/win32build/
git mv contrib/tor.nsi.in contrib/win32build/
# Erinn didn't ask for this...
git mv contrib/tor-mingw.nsi.in contrib/win32build/
git mv contrib/tor.ico contrib/win32build/
######
# scripts/test
git mv contrib/cov-blame scripts/test/cov-blame
git mv contrib/cov-diff scripts/test/cov-diff
git mv contrib/coverage scripts/test/coverage
git mv contrib/scan-build.sh scripts/test/
######## scripts/maint
# Maintainance scripts
#
# These are scripts for developers to use when hacking on Tor. They mostly
# look at the Tor source in one way or another.
git mv contrib/findMergedChanges.pl scripts/maint/findMergedChanges.pl
git mv contrib/checkOptionDocs.pl scripts/maint/checkOptionDocs.pl
git mv contrib/checkSpace.pl scripts/maint/checkSpace.pl
git mv contrib/redox.py scripts/maint/redox.py
git mv contrib/updateVersions.pl scripts/maint/updateVersions.pl
git mv contrib/checkLogs.pl scripts/maint/checkLogs.pl
git mv contrib/format_changelog.py scripts/maint/
Diffstat (limited to 'contrib/win32build/package_nsis-mingw.sh')
-rw-r--r-- | contrib/win32build/package_nsis-mingw.sh | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/contrib/win32build/package_nsis-mingw.sh b/contrib/win32build/package_nsis-mingw.sh new file mode 100644 index 0000000000..b8a46cdbee --- /dev/null +++ b/contrib/win32build/package_nsis-mingw.sh @@ -0,0 +1,95 @@ +#!/bin/sh +# +# =============================================================================== +# package_nsis-ming.sh is distributed under this license: + +# Copyright (c) 2006-2007 Andrew Lewman +# Copyright (c) 2008 The Tor Project, Inc. + +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: + +# * Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. + +# * Redistributions in binary form must reproduce the above +# copyright notice, this list of conditions and the following disclaimer +# in the documentation and/or other materials provided with the +# distribution. + +# * Neither the names of the copyright owners nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. + +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# =============================================================================== + +# Script to package a Tor installer on win32. This script assumes that +# you have already built Tor, that you are running msys/mingw, and that +# you know what you are doing. + +# Start in the tor source directory after you've compiled tor.exe +# This means start as ./contrib/package_nsis-mingw.sh + +rm -rf win_tmp +mkdir win_tmp +mkdir win_tmp/bin +mkdir win_tmp/contrib +mkdir win_tmp/doc +mkdir win_tmp/doc/spec +mkdir win_tmp/doc/design-paper +mkdir win_tmp/doc/contrib +mkdir win_tmp/src +mkdir win_tmp/src/config +mkdir win_tmp/tmp + +cp src/or/tor.exe win_tmp/bin/ +cp src/tools/tor-resolve.exe win_tmp/bin/ +cp contrib/tor.ico win_tmp/bin/ +cp src/config/geoip win_tmp/bin/ +strip win_tmp/bin/*.exe + +# There is no man2html in mingw. +# Maybe we should add this into make dist instead. +# One has to do this manually and cp it do the tor-source/doc dir +#man2html doc/tor.1.in > win_tmp/tmp/tor-reference.html +#man2html doc/tor-resolve.1 > win_tmp/tmp/tor-resolve.html + +clean_newlines() { + perl -pe 's/^\n$/\r\n/mg; s/([^\r])\n$/\1\r\n/mg;' $1 >$2 +} + +clean_localstatedir() { + 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 +} + +for fn in address-spec.txt bridges-spec.txt control-spec.txt dir-spec.txt path-spec.txt rend-spec.txt socks-extensions.txt tor-spec.txt version-spec.txt; do + clean_newlines doc/spec/$fn win_tmp/doc/spec/$fn +done + +for fn in HACKING tor-gencert.html tor.html torify.html tor-resolve.html; do + clean_newlines doc/$fn win_tmp/doc/$fn +done + +for fn in README ChangeLog LICENSE; do + clean_newlines $fn win_tmp/$fn +done + +clean_localstatedir src/config/torrc.sample.in win_tmp/src/config/torrc.sample + +cp contrib/tor-mingw.nsi.in win_tmp/contrib/ + +cd win_tmp +makensis.exe contrib/tor-mingw.nsi.in + |