aboutsummaryrefslogtreecommitdiff
path: root/privoxy/privoxy.SlackBuild
blob: 72194e9bb7f835e4315711e2b01869c729ec0b81 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
#!/bin/bash
#
# slackbuild script for privoxy
# by rhatto at riseup.net
#

CWD="`pwd`"

if [ -f "/etc/slackbuildrc" ]; then
  source /etc/slackbuildrc
fi

if [ -f "~/.slackbuildrc" ]; then
  source ~/.slackbuildrc
fi

# default settings
PACKAGE="privoxy"
ARCH=${ARCH:=i486}
VERSION=${VERSION:=3.0.3}
BUILD=${BUILD:=4rha}
SRC_DIR=${SRC:=$CWD}
TMP=${TMP:=/tmp}
REPOS=${REPOS:=$TMP}

if [ "$ARCH" == "x86_64" ]; then
  LIBDIR=/usr/lib64
else
  LIBDIR=/usr/lib
fi

RTOOL="wget"
PACKAGE_EXT="gz"
SRC="$PACKAGE-$VERSION-stable-src.tar.$PACKAGE_EXT"
URL="http://easynews.dl.sourceforge.net/sourceforge/ijbswa/$SRC"

SRC_DIR="$SRC_DIR/$PACKAGE"
mkdir -p $SRC_DIR

if [ "$PACKAGE_EXT" == "bz2" ]; then
  tarflag="j"
else
  tarflag="z"
fi

if [ "$RTOOL" == "wget" ] && [ ! -f "$SRC_DIR/$SRC" ]; then
  wget "$URL" -O "$SRC_DIR/$SRC"
fi

TMP="$TMP/$PACKAGE"
rm -rf $TMP
mkdir -p $TMP
cd $TMP

tar xvf$tarflag $SRC_DIR/$SRC
cd $PACKAGE-$VERSION-stable

if [ -f "$CWD/$PACKAGE-$VERSION.diff" ]; then
  # 3.0.3 patch got from 
  # https://svn.openwrt.org/openwrt/trunk/openwrt/package/privoxy/patches/101-destdir.patch
  patch -p1 < $CWD/$PACKAGE-$VERSION.diff
fi

autoheader
autoconf
./configure --prefix=/usr --sysconfdir=/etc/$PACKAGE --libdir=$LIBDIR
make

# for VERSION=0.3.3, privoxy Makefile doesnt respect DESTDIR correctly,
# so beyond the patch we still need to do some nasty stuff...

if [ "$VERSION" == "3.0.3" ]; then
  make DESTDIR=install install
  mkdir -p install/etc/rc.d
  cp $CWD/rc.privoxy.new install/etc/rc.d
  CWD="`pwd`"
  cd install
else
  make DESTDIR=$TMP/package-$PACKAGE install
  mkdir -p $TMP/package-$PACKAGE/etc/rc.d
  cp $CWD/rc.privoxy.new $TMP/package-$PACKAGE/etc/rc.d
  CWD="`pwd`"
  cd $TMP/package-$PACKAGE
fi

mv etc/privoxy/config etc/privoxy/config.sample

find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null

mkdir install
cat << EOF > install/slack-desc
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.  Line
# up the first '|' above the ':' following the base package name, and the '|'
# on the right side marks the last column you can put a character in.  You must
# make exactly 11 lines for the formatting to be correct.  It's also
# customary to leave one space after the ':'.

       |-----handy-ruler-----------------------------------------------------|
privoxy: privoxy (A Web proxy with advanced filtering capabilities)
privoxy:
privoxy: Privoxy is a Web proxy based on Internet Junkbuster with advanced
privoxy: filtering capabilities for protecting privacy, filtering Web page
privoxy: content, managing cookies, controlling access, and removing ads,
privoxy: banners, pop-ups, and other obnoxious Internet junk. Privoxy has a
privoxy: very flexible configuration and can be customized to suit individual
privoxy: needs and tastes. Privoxy is useful for both stand-alone systems and
privoxy: multi-user networks.
privoxy:
privoxy:
EOF

# docs
mkdir -p usr/doc/$PACKAGE-$VERSION

for file in AUTHORS ChangeLog INSTALL LICENSE Makefile README; do
  cp $CWD/$file* usr/doc/$PACKAGE-$VERSION/
done

# install script
echo '( chroot . /sbin/ldconfig )' > install/doinst.sh
echo '( if ! grep -qe "^privoxy:" etc/group; then echo creating group privoxy... ; chroot . /usr/sbin/groupadd privoxy; fi )' >> install/doinst.sh
echo '( if ! grep -qe "^privoxy:" etc/passwd; then echo creating user privoxy... ; chroot . /usr/sbin/useradd privoxy -g privoxy; fi )' >> install/doinst.sh
echo '( if [ ! -f "etc/rc.d/rc.privoxy" ]; then mv etc/rc.d/rc.privoxy.new etc/rc.d/rc.privoxy; fi )' >> install/doinst.sh
echo '( if [ ! -f "etc/privoxy/config" ]; then mv etc/privoxy/config.sample etc/privoxy/config; fi )' >> install/doinst.sh

makepkg -c y -l y $REPOS/$PACKAGE-$VERSION-$ARCH-$BUILD.tgz

if [ "$CLEANUP" == "yes" ]; then
  rm -rf $TMP
fi