Closed drystone closed 7 years ago
@drystone I've setup retrace on our internal Jenkins macOS slave so every new/updated PR will cause the macOS build to run.
Unfortunately it is not very much "debuggable" on the fly, but here's the script to run the macOS build for your reference. So if you change ci/{install,main}.sh
the build will be updated too.
export PATH=$PATH:/usr/local/bin
function install_packages() {
brew update
brew install openssl
brew install make
brew install cmake
brew install autoconf
brew install automake
brew install libtool
brew install cmocka
brew install pkg-config
}
mkdir -p deps
export CMOCKA_INSTALL="$(pwd)/deps/cmocka-install"
export CHECKPATCH_INSTALL="$(pwd)/deps/checkpatch-install"
mkdir -p $CMOCKA_INSTALL
install_packages
if [ -d ~/builds/cmocka ]; then
rm -rf ~/builds/cmocka
fi
./ci/install.sh
./ci/main.sh
@drystone just to let you know that Travis also supports macOS -- so we can also run it there given that someone is willing to update the .travis.yml
file!
@ronaldtse I suppose it would be possible to set up an ssh tunnel and access either your internal slave or travis that way. The trouble with travis is that is seems there is a 30 minute wait for a MacOS instance at peak times. Would it be possible to hire something like a basic xcloud server as ability to use gdb would be really beneficial to track down bugs like the send bug we're seeing at the moment. I suppose we could also go the virtualbox route as @jjr840430 has suggested but I'm not entirely happy running untrusted proprietary images on my network.
Resolved.
For those of us not fortunate enough (or too sensible ;) to own a Mac, a cloud Mac would be extremely useful. Would someone with Mac-fu please set up a VM with all build depends in place so we can simply ssh in, ./configure; make and gdb.