diff --git a/checkin_notes b/checkin_notes index aa33d99300..2ef9b7c14f 100755 --- a/checkin_notes +++ b/checkin_notes @@ -2071,8 +2071,19 @@ Walt 17 Feb 2006 Charlie 17 Feb 2006 - Mac: - Fix unused variable compiler warnings. - added MoreAddrToSym.c, h, MoreBacktrace.c, h to Makefile + - fixes to Mac build scripts + - check in XCode project used by buildWxMac.sh script to build wxMac + libraries for BOINC. lib/ Makefile.am clientgui/ BOINCTaskBar.cpp + mac_build/ + buildcurl.sh + buildjpeg.sh + BuildMacBOINC.sh + buildWxMac.sh + setupForBOINC.sh + wxMac-BOINC.xcodeproj/ (added) + project.pbxproj (added) diff --git a/mac_build/BuildMacBOINC.sh b/mac_build/BuildMacBOINC.sh index 33b828dd04..941641a818 100644 --- a/mac_build/BuildMacBOINC.sh +++ b/mac_build/BuildMacBOINC.sh @@ -1,8 +1,28 @@ #!/bin/sh +# Berkeley Open Infrastructure for Network Computing +# http://boinc.berkeley.edu +# Copyright (C) 2005 University of California +# +# This is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; +# either version 2.1 of the License, or (at your option) any later version. +# +# This software 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 Lesser General Public License for more details. +# +# To view the GNU Lesser General Public License visit +# http://www.gnu.org/copyleft/lesser.html +# or write to the Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# ## # Script for building Macintosh BOINC Manager, Core Client and libraries -# by Charlie Fenton 2/8/06 +# by Charlie Fenton 2/17/06 # with thanks to Reinhard Prix for his assistance ## diff --git a/mac_build/buildWxMac.sh b/mac_build/buildWxMac.sh index dc86e4bff8..7df0d8e9d2 100644 --- a/mac_build/buildWxMac.sh +++ b/mac_build/buildWxMac.sh @@ -1,39 +1,44 @@ -# To build the wxMac-2.6.2 library for BOINC as a Universal Binary: +#!/bin/sh + +# Berkeley Open Infrastructure for Network Computing +# http://boinc.berkeley.edu +# Copyright (C) 2005 University of California # -# Before running this script, you must first prepare the XCode project: +# This is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; +# either version 2.1 of the License, or (at your option) any later version. # -# Open wxWindows.xcode to upgrade it for XCode 2.2, and name the new file -# wxWindowsB.xcodeproj. -# Do NOT use the wxWindows.xcodeproj supplied with the package. +# This software 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 Lesser General Public License for more details. # -# You will need to make two changes to the project's list of files. -# To do this: +# To view the GNU Lesser General Public License visit +# http://www.gnu.org/copyleft/lesser.html +# or write to the Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# In the left hand column of the new project window, click on the -# disclosure triangles next to each level until you see the hierarchy -# wxWindowsB : src : regex. -# Click on regex and press the delete key on your keyboard. In the -# dialog which appears, select "Delete References." # -# In the left hand column of the new project window, click on the -# disclosure triangles next to each level until you see the hierarchy -# wxWindowsB : src : mac/corefoundation. -# Control-click on mac/corefoundation and select Add / Existing Files. -# Select the file src/mac/corefoundation/utilsexc_base.cpp and press -# the "Add" button. -# Select Reference Type = "Relative to Project", Text Encoding = -# "Mac OS Roman", "Recursively create groups..." and select (check) -# all 4 wx* targets. -# Click the "Add" button and close the project or quit XCode. -# +# Script to build the wxMac-2.6.2 library for BOINC as a Universal Binary # -# In Terminal, CD to the wxMac-2.6.2 directory. -# cd [path]/wxMac-2.6.2/ -# then run this script: -# source [ path_to_this_script ] [ -clean ] +# by Charlie Fenton 2/17/06 # -# the -clean argument will force a full rebuild. +## Before running this script, you must first copy the special XCode +## project +## boinc/mac_build/wxMac-BOINC.xcodeproj +## to +## wxMac-2.6.2/src/ # +# +## In Terminal, CD to the wxMac-2.6.2 directory. +## cd [path]/wxMac-2.6.2/ +## then run this script: +## source [ path_to_this_script ] [ -clean ] +## +## the -clean argument will force a full rebuild. +# + if [ "$1" = "-clean" ]; then doclean="clean " @@ -58,7 +63,7 @@ else rm -f src/build/Deployment/libwx_mac.a -xcodebuild -project src/wxWindowsB.xcodeproj -target wxStaticRelease -configuration Deployment $doclean build GCC_VERSION_ppc=3.3 MACOSX_DEPLOYMENT_TARGET_ppc=10.3 SDKROOT_ppc=/Developer/SDKs/MacOSX10.3.9.sdk ARCHS="ppc" EXECUTABLE_NAME="libwx_mac_ppc.a" +xcodebuild -project src/wxMac-BOINC.xcodeproj -target wxStaticRelease -configuration Deployment $doclean build GCC_VERSION_ppc=3.3 MACOSX_DEPLOYMENT_TARGET_ppc=10.3 SDKROOT_ppc=/Developer/SDKs/MacOSX10.3.9.sdk ARCHS="ppc" EXECUTABLE_NAME="libwx_mac_ppc.a" if [ $? -ne 0 ]; then exit 1; fi fi @@ -70,7 +75,7 @@ else rm -f src/build/Deployment/libwx_mac.a -xcodebuild -project src/wxWindowsB.xcodeproj -target wxStaticRelease -configuration Deployment $doclean build GCC_VERSION_i386=4.0 MACOSX_DEPLOYMENT_TARGET_i386=10.4 SDKROOT_i386=/Developer/SDKs/MacOSX10.4u.sdk ARCHS="i386" EXECUTABLE_NAME="libwx_mac_i386.a" +xcodebuild -project src/wxMac-BOINC.xcodeproj -target wxStaticRelease -configuration Deployment $doclean build GCC_VERSION_i386=4.0 MACOSX_DEPLOYMENT_TARGET_i386=10.4 SDKROOT_i386=/Developer/SDKs/MacOSX10.4u.sdk ARCHS="i386" EXECUTABLE_NAME="libwx_mac_i386.a" if [ $? -ne 0 ]; then exit 1; fi fi @@ -91,7 +96,7 @@ else rm -f src/build/Deployment/libwx_macd.a -xcodebuild -project src/wxWindowsB.xcodeproj -target wxStaticDebug -configuration Deployment $doclean build GCC_VERSION_ppc=3.3 MACOSX_DEPLOYMENT_TARGET_ppc=10.3 SDKROOT_ppc=/Developer/SDKs/MacOSX10.3.9.sdk ARCHS="ppc" EXECUTABLE_NAME="libwx_macd_ppc.a" +xcodebuild -project src/wxMac-BOINC.xcodeproj -target wxStaticDebug -configuration Deployment $doclean build GCC_VERSION_ppc=3.3 MACOSX_DEPLOYMENT_TARGET_ppc=10.3 SDKROOT_ppc=/Developer/SDKs/MacOSX10.3.9.sdk ARCHS="ppc" EXECUTABLE_NAME="libwx_macd_ppc.a" if [ $? -ne 0 ]; then exit 1; fi fi @@ -102,7 +107,7 @@ else rm -f src/build/Deployment/libwx_macd.a -xcodebuild -project src/wxWindowsB.xcodeproj -target wxStaticDebug -configuration Deployment $doclean build GCC_VERSION_i386=4.0 MACOSX_DEPLOYMENT_TARGET_i386=10.4 SDKROOT_i386=/Developer/SDKs/MacOSX10.4u.sdk ARCHS="i386" EXECUTABLE_NAME="libwx_macd_i386.a" +xcodebuild -project src/wxMac-BOINC.xcodeproj -target wxStaticDebug -configuration Deployment $doclean build GCC_VERSION_i386=4.0 MACOSX_DEPLOYMENT_TARGET_i386=10.4 SDKROOT_i386=/Developer/SDKs/MacOSX10.4u.sdk ARCHS="i386" EXECUTABLE_NAME="libwx_macd_i386.a" if [ $? -ne 0 ]; then exit 1; fi fi diff --git a/mac_build/buildcurl.sh b/mac_build/buildcurl.sh index 89e7565014..18c4628c87 100644 --- a/mac_build/buildcurl.sh +++ b/mac_build/buildcurl.sh @@ -1,14 +1,38 @@ #!/bin/sh +# Berkeley Open Infrastructure for Network Computing +# http://boinc.berkeley.edu +# Copyright (C) 2005 University of California +# +# This is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; +# either version 2.1 of the License, or (at your option) any later version. +# +# This software 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 Lesser General Public License for more details. +# +# To view the GNU Lesser General Public License visit +# http://www.gnu.org/copyleft/lesser.html +# or write to the Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# Script to build the wxMac-2.6.2 library for BOINC as a Universal Binary +# # Script to build Macintosh Universal Binary library of curl-7.15.1 for # use in building BOINC. # -# by Charlie Fenton 12/19/05 +# by Charlie Fenton 2/17/06 # -## cd [path]/curl-7.15.1/ -## source buildcurl [ -clean ] -# -# the -clean argument will force a full rebuild. +## In Terminal, CD to the wxMac-2.6.2 directory. +## cd [path]/curl-7.15.1/ +## then run this script: +## source buildcurl [ -clean ] +## +## the -clean argument will force a full rebuild. # @@ -22,7 +46,10 @@ fi export PATH=/usr/local/bin:$PATH export CC=/usr/bin/gcc-3.3;export CXX=/usr/bin/g++-3.3 -./configure --enable-shared=NO --host=ppc --build=ppc CPPFLAGS="-I/Developer/SDKs/MacOSX10.3.9.sdk/Developer/Headers/FlatCarbon -I/Developer/SDKs/MacOSX10.3.9.sdk/usr/include -isystem /Developer/SDKs/MacOSX10.3.9.sdk/usr/include/gcc/darwin/3.3 -I/Developer/SDKs/MacOSX10.3.9.sdk/usr/include/gcc/darwin/3.3/c++ -I/Developer/SDKs/MacOSX10.3.9.sdk/usr/include/gcc/darwin/3.3/c++/ppc-darwin -isystem /Developer/SDKs/MacOSX10.3.9.sdk/usr/include" +export LDFLAGS="-arch ppc" +export CPPFLAGS="-arch ppc" +export CFLAGS="-arch ppc" +./configure --enable-shared=NO --host=ppc --build=ppc CPPFLAGS="-arch ppc -I/Developer/SDKs/MacOSX10.3.9.sdk/Developer/Headers/FlatCarbon -I/Developer/SDKs/MacOSX10.3.9.sdk/usr/include -isystem /Developer/SDKs/MacOSX10.3.9.sdk/usr/include/gcc/darwin/3.3 -I/Developer/SDKs/MacOSX10.3.9.sdk/usr/include/gcc/darwin/3.3/c++ -I/Developer/SDKs/MacOSX10.3.9.sdk/usr/include/gcc/darwin/3.3/c++/ppc-darwin -isystem /Developer/SDKs/MacOSX10.3.9.sdk/usr/include" if [ $? -ne 0 ]; then exit 1; fi make clean @@ -42,8 +69,9 @@ if [ $? -ne 0 ]; then exit 1; fi export PATH=/usr/local/bin:$PATH export CC=/usr/bin/gcc-4.0;export CXX=/usr/bin/g++-4.0 -export LDFLAGS="" -export CPPFLAGS="" +export LDFLAGS="-arch i386" +export CPPFLAGS="-arch i386" +export CFLAGS="-arch i386" ./configure --enable-shared=NO --host=i386 --build=i386 if [ $? -ne 0 ]; then exit 1; fi diff --git a/mac_build/buildjpeg.sh b/mac_build/buildjpeg.sh index 3cc28f074d..13cf8f826b 100644 --- a/mac_build/buildjpeg.sh +++ b/mac_build/buildjpeg.sh @@ -1,12 +1,36 @@ #!/bin/sh +# Berkeley Open Infrastructure for Network Computing +# http://boinc.berkeley.edu +# Copyright (C) 2005 University of California +# +# This is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; +# either version 2.1 of the License, or (at your option) any later version. +# +# This software 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 Lesser General Public License for more details. +# +# To view the GNU Lesser General Public License visit +# http://www.gnu.org/copyleft/lesser.html +# or write to the Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# Script to build the wxMac-2.6.2 library for BOINC as a Universal Binary +# # Script to build Macintosh Universal Binary library of jpeg-6b for # use in building BOINC. # -# by Charlie Fenton 12/19/05 +# by Charlie Fenton 2/17/06 # -## cd [path]/jpeg-6b/ -## source buildcurl [ -clean ] +## In Terminal, CD to the wxMac-2.6.2 directory. +## cd [path]/jpeg-6b/ +## then run this script: +## source [ path_to_this_script ] [ -clean ] # # the -clean argument will force a full rebuild. # @@ -22,6 +46,10 @@ fi ## cd [path]/jpeg-6b/ export PATH=/usr/local/bin:$PATH export CC=/usr/bin/gcc-3.3;export CXX=/usr/bin/g++-3.3 +export LDFLAGS="-arch ppc" +export CPPFLAGS="-arch ppc" +export CFLAGS="-arch ppc" + ./configure --disable-shared --host=ppc if [ $? -ne 0 ]; then exit 1; fi @@ -42,8 +70,9 @@ if [ $? -ne 0 ]; then exit 1; fi export PATH=/usr/local/bin:$PATH export CC=/usr/bin/gcc-4.0;export CXX=/usr/bin/g++-4.0 -export LDFLAGS="" -export CPPFLAGS="" +export LDFLAGS="-arch i386" +export CPPFLAGS="-arch i386" +export CFLAGS="-arch i386" ./configure --disable-shared --host=i386 if [ $? -ne 0 ]; then exit 1; fi diff --git a/mac_build/setupForBOINC.sh b/mac_build/setupForBOINC.sh index 726aa9aea5..ee1d1b710c 100644 --- a/mac_build/setupForBOINC.sh +++ b/mac_build/setupForBOINC.sh @@ -1,9 +1,29 @@ #!/bin/sh +# Berkeley Open Infrastructure for Network Computing +# http://boinc.berkeley.edu +# Copyright (C) 2005 University of California +# +# This is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; +# either version 2.1 of the License, or (at your option) any later version. +# +# This software 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 Lesser General Public License for more details. +# +# To view the GNU Lesser General Public License visit +# http://www.gnu.org/copyleft/lesser.html +# or write to the Free Software Foundation, Inc., +# 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# # Master script to build Universal Binary libraries needed by BOINC: # curl-7.15.1, jpeg-6b and wxMac-2.6.2 # -# by Charlie Fenton 12/19/05 +# by Charlie Fenton 2/17/06 # # Download these three packages and place them in a common parent # directory with the BOINC source tree. @@ -12,8 +32,10 @@ # package. Read and follow the directions for this in the script # buildWxMac.sh; it is in the same folder as this script. # -## Change directory (cd) to boinc/mac_build/ -## source ./setupForBoinc.sh [ -clean ] +## In Terminal, CD to the wxMac-2.6.2 directory. +## cd [path]/boinc/mac_build/ +## then run this script: +## source setupForBoinc.sh [ -clean ] # # the -clean argument will force a full rebuild of everything. # @@ -31,7 +53,7 @@ echo "" cd ../../jpeg-6b/ if [ $? -ne 0 ]; then exit 1; fi -source ${DIRSTACK[1]}/buildjpeg.sh +source "${DIRSTACK[1]}/buildjpeg.sh" if [ $? -ne 0 ]; then exit 1; fi echo "" @@ -45,7 +67,7 @@ pushd ./ cd ../../curl-7.15.1/ if [ $? -ne 0 ]; then exit 1; fi -source ${DIRSTACK[1]}/buildcurl.sh +source "${DIRSTACK[1]}/buildcurl.sh" if [ $? -ne 0 ]; then exit 1; fi echo "" @@ -57,9 +79,11 @@ echo "" popd pushd ./ +cp -fpR wxMac-BOINC.xcodeproj ../../wxMac-2.6.2/src/ + cd ../../wxMac-2.6.2/ if [ $? -ne 0 ]; then exit 1; fi -source ${DIRSTACK[1]}/buildWxMac.sh +source "${DIRSTACK[1]}/buildWxMac.sh" if [ $? -ne 0 ]; then exit 1; fi popd