NOTE: Substitute the appropriate path for [wxpath] and [boincpath] throughout this document. Typically, [boincpath] will end in "/boinc" or /boinc_public", and [wxpath] will end in "/wxMac-2.6.0".\
\
These directions are for building under OS X version 10.3 (Panther) using XCode Developer Tools version 1.5.\
\
You must have installed XCode's optional Cross-Development SDK for system 10.3.0 from the XCode Tools CD. This guarantees that all builds are backward compatible to OS 10.3.0.\
Set the following three environment variables NEXT_ROOT, CPPFLAGS and LDFLAGS. These commands are for the bash shell; use the equivalent commands if you are running a different UNIX shell. These environment variables allow the application to be built using the OS 10.3.0 compatibility SDK.\
your jpeg-6b directory (or whatever directory contains the jpeglib source files). If you have the seti_boinc source directory which contains jpeglib, you can point the symbolic link there.\
(2) In the Active Target popup, select mgr_boinc or Build_All. Build_All also builds the three libraries libboinc_api.a, libboinc_graphics_api.a and libboinc.a, which are used to build science applications such as SETI@home. These libraries are not needed by the BOINC Manager or Core Client. In addition, Build_All builds the screensaver BOINCSaver.saver and the installer halper application Postinstall.app.\
(4) If you have switched Build Style, be sure to do a "Clean All Targets" from the Build menu; otherwise object files from the old build style will not be rebuilt in the new build style.\
(6) Select Build from the Build menu. I suggest you also open the Detailed Build Results window from the Build menu. Wait a long time while it compiles.\
(7) In addition to the BOINC Manager BOINC.app and Core Client boinc, the mgr_boinc target will also build the SystemMenu.bundle framework and a small helper utility SetVersion. \
(8) SetVersion is run automatically as part of the build process to update the Mac version information file InfoPlist.strings, using the contents of version.h. The boinc-client, SystemMenu.bundle and InfoPlist.strings will all be embedded automatically inside the BOINC.app application bundle as part of the build process.\
(9) For completeness, you should manually update the value of \CocoaLigature0 CFBundleVersion to the new BOINC version number in the following four files:\
NOTE: the file extensions (such as .app and .saver) may be hidden by the Finder. You can check an item's extension by selecting it in the Finder and using Get Info function from the Finder's File menu.\
(6) From the Finder, open [boincpath]/mac_installer/BOINC.pmsp. it will open in the PackageMaker application. In the Files tab, set the path to your Pkg_Root directory. in the Resources tab, set the path to your Installer_Resources directory. Update the version number in multiple places in the Description and Version tabs.\
(1) Create a directory and name it appropriately, e.g. BOINC_Mac_Installer. Copy the installer package and the ReadMe file into the directory.\
\
(2)After selecting the directory you just created and populated, select \ul Create archive\ulnone from the Finder's File menu. This will zip the file. (Note: if you want to stuff the file instead of zipping it, be sure to uncheck "stuff originals instead of aliases" in DropStuff's preferences.)\
\
(3) Rename the zip file as appropriate to show the version number; for example,
(1) Set the following five environment variables NEXT_ROOT, CPPFLAG, LDFLAGS, PROJECTDIR and BOINCDIR. These commands are for the bash shell; use the equivalent commands if you are running a different UNIX shell. The first three environment variables allow the application to be built using the OS 10.3.0 compatibility SDK.\