Skip to content

Commit 3ff5d5d

Browse files
authored
build: Remove remaining traces of boost (#1808)
Replace the last few uses of boost with robin-map (which is already a dependency for OIIO, although it is new for OSL itself) and functions in OIIO. Signed-off-by: Chris Kulla <ckulla@gmail.com>
1 parent eb9b087 commit 3ff5d5d

30 files changed

Lines changed: 155 additions & 375 deletions

.github/workflows/analysis.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ jobs:
3939
fail-fast: false
4040
matrix:
4141
include:
42-
- desc: sonar gcc9/C++14 llvm13 py3.9 boost1.76 exr3.1 oiio2.3 avx2
42+
- desc: sonar gcc9/C++14 llvm13 py3.9 exr3.1 oiio2.3 avx2
4343
nametag: static-analysis-sonar
4444
os: ubuntu-latest
4545
vfxyear: 2022

.github/workflows/ci.yml

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ jobs:
3838
fail-fast: false
3939
matrix:
4040
include:
41-
- desc: gcc6/C++14 llvm9 py2.7 boost1.66 exr2.4 oiio2.3 sse2
41+
- desc: gcc6/C++14 llvm9 py2.7 exr2.4 oiio2.3 sse2
4242
nametag: linux-vfx2020
4343
runner: ubuntu-latest
4444
container: aswftesting/ci-osl:2019-clang9
@@ -49,7 +49,7 @@ jobs:
4949
python_ver: 2.7
5050
pybind11_ver: v2.4.2
5151
setenvs: export CMAKE_VERSION=3.15.5
52-
- desc: clang9/C++14 llvm9 oiio-release boost1.66 avx2 exr2.4 py2.7
52+
- desc: clang9/C++14 llvm9 oiio-release avx2 exr2.4 py2.7
5353
nametag: linux-clang9-llvm9
5454
runner: ubuntu-20.04
5555
container: aswftesting/ci-osl:2019-clang9
@@ -63,7 +63,7 @@ jobs:
6363
# pybind11_ver: v2.9.0
6464
simd: avx
6565
setenvs: export CMAKE_VERSION=3.15.5
66-
- desc: gcc6/C++14 llvm10 py3.7 boost1.70 exr2.4 oiio2.2 sse4
66+
- desc: gcc6/C++14 llvm10 py3.7 exr2.4 oiio2.2 sse4
6767
nametag: linux-vfx2020
6868
runner: ubuntu-latest
6969
container: aswftesting/ci-osl:2020
@@ -74,7 +74,7 @@ jobs:
7474
pybind11_ver: v2.5.0
7575
simd: sse4.2
7676
setenvs: export CONAN_LLVM_VERSION=10.0.1
77-
- desc: gcc9/C++17 llvm11 py3.7 boost1.73 exr2.5 oiio2.3 avx2 batch-b8avx2
77+
- desc: gcc9/C++17 llvm11 py3.7 exr2.5 oiio2.3 avx2 batch-b8avx2
7878
nametag: linux-vfx2021
7979
runner: ubuntu-latest
8080
container: aswftesting/ci-osl:2021-clang11
@@ -85,7 +85,7 @@ jobs:
8585
pybind11_ver: v2.7.0
8686
simd: avx2,f16c
8787
batched: b8_AVX2_noFMA
88-
- desc: gcc9/C++17 llvm13 py3.9 boost1.76 exr3.1 oiio-rel avx2
88+
- desc: gcc9/C++17 llvm13 py3.9 exr3.1 oiio-rel avx2
8989
nametag: linux-vfx2022
9090
runner: ubuntu-latest
9191
container: aswftesting/ci-osl:2022-clang13
@@ -96,7 +96,7 @@ jobs:
9696
pybind11_ver: v2.9.0
9797
simd: avx2,f16c
9898
batched: b8_AVX2
99-
- desc: clang12/C++17 llvm12 oiio-master boost1.73 exr3.1 py3.9 avx2 batch-avx512
99+
- desc: clang12/C++17 llvm12 oiio-master exr3.1 py3.9 avx2 batch-avx512
100100
nametag: linux-clang12-llvm12-batch
101101
runner: ubuntu-latest
102102
container: aswftesting/ci-osl:2022-clang12
@@ -108,7 +108,7 @@ jobs:
108108
simd: avx2,f16c
109109
batched: b8_AVX2,b8_AVX512,b16_AVX512
110110
setenvs: USE_OPENVDB=0
111-
- desc: icc/C++17 llvm14 py3.9 boost1.76 exr3.1 oiio-master avx2
111+
- desc: icc/C++17 llvm14 py3.9 exr3.1 oiio-master avx2
112112
nametag: linux-icc
113113
runner: ubuntu-latest
114114
container: aswftesting/ci-osl:2022-clang14
@@ -132,7 +132,7 @@ jobs:
132132
setenvs: export OSL_CMAKE_FLAGS="-DSTOP_ON_WARNING=OFF -DEXTRA_CPP_ARGS=-fp-model=consistent"
133133
OPENIMAGEIO_CMAKE_FLAGS=-DBUILD_FMT_VERSION=7.1.3
134134
USE_OPENVDB=0
135-
- desc: icx/C++17 llvm14 py3.9 boost1.76 exr3.1 oiio2.3 avx2
135+
- desc: icx/C++17 llvm14 py3.9 exr3.1 oiio2.3 avx2
136136
nametag: linux-icx
137137
runner: ubuntu-latest
138138
container: aswftesting/ci-osl:2022-clang14
@@ -147,7 +147,7 @@ jobs:
147147
simd: avx2,f16c
148148
batched: b8_AVX2_noFMA
149149
setenvs: export OSL_CMAKE_FLAGS="-DSTOP_ON_WARNING=OFF" USE_OPENVDB=0
150-
- desc: gcc11/C++17 llvm15 py3.10 boost1.80 exr3.1 oiio-rel avx2
150+
- desc: gcc11/C++17 llvm15 py3.10 exr3.1 oiio-rel avx2
151151
nametag: linux-vfx2023
152152
runner: ubuntu-latest
153153
container: aswftesting/ci-osl:2023-clang15
@@ -158,7 +158,7 @@ jobs:
158158
pybind11_ver: v2.9.0
159159
simd: avx2,f16c
160160
batched: b8_AVX2
161-
- desc: GPU Cuda11 gcc11/C++17 llvm15 py3.10 boost1.80 exr3.1 OIIO-master avx2
161+
- desc: GPU Cuda11 gcc11/C++17 llvm15 py3.10 exr3.1 OIIO-master avx2
162162
nametag: linux-optix7-2023
163163
runner: ubuntu-latest
164164
container: aswftesting/ci-osl:2023-clang15
@@ -171,7 +171,7 @@ jobs:
171171
skip_tests: 1
172172
setenvs: export OSL_CMAKE_FLAGS="-DOSL_USE_OPTIX=1" OPTIX_VERSION=7.0
173173
OPENIMAGEIO_CMAKE_FLAGS=-DBUILD_FMT_VERSION=9.1.0
174-
- desc: oldest everything gcc6/C++14 llvm9 py2.7 boost1.66 oiio2.3 no-simd exr2.4
174+
- desc: oldest everything gcc6/C++14 llvm9 py2.7 oiio2.3 no-simd exr2.4
175175
nametag: linux-oldest
176176
runner: ubuntu-latest
177177
container: aswftesting/ci-osl:2019-clang9
@@ -342,7 +342,7 @@ jobs:
342342
fail-fast: false
343343
matrix:
344344
include:
345-
- desc: Debug gcc7/C++14 llvm9 py2.7 oiio2.3 exr2.4 sse4 boost1.65 exr2.4
345+
- desc: Debug gcc7/C++14 llvm9 py2.7 oiio2.3 exr2.4 sse4 exr2.4
346346
nametag: linux-debug-gcc7-llvm9
347347
runner: ubuntu-20.04
348348
cxx_compiler: g++-7
@@ -356,7 +356,7 @@ jobs:
356356
LLVM_VERSION=9.0.0
357357
PUGIXML_VERSION=v1.9
358358
CTEST_TEST_TIMEOUT=240
359-
- desc: gcc10/C++17 llvm10 oiio-release boost1.65 exr2.5 avx2
359+
- desc: gcc10/C++17 llvm10 oiio-release exr2.5 avx2
360360
nametag: linux-2021ish-gcc10-llvm10
361361
runner: ubuntu-20.04
362362
cxx_compiler: g++-10
@@ -370,7 +370,7 @@ jobs:
370370
setenvs: export LLVM_VERSION=10.0.0
371371
OPENIMAGEIO_CMAKE_FLAGS="-DBUILD_FMT_VERSION=7.0.1"
372372
PUGIXML_VERSION=v1.10
373-
- desc: latest releases gcc11/C++17 llvm16 boost1.71 exr3.2 py3.9 avx2 batch-b16avx512
373+
- desc: latest releases gcc11/C++17 llvm16 exr3.2 py3.9 avx2 batch-b16avx512
374374
nametag: linux-latest-releases
375375
runner: ubuntu-22.04
376376
cxx_compiler: g++-11
@@ -386,7 +386,7 @@ jobs:
386386
LLVM_DISTRO_NAME=ubuntu-22.04
387387
OPENCOLORIO_VERSION=v2.2.0
388388
PUGIXML_VERSION=v1.13
389-
- desc: bleeding edge gcc12/C++17 llvm17 oiio/ocio/exr/pybind-master boost1.71 py3.10 avx2 batch-b16avx512
389+
- desc: bleeding edge gcc12/C++17 llvm17 oiio/ocio/exr/pybind-master py3.10 avx2 batch-b16avx512
390390
nametag: linux-bleeding-edge
391391
runner: ubuntu-22.04
392392
cxx_compiler: g++-12
@@ -402,7 +402,7 @@ jobs:
402402
LLVM_DISTRO_NAME=ubuntu-22.04
403403
OPENCOLORIO_VERSION=main
404404
PUGIXML_VERSION=master
405-
- desc: clang14/C++17 llvm14 boost1.71 exr3.1 py3.8 avx2 batch-b16avx512
405+
- desc: clang14/C++17 llvm14 exr3.1 py3.8 avx2 batch-b16avx512
406406
nametag: linux-latest-releases-clang
407407
runner: ubuntu-20.04
408408
cxx_compiler: clang++

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,7 @@ Prefer C++11 `std` rather than Boost or other third party libraries, where
263263
both can do the same task.
264264

265265
If you see a third party library already used as a dependency (such as OIIO,
266-
Boost, Imath, or LLVM), feel free to any of its public features in OSL
266+
Imath, or LLVM), feel free to any of its public features in OSL
267267
internals (provided those features are present in the minimum version of
268268
that library that we support).
269269

INSTALL.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,6 @@ NEW or CHANGED dependencies since the last major release are **bold**.
5555
* [Cuda](https://developer.nvidia.com/cuda-downloads) 9.0 or higher. It is
5656
recommended that you use 11.0 or higher.
5757

58-
* [Boost](https://www.boost.org) 1.55 or newer (tested through boost 1.83)
5958
* [Ilmbase or Imath](https://github.com/AcademySoftwareFoundation/Imath) 2.4
6059
or newer (recommended: 3.1 or higher; tested through 3.2)
6160
NOTE: It is likely that 1.13 is the last release that will support
@@ -100,7 +99,7 @@ Here are the steps to check out, build, and test the OSL distribution:
10099

101100
Note: OSL uses 'CMake' for its cross-platform build system. But for
102101
simplicity, we have made a "make wrapper" around it, so that by just
103-
typing 'make' everything will build. Type 'make help' for other
102+
typing 'make' everything will build. Type 'make help' for other
104103
options, and note that 'make nuke' will blow everything away for the
105104
freshest possible compile.
106105

@@ -130,7 +129,7 @@ Here are the steps to check out, build, and test the OSL distribution:
130129
test suite with:
131130

132131
make test
133-
132+
134133
Troubleshooting
135134
----------------
136135

Makefile

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -369,7 +369,6 @@ help:
369369
@echo " if found. And you can hint where to find it with Foo_ROOT=path"
370370
@echo " Note that it is case sensitive!"
371371
@echo " Finding and Using Dependencies:"
372-
@echo " BOOST_ROOT=path Custom Boost installation"
373372
@echo " USE_QT=0 Skip anything that needs Qt"
374373
@echo " LLVM-related options:"
375374
@echo " LLVM_VERSION=12.0 Specify which LLVM version to use"

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -567,7 +567,6 @@ The OSL implementation depends upon several other open source packages,
567567
all with compatible licenses:
568568

569569
* [OpenImageIO](http://www.openimageio.org)
570-
* [Boost](http://www.boost.org)
571570
* [IlmBase](http://www.openexr.com)
572571
* [LLVM Compiler Infrastructure](http://llvm.org)
573572

doc/build_install/windows/Readme.md

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -64,8 +64,6 @@ My System and Setup Configuration:
6464

6565
**OpenShadingLanguage:** cloned from latest master branch
6666

67-
**Boost:** 1.70
68-
6967
**LLVM:** 11.0.0 C++ is set on C++14
7068

7169
**CLANG:** 11.0.0 C++ is set on C++14
@@ -152,9 +150,9 @@ Open `doc/build_install/windows/osl_env_vars_setup.bat` in your editor and edit
152150

153151
The main build launcher is here `doc/build_install/windows/build_osl.bat`
154152

155-
For now we can not assign pre-installed llvm or boost so we have to build all together at once and put all of them in one directory.
153+
For now we can not assign pre-installed llvm so we have to build all together at once and put all of them in one directory.
156154

157-
I am working on it to see how we can use external llvm and boost installation without error.
155+
I am working on it to see how we can use external llvm installation without error.
158156

159157
**Table of flags we can assign to the command**
160158

@@ -163,7 +161,6 @@ I am working on it to see how we can use external llvm and boost installation wi
163161
| --osl | Implemented | Yes |
164162
| --python | Implemented | Yes |
165163
| --zlib | Implemented | Yes |
166-
| --boost | Implemented | Yes |
167164
| --llvm | Implemented | Yes |
168165
| --clang | Implemented | Yes |
169166
| --pugixml | Implemented | Yes |

doc/build_install/windows/build_osl.bat

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,17 @@ cls
1414

1515
set OSL_INPUT_CONFIG=%1
1616

17-
if "%OSL_INPUT_CONFIG%" equ "debug" (
17+
if "%OSL_INPUT_CONFIG%" equ "debug" (
1818
set OSL_LOCATION_DIR=osl_debug
1919
set OSL_BUILD_CONFIG=--debug
2020
goto RUN
2121
)
22-
if "%OSL_INPUT_CONFIG%" equ "release" (
22+
if "%OSL_INPUT_CONFIG%" equ "release" (
2323
set OSL_LOCATION_DIR=osl_release
2424
set OSL_BUILD_CONFIG=
2525
goto RUN
2626
)
27-
if "%OSL_INPUT_CONFIG%" equ "" (
27+
if "%OSL_INPUT_CONFIG%" equ "" (
2828
echo --= Enter debug or release as argument
2929
exit
3030
)
@@ -44,5 +44,5 @@ call %VCVARS_LOCATION%/vcvarsall.bat x64
4444

4545
cls
4646

47-
python build_osl.py --generator "Visual Studio 16 2019" --osl --python %OSL_BUILD_CONFIG% --zlib --boost --llvm --clang --pugixml --openexr --tiff --jpeg --png --flex --bison --opencolorio --openimageio --libraw --pybind11 %BASE_LOCATION%/%OSL_LOCATION_DIR%
47+
python build_osl.py --generator "Visual Studio 16 2019" --osl --python %OSL_BUILD_CONFIG% --zlib --llvm --clang --pugixml --openexr --tiff --jpeg --png --flex --bison --opencolorio --openimageio --libraw --pybind11 %BASE_LOCATION%/%OSL_LOCATION_DIR%
4848

0 commit comments

Comments
 (0)