CAUTION #1: I don't have arm64 macintosh hardware so this has been tested only on an x86_64 system.
CAUTION #2: This was developed on MacOS 11.0 beta 3 and Xcode 12.0 beta 2, not final release builds
CAUTION #3: At this time OpenSSL does not yet provide a way to build for MacOS with arm64 architecture, so I implemented a temporary workaround, which may or may not work properly on arm64 Macs.
This fix causes two libraries to be built without including two external libraries that get found when already installed on the Mac by Homebrew for example.
- use libc++ instead of libstdc++
- eliminate 32-bit builds (Xcode 10 with Mac OS X SDK 10.14 builds only 64-bit binaries)
- buildWxMac.sh was previously updated for Xcode 10 compatibility by commit 282ea8c324
By default stdout is printed on screen. For CI builds this is cluttering the log.
Note: /dev/stdout is not POSIX but is available on MacOS and popular Linux distributions.
Fixes some copy and paste bugs reported by Charlie Fenton.
Added ScreenSaver target aka screensaver coordinator which was missing from the CI build script.
This allows to build BOINC on a Mac CI system as well as on a developers computer. See script headers for documentation.
The short version is:
* run ./3rdParty/buildMacDependencies.sh to compile all dependency libraries into 3rdParty/buildCache/mac (can be configured with --cache_dir)
* run ./mac_build/buildMacBOINC-CI.sh to compile all BOINC components using the build cache (--cache_dir can be used here too)
There are options for building debug versions but they are not very well tested. Currently you can't selectively build single targets using this.