Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
d2ea252
Pin OpenVINO preset to 2025.4.1 build 20426
barrypitman Apr 15, 2026
f72dab5
Add OpenVINO sample and upload CI build artifacts
barrypitman Apr 15, 2026
fc85fe8
Fix OpenVINO artifact upload to collect jars from ~/.m2
barrypitman Apr 15, 2026
5041470
Preserve Maven snapshots for OpenVINO artifact upload
barrypitman Apr 15, 2026
c982e75
Revert OpenVINO artifact-capture workflow changes
barrypitman Apr 15, 2026
be6bb12
Refactor OpenVINO installation to use archive extraction instead of p…
barrypitman Apr 19, 2026
3d9ed84
fix build - URL was missing the platform segment.
barrypitman Apr 19, 2026
16f3a71
address comments
barrypitman Apr 20, 2026
2fe85f3
use javacpp maven plugin to configure paths instead of modifying tree…
barrypitman Apr 20, 2026
b30e3a5
use --strip-components=1 to simplify paths, and add inherit = OpenCL.…
barrypitman Apr 21, 2026
acee8be
fix build by configuring OpenCL
barrypitman Apr 21, 2026
740d07a
fix windows build
barrypitman Apr 21, 2026
345b829
Update OpenVINO preset to 2026.1.0
barrypitman May 14, 2026
6a93085
Support macosx-arm64
m1ngyuan May 14, 2026
3aaee7f
Merge pull request #4 from m1ngyuan/codex/openvino-support-macosx
barrypitman May 14, 2026
bef2f6d
Merge pull request #2 from barrypitman/codex/update-openvino-version-…
barrypitman May 14, 2026
f558bf9
Update GitHub Actions deploy scripts for Vulkan SDK 1.4.313 (pull #1768)
m1ngyuan May 14, 2026
8817d8a
Address OpenVINO platform review comments
barrypitman May 15, 2026
1e445ec
Merge pull request #5 from barrypitman/codex/review-and-address-pr-co…
barrypitman May 15, 2026
f290612
add missing <module>openvino</module> from parent pom for different …
barrypitman May 15, 2026
34e9097
Update CHANGELOG.md, add licensing, and fix nits
saudet May 15, 2026
8172977
Merge remote-tracking branch 'upstream/master' into codex/add-new-ope…
saudet May 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/actions/deploy-macosx/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,9 +64,9 @@ runs:

# Install vulkan sdk
echo Installing Vulkan SDK
curl -LO https://sdk.lunarg.com/sdk/download/1.3.280.1/mac/vulkansdk-macos-1.3.280.1.dmg
MOUNT_PATH=$(hdiutil mount vulkansdk-macos-1.3.280.1.dmg | tail -n1 | awk '{print $3}')
sudo "${MOUNT_PATH}/InstallVulkan.app/Contents/MacOS/InstallVulkan" --root ~/VulkanSDK/1.3.280.1 --accept-licenses --default-answer --confirm-command install com.lunarg.vulkan.core com.lunarg.vulkan.usr com.lunarg.vulkan.sdl2 com.lunarg.vulkan.glm com.lunarg.vulkan.volk com.lunarg.vulkan.vma
curl -LO https://sdk.lunarg.com/sdk/download/1.4.313.1/mac/vulkansdk-macos-1.4.313.1.zip
unzip vulkansdk-macos-1.4.313.1.zip
sudo ./vulkansdk-macOS-1.4.313.1.app/Contents/MacOS/vulkansdk-macOS-1.4.313.1 --root ~/VulkanSDK/1.4.313.1 --accept-licenses --default-answer --confirm-command install com.lunarg.vulkan.core com.lunarg.vulkan.usr com.lunarg.vulkan.sdl2 com.lunarg.vulkan.glm com.lunarg.vulkan.volk com.lunarg.vulkan.vma

if [[ -n ${CI_DEPLOY_NEED_BAZEL:-} ]]; then
echo Installing Bazel
Expand Down
4 changes: 2 additions & 2 deletions .github/actions/deploy-ubuntu/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -147,11 +147,11 @@ runs:
echo Installing Vulkan-SDK
if [[ "$CODENAME" == "jammy" ]]; then
curl -s https://packages.lunarg.com/lunarg-signing-key-pub.asc | $SUDO tee /etc/apt/trusted.gpg.d/lunarg.asc >/dev/null
$SUDO curl -s -o /etc/apt/sources.list.d/lunarg-vulkan-1.3.280-jammy.list https://packages.lunarg.com/vulkan/1.3.280/lunarg-vulkan-1.3.280-jammy.list
$SUDO curl -s -o /etc/apt/sources.list.d/lunarg-vulkan-1.4.313-jammy.list https://packages.lunarg.com/vulkan/1.4.313/lunarg-vulkan-1.4.313-jammy.list
$SUDO apt-get update && $SUDO apt-get install -y libvulkan1 libvulkan-dev vulkan-sdk && $SUDO apt-get clean
elif [[ "$CODENAME" == "focal" ]]; then
curl -s https://packages.lunarg.com/lunarg-signing-key-pub.asc | $SUDO apt-key add -
$SUDO curl -s -o /etc/apt/sources.list.d/lunarg-vulkan-1.3.280-focal.list https://packages.lunarg.com/vulkan/1.3.280/lunarg-vulkan-1.3.280-focal.list
$SUDO curl -s -o /etc/apt/sources.list.d/lunarg-vulkan-1.4.313-focal.list https://packages.lunarg.com/vulkan/1.4.313/lunarg-vulkan-1.4.313-focal.list
$SUDO apt-get update && $SUDO apt-get install -y libvulkan1 libvulkan-dev vulkan-sdk && $SUDO apt-get clean
fi

Expand Down
8 changes: 4 additions & 4 deletions .github/actions/deploy-windows/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -104,8 +104,8 @@ runs:
curl -LO http://repo.msys2.org/mingw/i686/mingw-w64-i686-tools-git-12.0.0.r81.g90abf784a-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/i686/mingw-w64-i686-winpthreads-git-12.0.0.r81.g90abf784a-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/i686/mingw-w64-i686-winstorecompat-git-12.0.0.r81.g90abf784a-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/i686/mingw-w64-i686-vulkan-headers-1.3.296.0-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/i686/mingw-w64-i686-vulkan-loader-1.3.296.0-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/i686/mingw-w64-i686-vulkan-headers-1.4.313.0-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/i686/mingw-w64-i686-vulkan-loader-1.4.313.0-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/i686/mingw-w64-i686-SDL2-2.30.12-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-gcc-14.2.0-3-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-gcc-libs-14.2.0-3-any.pkg.tar.zst
Expand All @@ -124,8 +124,8 @@ runs:
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-tools-git-12.0.0.r81.g90abf784a-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-winpthreads-git-12.0.0.r81.g90abf784a-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-winstorecompat-git-12.0.0.r81.g90abf784a-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-vulkan-headers-1.3.296.0-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-vulkan-loader-1.3.296.0-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-vulkan-headers-1.4.313.0-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-vulkan-loader-1.4.313.0-1-any.pkg.tar.zst
curl -LO http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-SDL2-2.30.12-1-any.pkg.tar.zst
bash -c "pacman -Rc --noconfirm mingw-w64-x86_64-gdb-multiarch mingw-w64-x86_64-gdb mingw-w64-x86_64-libb2 mingw-w64-x86_64-python"
bash -c "pacman -U --noconfirm *.pkg.tar.zst"
Expand Down
36 changes: 36 additions & 0 deletions .github/workflows/openvino.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: openvino
on:
push:
paths:
- openvino/**
- .github/workflows/openvino.yml
pull_request:
paths:
- openvino/**
- .github/workflows/openvino.yml
workflow_dispatch:
env:
CI_DEPLOY_MODULE: ${{ github.workflow }}
CI_DEPLOY_PLATFORM: ${{ github.job }}
CI_DEPLOY_SETTINGS: ${{ secrets.CI_DEPLOY_SETTINGS }}
CI_DEPLOY_USERNAME: ${{ secrets.CI_DEPLOY_USERNAME }}
CI_DEPLOY_PASSWORD: ${{ secrets.CI_DEPLOY_PASSWORD }}
STAGING_REPOSITORY: ${{ secrets.STAGING_REPOSITORY }}
jobs:
linux-x86_64:
runs-on: ubuntu-22.04
steps:
- uses: bytedeco/javacpp-presets/.github/actions/deploy-ubuntu@actions
macosx-arm64:
runs-on: macos-15
steps:
- uses: bytedeco/javacpp-presets/.github/actions/deploy-macosx@actions
windows-x86_64:
runs-on: windows-2022
steps:
- uses: bytedeco/javacpp-presets/.github/actions/deploy-windows@actions
platform:
needs: [linux-x86_64, macosx-arm64, windows-x86_64]
runs-on: ubuntu-22.04
steps:
- uses: bytedeco/javacpp-presets/.github/actions/redeploy@actions
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@

* Add presets for OpenVINO 2026.1.0 ([pull #1752](https://github.com/bytedeco/javacpp-presets/pull/1752))
* Allow creating new `std::vector<torch::optim::OptimizerParamGroup>` in presets for PyTorch ([issue #1756](https://github.com/bytedeco/javacpp-presets/issues/1756))
* Add V4L2 Request API hwaccels in presets for FFmpeg ([pull #1755](https://github.com/bytedeco/javacpp-presets/pull/1755))
* Add new `SampleOnnxMNIST` in samples for TensorRT ([pull #1742](https://github.com/bytedeco/javacpp-presets/pull/1742))
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@ JavaCPP Presets
[![depthai](https://github.com/bytedeco/javacpp-presets/workflows/depthai/badge.svg)](https://github.com/bytedeco/javacpp-presets/actions?query=workflow%3Adepthai)
[![onnx](https://github.com/bytedeco/javacpp-presets/workflows/onnx/badge.svg)](https://github.com/bytedeco/javacpp-presets/actions?query=workflow%3Aonnx)
[![ngraph](https://github.com/bytedeco/javacpp-presets/workflows/ngraph/badge.svg)](https://github.com/bytedeco/javacpp-presets/actions?query=workflow%3Angraph)
[![openvino](https://github.com/bytedeco/javacpp-presets/workflows/openvino/badge.svg)](https://github.com/bytedeco/javacpp-presets/actions?query=workflow%3Aopenvino)
[![onnxruntime](https://github.com/bytedeco/javacpp-presets/workflows/onnxruntime/badge.svg)](https://github.com/bytedeco/javacpp-presets/actions?query=workflow%3Aonnxruntime)
[![tvm](https://github.com/bytedeco/javacpp-presets/workflows/tvm/badge.svg)](https://github.com/bytedeco/javacpp-presets/actions?query=workflow%3Atvm)
[![bullet](https://github.com/bytedeco/javacpp-presets/workflows/bullet/badge.svg)](https://github.com/bytedeco/javacpp-presets/actions?query=workflow%3Abullet)
Expand Down Expand Up @@ -234,6 +235,7 @@ Each child module in turn relies by default on the included [`cppbuild.sh` scrip
* DepthAI 2.24.x https://github.com/luxonis/depthai-core
* ONNX 1.20.x https://github.com/onnx/onnx
* nGraph 0.26.0 https://github.com/NervanaSystems/ngraph
* OpenVINO 2026.1.x https://github.com/openvinotoolkit/openvino
* ONNX Runtime 1.25.x https://github.com/microsoft/onnxruntime
* TVM 0.18.x https://github.com/apache/tvm
* Bullet Physics SDK 3.25 https://pybullet.org
Expand Down
2 changes: 1 addition & 1 deletion cppbuild.sh
Original file line number Diff line number Diff line change
Expand Up @@ -159,7 +159,7 @@ function sedinplace {
}

if [[ -z ${PROJECTS:-} ]]; then
PROJECTS=(opencv ffmpeg flycapture spinnaker libdc1394 libfreenect libfreenect2 librealsense librealsense2 videoinput artoolkitplus chilitags flandmark arrow hdf5 hyperscan lz4 mkl mkl-dnn dnnl openblas arpack-ng cminpack fftw gsl cpython numpy scipy gym llvm libpostal libraw leptonica tesseract caffe openpose cuda nvcodec opencl mxnet pytorch sentencepiece tensorflow tensorflow-lite tensorrt tritonserver depthai ale onnx ngraph onnxruntime tvm bullet liquidfun qt skia cpu_features modsecurity systems)
PROJECTS=(opencv ffmpeg flycapture spinnaker libdc1394 libfreenect libfreenect2 librealsense librealsense2 videoinput artoolkitplus chilitags flandmark arrow hdf5 hyperscan lz4 mkl mkl-dnn dnnl openblas arpack-ng cminpack fftw gsl cpython numpy scipy gym llvm libpostal libraw leptonica tesseract caffe openpose cuda nvcodec opencl mxnet pytorch sentencepiece tensorflow tensorflow-lite tensorrt tritonserver depthai ale onnx ngraph openvino onnxruntime tvm bullet liquidfun qt skia cpu_features modsecurity systems)
fi

for PROJECT in ${PROJECTS[@]}; do
Expand Down
18 changes: 18 additions & 0 deletions openvino/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# OpenVINO

The [OpenVINO](https://github.com/openvinotoolkit/openvino) preset packages the OpenVINO Runtime C API and shared libraries.

Supported platforms:
- `linux-x86_64`
- `windows-x86_64`
- `macosx-arm64`

The packaged runtime includes the CPU, GPU, and NPU plugin shared libraries from the official OpenVINO wheel distribution.

## Sample

A minimal sample is available under `openvino/samples/`:

```bash
mvn -f openvino/samples/pom.xml compile exec:java
```
62 changes: 62 additions & 0 deletions openvino/cppbuild.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
#!/bin/bash
# This file is meant to be included by the parent cppbuild.sh script
if [[ -z "$PLATFORM" ]]; then
pushd ..
bash cppbuild.sh "$@" openvino
popd
exit
fi

OPENVINO_VERSION=2026.1.0
OPENVINO_BUILD=21367.63e31528c62
OPENVINO_PACKAGES_URL=https://storage.openvinotoolkit.org/repositories/openvino/packages/2026.1

mkdir -p "$PLATFORM"
cd "$PLATFORM"

archive_name=
archive_platform=
archive_root=

case $PLATFORM in
linux-x86_64)
archive_name=openvino_toolkit_ubuntu22_${OPENVINO_VERSION}.${OPENVINO_BUILD}_x86_64.tgz
archive_platform=linux
archive_root=${archive_name%.tgz}
;;
macosx-arm64)
archive_name=openvino_toolkit_macos_12_6_${OPENVINO_VERSION}.${OPENVINO_BUILD}_arm64.tgz
archive_platform=macos
archive_root=${archive_name%.tgz}
;;
windows-x86_64)
archive_name=openvino_toolkit_windows_${OPENVINO_VERSION}.${OPENVINO_BUILD}_x86_64.zip
archive_platform=windows
archive_root=${archive_name%.zip}
;;
*)
echo "Error: Platform \"$PLATFORM\" is not supported"
exit 1
;;
esac

download "${OPENVINO_PACKAGES_URL}/${archive_platform}/${archive_name}" "${archive_name}"

case "$archive_name" in
*.tgz)
tar -xzf "$archive_name" --strip-components=1 "${archive_root}/runtime"
;;
*.zip)
unzip -q -o "$archive_name"
if [[ -d "$archive_root/runtime" ]]; then
mv "$archive_root/runtime" .
rm -rf "$archive_root"
fi
;;
*)
echo "Error: Unsupported archive \"$archive_name\""
exit 1
;;
esac

cd ..
Loading
Loading