From 53eb7c00528b98267c6add682f785794f8136c86 Mon Sep 17 00:00:00 2001 From: Charlie Fenton Date: Fri, 12 Feb 2010 00:53:05 +0000 Subject: [PATCH] Update build script for OS 10.6 and XCode 3.2 svn path=/trunk/boinc/; revision=20551 --- checkin_notes | 11 ++++++-- mac_build/BuildMacBOINC.sh | 54 +++++++++++++++----------------------- 2 files changed, 30 insertions(+), 35 deletions(-) diff --git a/checkin_notes b/checkin_notes index 7bb14fd27e..6831144585 100644 --- a/checkin_notes +++ b/checkin_notes @@ -1085,14 +1085,14 @@ Rom 10 Feb 2010 taskbarex.cpp, .h Rom 10 Feb 2010 - - MGR: Re-enable the test notification mechinism so + - MGR: Re-enable the test notification mechanism so that it is compatible with Linux. clientgui/ BOINCTaskBar.cpp, .h Rom 10 Feb 2010 - - MGR: Re-enable the context menu support mechinism so + - MGR: Re-enable the context menu support mechanism so that it is compatible with Linux. clientgui/ @@ -1156,3 +1156,10 @@ David 11 Feb 2009 client_state.cpp html/inc/ prefs.inc + +Charlie 11 Feb 2010 + - Mac: Update build script for OS 10.6 and XCode 3.2 (thanks to Jack + Shultz for pointing out this was needed.) + + mac_build/ + BuildMacBOINC.sh diff --git a/mac_build/BuildMacBOINC.sh b/mac_build/BuildMacBOINC.sh index cb5b918fc9..aaa31f57b3 100644 --- a/mac_build/BuildMacBOINC.sh +++ b/mac_build/BuildMacBOINC.sh @@ -2,7 +2,7 @@ # This file is part of BOINC. # http://boinc.berkeley.edu -# Copyright (C) 2008 University of California +# Copyright (C) 2010 University of California # # BOINC is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License @@ -22,6 +22,8 @@ # Script for building Macintosh BOINC Manager, Core Client and libraries # by Charlie Fenton 3/27/08 # with thanks to Reinhard Prix for his assistance +# +# Updated for OS 10.6 and XCode 3.2 on 2/11/10 ## ## Usage: @@ -29,10 +31,10 @@ ## cd [path]/boinc/mac_build ## ## then invoke this script as follows: -## source BuildMacBOINC.sh [-dev] [-noclean] [-no64bit] [-all] [-lib] [-client] [-help] +## source BuildMacBOINC.sh [-dev] [-noclean] [-all] [-lib] [-client] [-help] ## or ## chmod +x BuildMacBOINC.sh -## ./BuildMacBOINC.sh [-dev] [-noclean] [-no64bit] [-all] [-lib] [-client] [-help] +## ./BuildMacBOINC.sh [-dev] [-noclean] [-all] [-lib] [-client] [-help] ## ## optional arguments ## -dev build the development (debug) version (native architecture only). @@ -41,8 +43,6 @@ ## -noclean don't do a "clean" of each target before building. ## default is to clean all first. ## -## -no64bit build 32-bit binaries only, no x86_64 architecture -## ## The following arguments determine which targets to build ## ## -all build all targets (i.e. target "Build_All" -- this is the default) @@ -61,7 +61,6 @@ doclean="clean" buildall=0 buildlibs=0 buildclient=0 -no64bit=0 style="Deployment" while [ $# -gt 0 ]; do @@ -71,8 +70,7 @@ while [ $# -gt 0 ]; do -all ) buildall=1 ; shift 1 ;; -lib ) buildlibs=1 ; shift 1 ;; -client ) buildclient=1 ; shift 1 ;; - -no64bit ) no64bit=1 ; shift 1 ;; - * ) echo "usage:" ; echo "cd {path}/mac_build/" ; echo "source BuildMacBOINC.sh [-dev] [-noclean] [-no64bit] [-all] [-lib] [-client] [-help]" ; return 1 ;; + * ) echo "usage:" ; echo "cd {path}/mac_build/" ; echo "source BuildMacBOINC.sh [-dev] [-noclean] [-all] [-lib] [-client] [-help]" ; return 1 ;; esac done @@ -101,25 +99,14 @@ major=`echo $version | sed 's/\([0-9]*\)[.].*/\1/' `; # echo "major = $major" # echo "minor = $minor" # +# Darwin version 10.x.y corresponds to OS 10.6.x # Darwin version 9.x.y corresponds to OS 10.5.x # Darwin version 8.x.y corresponds to OS 10.4.x # Darwin version 7.x.y corresponds to OS 10.3.x # Darwin version 6.x corresponds to OS 10.2.x -if [ "$major" -lt "8" ]; then - echo "ERROR: Building BOINC requires System 10.4 or later. For details, see build instructions at" - echo "boinc/mac_build/HowToBuildBOINC_XCode.rtf or http://boinc.berkeley.edu/trac/wiki/MacBuild" - return 1 -fi - -if [ "$major" -gt "8" ]; then - echo "Building BOINC under System 10.5 or later" -else - echo "Building BOINC under System 10.4" -fi - -if [ ! -d /Developer/SDKs/MacOSX10.3.9.sdk/ ]; then - echo "ERROR: System 10.3.9 SDK is missing. For details, see build instructions at" +if [ "$major" -lt "10" ]; then + echo "ERROR: Building BOINC requires System 10.6 or later. For details, see build instructions at" echo "boinc/mac_build/HowToBuildBOINC_XCode.rtf or http://boinc.berkeley.edu/trac/wiki/MacBuild" return 1 fi @@ -130,24 +117,25 @@ if [ ! -d /Developer/SDKs/MacOSX10.4u.sdk/ ]; then return 1 fi +if [ ! -d /Developer/SDKs/MacOSX10.5.sdk/ ]; then + echo "ERROR: System 10.5 SDK is missing. For details, see build instructions at" + echo "boinc/mac_build/HowToBuildBOINC_XCode.rtf or http://boinc.berkeley.edu/trac/wiki/MacBuild" + return 1 +fi + if [ "${style}" = "Development" ]; then echo "Development (debug) build" -elif [ "${no64bit}" = "1" ]; then - style="Deployment-no64" - echo "Deployment (release) build for architectures ppc, i386" -elif [ ! -d /Developer/SDKs/MacOSX10.5.sdk/ ]; then - echo "************************************************************************" - echo "** **" - echo "** WARNING: System 10.5 SDK not found. Building 32-bit binaries only **" - echo "** **" - echo "************************************************************************" - style="Deployment-no64" - echo "Deployment (release) build for architectures: i386, ppc" else style="Deployment" echo "Deployment (release) build for architectures: i386, ppc, x86_64" fi +if [ ! -d /Developer/SDKs/MacOSX10.6.sdk/ ]; then + echo "ERROR: System 10.6 SDK is missing. For details, see build instructions at" + echo "boinc/mac_build/HowToBuildBOINC_XCode.rtf or http://boinc.berkeley.edu/trac/wiki/MacBuild" + return 1 +fi + echo "" export DEVELOPER_SDK_DIR="/Developer/SDKs"