summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--contrib/osx/package.sh32
-rw-r--r--tor.spec.in49
2 files changed, 73 insertions, 8 deletions
diff --git a/contrib/osx/package.sh b/contrib/osx/package.sh
index d0d8915b1a..5ad626f644 100644
--- a/contrib/osx/package.sh
+++ b/contrib/osx/package.sh
@@ -12,15 +12,31 @@
# This script expects to be run from the toplevel makefile, with VERSION
# set to the latest Tor version, and Tor already built.
#
-# Building Tor for OSX in 3 easy steps:
-# 1) Make sure PRIVOXY_PKG_ZIP= is set to the correct path to find privoxyosx_setup_3.0.3.zip
-# 2) In the top level, this means ~/tor, not tor/contrib/osx, do a configure with these parameters:
-# configure --prefix=/Library/Tor --bindir=/Library/Tor --sysconfdir=/Library
-# 3) In same top level dir, make dist-osx. You'll have a .dmg file when complete.
+
+######################
+# The following steps are the exact steps used to produce the "official" OSX build of tor
+#
+# Summary:
+# 1) Compile and install the latest release of libevent
+# 2) Acquire privoxyosx_setup_3.0.3.zip. Remember where you put this file.
+# 3) Acquire and install your preferred version of tor via "make dist-osx"
+#
+# Details:
+# 1) You need to download the latest libevent from http://www.monkey.org/~provos/libevent/
+# 1a) At a shell prompt, export CFLAGS="-march=powerpc -mtune=powerpc"
+# 1b) The first step of compiling libevent is to configure it as follows:
+# configure --enable-static --disable-shared
+# 1c) Complete the "make" and "make install".
+# 2) Get your preferred version of the tor source from tor.eff.org
+# 2a) Edit /path/to/tor/contrib/osx/package.sh (the file you are reading) and confirm PRIVOXY_PKG_ZIP= is set
+# to the correct path to find the file privoxyosx_setup_3.0.3.zip
+# 2b) In the top level, this means /path/to/tor/, not tor/contrib/osx, do a configure with these parameters:
+# configure --prefix=/Library/Tor --bindir=/Library/Tor --sysconfdir=/Library
+# 2c) In same top level dir, do a "make dist-osx". You'll have a .dmg file when complete. Install from this dmg.
# Where have we put the zip file containing Privoxy? Edit this if your
# privoxy lives somewhere else.
-PRIVOXY_PKG_ZIP=~/src/privoxy-setup/privoxyosx_setup_3.0.3.zip
+PRIVOXY_PKG_ZIP=~/tmp/privoxyosx_setup_3.0.3.zip
###
# Helpful info on OS X packaging:
@@ -132,8 +148,8 @@ DOC=$BUILD_DIR/output/Documents
mkdir $DOC
cp doc/tor-doc.html doc/tor-doc.css $DOC
cp AUTHORS $DOC/AUTHORS.txt
-groff doc/tor.1 -T ps -m man | ps2pdf - $DOC/tor-reference.pdf
-groff doc/tor-resolve.1 -T ps -m man | ps2pdf - $DOC/tor-resolve.pdf
+groff doc/tor.1 -T ps -m man | pstopdf - $DOC/tor-reference.pdf
+groff doc/tor-resolve.1 -T ps -m man | pstopdf - $DOC/tor-resolve.pdf
mkdir $DOC/Advanced
cp doc/tor-spec.txt doc/rend-spec.txt doc/control-spec.txt doc/socks-extensions.txt doc/version-spec.txt $DOC/Advanced
diff --git a/tor.spec.in b/tor.spec.in
index 7fb2856cf0..7b4983d79d 100644
--- a/tor.spec.in
+++ b/tor.spec.in
@@ -1,6 +1,55 @@
## NOTE: tor.spec is autogenerated from tor.spec.in . Edit the latter,
## not the former.
+## Instructions for building various rpms on various architectures
+#
+# This will build various architecture and cpu tuned versions of tor all
+# bundled in a convenient rpm. Each rpm will require glibc on the target
+# system (which any rpm based linux distro should have already installed
+# by default). These are the exact same steps used to build the
+# official rpms of tor
+#
+# If you wish to further tune tor rpms beyond this list, see the GCC doc
+# page for further options:
+# http://gcc.gnu.org/onlinedocs/gcc-4.0.2/gcc/i386-and-x86_002d64-Options.html#i386-and-x86_002d64-Options
+#
+# i386 with zero tuning (most compatible, in theory will run an a true i386 cpu):
+# 1) download tor source tarball
+# 2) at shell prompt, export CFLAGS="-march=i386 -mtune=i386"
+# 3) in the extracted tor source dir, configure as follows:
+# ./configure --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu --target=i386-pc-linux-gnu
+# 4) Edit tor.spec.in, change the following to line:
+# %configure --with-tor-user=%{toruser} --with-tor-group=%{torgroup}
+# add to it:
+# --build=i386-pc-linux-gnu --host=i386-pc-linux-gnu --target=i386-pc-linux-gnu
+# 5) make dist-rpm
+# 6) Install from the .i386.rpm file.
+#
+# i686 with i686 tuning (best for pentium pro, pentium2, pentium3, and
+# pentium4-class CPUS including the pentium4):
+# 1) download tor source tarball
+# 2) at shell prompt, export CFLAGS="-march=i686 -mtune=i686"
+# 3) in the extracted tor source dir, configure as follows:
+# ./configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu
+# 4) Edit tor.spec.in, change the following to line:
+# %configure --with-tor-user=%{toruser} --with-tor-group=%{torgroup}
+# add to it:
+# --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu
+# 5) make dist-rpm
+# 6) Install from the .i686.rpm file.
+#
+# athlon64 with athlon64 tuning (best for Athlon64 and Opteron):
+# 1) download tor source tarball
+# 2) at shell prompt, export CFLAGS="-march=athlon64 -mtune=athlon64"
+# 3) in the extracted tor source dir, configure as follows:
+# ./configure --build=athlon64-pc-linux-gnu --host=athlon64-pc-linux-gnu --target=athlon64-pc-linux-gnu
+# 4) Edit tor.spec.in, change the following to line:
+# %configure --with-tor-user=%{toruser} --with-tor-group=%{torgroup}
+# add to it:
+# --build=athlon64-pc-linux-gnu --host=athlon64-pc-linux-gnu --target=athlon64-pc-linux-gnu
+# 5) make dist-rpm
+# 6) Install from the .athlon64.rpm file.
+
## Things that need to be edited frequently
#
# This should be incremented whenever the spec file changes, but