Skip to content

Commit d78b16b

Browse files
Merge branch 'master' of github.com:Devsh-Graphics-Programming/Nabla into examples_rewrite
2 parents ffb5d51 + 1188f14 commit d78b16b

File tree

7 files changed

+216
-247
lines changed

7 files changed

+216
-247
lines changed

CMakePresets.json

Lines changed: 75 additions & 74 deletions
Original file line numberDiff line numberDiff line change
@@ -5,41 +5,42 @@
55
"minor": 26,
66
"patch": 0
77
},
8-
8+
99
"configurePresets": [
1010
{
1111
"name": "ci-configure-dev",
12-
"hidden": true,
12+
"hidden": true,
1313
"description": "main CI configure preset for inheritance",
1414
"cacheVariables": {
15-
"NBL_CI_MODE": "ON",
16-
"NBL_CI_GIT_SUBMODULES_SHALLOW": "ON",
15+
"NBL_CI_MODE": "ON",
16+
"NBL_CI_GIT_SUBMODULES_SHALLOW": "ON",
1717
"NBL_UPDATE_GIT_SUBMODULE": "ON",
18-
"NBL_COMPILE_WITH_CUDA": "OFF",
19-
"NBL_BUILD_OPTIX": "OFF",
20-
"NBL_BUILD_MITSUBA_LOADER": "OFF",
21-
"NBL_BUILD_RADEON_RAYS": "OFF",
22-
"NBL_RUN_TESTS": "ON",
23-
"NBL_CPACK_CI": "ON",
24-
"_NBL_MEMORY_CONSUMPTION_CHECK_SKIP_": "ON"
18+
"NBL_COMPILE_WITH_CUDA": "OFF",
19+
"NBL_BUILD_OPTIX": "OFF",
20+
"NBL_BUILD_MITSUBA_LOADER": "OFF",
21+
"NBL_BUILD_RADEON_RAYS": "OFF",
22+
"_NBL_COMPILE_WITH_OPEN_EXR_": "ON",
23+
"NBL_RUN_TESTS": "ON",
24+
"NBL_CPACK_CI": "ON",
25+
"_NBL_MEMORY_CONSUMPTION_CHECK_SKIP_": "ON"
2526
}
2627
},
27-
{
28+
{
2829
"name": "ci-configure-static-dev",
29-
"hidden": true,
30+
"hidden": true,
3031
"description": "CI preset for static-configure inheritance",
3132
"inherits": "ci-configure-dev",
32-
"binaryDir": "${sourceDir}/build_static"
33+
"binaryDir": "${sourceDir}/build_static"
3334
},
34-
{
35+
{
3536
"name": "ci-configure-dynamic-dev",
36-
"hidden": true,
37+
"hidden": true,
3738
"description": "CI preset for dynamic-configure inheritance",
3839
"inherits": "ci-configure-dev",
39-
"binaryDir": "${sourceDir}/build_dynamic",
40-
"cacheVariables": {
40+
"binaryDir": "${sourceDir}/build_dynamic",
41+
"cacheVariables": {
4142
"NBL_STATIC_BUILD": "OFF",
42-
"NBL_DYNAMIC_MSVC_RUNTIME": "ON"
43+
"NBL_DYNAMIC_MSVC_RUNTIME": "ON"
4344
}
4445
},
4546
{
@@ -49,7 +50,7 @@
4950
"description": "CI static configure using Ninja Multi-Config generator, any OS as host",
5051
"generator": "Ninja Multi-Config"
5152
},
52-
{
53+
{
5354
"name": "ci-configure-dynamic-ninja-multi",
5455
"inherits": "ci-configure-dynamic-dev",
5556
"displayName": "CI configure-dynamic Ninja Multi-Config",
@@ -61,21 +62,21 @@
6162
"inherits": "ci-configure-static-dev",
6263
"displayName": "CI configure-static Visual Studio MSVC windows-host-only",
6364
"description": "CI static configure using Visual Studio generator and MSVC toolset, windows as host only",
64-
"generator": "Visual Studio 17 2022",
65-
"toolset": "v143",
65+
"generator": "Visual Studio 17 2022",
66+
"toolset": "v143",
6667
"condition": {
6768
"type": "equals",
6869
"lhs": "${hostSystemName}",
6970
"rhs": "Windows"
7071
}
7172
},
72-
{
73+
{
7374
"name": "ci-configure-dynamic-msvc",
7475
"inherits": "ci-configure-dynamic-dev",
7576
"displayName": "CI configure-dynamic Visual Studio MSVC windows-host-only",
7677
"description": "CI dynamic configure using Visual Studio generator and MSVC toolset, windows as host only",
77-
"toolset": "v143",
78-
"generator": "Visual Studio 17 2022",
78+
"toolset": "v143",
79+
"generator": "Visual Studio 17 2022",
7980
"condition": {
8081
"type": "equals",
8182
"lhs": "${hostSystemName}",
@@ -87,97 +88,97 @@
8788
{
8889
"name": "ci-build-dev",
8990
"configurePreset": "ci-configure-dev",
90-
"hidden": true,
91+
"hidden": true,
9192
"description": "main CI build preset for inheritance",
92-
"targets": [
93-
"Nabla"
94-
]
93+
"targets": [
94+
"Nabla"
95+
]
9596
},
96-
{
97+
{
9798
"name": "ci-build-static-dev",
9899
"configurePreset": "ci-configure-static-dev",
99-
"hidden": true,
100-
"description": "CI preset for static build inheritance",
100+
"hidden": true,
101+
"description": "CI preset for static build inheritance",
101102
"inherits": "ci-build-dev"
102103
},
103-
{
104+
{
104105
"name": "ci-build-dynamic-dev",
105106
"configurePreset": "ci-configure-dynamic-dev",
106-
"hidden": true,
107-
"description": "CI preset for dynamic-build inheritance",
107+
"hidden": true,
108+
"description": "CI preset for dynamic-build inheritance",
108109
"inherits": "ci-build-dev"
109110
},
110-
{
111+
{
111112
"name": "ci-build-static-ninja-multi",
112113
"configurePreset": "ci-configure-static-ninja-multi",
113-
"displayName": "CI build-static Ninja Multi-Config",
114-
"description": "CI static build using Ninja Multi-Config generator",
114+
"displayName": "CI build-static Ninja Multi-Config",
115+
"description": "CI static build using Ninja Multi-Config generator",
115116
"inherits": "ci-build-static-dev"
116117
},
117-
{
118+
{
118119
"name": "ci-build-dynamic-ninja-multi",
119120
"configurePreset": "ci-configure-dynamic-ninja-multi",
120-
"displayName": "CI build-dynamic Ninja Multi-Config",
121-
"description": "CI dynamic build using Ninja Multi-Config generator",
121+
"displayName": "CI build-dynamic Ninja Multi-Config",
122+
"description": "CI dynamic build using Ninja Multi-Config generator",
122123
"inherits": "ci-build-dynamic-dev"
123124
},
124-
{
125+
{
125126
"name": "ci-build-static-msvc",
126127
"configurePreset": "ci-configure-static-msvc",
127-
"displayName": "CI build-dynamic Visual Studio MSVC windows-host-only",
128-
"description": "CI dynamic build using Visual Studio generator and MSVC toolset, windows as host only",
128+
"displayName": "CI build-dynamic Visual Studio MSVC windows-host-only",
129+
"description": "CI dynamic build using Visual Studio generator and MSVC toolset, windows as host only",
129130
"inherits": "ci-build-static-dev"
130131
},
131-
{
132+
{
132133
"name": "ci-build-dynamic-msvc",
133134
"configurePreset": "ci-configure-dynamic-msvc",
134-
"displayName": "CI build-dynamic Visual Studio MSVC windows-host-only",
135-
"description": "CI dynamic build using Visual Studio generator and MSVC toolset, windows as host only",
135+
"displayName": "CI build-dynamic Visual Studio MSVC windows-host-only",
136+
"description": "CI dynamic build using Visual Studio generator and MSVC toolset, windows as host only",
136137
"inherits": "ci-build-dynamic-dev"
137138
}
138139
],
139140
"packagePresets": [
140141
{
141142
"name": "ci-package-dev",
142-
"hidden": true
143+
"hidden": true
143144
},
144-
{
145+
{
145146
"name": "ci-package-static-dev",
146-
"hidden": true,
147-
"inherits": "ci-package-dev"
147+
"hidden": true,
148+
"inherits": "ci-package-dev"
148149
},
149-
{
150+
{
150151
"name": "ci-package-dynamic-dev",
151-
"hidden": true,
152-
"inherits": "ci-package-dev"
152+
"hidden": true,
153+
"inherits": "ci-package-dev"
153154
},
154-
{
155+
{
155156
"name": "ci-package-static-ninja-multi",
156-
"inherits": "ci-package-static-dev",
157-
"configurePreset": "ci-configure-static-ninja-multi",
158-
"displayName": "CI package-static Ninja Multi-Config",
159-
"description": "CI static package using Ninja Multi-Config generator"
157+
"inherits": "ci-package-static-dev",
158+
"configurePreset": "ci-configure-static-ninja-multi",
159+
"displayName": "CI package-static Ninja Multi-Config",
160+
"description": "CI static package using Ninja Multi-Config generator"
160161
},
161-
{
162+
{
162163
"name": "ci-package-dynamic-ninja-multi",
163-
"inherits": "ci-package-dynamic-dev",
164-
"configurePreset": "ci-configure-dynamic-ninja-multi",
165-
"displayName": "CI package-dynamic Ninja Multi-Config",
166-
"description": "CI dynamic package using Ninja Multi-Config generator"
164+
"inherits": "ci-package-dynamic-dev",
165+
"configurePreset": "ci-configure-dynamic-ninja-multi",
166+
"displayName": "CI package-dynamic Ninja Multi-Config",
167+
"description": "CI dynamic package using Ninja Multi-Config generator"
167168
},
168-
{
169+
{
169170
"name": "ci-package-static-msvc",
170-
"inherits": "ci-package-static-dev",
171-
"configurePreset": "ci-configure-static-msvc",
172-
"displayName": "CI package-static Visual Studio MSVC windows-host-only",
173-
"description": "CI static package using Visual Studio generator and MSVC toolset, windows as host only"
171+
"inherits": "ci-package-static-dev",
172+
"configurePreset": "ci-configure-static-msvc",
173+
"displayName": "CI package-static Visual Studio MSVC windows-host-only",
174+
"description": "CI static package using Visual Studio generator and MSVC toolset, windows as host only"
174175
},
175-
{
176+
{
176177
"name": "ci-package-dynamic-msvc",
177-
"inherits": "ci-package-dynamic-dev",
178-
"configurePreset": "ci-configure-dynamic-msvc",
179-
"displayName": "CI package-dynamic Visual Studio MSVC windows-host-only",
180-
"description": "CI dynamic package using Visual Studio generator and MSVC toolset, windows as host only"
178+
"inherits": "ci-package-dynamic-dev",
179+
"configurePreset": "ci-configure-dynamic-msvc",
180+
"displayName": "CI package-dynamic Visual Studio MSVC windows-host-only",
181+
"description": "CI dynamic package using Visual Studio generator and MSVC toolset, windows as host only"
181182
}
182183
]
183184
}

src/nbl/CMakeLists.txt

Lines changed: 28 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -496,29 +496,36 @@ endif()
496496
target_include_directories(Nabla PUBLIC ${THIRD_PARTY_SOURCE_DIR}/libpng)
497497
# OpenEXR
498498
if (_NBL_COMPILE_WITH_OPEN_EXR_)
499-
add_dependencies(Nabla OpenEXR)
500-
if(NBL_STATIC_BUILD)
501-
target_link_libraries(Nabla INTERFACE OpenEXR)
502-
else()
503-
target_link_libraries(Nabla PRIVATE OpenEXR)
504-
endif()
505-
506-
target_include_directories(
507-
Nabla PUBLIC $<TARGET_PROPERTY:OpenEXR,INCLUDE_DIRECTORIES>
508-
)
499+
add_dependencies(Nabla OpenEXR)
500+
if(NBL_STATIC_BUILD)
501+
target_link_libraries(Nabla INTERFACE OpenEXR)
502+
else()
503+
target_link_libraries(Nabla PRIVATE OpenEXR)
504+
endif()
505+
506+
target_include_directories(
507+
Nabla PUBLIC $<TARGET_PROPERTY:OpenEXR,INCLUDE_DIRECTORIES>
508+
)
509+
endif()
510+
511+
add_dependencies(Nabla OpenEXRCore OpenEXRUtil)
512+
if(NBL_STATIC_BUILD)
513+
target_link_libraries(Nabla INTERFACE
514+
OpenEXRCore
515+
OpenEXRUtil
516+
)
509517
else()
510-
add_dependencies(Nabla OpenEXRCore)
511-
if(NBL_STATIC_BUILD)
512-
target_link_libraries(Nabla INTERFACE OpenEXRCore)
513-
else()
514-
target_link_libraries(Nabla PRIVATE OpenEXRCore)
515-
endif()
516-
517-
target_include_directories(
518-
Nabla PUBLIC $<TARGET_PROPERTY:OpenEXRCore,INCLUDE_DIRECTORIES> # for OpenEXR's Half-only dependency
519-
)
518+
target_link_libraries(Nabla PRIVATE
519+
OpenEXRCore
520+
OpenEXRUtil
521+
)
520522
endif()
521523

524+
target_include_directories(
525+
Nabla PUBLIC $<TARGET_PROPERTY:OpenEXRCore,INCLUDE_DIRECTORIES> # for OpenEXR's core headers
526+
Nabla PUBLIC $<TARGET_PROPERTY:OpenEXRUtil,INCLUDE_DIRECTORIES> # for OpenEXR's util headers
527+
)
528+
522529
# GLI
523530
if(_NBL_COMPILE_WITH_GLI_)
524531
add_dependencies(Nabla gli)
@@ -706,6 +713,7 @@ if(NBL_STATIC_BUILD)
706713
nbl_install_lib(OpenEXR)
707714
else()
708715
nbl_install_lib(OpenEXRCore)
716+
nbl_install_lib(OpenEXRUtil)
709717
endif()
710718
nbl_install_lib(png_static)
711719

0 commit comments

Comments
 (0)