#!/bin/sh # File : common.sh # # Purpose : Establish settings common to the build and privoxy-create # scripts. # # Copyright : Written by and Copyright (C) 2001-2021 the # Privoxy team. http://www.privoxy.org/ # # This program is free software; you can redistribute it # and/or modify it under the terms of the GNU General # Public License as published by the Free Software # Foundation; either version 2 of the License, or (at # your option) any later version. # # This program is distributed in the hope that it will # be useful, but WITHOUT ANY WARRANTY; without even the # implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. See the GNU General Public # License for more details. # # The GNU General Public License should be included with # this file. If not, you can view it at # http://www.gnu.org/copyleft/gpl.html # or write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, # USA # # Modification : If you modify this file please consider whether your # changes ought to be passed back to the OSXPackageBuilder # module. # #======================================== # target specific settings #======================================== # # mac os x release name # release_name=$1 # # check the release name and assign the build variables accordingly # # NOTE: SYSROOT ought to be programmatically determined using XCODE_PATH, however it varies depending upon whether you have Xcode itself installed or the much smaller Commandline Tools for Xcode # case "${release_name}" in # Mac OS X 10.11-plus (x86_64 only) "current") XCODE_PATH="`/usr/bin/xcode-select -print-path`" SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX.sdk" MACOSX_VERSION="-mmacosx-version-min=10.15" ARCH="-arch x86_64" STARTUP="LaunchDaemon" CFLAGS="-mtune=x86_64 ${CFLAGS}" ;; # Mac OS X 10.11-plus (x86_64 only) "current-Xcode") XCODE_PATH="`/usr/bin/xcode-select -print-path`" SYSROOT="-isysroot ${XCODE_PATH}/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk" MACOSX_VERSION="-mmacosx-version-min=10.6" ARCH="-arch x86_64" STARTUP="LaunchDaemon" CFLAGS="-mtune=x86_64 ${CFLAGS}" ;; # Mac OS X 10.7 (x86_64 only) "lion") XCODE_PATH="`/usr/bin/xcode-select -print-path`" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.7.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.7.sdk" MACOSX_VERSION="-mmacosx-version-min=10.7" ARCH="-arch x86_64" STARTUP="LaunchDaemon" CFLAGS="-mtune=x86_64 ${CFLAGS}" ;; # Mac OS X 10.6 x86_64 "snowleopardx64") XCODE_PATH="`/usr/bin/xcode-select -print-path`" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.6.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.6.sdk" MACOSX_VERSION="-mmacosx-version-min=10.6" ARCH="-arch x86_64" STARTUP="LaunchDaemon" CFLAGS="-mtune=x86_64 ${CFLAGS}" ;; # Mac OS X 10.6 all supported architectures "snowleopard") XCODE_PATH="`/usr/bin/xcode-select -print-path`" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.6.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.6.sdk" MACOSX_VERSION="-mmacosx-version-min=10.6" ARCH="-arch x86_64 -arch i386" STARTUP="LaunchDaemon" ;; # Mac OS X 10.6 i386 "snowleopardi386") XCODE_PATH="`/usr/bin/xcode-select -print-path`" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.6.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.6.sdk" MACOSX_VERSION="-mmacosx-version-min=10.6" ARCH="-arch i386" STARTUP="LaunchDaemon" CFLAGS="-mtune=i386 ${CFLAGS}" ;; # Mac OS X 10.5 and all later releases "leopardupwards") XCODE_PATH="`/usr/bin/xcode-select -print-path`" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.5.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.5.sdk" MACOSX_VERSION="-mmacosx-version-min=10.5" ARCH="-arch x86_64 -arch i386 -arch ppc" STARTUP="LaunchDaemon" ;; # Mac OS X 10.5 all supported architectures "leopard") XCODE_PATH="`/usr/bin/xcode-select -print-path`" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.5.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.5.sdk" MACOSX_VERSION="-mmacosx-version-min=10.5" ARCH="-arch i386 -arch ppc" STARTUP="LaunchDaemon" ;; # Mac OS X 10.5 i386 "leopardi386") XCODE_PATH="`/usr/bin/xcode-select -print-path`" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.5.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.5.sdk" MACOSX_VERSION="-mmacosx-version-min=10.5" ARCH="-arch i386" STARTUP="LaunchDaemon" CFLAGS="-mtune=i386 ${CFLAGS}" ;; # Mac OS X 10.5 PPC "leopardppc") XCODE_PATH="`/usr/bin/xcode-select -print-path`" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.5.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.5.sdk" MACOSX_VERSION="-mmacosx-version-min=10.5" ARCH="-arch ppc" STARTUP="LaunchDaemon" CFLAGS="-mtune=G5 ${CFLAGS}" ;; # Mac OS X 10.4 all supported architectures "tiger") XCODE_PATH="/Developer" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.4u.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.4u.sdk" MACOSX_VERSION="-mmacosx-version-min=10.4" ARCH="-arch i386 -arch ppc" STARTUP="LaunchDaemon" ;; # Mac OS X 10.4 i386 "tigeri386") XCODE_PATH="/Developer" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.4u.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.4u.sdk" MACOSX_VERSION="-mmacosx-version-min=10.4" ARCH="-arch i386" STARTUP="LaunchDaemon" CFLAGS="-mtune=i386 ${CFLAGS}" ;; # Mac OS X 10.4 PPC "tigerppc") XCODE_PATH="/Developer" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.4u.sdk" SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.4u.sdk" MACOSX_VERSION="-mmacosx-version-min=10.4" ARCH="-arch ppc" STARTUP="LaunchDaemon" CFLAGS="-mtune=G5 ${CFLAGS}" ;; # Mac OS X 10.3 PPC "panther") XCODE_PATH="/Developer" # SYSROOT="-isysroot ${XCODE_PATH}/SDKs/MacOSX10.3.9.sdk" SYSROOT="-isysroot /Developer/SDKs/MacOSX10.3.9.sdk" MACOSX_VERSION="-mmacosx-version-min=10.3" ARCH="-arch ppc" STARTUP="StartupItem" CFLAGS="-mtune=G5 ${CFLAGS}" ;; # default *) XCODE_PATH="" SYSROOT="" MACOSX_VERSION="" ARCH="" STARTUP="" ;; esac #======================================== # host specific settings #======================================== # # darwin os major release number # darwin_major_rel_num="`/usr/bin/uname -r | /usr/bin/sed 's/\..*//'`" # # check the release number # case "${darwin_major_rel_num}" in # Mac OS X 10.5 or higher 9|1*|2*|3*) GNAME="`/usr/bin/dscl /Local/Default -list /groups | /usr/bin/grep -E '^(_)?privoxy?'`" UNAME="`/usr/bin/dscl /Local/Default -list /users | /usr/bin/grep -E '^(_)?privoxy?'`" SCRIPT="privoxy-create-dscl.sh" OPTS="--with-user=_privoxy --with-group=_privoxy" ;; # Mac OS X 10.4, 10.3 8|7) GNAME="`/usr/bin/nireport . /groups name | /usr/bin/grep -E '^privoxy?'`" UNAME="`/usr/bin/nireport . /users name | /usr/bin/grep -E '^privoxy?'`" SCRIPT="privoxy-create-nicl.sh" OPTS="--with-user=privoxy --with-group=privoxy" ;; # default *) GNAME="" UNAME="" SCRIPT="" OPTS="" ;; esac # # identify the directory containing Privoxy's source # cd .. DIRS_FOUND=0 SOURCE_DIR="" if [ -d privoxy ]; then DIRS_FOUND=1 fi if [ -d dist ]; then DIRS_FOUND=$(( DIRS_FOUND + 10 )) fi if [ -d current ]; then DIRS_FOUND=$(( DIRS_FOUND + 20 )) fi case "${DIRS_FOUND}" in # only 'current' found 20) SOURCE_DIR="current" ;; # only 'dist' found 10) SOURCE_DIR="dist" ;; # only 'privoxy' found 1) SOURCE_DIR="privoxy" ;; # either multiple or no folder found *) read -p 'Could not select the Privoxy source directory (it should be in a directory parallel to that containing this build script). Please supply the directory name (e.g. privoxy): ' SOURCE_DIR ;; esac cd OSXPackageBuilder echo "Using ../${SOURCE_DIR} as location of Privoxy source"