mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-06 07:51:47 +00:00
82 lines
2.1 KiB
YAML
82 lines
2.1 KiB
YAML
language: cpp
|
|
compiler: gcc
|
|
cache: ccache
|
|
os: linux
|
|
dist: focal
|
|
addons:
|
|
apt:
|
|
update: true
|
|
packages:
|
|
- libboost-date-time-dev
|
|
- libboost-filesystem-dev
|
|
- libboost-iostreams-dev
|
|
- libboost-program-options-dev
|
|
- libboost-regex-dev
|
|
- libboost-system-dev
|
|
- libboost-thread-dev
|
|
- libocct-data-exchange-dev
|
|
- libocct-foundation-dev
|
|
- libocct-modeling-algorithms-dev
|
|
- libocct-modeling-data-dev
|
|
- libxml2-dev
|
|
- nlohmann-json3-dev
|
|
- opencollada-dev
|
|
- python3-all-dev
|
|
- python3-pip
|
|
- swig
|
|
- libhdf5-dev
|
|
|
|
before_script:
|
|
- if [ $TRAVIS_OS_NAME == "linux" ]; then ccache -z; fi
|
|
|
|
install:
|
|
# for IDS
|
|
- python3 -m pip install xmlschema
|
|
|
|
script:
|
|
- pwd
|
|
- mkdir build && cd build
|
|
- |
|
|
cmake \
|
|
-DCMAKE_C_COMPILER_LAUNCHER=ccache \
|
|
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
|
|
-DOCC_INCLUDE_DIR=/usr/include/opencascade \
|
|
-DOCC_LIBRARY_DIR=/usr/lib/x86_64-linux-gnu \
|
|
-DPYTHON_EXECUTABLE:FILEPATH=/usr/bin/python3 \
|
|
-DPYTHON_INCLUDE_DIR:PATH=/usr/include/python3.8 \
|
|
-DPYTHON_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libpython3.8.so \
|
|
"-DSCHEMA_VERSIONS=2x3;4" \
|
|
-DGLTF_SUPPORT=On \
|
|
-DJSON_INCLUDE_DIR=/usr/include \
|
|
-DHDF5_INCLUDE_DIR=/usr/include/hdf5/serial \
|
|
../cmake
|
|
|
|
# TODO: Drop sudo
|
|
- sudo make -j $(nproc) install
|
|
|
|
- cd ../test
|
|
- /usr/bin/python tests.py
|
|
- /usr/bin/python ../src/ifcopenshell-python/ifcopenshell/test_ids.py
|
|
|
|
- cd input
|
|
|
|
- /usr/local/bin/IfcConvert -yv acad2010_walls.ifc acad2010_walls.glb
|
|
|
|
- /usr/bin/python -c "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
|
|
|
|
after_script:
|
|
- if [ $TRAVIS_OS_NAME == "linux" ]; then ccache -s; fi
|