language: cpp compiler: gcc os: linux dist: bionic sudo: required before_install: - "sudo add-apt-repository -y ppa:freecad-community/ppa" - sudo apt-get update -qq install: - | sudo apt-get install -y \ libocct-data-exchange-dev libocct-foundation-dev libocct-modeling-algorithms-dev libocct-modeling-data-dev \ libboost-system-dev libboost-program-options-dev libboost-regex-dev libboost-thread-dev libboost-date-time-dev libboost-iostreams-dev libboost-filesystem-dev \ build-essential cmake python2.7 libpython2.7-dev swig zlib1g liblzma5 opencollada-dev wget apt-transport-https - sudo mkdir -p /usr/include/json/nlohmann/ - sudo wget https://github.com/nlohmann/json/releases/download/v3.6.1/json.hpp -O /usr/include/json/nlohmann/json.hpp # - sudo sh -c 'curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -' # - sudo sh -c 'curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > /etc/apt/sources.list.d/dart_stable.list' # - sudo apt-get update -qq && sudo apt-get install -y dart # - export PATH=$PATH:/usr/lib/dart/bin:$HOME/.pub-cache/bin # - git clone https://github.com/KhronosGroup/glTF-Validator && pushd glTF-Validator && pub get && pub global activate --source path ./ && popd script: - pwd - cd cmake - mkdir build - cd build - | cmake \ -DOCC_INCLUDE_DIR=/usr/include/opencascade \ -DOCC_LIBRARY_DIR=/usr/lib/x86_64-linux-gnu \ -DPYTHON_LIBRARY=/usr/lib/python2.7/config-x86_64-linux-gnu/libpython2.7.so \ -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 \ -DPYTHON_EXECUTABLE=/usr/bin/python2.7 \ -DLIBXML2_INCLUDE_DIR=/usr/include/libxml2 \ -DLIBXML2_LIBRARIES="/usr/lib/x86_64-linux-gnu/libxml2.so;/lib/x86_64-linux-gnu/libz.so.1;/lib/x86_64-linux-gnu/liblzma.so.5;/usr/lib/x86_64-linux-gnu/libicuuc.so.60;/usr/lib/x86_64-linux-gnu/libicudata.so.60" \ -DGLTF_SUPPORT=On \ -DJSON_INCLUDE_DIR=/usr/include/json \ .. - sudo make -j2 install - cd ../../test - /usr/bin/python2.7 tests.py - cd input - /usr/local/bin/IfcConvert -yv acad2010_walls.ifc acad2010_walls.glb # - gltf_validator acad2010_walls.glb - /usr/bin/python2.7 -c "from __future__ import print_function; from io import open; import ifcopenshell; f = ifcopenshell.open('encoding.ifc'); assert list(map(ord, f[1][0])) == [39, 97, 39, 32, 49, 109, 179, 32, 8804, 32, 53, 109, 179, 32, 8805, 32, 49, 48, 109, 179]" - | (for i in *.ifc; do \ echo $i | tee -a log; \ timeout 1m /usr/local/bin/IfcConvert -yv "$i" "$i.dae" --validate >> log 2>&1; \ echo $i $? >> statuses; \ done) || true - echo Failed - grep -v 0$ statuses - grep -v 0$ statuses | wc -l - echo Succeeded - grep 0$ statuses - grep 0$ statuses | wc -l