Skip to content

Commit 0ce8e88

Browse files
authored
Merge pull request #35 from howetuft/update
Bug fixing (exr crash) + llvm-openmp for MacOS (to restore 14.x compatibility)
2 parents 7b615da + 46cdbb3 commit 0ce8e88

8 files changed

Lines changed: 57 additions & 18 deletions

File tree

conan-local-recipes/recipes/imguifiledialog/all/conanfile.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ class ImguiFileDialogConan(ConanFile):
2727
"fPIC": True,
2828
"use_std_filesystem": True,
2929
}
30-
requires = "imgui/[1.92.5]" # Must be same version as in main conanfile.py
30+
requires = "imgui/[>=1.0 <2.0]" # Must be same version as in main conanfile.py
3131

3232

3333
def config_options(self):

conan-profiles/conan-profile-Linux-X64

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ tools.build:cflags+=["-fsanitize=address", "-fno-omit-frame-pointer"]
2929
tools.build:cxxflags+=["-fsanitize=address", "-fno-omit-frame-pointer"]
3030

3131
tools.build:sharedlinkflags=["-fsanitize=address"]
32-
tools.cmake.cmaketoolchain:extra_variables={ 'COMPILER_RT_BUILD_SHARED_ASAN':'ON' }
32+
tools.cmake.cmaketoolchain:extra_variables={ 'COMPILER_RT_BUILD_SHARED_ASAN':'ON', 'CMAKE_BUILD_PARALLEL_LEVEL':'' }
3333
openvdb/*:tools.cmake.cmaketoolchain:extra_variables={ 'COMPILER_RT_BUILD_SHARED_ASAN':'ON', 'USE_CCACHE':'OFF' }
3434

3535
{% else -%}

conan-profiles/conan-profile-common

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ build_type={{ os.getenv("DEPS_BUILD_TYPE", "Release") }}
33

44
# For tools, we'll always use release version
55
# (directly downloaded from cache)
6-
b2/*:build_type=Release
76
cmake/*:build_type=Release
87
meson/*:build_type=Release
98
pkgconf/*:build_type=Release
@@ -13,6 +12,8 @@ bison/*:build_type=Release
1312
flex/*:build_type=Release
1413
winflexbison/*:build_type=Release
1514
doxygen/*:build_type=Release
15+
m4/*:build_type=Release
16+
b2/*:build_type=Release
1617

1718
[conf]
1819
tools.system.package_manager:mode=install
@@ -29,6 +30,7 @@ yasm/*
2930
[options]
3031
oidn/*:shared=True
3132
opensubdiv/*:with_tbb=True
33+
opensubdiv/*:with_opengl=False
3234
spdlog/*:header_only=True
3335
spdlog/*:use_std_fmt=True
3436
nvrtc/*:shared=True

conanfile.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,22 +17,22 @@
1717
EMBREE_VERSION = "4.4.0"
1818
FMT_VERSION = "12.1.0"
1919
GLFW_VERSION = "3.4"
20-
IMATH_VERSION = "3.2.1"
21-
IMGUI_VERSION = "1.92.5"
20+
IMATH_VERSION = "3.2.2"
21+
IMGUI_VERSION = "1.92.7"
2222
IMGUIFILEDIALOG_VERSION = "0.6.7"
2323
LIBDEFLATE_VERSION = "1.25"
2424
LIBTIFF_VERSION = "4.7.1"
2525
LLVM_OPENMP_VERSION = "20.1.6"
26-
MINIZIP_VERSION = "4.0.7"
26+
MINIZIP_VERSION = "4.1.0"
2727
NINJA_VERSION = "1.13.2"
2828
NLOHMANN_JSON_VERSION = "3.12.0"
2929
NVRTC_VERSION = "12.8.93"
3030
OCIO_VERSION = "2.5.1"
31-
OIIO_VERSION = "3.1.10.0"
31+
OIIO_VERSION = "3.1.12.0"
3232
OIDN_VERSION = "2.3.3"
3333
ONETBB_VERSION = "2022.3.0"
34-
OPENEXR_VERSION = "3.4.4"
35-
OPENJPH_VERSION = "0.25.3"
34+
OPENEXR_VERSION = "3.4.10"
35+
OPENJPH_VERSION = "0.27.0"
3636
OPENSUBDIV_VERSION = "3.7.0"
3737
OPENVDB_VERSION = "12.1.1"
3838
PYBIND11_VERSION = "3.0.1"
@@ -163,6 +163,8 @@ def build_requirements(self):
163163
self.tool_requires("meson/[*]")
164164
self.tool_requires("pkgconf/[*]")
165165
self.tool_requires("yasm/[*]")
166+
self.tool_requires("m4/[*]")
167+
self.tool_requires("b2/[*]")
166168

167169
def generate(self):
168170
tc = CMakeToolchain(self)

run-conan.sh

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ CONAN_PROFILE=conan-profile-${RUNNER_OS}-${RUNNER_ARCH}
2121
# gradually happen and finally break the build.
2222
# To the contrary, you may need to upgrade this commit when you want to upgrade
2323
# a given dependency.
24-
CONAN_COMMIT=d60a35f00bf85fd1abf2df0877878f54404e3df0
24+
CONAN_COMMIT=500fc1507de61f99c2fc3e2711a2636e9a949feb
2525

2626
# Debug utility (install a specific package)
2727
function debug() {
@@ -33,7 +33,7 @@ function debug() {
3333
--build="*"
3434
}
3535

36-
# Script starts here
36+
# THIS SCRIPT STARTS HERE
3737

3838
# 0. Initialize: set globals and install conan and ninja
3939
set -exo pipefail
@@ -77,9 +77,9 @@ if [ ! -d "conan-center-index" ]; then
7777
#git remote add "upstream" git@github.com:conan-io/conan-center-index.git
7878
#git fetch upstream pull/29758/head:giflib
7979
#git cherry-pick 0e95d1b1e8380d72df48c7c48efe14f39239826a
80-
git config --global user.name "LuxCoreDeps"
81-
git config --global user.email "luxcoredeps@luxcore.com"
82-
curl -L https://github.com/conan-io/conan-center-index/pull/29758.patch | git am
80+
#git config --global user.name "LuxCoreDeps"
81+
#git config --global user.email "luxcoredeps@luxcore.com"
82+
#curl -L https://github.com/conan-io/conan-center-index/pull/29758.patch | git am
8383

8484
cd ..
8585
fi
@@ -120,7 +120,9 @@ echo "::group::CIBW_BEFORE_BUILD: Install tool requirements"
120120
# We specify conancenter as a remote, thus allowing to use precompiled
121121
# binaries.
122122
# For pkgconf and meson, we have to manually target the right version
123-
build_deps=(b2/[*] cmake/[*] m4/[*] pkgconf/2.1.0 meson/1.2.2 yasm/[*])
123+
# b2 is required to be built from source (therefore not in the below list, for
124+
# libc compatibility
125+
build_deps=(cmake/[*] m4/[*] pkgconf/2.1.0 meson/1.2.2 yasm/[*])
124126
if [[ $RUNNER_OS == "Windows" ]]; then
125127
build_deps+=(msys2/[*])
126128
fi
@@ -129,8 +131,7 @@ for d in "${build_deps[@]}"; do
129131
--tool-requires=${d} \
130132
--profile:all=$CONAN_PROFILE \
131133
--build=missing \
132-
--remote=conancenter \
133-
--build=b2/*
134+
--remote=conancenter
134135
done
135136
echo "::endgroup::"
136137

@@ -175,7 +176,11 @@ echo "::endgroup::"
175176

176177
# 8. Save result
177178
echo "::group::Saving dependencies in ${cache_dir}"
178-
conan cache clean "*" # Clean non essential files
179+
if [[ -n "$CI" ]]; then
180+
# Clean non essential files, but only for CI, as we consider that non-CI
181+
# builds are debugging builds and should be provided maximal data
182+
conan cache clean "*"
183+
fi
179184
conan remove -c -vverbose "*/*#!latest" # Keep only latest version of each package
180185
# Save only dependencies of current target (otherwise cache gets bloated)
181186
conan graph info \

utils/clean-conan-files.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,13 @@ echo "Cleaning Conan intermediary files"
44

55
files=(
66
"conanbuildenv-release-x86_64.sh" \
7+
"conanbuildenv-debug-x86_64.sh" \
78
"conanbuild.sh" \
89
"conanrunenv-release-x86_64.sh" \
10+
"conanrunenv-debug-x86_64.sh" \
911
"conanrun.sh" \
1012
"deactivate_conanbuildenv-release-x86_64.sh" \
13+
"deactivate_conanbuildenv-debug-x86_64.sh" \
1114
"deactivate_conanbuild.sh" \
1215
"deactivate_conanrun.sh" \
1316
"graph.json" \

utils/plain-local-build.sh

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
#!/bin/bash
2+
3+
# Tip: to clean before running, you can issue a `conan remove "*" -c`
4+
# Warning: this command will totally erase your cache
5+
# You may also want to clean /tmp/conan-cache, to avoid reinjection of previous
6+
# builds in the current one
7+
8+
# Specialized for Linux, but could be changed
9+
export RUNNER_OS=Linux
10+
export RUNNER_ARCH=X64
11+
12+
13+
export LUXDEPS_VERSION=test
14+
export GCC_VERSION=14 # Note: even for gcc > 14
15+
export WORKSPACE=.
16+
export CXX_VERSION=20
17+
export CMAKE_POLICY_VERSION_MINIMUM=3.25
18+
export DEPS_BUILD_TYPE=Debug # Or Release/RelWithDebInfo/MinSizeRel, as needed
19+
export cache_dir
20+
21+
# Run conan
22+
export CMAKE_BUILD_PARALLEL_LEVEL=
23+
source run-conan.sh 2>&1 | tee /tmp/run-conan.log
24+
25+
# Zip file
26+
cd /tmp/conan-cache
27+
zip -1 luxcoredeps.zip conan-cache-save.tgz build-info.json

0 commit comments

Comments
 (0)