more cleanup

This commit is contained in:
Thomas Krijnen
2021-02-05 11:39:35 +01:00
parent 894bae66fd
commit c0a62e8593
8 changed files with 111 additions and 316 deletions
+22 -54
View File
@@ -4,13 +4,6 @@ os: linux
dist: bionic
sudo: required
env :
global:
- secure: "bpsPWbUZx/sezmxo0QmSbszpnXDTzZgiZd/rStryT1/xzgm52Qe7ZonVO8v3Wv0VVZDrQSwUzsZR9sHnu17bkO09S604lBlUPxdWuIXGqCnoHRca4szQTpQ9wvN8QM+PNsuZYrpZ1ixO7/EGyvs56zxqoYxhp4GoC5lRuUzcP0zGLYu5x9kbFLWgeDb+IE7xHZrWUH2D8Y8Zd1nJqESgC9eeAYwMpzfhznSzGG0cNbZg1FBJAgaW7XdZGFyF+/wHNmGzK606os6i9Ca6bJEiEmfN5WoWZVdg3xALX/ibk8EdAUY6gacTvEABim/1YDYdFUxmA6S4tKNjZ65XphkaIDsThCMsj1zLnuUKKnqTjkDzZ2BdzDLqFCXdpqNCmuU6m36VlHMg6SS15RSqy9rYeKXJwgJiC9QgUxEoEkq5Een97hFKx6bw55YX2hvhIUdEqwOERBHCDYIt/KPZ6kdM/rY1OgCmHOBBUZWXMftrk/l59s/0DKTH9kn7uYPpB7eereC5F+UxqdMahcOW0UWpA0rtg8ffEQiRdCzfxbWpilhW4dPq6o5FnVEiQkxl4W6GVBX/+HnUzCjnR9I0yHaRhUgoiXvrcmfHihOypH5r72uhlx4DysOqYsp9+R1l7FNBguuPHkZI0afZ4BY+Hh9/OvwN+2oN4/qovD2MQ4ysDWc="
- secure: "LL1DN6nrTFVxbIH54HLpaZfHnabxV4jStB2+XRp0nvBB/XaeceBRe6MgsfOzYSjCkT3Qz0+rIoQzUk6KIWdAAfc56fr5b4ke266zQasvjrr5XUZcKpiGT+nPjf11X2hlVbWF/6upQGwIhMkKUOuXw7JauH2Cg9aaD0Pdd0VkXh5ljlynUu3HaXvBufTt0BTEAJqqP1DNKdZdMJ9se2+nvPH7xbLBYnr+jMAZFuQUMtpw7L9dAdW5al5ORaSYs5ZVz1pvWNzDSva3FXzWsDqfEx6X+twrDa0ha8pfyHLbN8PVqmVZkowyJtjq5Q+l0T0UrettzHG0XDkHKi94YaQUOIgMTqw7NglmfVbpS7z42FrbhLpHvku7FA+cH/lVIKSr+ir8COEWKOkpstnc58UfvpcGZBrwEmTS3EU6iTGtlPwbpeNyQcF2CxkJYS6rCW5mTHI2n79ZaSMn15tyJT8cQZ7Lnw3eUoRe0mtEDuaDzGHmwlVnFe0PrUGJYWoa9ay29S951AHzQ5Y/Jz3zG1p34tEs9hkEoZfexwIS/YJRYNO3XFyPM7AR8cbjsTecmipkKa9xUNCJT8P4bJvh6aIqMbXo9eQvq5ymXlEFIt1tBvlhk/SO3R3Fs9/2e+6C0fTE0O91jYLgrvzIiWDwLMA9PyeMZC+pJaB9K05feG7j7Ak="
before_install:
- "sudo add-apt-repository -y ppa:freecad-community/ppa"
- sudo apt-get update -qq
@@ -21,10 +14,8 @@ 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 python3 python3-pip python3-setuptools doxygen python3-sphinx
- sudo mkdir -p /usr/include/json/nlohmann/
- python3 -m pip install exhale
- sudo apt-get install python3-sphinx
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'
@@ -34,15 +25,11 @@ install:
script:
- pwd
- cd src/ifcblenderexport/docs
- make html
- ls -al
- cd ../../..
- cd cmake
- mkdir build
- cd build
- |
travis_wait cmake \
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 \
@@ -52,47 +39,28 @@ script:
-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 \
-DBUILD_DOCUMENTATION=On \
..
- travis_wait 40 sudo make -j4 install
- sudo make -j2 install
# - cd ../../test
# - /usr/bin/python2.7 tests.py
- cd ../../test
- /usr/bin/python2.7 tests.py
# - cd input
- cd input
# - /usr/local/bin/IfcConvert -yv acad2010_walls.ifc acad2010_walls.glb
# # - gltf_validator acad2010_walls.glb
- /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]"
- /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
after_success:
- pwds
- cd ../../docs
- sudo mv ../src/ifcblenderexport/docs/_build ./output
- ls -al ./output
- pwd
- ls -al
- MESSAGE=$(git log --oneline -1)
- git clone https://johltn:$GITHUB_PASSWORD@github.com/IfcOpenShell/docs
- cd docs
- sudo rm -r *
- sudo touch .nojekyll
- sudo mv ../output/* .
- git config user.email "${GITHUB_EMAIL}"
- git config user.name "IfcOpenBot"
- git add .
- git commit -m "${MESSAGE}"
- travis_wait git push
- |
(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
+1 -17
View File
@@ -23,7 +23,6 @@ set(CMAKE_CXX_STANDARD_REQUIRED ON) # not necessary, but encouraged
project (IfcOpenShell)
foreach(max_year RANGE 2014 2030)
set(max_sdk "$ENV{ADSK_3DSMAX_SDK_${max_year}}")
if (NOT "${max_sdk}" STREQUAL "")
@@ -106,17 +105,6 @@ MACRO(UNIFY_ENVVARS_AND_CACHE VAR)
ENDIF()
ENDMACRO()
UNIFY_ENVVARS_AND_CACHE(BOOST_ROOT)
UNIFY_ENVVARS_AND_CACHE(BOOST_LIBRARYDIR)
UNIFY_ENVVARS_AND_CACHE(BOOST_ROOT)
UNIFY_ENVVARS_AND_CACHE(BOOST_LIBRARYDIR)
message(STATUS "BOOST_ROOT ${BOOST_ROOT}")
message(STATUS "BOOST_LIBRARYDIR ${BOOST_LIBRARYDIR}")
UNIFY_ENVVARS_AND_CACHE(OCC_INCLUDE_DIR)
UNIFY_ENVVARS_AND_CACHE(OCC_LIBRARY_DIR)
UNIFY_ENVVARS_AND_CACHE(OPENCOLLADA_INCLUDE_DIR)
@@ -221,7 +209,7 @@ function(add_debug_variants NAME LIBRARIES POSTFIX)
endfunction()
if(BUILD_IFCGEOM)
MESSAGE(STATUS "OCC_INCLUDE_DIR ${OCC_INCLUDE_DIR}")
# Find Open CASCADE
IF("${OCC_INCLUDE_DIR}" STREQUAL "")
SET(OCC_INCLUDE_DIR "/usr/include/oce/" CACHE FILEPATH "Open CASCADE header files")
@@ -404,10 +392,6 @@ if(ENABLE_BUILD_OPTIMIZATIONS)
endif()
endif()
IF(MSVC)
# Enable solution folders (free VS versions prior to 2012 don't support solution folders)
if (MSVC_VERSION GREATER 1600)
-24
View File
@@ -289,9 +289,6 @@ int main(int argc, char** argv) {
("disable-opening-subtractions",
"Specifies whether to disable the boolean subtraction of "
"IfcOpeningElement Representations from their RelatingElements.")
("disable-boolean-results",
"Specifies whether to disable the boolean operation within representations "
"such as clippings by means of IfcBooleanResult and subtypes")
("enable-layerset-slicing",
"Specifies whether to enable the slicing of products according "
"to their associated IfcMaterialLayerSet.")
@@ -370,14 +367,6 @@ int main(int argc, char** argv) {
"Element at which vertical cross sections should be created")
("elevation-ref", po::value<std::string>(&elevation_ref),
"Element at which vertical elevations should be created")
("auto-section",
"Creates SVG cross section drawings automatically based on model extents")
("auto-elevation",
"Creates SVG elevation drawings automatically based on model extents")
("svg-xmlns",
"Stores name and guid in a separate namespace as opposed to data-name, data-guid")
("svg-poly",
"Uses the polygonal algorithm for hidden line rendering")
("door-arcs", "Draw door openings arcs for IfcDoor elements")
("section-height", po::value<double>(&section_height),
"Specifies the cut section height for SVG 2D geometry.")
@@ -402,7 +391,6 @@ int main(int argc, char** argv) {
("site-local-placement",
"Place elements locally in the IfcSite coordinate system, instead of placing "
"them in the IFC global coords. Applicable for OBJ and DAE output.")
("y-up", "Change the 'up' axis to positive Y, default is Z UPApplicable for OBJ output.")
("building-local-placement",
"Similar to --site-local-placement, but placing elements in locally in the parent IfcBuilding coord system")
("precision", po::value<short>(&precision)->default_value(SerializerSettings::DEFAULT_PRECISION),
@@ -457,7 +445,6 @@ int main(int argc, char** argv) {
const bool merge_boolean_operands = vmap.count("merge-boolean-operands") != 0;
#endif
const bool disable_opening_subtractions = vmap.count("disable-opening-subtractions") != 0;
const bool disable_boolean_results = vmap.count("disable-boolean-results") != 0;
const bool include_plan = vmap.count("plan") != 0;
const bool include_model = vmap.count("model") != 0 || (!include_plan);
const bool enable_layerset_slicing = vmap.count("enable-layerset-slicing") != 0;
@@ -468,7 +455,6 @@ int main(int argc, char** argv) {
const bool use_material_names = vmap.count("use-material-names") != 0;
const bool use_element_types = vmap.count("use-element-types") != 0;
const bool use_element_hierarchy = vmap.count("use-element-hierarchy") != 0;
const bool use_y_up = vmap.count("y-up") != 0;
const bool no_normals = vmap.count("no-normals") != 0;
const bool center_model = vmap.count("center-model") != 0;
const bool center_model_geometry = vmap.count("center-model-geometry") != 0;
@@ -727,7 +713,6 @@ int main(int argc, char** argv) {
settings.set(IfcGeom::IteratorSettings::FASTER_BOOLEANS, merge_boolean_operands);
#endif
settings.set(IfcGeom::IteratorSettings::DISABLE_OPENING_SUBTRACTIONS, disable_opening_subtractions);
settings.set(IfcGeom::IteratorSettings::DISABLE_BOOLEAN_RESULT, disable_boolean_results);
settings.set(IfcGeom::IteratorSettings::INCLUDE_CURVES, include_plan);
settings.set(IfcGeom::IteratorSettings::EXCLUDE_SOLIDS_AND_SURFACES, !include_model);
settings.set(IfcGeom::IteratorSettings::APPLY_LAYERSETS, enable_layerset_slicing);
@@ -742,7 +727,6 @@ int main(int argc, char** argv) {
settings.set(SerializerSettings::USE_ELEMENT_NAMES, use_element_names);
settings.set(SerializerSettings::USE_ELEMENT_GUIDS, use_element_guids);
settings.set(SerializerSettings::USE_Y_UP, use_y_up);
settings.set(SerializerSettings::USE_ELEMENT_STEPIDS, use_element_stepids);
settings.set(SerializerSettings::USE_MATERIAL_NAMES, use_material_names);
settings.set(SerializerSettings::USE_ELEMENT_TYPES, use_element_types);
@@ -957,14 +941,6 @@ int main(int argc, char** argv) {
if (vmap.count("elevation-ref")) {
static_cast<SvgSerializer*>(serializer.get())->setElevationRef(elevation_ref);
}
if (vmap.count("auto-section")) {
static_cast<SvgSerializer*>(serializer.get())->setAutoSection(true);
}
if (vmap.count("auto-elevation")) {
static_cast<SvgSerializer*>(serializer.get())->setAutoElevation(true);
}
static_cast<SvgSerializer*>(serializer.get())->setUseNamespace(vmap.count("svg-xmlns") > 0);
static_cast<SvgSerializer*>(serializer.get())->setUseHlrPoly(vmap.count("svg-poly") > 0);
if (relative_center_x && relative_center_y) {
static_cast<SvgSerializer*>(serializer.get())->setDrawingCenter(*relative_center_x, *relative_center_y);
}
+6 -6
View File
@@ -173,9 +173,9 @@ namespace {
}
namespace IfcGeom {
#define IteratorImpl MAKE_TYPE_NAME(IteratorImplementation_)
template <typename P, typename PP>
class IteratorImpl : public IteratorImplementation<P, PP> {
class MAKE_TYPE_NAME(IteratorImplementation_) : public IteratorImplementation<P, PP> {
private:
std::atomic<int> progress_;
@@ -185,8 +185,8 @@ namespace IfcGeom {
typename std::vector<IfcGeom::Element<P, PP>*>::const_iterator task_result_iterator_;
typename std::vector<IfcGeom::BRepElement<P, PP>*>::const_iterator native_task_result_iterator_;
IteratorImpl(const IteratorImpl&); // N/I
IteratorImpl& operator=(const IteratorImpl&); // N/I
MAKE_TYPE_NAME(IteratorImplementation_)(const MAKE_TYPE_NAME(IteratorImplementation_)&); // N/I
MAKE_TYPE_NAME(IteratorImplementation_)& operator=(const MAKE_TYPE_NAME(IteratorImplementation_)&); // N/I
MAKE_TYPE_NAME(Kernel) kernel;
@@ -1017,7 +1017,7 @@ namespace IfcGeom {
}
public:
IteratorImpl(const IteratorSettings& settings, IfcParse::IfcFile* file, const std::vector<IfcGeom::filter_t>& filters, int num_threads)
MAKE_TYPE_NAME(IteratorImplementation_)(const IteratorSettings& settings, IfcParse::IfcFile* file, const std::vector<IfcGeom::filter_t>& filters, int num_threads)
: settings(settings)
, ifc_file(file)
, filters_(filters)
@@ -1027,7 +1027,7 @@ namespace IfcGeom {
_initialize();
}
~IteratorImpl() {
~MAKE_TYPE_NAME(IteratorImplementation_)() {
if (owns_ifc_file) {
delete ifc_file;
}
+65
View File
@@ -0,0 +1,65 @@
#!/usr/bin/env python3
# This can be packaged with `pyinstaller --onefile --clean --icon=icon.ico ifcpatch.py`
import ifcopenshell
import logging
import argparse
def execute(args, is_library=None):
logging.basicConfig(filename=args['log'], filemode='a', level=logging.DEBUG)
logger = logging.getLogger('IFCPatch')
print('# Loading IFC file ...')
ifc_file = ifcopenshell.open(args['input'])
print('# Loading patch recipe ...')
patcher = getattr(__import__('recipes.{}'.format(args['recipe'])), args['recipe']).Patcher(
args['input'], ifc_file, logger, args['arguments'])
print('# Patching ...')
patcher.patch()
ifc_file = patcher.file
if is_library is True:
return ifc_file
print('# Writing patched file ...')
if not args['output']:
args['output'] = args['input']
if isinstance(ifc_file, str):
with open(args['output'], 'w') as text_file:
text_file.write(ifc_file)
else:
ifc_file.write(args['output'])
if __name__ == '__main__':
parser = argparse.ArgumentParser(
description='Patches IFC files to fix badly formatted data')
parser.add_argument(
'-i',
'--input',
type=str,
required=True,
help='The IFC file to patch')
parser.add_argument(
'-o',
'--output',
type=str,
help='The output file to save the patched IFC')
parser.add_argument(
'-r',
'--recipe',
type=str,
required=True,
help='Name of the recipe to use when patching')
parser.add_argument(
'-l',
'--log',
type=str,
help='Specify a log file',
default='ifcpatch.log')
parser.add_argument(
'-a',
'--arguments',
nargs='+',
help='Specify custom arguments to the patch recipe')
args = vars(parser.parse_args())
execute(args)
print('# All tasks are complete :-)')
@@ -3,27 +3,11 @@ class Patcher:
self.src = src
self.file = file
self.logger = logger
self.args = args
def patch(self):
placement_coord_ids = set()
for placement in self.file.by_type('IfcObjectPlacement'):
[placement_coord_ids.add(e.id()) for e in self.file.traverse(placement) if e.is_a('IfcCartesianPoint')]
# Arbitrary threshold based on experience
self.threshold = 1000000
if self.args and len(self.args) == 1:
self.threshold = float(self.args[0])
elif self.args and len(self.args) == 4:
self.threshold = float(self.args[3])
# This method will not work all the time, but will catch most issues. It
# assumes that absolute coordinates are easily recognisable based on
# having a large absolute value above a threshold. This is not always
# the case, but is very fast to run, and works for most cases.
# 12D can have some funky coordinates out of any sensible range. This
# method will not work all the time, but will catch most issues.
offset_point = None
if self.args and len(self.args) >= 3:
offset_point = (float(self.args[0]),float(self.args[1]),float(self.args[2]))
try:
point_lists = self.file.by_type('IfcCartesianPointList3D')
except:
@@ -36,34 +20,33 @@ class Patcher:
coord_list[i] = point
continue
if not offset_point:
offset_point = (-point[0], -point[1], -point[2])
offset_point = (point[0], point[1], point[2])
self.logger.info(f'Resetting absolute coordinates by {point}')
point = (
point[0] + offset_point[0],
point[1] + offset_point[1],
point[2] + offset_point[2]
point[0] - offset_point[0],
point[1] - offset_point[1],
point[2] - offset_point[2]
)
coord_list[i] = point
point_list.CoordList = coord_list
for point in self.file.by_type('IfcCartesianPoint'):
if len(point.Coordinates) == 2 or not self.is_point_far_away(point):
continue
if point.id() in placement_coord_ids:
continue
if not offset_point:
offset_point = (-point.Coordinates[0], -point.Coordinates[1], -point.Coordinates[2])
offset_point = (point.Coordinates[0], point.Coordinates[1], point.Coordinates[2])
self.logger.info(f'Resetting absolute coordinates by {point}')
point.Coordinates = (
point.Coordinates[0] + offset_point[0],
point.Coordinates[1] + offset_point[1],
point.Coordinates[2] + offset_point[2]
point.Coordinates[0] - offset_point[0],
point.Coordinates[1] - offset_point[1],
point.Coordinates[2] - offset_point[2]
)
def is_point_far_away(self, point):
# Arbitrary threshold based on experience
if hasattr(point, 'Coordinates'):
return abs(point.Coordinates[0]) > self.threshold \
or abs(point.Coordinates[1]) > self.threshold \
or abs(point.Coordinates[2]) > self.threshold
return abs(point[0]) > self.threshold \
or abs(point[1]) > self.threshold \
or abs(point[2]) > self.threshold
return abs(point.Coordinates[0]) > 1000000 \
or abs(point.Coordinates[1]) > 1000000 \
or abs(point.Coordinates[2]) > 1000000
return abs(point[0]) > 1000000 \
or abs(point[1]) > 1000000 \
or abs(point[2]) > 1000000
-177
View File
@@ -1,177 +0,0 @@
This script fetches and builds all IfcOpenShell dependencies
Generator not passed but VisualStudioVersion=15.0 environment variable detected:
using `Visual Studio 15 2017 Win64` as the generator.
build-type-cfg.cmd: Warning: BUILD_CFG not specified - using the default RelWithDebInfo
Script configuration:
* CMake Generator = `Visual Studio 15 2017 Win64`
- Passed to CMake -G option.
* Target Architecture = x64
- Whether were doing 32-bit (x86) or 64-bit (x64) build.
* Dependency Directory = C:\Users\jlutt\Documents\IfcOpenShell\deps
- The directory where IfcOpenShell dependencies are fetched and built.
* Installation Directory = C:\Users\jlutt\Documents\IfcOpenShell\deps-vs2017-x64-installed
- The directory where IfcOpenShell dependencies are installed.
* Build Config Type = RelWithDebInfo
- The used build configuration type for the dependencies.
Defaults to RelWithDebInfo if not specified.
* Build Type = Build
- The used build type for the dependencies (Build, Rebuild, Clean).
Defaults to Build if not specified. Rebuild/Clean also uninstalls Python (if it was installed by this script).
* IFCOS_USE_OCCT = TRUE
- Use the official Open CASCADE instead of the community edition.
* IFCOS_INSTALL_PYTHON = TRUE
- Download and install Python.
Set to something other than TRUE if you wish to use an already installed version of Python.
* IFCOS_USE_PYTHON2 = FALSE
- Use Python 2 instead of 3.
Set to TRUE if you wish to use Python 2 instead of 3. Has no effect if IFCOS_INSTALL_PYTHON is not TRUE.
* IFCOS_NUM_BUILD_PROCS = 8
- How many MSBuild.exe processes may be run in parallel.
Defaults to NUMBER_OF_PROCESSORS. Used also by other IfcOpenShell build scripts.
Requirements for a successful execution:
1. Install PowerShell (preinstalled in Windows >= 7) version 5 or higher and make sure 'powershell' is accessible from PATH.
- https://support.microsoft.com/en-us/kb/968929
2. Install Git and make sure 'git' is accessible from PATH.
- https://git-for-windows.github.io/
3. Install CMake and make sure 'cmake' is accessible from PATH.
- http://www.cmake.org/
4. Visual Studio 2008 or newer (2013 or newer recommended) with C++ toolset.
- https://www.visualstudio.com/
5. Run this batch script with Visual Studio environment variables set.
- https://msdn.microsoft.com/en-us/library/ms229859(v=vs.110).aspx
NB: This script needs to be ran from the directory directly containing it.
Warning: You will need roughly 8 GB of disk space to proceed (VS 2015 x64 RelWithDebInfo).
If you are not ready with the above: type 'n' in the prompt below. Build proceeds on all other inputs
>
Build started at 7:40:11.47.
Boost 1.67.0 already downloaded. Skipping.
Boost 1.67.0 already extracted into C:\Users\jlutt\Documents\IfcOpenShell\deps\boost_1_67_0. Skipping.
Building Boost 1.67.0 --with-system --with-regex --with-thread --with-program_options --with-date_time --with-iostreams --with-filesystem Please be patient this will take a while.
Performing configuration checks
- default address-model : none
- default architecture : none
- symlinks supported : no
- junctions supported : yes
- hardlinks supported : yes
- zlib : no
- bzip2 : no
- lzma : no
- has_icu builds : no
Component configuration:
- atomic : not building
- chrono : not building
- container : not building
- context : not building
- contract : not building
- coroutine : not building
- date_time : building
- exception : not building
- fiber : not building
- filesystem : building
- graph : not building
- graph_parallel : not building
- iostreams : building
- locale : not building
- log : not building
- math : not building
- mpi : not building
- program_options : building
- python : not building
- random : not building
- regex : building
- serialization : not building
- signals : not building
- stacktrace : not building
- system : building
- test : not building
- thread : building
- timer : not building
- type_erasure : not building
- wave : not building
...patience...
...patience...
...found 1696 targets...
...updating 16 targets...
...skipped <pbin.v2\libs\date_time\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>gregorian\greg_month.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\date_time\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>gregorian\greg_weekday.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\date_time\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>gregorian\date_generators.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\date_time\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_date_time-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\date_time\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>gregorian\greg_month.obj...
...skipped <pstage\vs2017-x64\lib>libboost_date_time-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\date_time\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_date_time-vc141-mt-s-1_67.lib...
...skipped <pbin.v2\libs\system\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>error_code.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\system\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_system-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\system\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>error_code.obj...
...skipped <pstage\vs2017-x64\lib>libboost_system-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\system\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_system-vc141-mt-s-1_67.lib...
...skipped <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>codecvt_error_category.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>operations.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>path.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>path_traits.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>portability.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>unique_path.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>utf8_codecvt_facet.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>windows_file_codecvt.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_filesystem-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>codecvt_error_category.obj...
...skipped <pstage\vs2017-x64\lib>libboost_filesystem-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\filesystem\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_filesystem-vc141-mt-s-1_67.lib...
...skipped <pbin.v2\libs\iostreams\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>file_descriptor.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\iostreams\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>mapped_file.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\iostreams\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_iostreams-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\iostreams\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>file_descriptor.obj...
...skipped <pstage\vs2017-x64\lib>libboost_iostreams-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\iostreams\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_iostreams-vc141-mt-s-1_67.lib...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>cmdline.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>config_file.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>options_description.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>parsers.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>variables_map.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>value_semantic.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>positional_options.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>utf8_codecvt_facet.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>convert.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>winmain.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>split.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_program_options-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>cmdline.obj...
...skipped <pstage\vs2017-x64\lib>libboost_program_options-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\program_options\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_program_options-vc141-mt-s-1_67.lib...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>c_regex_traits.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>cpp_regex_traits.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>cregex.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>fileiter.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>icu.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>instances.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>posix_api.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>regex.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>regex_debug.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>regex_raw_buffer.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>regex_traits_defaults.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>static_mutex.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>w32_regex_traits.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>wc_regex_traits.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>wide_posix_api.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>winstances.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>usinstances.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_regex-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>c_regex_traits.obj...
...skipped <pstage\vs2017-x64\lib>libboost_regex-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\regex\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_regex-vc141-mt-s-1_67.lib...
...skipped <pbin.v2\libs\chrono\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>chrono.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\chrono\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>thread_clock.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\chrono\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>process_cpu_clocks.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\chrono\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_chrono-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\chrono\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>chrono.obj...
...skipped <pstage\vs2017-x64\lib>libboost_chrono-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\chrono\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threading-multi>libboost_chrono-vc141-mt-s-1_67.lib...
...skipped <pbin.v2\libs\thread\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threadapi-win32\threading-multi>win32\thread.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\thread\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threadapi-win32\threading-multi>win32\tss_dll.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\thread\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threadapi-win32\threading-multi>win32\tss_pe.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\thread\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threadapi-win32\threading-multi>win32\thread_primitives.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\thread\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threadapi-win32\threading-multi>future.obj for lack of <pbin.v2\standalone\msvc\msvc-14.1\address-model-64>msvc-setup.nup...
...skipped <pbin.v2\libs\thread\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threadapi-win32\threading-multi>libboost_thread-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\thread\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threadapi-win32\threading-multi>win32\thread.obj...
...skipped <pstage\vs2017-x64\lib>libboost_thread-vc141-mt-s-1_67.lib for lack of <pbin.v2\libs\thread\build\msvc-14.1\release\address-model-64\link-static\runtime-link-static\threadapi-win32\threading-multi>libboost_thread-vc141-mt-s-1_67.lib...
...skipped 66 targets...
An error occurred
Build ended at 7:40:17.03. Time elapsed 0:00:05.56.
-4
View File
@@ -62,10 +62,6 @@ pushd ..\%BUILD_DIR%
set BOOST_VERSION=1.67.0
set BOOST_VER=%BOOST_VERSION:.=_%
echo %OCC_INCLUDE_DIR%
set BOOST_ROOT=%DEPS_DIR%\boost_%BOOST_VER%
set BOOST_LIBRARYDIR=%BOOST_ROOT%\stage\vs%VS_VER%-%VS_PLATFORM%\lib
if not defined OCC_INCLUDE_DIR set OCC_INCLUDE_DIR=%INSTALL_DIR%\oce\include\oce