correcting the location of the LICENSE file
[OSXPackageBuilder.git] / build.sh
1 #!/bin/sh
2
3 # File        :  build.sh
4 #
5 # Purpose     :  Build the privoxy binary, documentation and config files
6 #                for the chosen target environment
7 #
8 # Copyright   :  Written by and Copyright (C) 2001-2012 the
9 #                Privoxy team. http://www.privoxy.org/
10 #
11 #                This program is free software; you can redistribute it
12 #                and/or modify it under the terms of the GNU General
13 #                Public License as published by the Free Software
14 #                Foundation; either version 2 of the License, or (at
15 #                your option) any later version.
16 #
17 #                This program is distributed in the hope that it will
18 #                be useful, but WITHOUT ANY WARRANTY; without even the
19 #                implied warranty of MERCHANTABILITY or FITNESS FOR A
20 #                PARTICULAR PURPOSE.  See the GNU General Public
21 #                License for more details.
22 #
23 #                The GNU General Public License should be included with
24 #                this file.  If not, you can view it at
25 #                http://www.gnu.org/copyleft/gpl.html
26 #                or write to the Free Software Foundation, Inc.,
27 #                51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
28 #                USA
29 #
30 # Modification : If you modify this file please consider whether your 
31 #                changes ought to be passed back to the OSXPackageBuilder
32 #                module.
33 #
34
35 #
36 # must provide target
37 #
38 if [ $# -eq 0 -o $# -gt 2 ]; then
39   echo "Usage: $0 lion | snowleopardx64 | snowleopard | snowleopardi386 | leopardupwards | leopard | leopardi386 | leopardppc | tiger | tigeri386 | tigerppc | panther  [-pcre]"
40   exit 1
41 fi
42
43 #
44 # load common settings
45 #
46 . ./common.sh $1
47
48 #
49 # must have Xcode
50 #
51 if [ -z ${XCODE_PATH} ]; then
52   echo "Error: Xcode is not found."
53   exit 1
54 fi
55
56 #
57 # set configure options; include the appropriate user/group as discerned by common.sh and set pcre to dynamic (libpcre) or static (bundled)
58 #
59 if [ "$2" == "-pcre" ]; then
60         CFLAGS="${CFLAGS} -I/usr/local/include/"
61         LDFLAGS="${LDFLAGS} -L/usr/local/lib"
62         OPTS=${OPTS}
63 else
64         OPTS="${OPTS} --disable-dynamic-pcre"
65 fi
66
67 #
68 # check if privoxy group and user exist?
69 #
70 if [ -z ${GNAME} -o -z ${UNAME} ]; then
71   echo ""
72   echo "Error: a privoxy group and user do not exist."
73   echo "A privoxy group and user must be created before continuing."
74   echo "Review the README file for instructions on creating a privoxy group and user."
75   exit 1
76 else
77   echo ""
78   echo "Notice: an existing privoxy group and user was found."
79 fi
80
81 #
82 # configure privoxy
83 #
84 echo ""
85 echo "Notice: configuring the privoxy software."
86 cd ../${SOURCE_DIR}
87 /usr/bin/autoheader
88 /usr/bin/autoconf
89
90 /usr/bin/env CFLAGS="${CFLAGS} ${SYSROOT} ${ARCH} ${MACOSX_VERSION}" LDFLAGS="${LDFLAGS} ${SYSROOT} ${ARCH} ${MACOSX_VERSION}" ./configure ${OPTS}
91
92 #
93 # clean, then make privoxy
94 #
95 echo ""
96 echo "Notice: building the privoxy software."
97 /usr/bin/make clean
98 /usr/bin/make
99
100 #
101 # modify config file
102 #
103 /usr/bin/awk '{sub(/logfile.*logfile$/,"logfile logfile.log"); print}' ../${SOURCE_DIR}/config > ../${SOURCE_DIR}/config.tmp
104 /bin/mv ../${SOURCE_DIR}/config.tmp ../${SOURCE_DIR}/config
105