Skip to content

Commit 9bd02d5

Browse files
committed
More closely mimic OIIO's windows setup, see if that helps
Signed-off-by: Larry Gritz <lg@larrygritz.com>
1 parent 5a169c9 commit 9bd02d5

File tree

4 files changed

+56
-40
lines changed

4 files changed

+56
-40
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ jobs:
203203
204204
205205
linux:
206-
if: 0
206+
# if: 0
207207
name: "${{matrix.desc}}"
208208
uses: ./.github/workflows/build-steps.yml
209209
with:
@@ -595,5 +595,5 @@ jobs:
595595
vsver: 2022
596596
generator: "Visual Studio 17 2022"
597597
python_ver: "3.9"
598-
# openimageio_ver: release
598+
openimageio_ver: release
599599
setenvs: export OSL_CMAKE_FLAGS="--debug-find-pkg=ZLIB "

src/build-scripts/build_openimageio.bash

Lines changed: 27 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,25 +11,31 @@ set -ex
1111

1212
OPENIMAGEIO_REPO=${OPENIMAGEIO_REPO:=AcademySoftwareFoundation/OpenImageIO}
1313
OPENIMAGEIO_VERSION=${OPENIMAGEIO_VERSION:=release}
14+
1415
LOCAL_DEPS_DIR=${LOCAL_DEPS_DIR:=${PWD}/ext}
15-
OPENIMAGEIO_SRCDIR=${OPENIMAGEIO_SRCDIR:=${LOCAL_DEPS_DIR}/OpenImageIO}
16-
OPENIMAGEIO_BUILD_DIR=${OPENIMAGEIO_BUILD_DIR:=${OPENIMAGEIO_SRCDIR}/build}
17-
OPENIMAGEIO_INSTALLDIR=${OPENIMAGEIO_INSTALLDIR:=${LOCAL_DEPS_DIR}/dist}
18-
OPENIMAGEIO_CMAKE_FLAGS=${OPENIMAGEIO_CMAKE_FLAGS:=""}
16+
OPENIMAGEIO_SOURCE_DIR=${OPENIMAGEIO_SOURCE_DIR:=${LOCAL_DEPS_DIR}/OpenImageIO}
17+
# OPENIMAGEIO_BUILD_DIR=${OPENIMAGEIO_BUILD_DIR:=${LOCAL_DEPS_DIR}/OpenImageIO-build}
18+
OPENIMAGEIO_BUILD_DIR=${OPENIMAGEIO_BUILD_DIR:=${OPENIMAGEIO_SOURCE_DIR}/build}
19+
OPENIMAGEIO_INSTALL_DIR=${OPENIMAGEIO_INSTALL_DIR:=${LOCAL_DEPS_DIR}/dist}
1920
OPENIMAGEIO_BUILD_TYPE=${OPENIMAGEIO_BUILD_TYPE:=Release}
21+
OPENIMAGEIO_CMAKE_FLAGS=${OPENIMAGEIO_CMAKE_FLAGS:=""}
2022
OPENIMAGEIO_CXXFLAGS=${OPENIMAGEIO_CXXFLAGS:=""}
2123
BASEDIR=$PWD
22-
CMAKE_GENERATOR=${CMAKE_GENERATOR:="Unix Makefiles"}
24+
# CMAKE_GENERATOR=${CMAKE_GENERATOR:="Unix Makefiles"}
2325

24-
if [ ! -e $OPENIMAGEIO_SRCDIR ] ; then
25-
git clone https://github.com/${OPENIMAGEIO_REPO} $OPENIMAGEIO_SRCDIR
26-
fi
26+
pwd
27+
echo "Building OpenImageIO ${OPENIMAGEIO_VERSION}"
28+
echo "OpenImageIO build dir will be: ${OPENIMAGEIO_BUILD_DIR}"
29+
echo "OpenImageIO install dir will be: ${OPENIMAGEIO_INSTALL_DIR}"
30+
echo "OpenImageIO Build type is ${OPENIMAGEIO_BUILD_TYPE}"
2731

28-
29-
mkdir -p ${OPENIMAGEIO_INSTALLDIR} && true
32+
if [ ! -e $OPENIMAGEIO_SOURCE_DIR ] ; then
33+
git clone https://github.com/${OPENIMAGEIO_REPO} $OPENIMAGEIO_SOURCE_DIR
34+
fi
35+
mkdir -p ${OPENIMAGEIO_INSTALL_DIR} && true
3036
mkdir -p ${OPENIMAGEIO_BUILD_DIR} && true
3137

32-
pushd $OPENIMAGEIO_SRCDIR
38+
pushd $OPENIMAGEIO_SOURCE_DIR
3339
git fetch --all -p
3440
git checkout $OPENIMAGEIO_VERSION --force
3541
echo "Building OpenImageIO from commit" `git rev-parse --short HEAD`
@@ -42,21 +48,20 @@ if [[ "$DEBUG" == "1" ]] ; then
4248
fi
4349

4450
# if [[ "$ARCH" == "windows64" ]] ; then
45-
pushd ${OPENIMAGEIO_BUILD_DIR}
46-
cmake .. -G "$CMAKE_GENERATOR" \
47-
-DCMAKE_BUILD_TYPE="$OPENIMAGEIO_BUILD_TYPE" \
48-
-DCMAKE_INSTALL_PREFIX="$OPENIMAGEIO_INSTALLDIR" \
49-
-DPYTHON_VERSION="$PYTHON_VERSION" \
50-
-DCMAKE_INSTALL_LIBDIR="$OPENIMAGEIO_INSTALLDIR/lib" \
51-
-DCMAKE_CXX_STANDARD="$CMAKE_CXX_STANDARD" \
52-
$OPENIMAGEIO_CMAKE_FLAGS -DVERBOSE=1
51+
cmake -S . -B ${OPENIMAGEIO_BUILD_DIR} \
52+
-DCMAKE_BUILD_TYPE="${OPENIMAGEIO_BUILD_TYPE}" \
53+
-DCMAKE_INSTALL_PREFIX="${OPENIMAGEIO_INSTALL_DIR}" \
54+
-DCMAKE_PREFIX_PATH="${CMAKE_PREFIX_PATH}" \
55+
-DPYTHON_VERSION="${PYTHON_VERSION}" \
56+
-DCMAKE_INSTALL_LIBDIR="${OPENIMAGEIO_INSTALL_DIR}/lib" \
57+
-DCMAKE_CXX_STANDARD="${CMAKE_CXX_STANDARD}" \
58+
${OPENIMAGEIO_CMAKE_FLAGS} -DVERBOSE=1
5359
echo "Parallel build $CMAKE_BUILD_PARALLEL_LEVEL"
54-
time cmake --build . --target install --config ${OPENIMAGEIO_BUILD_TYPE}
55-
popd
60+
time cmake --build ${OPENIMAGEIO_BUILD_DIR} --target install --config ${OPENIMAGEIO_BUILD_TYPE}
5661

5762
popd
5863

59-
export OpenImageIO_ROOT=$OPENIMAGEIO_INSTALLDIR
64+
export OpenImageIO_ROOT=$OPENIMAGEIO_INSTALL_DIR
6065
export PATH=$OpenImageIO_ROOT/bin:$PATH
6166
export DYLD_LIBRARY_PATH=$OpenImageIO_ROOT/lib:$DYLD_LIBRARY_PATH
6267
export LD_LIBRARY_PATH=$OpenImageIO_ROOT/lib:$LD_LIBRARY_PATH

src/build-scripts/ci-startup.bash

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -15,20 +15,23 @@ export CCACHE_CPP2=
1515
export CCACHE_DIR=$HOME/.ccache
1616
mkdir -p $CCACHE_DIR
1717

18+
export DISTDIR=$PWD/dist
1819
export OSL_ROOT=$PWD/dist
19-
export DYLD_LIBRARY_PATH=$OSL_ROOT/lib:$DYLD_LIBRARY_PATH
20-
export LD_LIBRARY_PATH=$OSL_ROOT/lib:$LD_LIBRARY_PATH
21-
export OPENIMAGEIO_PLUGIN_PATH=$OSL_ROOT/lib:${OPENIMAGEIO_PLUGIN_PATH}
22-
export OIIO_LIBRARY_PATH=$OSL_ROOT/lib:${OIIO_LIBRARY_PATH}
20+
export DYLD_LIBRARY_PATH=$DISTDIR/lib:$DYLD_LIBRARY_PATH
21+
export LD_LIBRARY_PATH=$DISTDIR/lib:$LD_LIBRARY_PATH
22+
export LD_LIBRARY_PATH=$DISTDIR/lib64:$LD_LIBRARY_PATH
23+
export OIIO_LIBRARY_PATH=$DISTDIR/lib
24+
export OPENIMAGEIO_PLUGIN_PATH=$DISTDIR/lib:${OPENIMAGEIO_PLUGIN_PATH}
2325
export LSAN_OPTIONS=suppressions=$PWD/src/build-scripts/nosanitize.txt
2426
export ASAN_OPTIONS=print_suppressions=0:detect_odr_violation=1
27+
# export UBSAN_OPTIONS=suppressions=$PWD/src/build-scripts/ubsan-suppressions.txt
2528

26-
export USE_PYTHON=${USE_PYTHON:=1}
29+
# export USE_PYTHON=${USE_PYTHON:=1}
2730
export PYTHON_VERSION=${PYTHON_VERSION:="3.7"}
28-
export PYTHONPATH=/usr/local/lib/python${PYTHON_VERSION}/site-packages:$PYTHONPATH
29-
export PYTHONPATH=/usr/local/lib64/python${PYTHON_VERSION}/site-packages:$PYTHONPATH
30-
export PYTHONPATH=$OSL_ROOT/lib/python${PYTHON_VERSION}/site-packages:$PYTHONPATH
31-
export BUILD_MISSING_DEPS=${BUILD_MISSING_DEPS:=1}
31+
# export PYTHONPATH=/usr/local/lib/python${PYTHON_VERSION}/site-packages:$PYTHONPATH
32+
# export PYTHONPATH=/usr/local/lib64/python${PYTHON_VERSION}/site-packages:$PYTHONPATH
33+
export PYTHONPATH=$DISTDIR/lib/python${PYTHON_VERSION}/site-packages:$PYTHONPATH
34+
# export BUILD_MISSING_DEPS=${BUILD_MISSING_DEPS:=1}
3235
export COMPILER=${COMPILER:=gcc}
3336
export CC=${CC:=gcc}
3437
export CXX=${CXX:=g++}
@@ -39,7 +42,8 @@ export CMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE:=Release}
3942
export CMAKE_CXX_STANDARD=${CMAKE_CXX_STANDARD:=17}
4043

4144
export LOCAL_DEPS_DIR=${LOCAL_DEPS_DIR:=$HOME/ext}
42-
export CMAKE_PREFIX_PATH=${LOCAL_DEPS_DIR}/dist:${CMAKE_PREFIX_PATH}
45+
export PATH=${LOCAL_DEPS_DIR}/dist/bin:$PATH
46+
# export CMAKE_PREFIX_PATH=${LOCAL_DEPS_DIR}/dist:${CMAKE_PREFIX_PATH}
4347
export LD_LIBRARY_PATH=${LOCAL_DEPS_DIR}/dist/lib:$LD_LIBRARY_PATH
4448
export LD_LIBRARY_PATH=${LOCAL_DEPS_DIR}/dist/lib64:$LD_LIBRARY_PATH
4549
export DYLD_LIBRARY_PATH=${LOCAL_DEPS_DIR}/dist/lib:$DYLD_LIBRARY_PATH
@@ -71,6 +75,8 @@ fi
7175
export PAR_MAKEFLAGS=-j${PARALLEL}
7276
export CMAKE_BUILD_PARALLEL_LEVEL=${CMAKE_BUILD_PARALLEL_LEVEL:=${PARALLEL}}
7377
export CTEST_PARALLEL_LEVEL=${CTEST_PARALLEL_LEVEL:=${PARALLEL}}
78+
export OIIO_USE_CUDA=1
79+
export CUDAToolkit_ROOT=/usr/local/cuda
7480

7581
mkdir -p build dist
7682

src/build-scripts/gh-win-installdeps.bash

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
# DEP_DIR="$PWD/ext/dist"
88
DEP_DIR="$PWD/dist"
99
mkdir -p "$DEP_DIR"
10-
INT_DIR="build"
10+
mkdir -p ext
1111
VCPKG_INSTALLATION_ROOT=/c/vcpkg
1212

1313
export CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH:=.}
@@ -48,14 +48,14 @@ echo "---------------"
4848
#
4949

5050
#vcpkg install libdeflate:x64-windows-release
51-
vcpkg install zlib:x64-windows-release
51+
# vcpkg install zlib:x64-windows-release
5252
# vcpkg install tiff:x64-windows-release
5353
# vcpkg install libpng:x64-windows-release
5454
# vcpkg install giflib:x64-windows-release
5555
# vcpkg install freetype:x64-windows-release
5656
# # vcpkg install openexr:x64-windows-release
5757
# vcpkg install libjpeg-turbo:x64-windows-release
58-
vcpkg install openimageio:x64-windows-release
58+
# vcpkg install openimageio:x64-windows-release
5959
#
6060
# vcpkg install libraw:x64-windows-release
6161
# vcpkg install openjpeg:x64-windows-release
@@ -89,8 +89,8 @@ vcpkg list
8989
#
9090
#
9191

92-
# src/build-scripts/build_zlib.bash
93-
# export ZLIB_ROOT=$PWD/ext/dist
92+
src/build-scripts/build_zlib.bash
93+
export ZLIB_ROOT=$PWD/ext/dist
9494

9595
# src/build-scripts/build_libpng.bash
9696
# export PNG_ROOT=$PWD/ext/dist
@@ -106,7 +106,7 @@ vcpkg list
106106
# export JPEGTurbo_ROOT=$PWD/ext/dist
107107

108108
source src/build-scripts/build_pybind11.bash
109-
#export pybind11_ROOT=$PWD/ext/dist
109+
export pybind11_ROOT=$PWD/ext/dist
110110

111111

112112
# curl --location https://ffmpeg.zeranoe.com/builds/win64/dev/ffmpeg-4.2.1-win64-dev.zip -o ffmpeg-dev.zip
@@ -125,6 +125,11 @@ if [[ "$OPENEXR_VERSION" != "" ]] ; then
125125
# the above line is admittedly sketchy
126126
fi
127127

128+
# if [[ "$PUGIXML_VERSION" != "" ]] ; then
129+
source src/build-scripts/build_pugixml.bash
130+
export MY_CMAKE_FLAGS+=" -DUSE_EXTERNAL_PUGIXML=1 "
131+
# fi
132+
128133
cp $DEP_DIR/lib/*.lib $DEP_DIR/bin || true
129134
cp $DEP_DIR/bin/*.dll $DEP_DIR/lib || true
130135

0 commit comments

Comments
 (0)