Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/App/NatronApp_main.cpp b/App/NatronApp_main.cpp
- index 68a45f939..90202fa0c 100644
- --- a/App/NatronApp_main.cpp
- +++ b/App/NatronApp_main.cpp
- @@ -67,7 +67,7 @@ int main(int argc, char *argv[])
- boost_adaptbx::floating_point::exception_trapping trap(boost_adaptbx::floating_point::exception_trapping::division_by_zero |
- boost_adaptbx::floating_point::exception_trapping::invalid |
- boost_adaptbx::floating_point::exception_trapping::overflow);
- - assert(boost_adaptbx::floating_point::is_invalid_trapped());
- +// assert(boost_adaptbx::floating_point::is_invalid_trapped());
- #endif
- #ifdef Q_OS_WIN
- diff --git a/Engine/Node.cpp b/Engine/Node.cpp
- index 000ec8519..9731d8dba 100644
- --- a/Engine/Node.cpp
- +++ b/Engine/Node.cpp
- @@ -3164,7 +3164,7 @@ renderPreview(const Image & srcImg,
- bool convertToSrgb,
- unsigned int* dstPixels)
- {
- -#ifndef DEBUG_NAN
- +#ifdef DEBUG_NAN
- // Some plugins generate FP exceptions
- boost_adaptbx::floating_point::exception_trapping trap(0);
- #endif
- diff --git a/global.pri b/global.pri
- index e89cffbe4..4ca4b932b 100644
- --- a/global.pri
- +++ b/global.pri
- @@ -22,6 +22,10 @@ CONFIG += c++11
- # libs may modify the config (eg openmp), so it must be included before
- include(libs.pri)
- +!include(config.pri) {
- + error("System-specific config.pri file not present, please follow the installation instructions and create it.")
- +}
- +
- CONFIG += exceptions warn_on no_keywords
- DEFINES += OFX_EXTENSIONS_NUKE OFX_EXTENSIONS_TUTTLE OFX_EXTENSIONS_VEGAS OFX_SUPPORTS_PARAMETRIC OFX_EXTENSIONS_TUTTLE OFX_EXTENSIONS_NATRON OFX_EXTENSIONS_RESOLVE OFX_SUPPORTS_OPENGLRENDER
- DEFINES += OFX_SUPPORTS_MULTITHREAD
- @@ -620,9 +624,3 @@ FC_DEFAULT_FONTS += "<dir>WINDOWSFONTDIR</dir>"
- FC_DEFAULT_FONTS += "<dir>~/AppData/Local/Microsoft/Windows/Fonts</dir>"
- FC_CACHEDIR += "<cachedir>LOCAL_APPDATA_FONTCONFIG_CACHE</cachedir>"
- }
- -
- -
- -# and finally...
- -!include(config.pri) {
- - error("System-specific config.pri file not present, please follow the installation instructions and create it.")
- -}
- diff --git a/tools/travis/install_dependencies.sh b/tools/travis/install_dependencies.sh
- index 5ce67274e..6286fc747 100755
- --- a/tools/travis/install_dependencies.sh
- +++ b/tools/travis/install_dependencies.sh
- @@ -22,6 +22,8 @@ set -e
- # Print commands and their arguments as they are executed.
- set -x
- +TRAVIS_BUILD_DIR=${TRAVIS_BUILD_DIR:="."}
- +
- # enable testing locally or on forks without multi-os enabled
- if [[ "${TRAVIS_OS_NAME:-false}" == false ]]; then
- if [[ $(uname -s) == "Darwin" ]]; then
- @@ -41,40 +43,51 @@ if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
- #GCC_VERSION=7
- GCC_VERSION=8
- PKGS=
- + PIP=pip
- + PYTHON=python2
- + PYTHON_CONFIG=python2-config
- # Natron requires boost >= 1.49 to compile in C++11 mode
- # see http://stackoverflow.com/questions/11302758/error-while-copy-constructing-boostshared-ptr-using-c11
- ## we used the irie/boost ppa for that purpose
- #sudo add-apt-repository -y ppa:irie/boost
- - if [ `lsb_release -cs` = "xenial" ]; then
- + if [ `lsb_release -cs` = "impish" ]; then
- + GCC_VERSION=11
- + PIP=pip3
- + PYTHON=python3
- + PYTHON_CONFIG=python3-config
- + elif [ `lsb_release -cs` = "xenial" ]; then
- BOOSTVER=1.58
- + # the PPA xorg-edgers contains cairo 1.12 (required for rotoscoping)
- + sudo add-apt-repository -y ppa:xorg-edgers/ppa
- elif [ `lsb_release -cs` = "trusty" ]; then
- # samuel-bachmann/boost has a backport of boost 1.60
- sudo add-apt-repository -y ppa:samuel-bachmann/boost
- BOOSTVER=1.60
- sudo add-apt-repository -y ppa:george-edison55/cmake-3.x
- + # the PPA xorg-edgers contains cairo 1.12 (required for rotoscoping)
- + sudo add-apt-repository -y ppa:xorg-edgers/ppa
- elif [ `lsb_release -cs` = "precise" ]; then
- # 12.04LTS Precise
- # now we use ppa:boost-latest/ppa (contains boost 1.55)
- sudo add-apt-repository -y ppa:boost-latest/ppa
- BOOSTVER=1.55
- sudo add-apt-repository -y ppa:kalakris-cmake
- + # the PPA xorg-edgers contains cairo 1.12 (required for rotoscoping)
- + sudo add-apt-repository -y ppa:xorg-edgers/ppa
- fi
- #PKGS="$PKGS libboost${BOOSTVER}-dev libboost-math${BOOSTVER}-dev libboost-serialization${BOOSTVER}-dev"
- PKGS="$PKGS libboost-dev libboost-math-dev libboost-serialization-dev"
- - # the PPA xorg-edgers contains cairo 1.12 (required for rotoscoping)
- - sudo add-apt-repository -y ppa:xorg-edgers/ppa
- PKGS="$PKGS libcairo2-dev"
- # ubuntu-toolchain-r/test contains recent versions of gcc
- if [ "$CC" = "$TEST_CC" ]; then
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test;
- PKGS="$PKGS gcc-${GCC_VERSION} g++-${GCC_VERSION}";
- - fi
- - if [ "$CC" = "$TEST_CC" ]; then
- - sudo -H pip install cpp-coveralls;
- + sudo -H $PIP install cpp-coveralls;
- fi
- +
- ## Python 3.4
- ##sudo add-apt-repository --yes ppa:fkrull/deadsnakes # python3.x
- # we get libyaml-cpp-dev from kubuntu backports (for OpenColorIO)
- @@ -95,17 +108,13 @@ if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
- fi
- fi
- - # Note: Python 3 packages are python3-dev and python3-pyside
- - PKGS="$PKGS libqt4-dev libqt4-opengl-dev libglew-dev libexpat1-dev gdb libcairo2-dev python-dev python-pyside libpyside-dev libshiboken-dev"
- -
- - echo "*** Python 2 version:"
- - python2 --version
- - python2 -c "from PySide import QtGui, QtCore, QtOpenGL"
- - echo "*** PySide:"
- - env PKG_CONFIG_PATH=`python2-config --prefix`/lib/pkgconfig pkg-config --libs pyside
- - echo "*** Shiboken:"
- - env PKG_CONFIG_PATH=`python2-config --prefix`/lib/pkgconfig pkg-config --libs shiboken
- - cat /usr/lib/x86_64-linux-gnu/pkgconfig/shiboken.pc
- + PKGS="$PKGS libglew-dev libexpat1-dev gdb libcairo2-dev"
- + if [ "$PYTHON" == "python2" ]; then
- + PKGS="$PKGS libqt4-dev libqt4-opengl-dev python-dev python-pyside libpyside-dev libshiboken-dev"
- + else
- + PKGS="$PKGS qttools5-dev libqt5opengl5-dev python3-dev libpyside2-dev libshiboken2-dev"
- + PKGS="$PKGS python3-pyside2.qtcore python3-pyside2.qtgui python3-pyside2.qtopengl python3-qtpy"
- + fi
- # OpenFX-IO
- # - ffmpeg
- @@ -147,10 +156,33 @@ if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
- sudo apt-get install -y --allow-unauthenticated -fm $PKGS
- -
- +
- + # now that apt-get has installed our packages, we can test them
- + echo "*** Python version:"
- + $PYTHON --version
- + if [ "$PYTHON" == "python3" ]; then
- + $PYTHON -c "from PySide2 import QtGui, QtCore, QtOpenGL"
- + echo "*** PySide2:"
- + env PKG_CONFIG_PATH=`$PYTHON_CONFIG --prefix`/lib/pkgconfig pkg-config --libs pyside2
- + echo "*** Shiboken2:"
- + env PKG_CONFIG_PATH=`$PYTHON_CONFIG --prefix`/lib/pkgconfig pkg-config --libs shiboken2
- + cat /usr/lib/x86_64-linux-gnu/pkgconfig/shiboken2.pc
- + else
- + $PYTHON -c "from PySide import QtGui, QtCore, QtOpenGL"
- + echo "*** PySide:"
- + env PKG_CONFIG_PATH=`$PYTHON_CONFIG --prefix`/lib/pkgconfig pkg-config --libs pyside
- + echo "*** Shiboken:"
- + env PKG_CONFIG_PATH=`$PYTHON_CONFIG --prefix`/lib/pkgconfig pkg-config --libs shiboken
- + cat /usr/lib/x86_64-linux-gnu/pkgconfig/shiboken.pc
- + fi
- +
- +
- +
- +
- +
- ################################################################
- # build dependencies that cannot be fetched from apt
- -
- +
- # ubuntu-toolchain-r/test contains recent versions of gcc
- if [ "$CC" = "$TEST_CC" ]; then
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-${GCC_VERSION} 90;
- @@ -233,23 +265,38 @@ if [[ ${TRAVIS_OS_NAME} == "linux" ]]; then
- echo 'expat: PKGCONFIG -= expat' >> config.pri
- # pyside and shiboken for python3 cannot be configured with pkg-config on Ubuntu 12.04LTS Precise
- # pyside and shiboken for python2 still need the extra QtCore and QtGui include directories
- + echo "PYTHON_CONFIG = $PYTHON_CONFIG" >> config.pri
- echo 'PYSIDE_PKG_CONFIG_PATH = $$system($$PYTHON_CONFIG --prefix)/lib/pkgconfig' >> config.pri
- - echo 'pyside: PKGCONFIG -= pyside' >> config.pri
- - echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir pyside)' >> config.pri
- - echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir pyside)/QtCore' >> config.pri
- - echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir pyside)/QtGui' >> config.pri
- - echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir QtGui)' >> config.pri
- - #echo 'pyside: LIBS += -lpyside.cpython-32mu' >> config.pri
- - echo 'pyside: LIBS += -lpyside-python2.7' >> config.pri
- - # pyside doesn't have PySide::getWrapperForQObject on Ubuntu 12.04LTS Precise
- - echo 'pyside: DEFINES += PYSIDE_OLD' >> config.pri
- - #echo 'shiboken: PKGCONFIG -= shiboken' >> config.pri
- - #echo 'shiboken: INCLUDEPATH += $$system(pkg-config --variable=includedir shiboken)' >> config.pri
- - #echo 'shiboken: LIBS += -lshiboken.cpython-32mu' >> config.pri
- +
- + if [ "$PYTHON" == "python3" ]; then
- + echo 'CONFIG += python3' >> config.pri
- + echo 'pyside: PKGCONFIG -= pyside2' >> config.pri
- + echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir pyside2)' >> config.pri
- + echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir pyside2)/QtCore' >> config.pri
- + echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir pyside2)/QtGui' >> config.pri
- + echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir Qt5Gui)' >> config.pri
- + echo 'pyside: LIBS += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config libs pyside2)' >> config.pri
- + echo 'shiboken: PKGCONFIG -= shiboken2' >> config.pri
- + echo 'shiboken: INCLUDEPATH += $$system(pkg-config --variable=includedir shiboken2)' >> config.pri
- + echo 'shiboken: LIBS += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config libs shiboken2)' >> config.pri
- + else
- + echo 'pyside: PKGCONFIG -= pyside' >> config.pri
- + echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir pyside)' >> config.pri
- + echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir pyside)/QtCore' >> config.pri
- + echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir pyside)/QtGui' >> config.pri
- + echo 'pyside: INCLUDEPATH += $$system(env PKG_CONFIG_PATH=$$PYSIDE_PKG_CONFIG_PATH pkg-config --variable=includedir QtGui)' >> config.pri
- + #echo 'pyside: LIBS += -lpyside.cpython-32mu' >> config.pri
- + echo 'pyside: LIBS += -lpyside-python2.7' >> config.pri
- + # pyside doesn't have PySide::getWrapperForQObject on Ubuntu 12.04LTS Precise
- + echo 'pyside: DEFINES += PYSIDE_OLD' >> config.pri
- + #echo 'shiboken: PKGCONFIG -= shiboken' >> config.pri
- + #echo 'shiboken: INCLUDEPATH += $$system(pkg-config --variable=includedir shiboken)' >> config.pri
- + #echo 'shiboken: LIBS += -lshiboken.cpython-32mu' >> config.pri
- + fi
- IO_BRANCH=master
- . $TRAVIS_BUILD_DIR/Global/plugin-branches.sh
- -
- +
- # build OpenFX-IO
- if [ "$CC" = "$TEST_CC" ]; then
- pushd $TRAVIS_BUILD_DIR
- @@ -275,7 +322,7 @@ elif [[ ${TRAVIS_OS_NAME} == "osx" ]]; then
- # install_xquartz(){
- # echo "XQuartz start install"
- # XQUARTZ_VERSION=2.7.6
- - #
- + #
- # echo "XQuartz download"
- # wget --quiet http://xquartz.macosforge.org/downloads/SL/XQuartz-${XQUARTZ_VERSION}.dmg
- # echo "XQuartz mount dmg"
- @@ -301,7 +348,7 @@ elif [[ ${TRAVIS_OS_NAME} == "osx" ]]; then
- # (see https://travis-ci.org/NatronGitHub/Natron/jobs/504468941)
- #brew install numpy || true
- #brew link --overwrite numpy || true
- -
- +
- brew outdated xctool || brew upgrade xctool || true
- echo "* Adding brew taps"
- #brew tap homebrew/python # deprecated
- @@ -346,10 +393,10 @@ elif [[ ${TRAVIS_OS_NAME} == "osx" ]]; then
- #brew upgrade
- echo "* Brew doctor"
- brew doctor || true
- -
- +
- echo "* Install Natron dependencies"
- #echo " - pip install numpy" # installed via brew install numpy (see below)
- - #pip install --upgrade numpy
- + #$PIP install --upgrade numpy
- # brew install numpy # Compilation errors with gfortran
- echo " - install brew packages"
- # TuttleOFX's dependencies:
- @@ -448,7 +495,7 @@ EOS
- # OpenImageIO >= 1.8 requires c++11
- CXX="$CXX -std=c++11"
- -
- +
- # OpenFX
- if [ "$CC" = "$TEST_CC" ]; then
- make -C libs/OpenFX/Examples;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement