Ivan Mincik <[email protected]> writes: > On 23.07.2015 10:42, Rainer M Krug wrote: >> Ivan Minčík <[email protected]> writes: >> >>> Hi all, we have just integrated Travis Continuous Integration >>> system [1] to the GRASS source code. Every commit is now build in >>> Travis [2] using gcc and clang. In case the build fails, error >>> message should go to GRASS-dev list. >>> >> >> This looks very nice - great. But I see it only =compiles under >> Linux. >> >> I have a .travis.yml [1] and a homebrew formula [2] to install 7.1 >> from head under OSX which is also running the tests (although the >> test are not running at the moment - I have to investigate why). >> >> I would suggest to merge the check for Mac into your .travis.yml so >> that Mac builds are also checked automatically. > > > Looks like a good idea, but I have no experience with Mac development.
I am using homebrew, a package manager for OSX. This simplifies the compilation significantly as it takes care of all dependencies. So the installation script (called recipe) is at [1] and adapted from the 7.0 of osgeo4mac [2]. The travis script uses my recipe from [1] and installs GRASS 7.1 from HEAD. I'll walk you quickly through the .travis.yml at [3]: --8<---------------cut here---------------start------------->8--- ## to be used for mac (found it somewhere) ## homebrew is installed by default language: objective-c ## before install, update homebrew before_install: - brew update ## during installation, add the repositories necessary so that when ## installing GRASS 71, all required recipes can be found install: - brew tap rkrug/experimental - brew tap rkrug/head-only - brew tap rkrug/dev-only - brew tap homebrew/science - brew update ## Two parallel tests, one for grass-71, the other for the spearfish data env: - RECIPE=nc_spm_08_grass7 INSTALLOPTIONS="" - RECIPE=grass-71 INSTALLOPTIONS="--HEAD" script: ## some tests to test the recipe - brew audit -v $RECIPE ## this now actually installs grass-71 in the one session, and spearfish ## in the other - brew install $INSTALLOPTIONS $RECIPE ## the test does not work at the moment in the homebrew formula - I will ## check why next week - brew test -v $RECIPE ## just uninstall grass again to see if this works - brew uninstall $RECIPE --8<---------------cut here---------------end--------------->8--- So a minimal installation would look as follow (untested!): --8<---------------cut here---------------start------------->8--- language: objective-c before_install: - brew update install: - brew tap rkrug/experimental - brew tap rkrug/head-only - brew tap rkrug/dev-only - brew tap homebrew/science - brew update env: - RECIPE=grass-71 INSTALLOPTIONS="--HEAD" script: - brew audit -v $RECIPE - brew install $INSTALLOPTIONS $RECIPE ## - brew test -v $RECIPE - brew uninstall $RECIPE --8<---------------cut here---------------end--------------->8--- And this is it actually. I have seen that it is possible to use one travis to do tests for different platforms [4], and one could add this for the OS X platform, but I have no idea how (complete newbie to travis). I won't have much time during the few next weeks, but I can follow this up definitely end of August. Cheers, Rainer > > -- > Ivan Minčík > [email protected] GPG: 0x79529A1E > http://imincik.github.io/0x79529A1E.key > [email protected] GPG: 0xD714B02C > http://imincik.github.io/0xD714B02C.key > > _______________________________________________ > grass-dev mailing list > [email protected] > http://lists.osgeo.org/mailman/listinfo/grass-dev Footnotes: [1] https://github.com/rkrug/homebrew-head-only/blob/master/grass-71.rb [2] https://github.com/OSGeo/homebrew-osgeo4mac [3] https://github.com/rkrug/homebrew-experimental/blob/master/.travis.yml [4] http://docs.travis-ci.com/user/multi-os/ -- Rainer M. Krug email: Rainer<at>krugs<dot>de PGP: 0x0F52F982
signature.asc
Description: PGP signature
_______________________________________________ grass-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/grass-dev
