diff --git a/.travis.yml b/.travis.yml index cd9f088d3c..4e8373766d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,49 +1,119 @@ language: cpp + compiler: - gcc - clang + +cache: + apt: true + env: - RUN_TESTS=false OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=OFF + +addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - tcl8.5-dev + - tk8.5-dev + - libgl2ps-dev + - libfreeimage-dev + - libtbb-dev + - tclthread + - libgl1-mesa-dri + - xsltproc + - g++-5 + - g++-6 + - g++-7 + matrix: include: - os: linux compiler: gcc - env: RUN_TESTS=true OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + env: MATRIX_EVAL="CC=gcc-5 && CXX=g++-5" RUN_TESTS=true OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + dist: trusty + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-5 + - os: linux + compiler: gcc + env: MATRIX_EVAL="CC=gcc-6 && CXX=g++-6" RUN_TESTS=true OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + dist: trusty + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-6 + - os: linux + compiler: gcc + env: MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" RUN_TESTS=true OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - g++-7 dist: trusty - os: linux compiler: clang - env: RUN_TESTS=true OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + env: RUN_TESTS=true OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON MATRIX_EVAL="CC=clang-4.0 && CXX=clang++-4.0" dist: trusty + addons: + apt: + sources: + - llvm-toolchain-trusty-4.0 + packages: + - clang-4.0 - os: linux compiler: gcc - env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=OFF + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=OFF MATRIX_EVAL="" - os: linux compiler: gcc - env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON MATRIX_EVAL="" - os: linux compiler: gcc - env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON OCE_MULTITHREAD_LIBRARY=OPENMP + env: OCE_MULTITHREAD_LIBRARY=OPENMP OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON MATRIX_EVAL="" - os: linux compiler: gcc - env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON OCE_MULTITHREAD_LIBRARY=TBB + env: OCE_MULTITHREAD_LIBRARY=TBB OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON MATRIX_EVAL="" - os: osx compiler: clang - env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON - os: osx osx_image: xcode8.3 compiler: clang - env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + - os: osx + osx_image: xcode9.2 + compiler: clang + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + - os: osx + osx_image: xcode9.3beta + compiler: clang + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON exclude: - env: RUN_TESTS=false OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=OFF allow_failures: - os: osx compiler: clang - env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON - os: osx osx_image: xcode8.3 compiler: clang - env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON - + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + - os: osx + osx_image: xcode9.2 + compiler: clang + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON + - os: osx + osx_image: xcode9.3beta + compiler: clang + env: OCE_USE_PCH=ON OCE_COPY_HEADERS_BUILD=ON before_install: # osx @@ -55,15 +125,9 @@ before_install: fi # linux - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then - sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test; - sudo apt-get update -q; - sudo apt-get install tcl8.5-dev tk8.5-dev libgl2ps-dev libfreeimage-dev libtbb-dev; - sudo apt-get install tclthread; - sudo apt-get install libgl1-mesa-dri; - sudo apt-get install xsltproc; - sudo apt-get install -qq gcc-5 g++-5; - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 60 --slave /usr/bin/g++ g++ /usr/bin/g++-5; + eval "${MATRIX_EVAL}"; fi + before_script: # Initialize xvfb server # Depth is necessary, otherwise DRAWEXE exits with this message: @@ -78,7 +142,9 @@ before_script: fi - mkdir cmake-build - cd cmake-build + script: sh ../.travis.build.sh + after_script: - test ! -r occt/summary.xml || xsltproc --param duration 1 ../.travis.xsl occt/summary.xml - if [ -r occt/summary.xml ]; then @@ -89,6 +155,7 @@ after_script: for file in $(cat occt/summary.failed); do head -n -1 occt/$file.{tcl,log}; done; fi; fi + branches: only: - master diff --git a/CMakeLists.txt b/CMakeLists.txt index 4be80f60f0..092fd2fcb4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -25,7 +25,7 @@ set(OCE_VERSION_MINOR 18) # (uncomment following line) set(OCE_VERSION_PATCH 3) # Empty for official releases, set to -dev, -rc1, etc for development releases -set(OCE_VERSION_DEVEL -dev) +set(OCE_VERSION_DEVEL) # bugfix release: add ${OCE_VERSION_PATCH} to OCE_VERSION set(OCE_VERSION ${OCE_VERSION_MAJOR}.${OCE_VERSION_MINOR}${OCE_VERSION_DEVEL}) diff --git a/NEWS.md b/NEWS.md index b23e253364..8e5c23be93 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,3 +1,24 @@ +### Version 0.18.3 - February 2018 + +This version is binary compatible with OCE 0.18.x + +* Fix some typos / some rephrasing in README + +* Update for vtk 8 + +* Fixed osx issue with xlocale + +* Added missing Precision.hxx header + +* Added missing header in Quantity_Color_1.hxx + +* Fixed MinGW issue in OSD_MemInfo.cxx + +* travis-ci (gcc-5/6/7, osx images) and appveyor updates (Mingw) + +Users who contributed to this release: + Thomas Séverin, Janus Weil, Michael Gielda, Nicolas Vuaille, Thomas Paviot + ### Version 0.18.2 - August 2017 This version is binary compatible with OCE 0.18.x diff --git a/README.md b/README.md index 2092bd75e3..5ab684b322 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ oce stands for **o**pencascade **c**ommunity **e**dition. This project aims at g You can download source code as well as precompiled binaries for Windows at: -**[oce-0.18.2](https://github.com/tpaviot/oce/releases/tag/OCE-0.18.2)** (August 2017) +**[oce-0.18.3](https://github.com/tpaviot/oce/releases/tag/OCE-0.18.3)** (February 2018) ## OCE history @@ -21,6 +21,7 @@ Below are listed all the oce releases since the beginning of the project, the ma | OCE release number | ABI Change | OCE release date | OCCT version | | ------------- | ------------- | ------------- |------------- | +| [0.18.3](https://github.com/tpaviot/oce/releases/tag/OCE-0.18.3) | No | February | 6.9.1 | [0.18.2](https://github.com/tpaviot/oce/releases/tag/OCE-0.18.2) | No | August 2017 | 6.9.1 | [0.18.1](https://github.com/tpaviot/oce/releases/tag/OCE-0.18.1) | No | May 2017 | 6.9.1 | [0.18](https://github.com/tpaviot/oce/releases/tag/OCE-0.18) | Yes | January 2017 | 6.9.1 diff --git a/appveyor-scripts/make-oce-msys.bat b/appveyor-scripts/make-oce-msys.bat new file mode 100644 index 0000000000..1714d656fd --- /dev/null +++ b/appveyor-scripts/make-oce-msys.bat @@ -0,0 +1,19 @@ +cd C:\projects\oce +mkdir cmake-build +cd cmake-build +cmake -DOCE_VISUALISATION:BOOL=ON ^ + -DOCE_DATAEXCHANGE:BOOL=OFF ^ + -DOCE_OCAF:BOOL=OFF ^ + -DOCE_WITH_GL2PS:BOOL=ON ^ + -DOCE_WITH_FREEIMAGE:BOOL=OFF ^ + -DOCE_TESTING:BOOL=ON ^ + -DOCE_COPY_HEADERS_BUILD:BOOL=ON ^ + -DOCE_INSTALL_PREFIX=C:\oce-0.18.3 ^ + -G "%generator%" .. +mingw32-make -j5 +mingw32-make install +dir +dir C:\oce-0.18.3 +set PATH=%PATH%;C:\oce-0.18.3\bin +mingw32-make test +cd .. diff --git a/appveyor-scripts/make-oce-msys.sh b/appveyor-scripts/make-oce-msys.sh deleted file mode 100644 index dd0fa0ee5a..0000000000 --- a/appveyor-scripts/make-oce-msys.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/sh -set -e -cd `dirname "$0"`/.. -if [ "$ARCH" = i686 ]; then - f=i686-4.9.3-release-posix-dwarf-rt_v4-rev1.7z - if ! [ -e $f ]; then - echo "Downloading $f" - curl -LsSO http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win32/Personal%20Builds/mingw-builds/4.9.3/threads-posix/dwarf/$f - fi - 7z x $f > /dev/null - echo "Extracting $f" - mv mingw32 /MinGW -else - f=x86_64-5.4.0-release-posix-seh-rt_v5-rev0.7z - if ! [ -e $f ]; then - echo "Downloading $f" - curl -LsSO http://sourceforge.net/projects/mingw-w64/files/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/5.4.0/threads-posix/seh/$f - fi - echo "Extracting $f" - 7z x $f > /dev/null - mv mingw64 /MinGW -fi -g++ -v -# make oce -cd /c/projects/oce -mkdir cmake-build -cd cmake-build -cmake -DOCE_VISUALISATION:BOOL=ON \ - -DOCE_DATAEXCHANGE:BOOL=OFF -DOCE_OCAF:BOOL=OFF \ - -DOCE_WITH_GL2PS:BOOL=ON \ - -DOCE_WITH_FREEIMAGE:BOOL=OFF \ - -DOCE_TESTING:BOOL=ON \ - -DOCE_COPY_HEADERS_BUILD:BOOL=ON \ - -DOCE_INSTALL_PREFIX=C:\\oce-0.18 \ - -G'MSYS Makefiles' .. -mingw32-make -j4 -mingw32-make install > /dev/null -# -# Finally run tests -# -export PATH=$PATH:/c/MinGW/bin:/c/oce-0.18/$ARCH/bin:/c/MinGW/bin: -mingw32-make test diff --git a/appveyor.yml b/appveyor.yml index 6439220be5..f901bae922 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -3,12 +3,18 @@ version: oce-0.18.3.{build} environment: oce_version: 0.18.3 matrix: - - generator: "MSYS Makefiles" + - generator: "MinGW Makefiles" ARCH: "i686" - Compiler: MinGW-gcc-4.9.3 - - generator: "MSYS Makefiles" + Compiler: MinGW-gcc-5.3.0 + BINDIR: C:\MinGW\bin + - generator: "MinGW Makefiles" ARCH: "Win64" - Compiler: MinGW64-gcc-5.4.0 + Compiler: MinGW64-gcc-6.3.0 + BINDIR: C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin + - generator: "MinGW Makefiles" + ARCH: "Win64" + Compiler: MinGW64-gcc-7.2.0 + BINDIR: C:\mingw-w64\x86_64-7.2.0-posix-seh-rt_v5-rev1\mingw64\bin - generator: "Visual Studio 12" ARCH: "Win32" Compiler: "MSVC2013" @@ -22,10 +28,6 @@ environment: ARCH: "Win64" Compiler: "MSVC2015" -cache: - - i686-4.9.3-release-posix-dwarf-rt_v4-rev1.7z - - x86_64-5.4.0-release-posix-seh-rt_v5-rev0.7z - configuration: - Release @@ -46,7 +48,9 @@ install: - cmd: CALL FetchBundle.bat build_script: - - cmd: if "%generator%" == "MSYS Makefiles" (C:\MinGW\msys\1.0\bin\sh --login /c/projects/oce/appveyor-scripts/make-oce-msys.sh) + - if "%generator%"=="MinGW Makefiles" (set "PATH=%PATH:C:\Program Files\Git\usr\bin;=%") + - if not "%BINDIR%"=="" (set "PATH=%PATH%;%BINDIR%") + - if "%generator%" == "MinGW Makefiles" (CALL C:\projects\oce\appveyor-scripts\make-oce-msys.bat) else (CALL C:\projects\oce\appveyor-scripts\make-oce-msvc.bat) after_build: diff --git a/src/OSD/OSD_MemInfo.cxx b/src/OSD/OSD_MemInfo.cxx index 89e40f7aa2..92224c0d13 100644 --- a/src/OSD/OSD_MemInfo.cxx +++ b/src/OSD/OSD_MemInfo.cxx @@ -16,7 +16,6 @@ #if (defined(_WIN32) || defined(__WIN32__)) #if defined(__MINGW32__) #define WIN32_WINNT 0x0500 - #define WINVER 0x0500 #endif #include #include