New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Issue1263 durack1 Fix Travis OS X pyexpat build error #1674

Merged
merged 2 commits into from Nov 12, 2015

Conversation

Projects
None yet
4 participants
@durack1
Member

durack1 commented Nov 11, 2015

Fix #1263 - Travis OS X pyexpat build error - build against system expat

@aashish24 @doutriaux1 please review and merge - this will fix the travis OS X build errors, but it's a kludge as the expat build errors are likely an artifact of problems with the build environment not being set up correctly - when running a Python 2.7.10 build (which includes expat and pyexpat) this completes successfully with no warnings outside of the cmake build command - take a peek at PCMDI/pcmdi_metrics#285 for more info.. PCMDI/pcmdi_metrics#279 was the issue that triggered this PR

@durack1

This comment has been minimized.

@durack1

This comment has been minimized.

Member

durack1 commented Nov 12, 2015

@aashish24 @jbeezley this is the PR that @doutriaux1 wanted you folks to take a look at..

@@ -10,8 +10,6 @@ before_install:
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then brew update ; brew outdated cmake || brew upgrade cmake ; fi
- cmake --version
before_script: travis_wait

This comment has been minimized.

@aashish24

aashish24 Nov 12, 2015

Contributor

@jbeezley did you add this line?

This comment has been minimized.

@durack1

durack1 Nov 12, 2015

Member

@aashish24 nope that was me - and it's redundant and did nothing.. For it to work to extend timeouts it needs to precede the command line arguments

@@ -29,7 +29,7 @@ if(APPLE)
endif()
if(APPLE)
set(library_param --prefix=@CMAKE_INSTALL_PREFIX@ --enable-framework=@CMAKE_INSTALL_PREFIX@/Library/Frameworks)
set(library_param --prefix=@CMAKE_INSTALL_PREFIX@ --with-system-expat --enable-framework=@CMAKE_INSTALL_PREFIX@/Library/Frameworks)

This comment has been minimized.

@aashish24

aashish24 Nov 12, 2015

Contributor

so expat is available on travis by default?

This comment has been minimized.

@durack1

durack1 Nov 12, 2015

Member

Yep - see https://travis-ci.org/PCMDI/pcmdi_metrics/jobs/89462940#L27-L39 and expand the print statements which query available libraries (and then go on to update a bunch of things) before calling cmake

This comment has been minimized.

@durack1

durack1 Nov 12, 2015

Member

The problem here is that the Python 2.7.10 tarball ships with expat (and pyexpat) and attempts to build these internally within the Python build.. I have no idea why this (and some other modules) fail within the cmake build statement, whereas when Python 2.7.10 is built before the cmake build step, it completes successfully.. See further down in the log linked directly above..

This comment has been minimized.

@durack1

durack1 Nov 12, 2015

Member

A point to note here is that the travis system expat is 2.0.1 whereas the Python expat is 2.1.0

So querying the travis system expat, using the system Python 2.7.5:

$ ( echo "from pyexpat import *" ; echo "print EXPAT_VERSION" ) | python
expat_2.0.1

And querying the Python 2.7.10-built expat (built outside of the cmake build system, so I build this prior to the cmake commands being called):

$ ( echo "from pyexpat import *" ; echo "print EXPAT_VERSION" ) | python
expat_2.1.0

This comment has been minimized.

@jbeezley

jbeezley Nov 12, 2015

Contributor

This is probably safe. AFAIK, libexpat is a Mac system library. Like @durack1, I have no idea why using python's libexpat would fail on travis.

This comment has been minimized.

@doutriaux1

doutriaux1 Dec 8, 2015

Member

seems to be gone with XCode 7...

@durack1

This comment has been minimized.

Member

durack1 commented Nov 12, 2015

@aashish24 any luck with reviewing this/figuring out what was/is happening? We're waiting on the PR to be merged so we can fix the downstream issue at PCMDI/pcmdi_metrics#279 along with some other fixes in the queue..

doutriaux1 added a commit that referenced this pull request Nov 12, 2015

Merge pull request #1674 from UV-CDAT/issue1263_durack1_FixTravisOSXP…
…yexpatBuildError

Issue1263 durack1 Fix Travis OS X pyexpat build error

@doutriaux1 doutriaux1 merged commit 709468c into master Nov 12, 2015

3 of 9 checks passed

cont-int/LLNL/Darwin-Mac1 10.10.5 (NOGUI) running 'ctest -j4 -D Experimental' (Thu Nov 12 10:32:48 2015)
Details
cont-int/LLNL/Darwin-Mac2 10.10.5 (FULL) running 'ctest -j4 -D Experimental' (Thu Nov 12 10:53:51 2015)
Details
cont-int/LLNL/Linux-annie Ubuntu 15.04 (FULL/MESA) running 'ctest -j15 -D Experimental' (Thu Nov 12 10:19:48 2015)
Details
cont-int/LLNL/Linux-crunchy RH6 (FULL) running 'ctest -j12 -D Experimental' (Thu Nov 12 10:06:04 2015)
Details
cont-int/LLNL/Linux-oceanonly RH6 (MESA/NOGUI) running 'ctest -j12 -D Experimental' (Thu Nov 12 09:52:39 2015)
Details
continuous-integration/kitware-buildbot/uvcdat-garant-linux-release/ Build done.
Details
cont-int/LLNL/Darwin-Mac 10.10.5 (LEAN) running 'ctest -j4 -D Experimental' (Thu Nov 12 09:43:29 2015)
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
continuous-integration/travis-ci/push The Travis CI build passed
Details

@doutriaux1 doutriaux1 deleted the issue1263_durack1_FixTravisOSXPyexpatBuildError branch Nov 12, 2015

@aashish24

This comment has been minimized.

Contributor

aashish24 commented Nov 13, 2015

thanks @durack1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment