Skip to content

Commit

Permalink
Holoscan SDK v0.5.1 Release
Browse files Browse the repository at this point in the history
Co-authored-by: Alexis Girault <[email protected]>
Co-authored-by: Gigon Bae <[email protected]>
Co-authored-by: Ian Stewart <[email protected]>
Co-authored-by: Jin Li (Worldwide Field Ops) <[email protected]>
Co-authored-by: Julien Jomier <[email protected]>
Co-authored-by: Wendell Hom <[email protected]>
  • Loading branch information
6 people committed Jun 8, 2023
1 parent f409592 commit db666c3
Show file tree
Hide file tree
Showing 22 changed files with 163 additions and 148 deletions.
45 changes: 25 additions & 20 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -18,25 +18,29 @@
############################################################
# Versions
############################################################
ARG TRT_CONTAINER_TAG=22.03-py3
ARG ONNX_RUNTIME_VERSION=1.12.1
ARG VULKAN_SDK_VERSION=1.3.216.0

############################################################
# Base image
############################################################
ARG BASE_IMAGE=nvcr.io/nvidia/tensorrt:${TRT_CONTAINER_TAG}
FROM ${BASE_IMAGE} as base
ARG GPU_TYPE=dgpu
FROM nvcr.io/nvidia/tensorrt:22.03-py3 AS dgpu_base
FROM nvcr.io/nvidia/l4t-tensorrt:r8.5.2.2-devel AS igpu_base
FROM ${GPU_TYPE}_base AS base

ARG DEBIAN_FRONTEND=noninteractive

# Remove any cuda list which could be invalid and prevent successful apt update
RUN rm -f /etc/apt/sources.list.d/cuda.list

# Install newer CMake (https://apt.kitware.com/)
RUN rm -r \
/usr/local/bin/cmake \
/usr/local/bin/cpack \
/usr/local/bin/ctest \
/usr/local/share/cmake-3.14
RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null \
RUN curl -s -L https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null \
| gpg --dearmor - \
| tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null \
&& echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal main' \
Expand All @@ -50,7 +54,7 @@ RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/nul
&& rm -rf /var/lib/apt/lists/*

# Install symlink missing from the container for H264 encode examples
RUN if [ $(uname -m) == "x86_64" ]; then \
RUN if [ $(uname -m) = "x86_64" ]; then \
ln -sf /usr/lib/x86_64-linux-gnu/libnvidia-encode.so.1 /usr/lib/x86_64-linux-gnu/libnvidia-encode.so; \
fi

Expand All @@ -66,27 +70,23 @@ FROM base as ngc-cli-downloader

WORKDIR /opt/ngc-cli

RUN if [ $(uname -m) == "aarch64" ]; then ARCH=arm64; else ARCH=linux; fi \
&& wget \
-nv --show-progress --progress=bar:force:noscroll \
-O ngccli_linux.zip https://ngc.nvidia.com/downloads/ngccli_${ARCH}.zip \
&& unzip -o ngccli_linux.zip \
RUN if [ $(uname -m) = "aarch64" ]; then ARCH=arm64; else ARCH=linux; fi \
&& curl -S -# -L -o ngccli_linux.zip https://ngc.nvidia.com/downloads/ngccli_${ARCH}.zip \
&& unzip -q ngccli_linux.zip \
&& rm ngccli_linux.zip \
&& export ngc_exec=$(find . -type f -executable -name "ngc" | head -n1)

############################################################
# ONNYX Runtime
# ONNX Runtime
############################################################
FROM base as onnxruntime-downloader
ARG ONNX_RUNTIME_VERSION=1.12.1

WORKDIR /opt/onnxruntime

RUN if [ $(uname -m) == "aarch64" ]; then ARCH=aarch64; else ARCH=x64-gpu; fi \
RUN if [ $(uname -m) = "aarch64" ]; then ARCH=aarch64; else ARCH=x64-gpu; fi \
&& ONNX_RUNTIME_NAME="onnxruntime-linux-${ARCH}-${ONNX_RUNTIME_VERSION}" \
&& wget \
-nv --show-progress --progress=bar:force:noscroll \
https://github.com/microsoft/onnxruntime/releases/download/v${ONNX_RUNTIME_VERSION}/${ONNX_RUNTIME_NAME}.tgz \
&& curl -S -# -O -L https://github.com/microsoft/onnxruntime/releases/download/v${ONNX_RUNTIME_VERSION}/${ONNX_RUNTIME_NAME}.tgz \
&& mkdir -p ${ONNX_RUNTIME_VERSION} \
&& tar -xzf ${ONNX_RUNTIME_NAME}.tgz -C ${ONNX_RUNTIME_VERSION} --strip-components 1

Expand All @@ -104,11 +104,10 @@ ARG VULKAN_SDK_VERSION
WORKDIR /opt/vulkansdk

# Note there is no aarch64 binary version to download, therefore for aarch64 we also download the x86_64 version which
# includes the source. Then remove the binaries and build the aarch64 version from source.
RUN wget -nv --show-progress --progress=bar:force:noscroll \
https://sdk.lunarg.com/sdk/download/${VULKAN_SDK_VERSION}/linux/vulkansdk-linux-x86_64-${VULKAN_SDK_VERSION}.tar.gz
# includes the source. Then remove the binaries and e7ab9314build the aarch64 version from source.
RUN curl -S -# -O -L https://sdk.lunarg.com/sdk/download/${VULKAN_SDK_VERSION}/linux/vulkansdk-linux-x86_64-${VULKAN_SDK_VERSION}.tar.gz
RUN tar -xzf vulkansdk-linux-x86_64-${VULKAN_SDK_VERSION}.tar.gz
RUN if [ $(uname -m) == "aarch64" ]; then \
RUN if [ $(uname -m) = "aarch64" ]; then \
cd ${VULKAN_SDK_VERSION} \
&& rm -rf x86_64 \
&& ./vulkansdk shaderc glslang headers; \
Expand Down Expand Up @@ -152,12 +151,18 @@ RUN apt update \
&& rm -rf /var/lib/apt/lists/*

# Install pip run dependencies
RUN if [ $(uname -m) == "aarch64" ]; then \
RUN if [ $(uname -m) = "aarch64" ]; then \
python3 -m pip install cupy-cuda11x==11.3.0 -f https://pip.cupy.dev/aarch64; \
else \
python3 -m pip install cupy-cuda11x==11.3.0; \
fi

# Install ffmpeg
RUN ARCH=$(uname -m) \
&& curl -S -# -o /usr/bin/ffmpeg \
-L https://edge.urm.nvidia.com/artifactory/sw-holoscan-thirdparty-generic-local/ffmpeg/6.0/bin/${ARCH}/ffmpeg \
&& chmod +x /usr/bin/ffmpeg

## COPY BUILT/DOWNLOADED dependencies in previous stages
# Note: avoid LD_LIBRARY_PATH - https://www.hpc.dtu.dk/?page_id=1180

Expand Down
4 changes: 4 additions & 0 deletions NOTICE.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,10 @@ Licensed under Apache-2.0 (https://github.com/dmlc/dlpack/blob/v0.7/LICENSE)
expected (https://github.com/TartanLlama/expected)
Licensed under CC0-1.0 (https://github.com/TartanLlama/expected/blob/v1.0.0/COPYING)

ffmpeg (https://github.com/FFmpeg/FFmpeg)
Copyright (C) 2007 Free Software Foundation, Inc.
Licensed under LGPLv3 (https://github.com/FFmpeg/FFmpeg/blob/master/COPYING.LGPLv3)

fmt (https://github.com/fmtlib/fmt)
Copyright (c) 2012 - present, Victor Zverovich
Licensed under MIT (https://github.com/fmtlib/fmt/blob/8.1.1/LICENSE.rst)
Expand Down
26 changes: 14 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Visit the [NGC demo website](https://demos.ngc.nvidia.com/holoscan) for a live d
- [Using the released SDK](#using-the-released-sdk)
- [Building the SDK from source](#building-the-sdk-from-source)
- [Prerequisites](#prerequisites)
- [For Clara AGX and NVIDIA IGX Orin Developer Kits (aarch64)](#for-clara-agx-and-nvidia-igx-orin-developer-kits-aarch64)
- [For Holoscan Developer Kits (aarch64)](#for-holoscan-developer-kits-aarch64)
- [For x86_64 systems](#for-x86_64-systems)
- [Recommended: using the `run` script](#recommended-using-the-run-script)
- [Cross-compilation](#cross-compilation)
Expand Down Expand Up @@ -43,25 +43,27 @@ The Holoscan SDK is available as part of the following packages:

The Holoscan SDK currently supports the [Holoscan Developer Kits](https://www.nvidia.com/en-us/clara/developer-kits) (aarch64) as well as x86_64 systems.

#### For Clara AGX and NVIDIA IGX Orin Developer Kits (aarch64)
#### For Holoscan Developer Kits (aarch64)

Set up your developer kit:
- [NVIDIA Clara AGX](https://developer.nvidia.com/clara-agx-developer-kit-user-guide)
- [NVIDIA IGX Orin [ES]](https://developer.nvidia.com/igx-orin-developer-kit-user-guide)
- NVIDIA IGX Orin: *coming soon*

> Make sure you have joined the [Holoscan SDK Program](https://developer.nvidia.com/clara-holoscan-sdk-program) and, if needed, the [Rivermax SDK Program](https://developer.nvidia.com/nvidia-rivermax-sdk) before using the NVIDIA SDK Manager.
Developer Kit | User Guide | HoloPack | GPU
------------- | ---------- | -------- | ---
[NVIDIA IGX Orin](https://www.nvidia.com/en-us/edge-computing/products/igx/) | [Guide](https://github.com/nvidia-holoscan/holoscan-docs/blob/main/devkits/nvidia-igx-orin/nvidia_igx_orin_user_guide.md) | 2.0 | dGPU or iGPU
NVIDIA IGX Orin [ES] | [Guide](https://developer.download.nvidia.com/CLARA/IGX-Orin-Developer-Kit-User-Guide-(v1.0).pdf) | 1.2 | dGPU only
[NVIDIA Clara AGX](https://www.nvidia.com/en-gb/clara/intelligent-medical-instruments/) | [Guide](https://developer.nvidia.com/clara-agx-developer-kit-user-guide) | 1.2 | dGPU only

- [SDK Manager](https://docs.nvidia.com/sdk-manager/install-with-sdkm-clara/) will install **Holopack 1.2** as well as the `nvgpuswitch.py` script. Once configured for dGPU mode, your developer kit will include the necessary components to build the SDK
- For Rivermax support (optional/local development only at this time), GPUDirect drivers need to be loaded manually at this time, see the [User Guide](https://docs.nvidia.com/clara-holoscan/sdk-user-guide/additional_setup.html#setting-up-gpudirect-rdma).
- Refer to the user guide for additional steps needed to support third-party technologies, such as [AJA cards](https://docs.nvidia.com/clara-holoscan/sdk-user-guide/aja_setup.html).
- Additional dependencies are required when developing locally instead of using a containerized environment, see details in the [section below](#advanced-local-environment--cmake).
> Notes:
>
> - For Rivermax support (optional/local development only at this time), GPUDirect drivers need to be loaded manually at this time, see the [User Guide](https://docs.nvidia.com/clara-holoscan/sdk-user-guide/additional_setup.html#setting-up-gpudirect-rdma).
> - Refer to the user guide for additional steps needed to support third-party technologies, such as [AJA cards](https://docs.nvidia.com/clara-holoscan/sdk-user-guide/aja_setup.html).
> - Additional dependencies are required when developing locally instead of using a containerized environment, see details in the [section below](#advanced-local-environment--cmake).
#### For x86_64 systems

You'll need the following to build applications from source on x86_64:
- OS: Ubuntu 20.04
- NVIDIA GPU
- NVIDIA discrete GPU (dGPU)
- Ampere or above recommended for best performance
- [Quadro/NVIDIA RTX](https://www.nvidia.com/en-gb/design-visualization/desktop-graphics/) necessary for [GPUDirect RDMA](https://developer.nvidia.com/gpudirect) support
- Tested with [NVIDIA RTX 6000](https://www.nvidia.com/en-us/design-visualization/rtx-6000/) and [NVIDIA RTX A6000](https://www.nvidia.com/en-us/design-visualization/rtx-a6000/)
Expand Down Expand Up @@ -302,7 +304,7 @@ _Note: Holoviz should support copying data across CUDA devices in a future relea
## Repository structure
The repository is organized as such:s
The repository is organized as such:
- `cmake/`: CMake configuration files
- `data/`: directory where data will be downloaded
- `examples/`: source code for the examples
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.5.0
0.5.1
7 changes: 4 additions & 3 deletions cmake/modules/HoloscanCPack.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,10 @@ set(CPACK_COMPONENTS_ALL
holoscan-python_libs
)

set(CPACK_DEBIAN_PACKAGE_DEPENDS "cuda-cudart-dev-11-6 | cuda-cudart-dev-11-7 | cuda-cudart-dev-11-8, \
cuda-nvcc-11-6 | cuda-nvcc-11-7 | cuda-nvcc-11-8, \
libnpp-11-6 | libnpp-11-7 | libnpp-11-8, \
set(CPACK_DEBIAN_PACKAGE_DEPENDS "cuda-cudart-dev-11-4 | cuda-cudart-dev-11-5 \
| cuda-cudart-dev-11-6 | cuda-cudart-dev-11-7 | cuda-cudart-dev-11-8, \
cuda-nvcc-11-4 | cuda-nvcc-11-5 | cuda-nvcc-11-6 | cuda-nvcc-11-7 | cuda-nvcc-11-8, \
libnpp-11-4 | libnpp-11-5 | libnpp-11-6 | libnpp-11-7 | libnpp-11-8, \
libnvinfer-bin (>= 8.2.3), \
libvulkan1 (>=1.2.131), libx11-6 (>=1.6.9)")

Expand Down
8 changes: 7 additions & 1 deletion examples/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -40,5 +40,11 @@ configure_file(CMakeLists.min.txt.in CMakeLists.min.txt @ONLY)
install(FILES "${CMAKE_CURRENT_BINARY_DIR}/CMakeLists.min.txt"
RENAME "CMakeLists.txt"
DESTINATION examples
COMPONENT holoscan-examples)
COMPONENT holoscan-examples
)

install(FILES README.md
DESTINATION examples
COMPONENT holoscan-examples
)
endif()
9 changes: 8 additions & 1 deletion examples/bring_your_own_model/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,16 @@ This example shows how to use the [Bring Your Own Model](https://docs.nvidia.com
## Data

The following datasets are used by this example:
- [📦️ (NGC) Sample App Data for AI-based Endoscopy Tool Tracking](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/clara-holoscan/resources/holoscan_endoscopy_sample_data)
- [📦️ (NGC) Sample App Data for AI-based Endoscopy Tool Tracking](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/clara-holoscan/resources/holoscan_endoscopy_sample_data/files?version=20230128)
- [(Git) Identity ONNX model](model/identity_model.onnx)

## Run instructions

The following instructions shows how to run the byom example. If you run this example as is, it
will look similar to the `video_replayer` example. To get the most from this example, the instructions
in this [section](https://docs.nvidia.com/holoscan/sdk-user-guide/examples/byom.html) will walk you
through how to modify the python example code to run the application with an ultrasound segmentation model.

* **using python wheel**:
```bash
# [Prerequisite] Download NGC dataset above to `DATA_DIR`
Expand All @@ -23,6 +28,8 @@ The following datasets are used by this example:
# [Prerequisite] Download NGC dataset above to `DATA_DIR`
export PYTHONPATH=/opt/nvidia/holoscan/python/lib
export HOLOSCAN_SAMPLE_DATA_PATH=<DATA_DIR>
# Need to enable write permission in the model directory to write the engine file (use with caution)
sudo chmod a+w /opt/nvidia/holoscan/examples/bring_your_own_model/model
python3 /opt/nvidia/holoscan/examples/bring_your_own_model/python/byom.py
```
* **from NGC container**:
Expand Down
4 changes: 2 additions & 2 deletions examples/holoviz/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ As for `example/tensor_interop/python/tensor_interop.py`, this application demon
## Data

The following dataset is used by this example:
[📦️ (NGC) Sample App Data for AI-based Endoscopy Tool Tracking](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/clara-holoscan/resources/holoscan_endoscopy_sample_data).
[📦️ (NGC) Sample App Data for AI-based Endoscopy Tool Tracking](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/clara-holoscan/resources/holoscan_endoscopy_sample_data/files?version=20230128).

## Run instructions

Expand Down Expand Up @@ -46,4 +46,4 @@ The following dataset is used by this example:
export PYTHONPATH=${BUILD_OR_INSTALL_DIR}/python/lib
export HOLOSCAN_SAMPLE_DATA_PATH=${SRC_DIR}/data
python3 ${BUILD_OR_INSTALL_DIR}/examples/holoviz/python/holoviz_geometry.py
```
```
4 changes: 2 additions & 2 deletions examples/tensor_interop/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ This application demonstrates interoperability between a native operator (`Image
### Data

The following dataset is used by this example:
[📦️ (NGC) Sample App Data for AI-based Endoscopy Tool Tracking](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/clara-holoscan/resources/holoscan_endoscopy_sample_data).
[📦️ (NGC) Sample App Data for AI-based Endoscopy Tool Tracking](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/clara-holoscan/resources/holoscan_endoscopy_sample_data/files?version=20230128).

### Run instructions

Expand Down Expand Up @@ -72,4 +72,4 @@ The following dataset is used by this example:
export PYTHONPATH=${BUILD_OR_INSTALL_DIR}/python/lib
export HOLOSCAN_SAMPLE_DATA_PATH=${SRC_DIR}/data
python3 ${BUILD_OR_INSTALL_DIR}/examples/tensor_interop/python/tensor_interop.py
```
```
2 changes: 1 addition & 1 deletion examples/video_replayer/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ Minimal example to demonstrate the use of the video stream replayer operator to
## Data

The following dataset is used by this example:
[📦️ (NGC) Sample App Data for AI-based Endoscopy Tool Tracking](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/clara-holoscan/resources/holoscan_endoscopy_sample_data).
[📦️ (NGC) Sample App Data for AI-based Endoscopy Tool Tracking](https://catalog.ngc.nvidia.com/orgs/nvidia/teams/clara-holoscan/resources/holoscan_endoscopy_sample_data/files?version=20230128).

## C++ Run instructions

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ wrap_operator_as_gxf_extension(
EXTENSION_NAME "PingTxNativeOpExtension"
EXTENSION_DESCRIPTION "Ping Tx Native Operator extension"
EXTENSION_AUTHOR "NVIDIA"
EXTENSION_VERSION "0.5.0"
EXTENSION_VERSION "0.5.1"
EXTENSION_LICENSE "Apache-2.0"
EXTENSION_TARGET_NAME "gxf_wrapped_ping_tx_native_op" # optional, defaults to EXTENSION_NAME lowercase
EXTENSION_TARGET_PROPERTIES
Expand All @@ -64,7 +64,7 @@ wrap_operator_as_gxf_extension(
EXTENSION_NAME "PingRxNativeOpExtension"
EXTENSION_DESCRIPTION "Ping Rx Native Operator extension"
EXTENSION_AUTHOR "NVIDIA"
EXTENSION_VERSION "0.5.0"
EXTENSION_VERSION "0.5.1"
EXTENSION_LICENSE "Apache-2.0"
EXTENSION_TARGET_NAME "gxf_wrapped_ping_rx_native_op" # optional, defaults to EXTENSION_NAME lowercase
EXTENSION_TARGET_PROPERTIES
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ wrap_operator_as_gxf_extension(
EXTENSION_NAME "PingTxNativeOpExtension"
EXTENSION_DESCRIPTION "Ping Tx Native Operator extension"
EXTENSION_AUTHOR "NVIDIA"
EXTENSION_VERSION "0.5.0"
EXTENSION_VERSION "0.5.1"
EXTENSION_LICENSE "Apache-2.0"
EXTENSION_TARGET_NAME "gxf_wrapped_ping_tx_native_op" # optional, defaults to EXTENSION_NAME lowercase
EXTENSION_TARGET_PROPERTIES
Expand All @@ -57,7 +57,7 @@ wrap_operator_as_gxf_extension(
EXTENSION_NAME "PingRxNativeOpExtension"
EXTENSION_DESCRIPTION "Ping Rx Native Operator extension"
EXTENSION_AUTHOR "NVIDIA"
EXTENSION_VERSION "0.5.0"
EXTENSION_VERSION "0.5.1"
EXTENSION_LICENSE "Apache-2.0"
EXTENSION_TARGET_NAME "gxf_wrapped_ping_rx_native_op" # optional, defaults to EXTENSION_NAME lowercase
EXTENSION_TARGET_PROPERTIES
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@

GXF_EXT_FACTORY_BEGIN()
GXF_EXT_FACTORY_SET_INFO(0x12d01b4ee06f49ef, 0x93c4961834347385, "HoloscanWrapperExtension",
"Holoscan Wrapper extension", "NVIDIA", "0.5.0", "LICENSE");
"Holoscan Wrapper extension", "NVIDIA", "0.5.1", "LICENSE");

// Register types/components that are used by Holoscan
GXF_EXT_FACTORY_ADD_0(0x61510ca06aa9493b, 0x8a777d0bf87476b7, holoscan::Message,
Expand Down
2 changes: 2 additions & 0 deletions include/holoscan/operators/aja_source/aja_source.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,6 +85,8 @@ class AJASourceOp : public holoscan::Operator {
uint8_t current_buffer_ = 0;
uint8_t current_hw_frame_ = 0;
uint8_t current_overlay_hw_frame_ = 0;

bool is_igpu_ = false;
};

} // namespace holoscan::ops
Expand Down
1 change: 1 addition & 0 deletions modules/holoinfer/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ target_link_libraries(${PROJECT_NAME}
GXF::std
yaml-cpp
PRIVATE
CUDA::cuda_driver
CUDA::cudart
CUDA::nppidei
CUDA::nppig
Expand Down
8 changes: 0 additions & 8 deletions python/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -70,14 +70,6 @@ add_custom_target(holoscan-python-pyinit
)
add_dependencies(holoscan-python holoscan-python-pyinit)

# custom target for top-level config.py file
set(CMAKE_PYBIND11_CONFIG_FILE ${CMAKE_CURRENT_LIST_DIR}/config.py)
add_custom_target(holoscan-python-config
COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_PYBIND11_CONFIG_FILE}" "${CMAKE_PYBIND11_MODULE_OUT_DIR}/"
DEPENDS "${CMAKE_PYBIND11_CONFIG_FILE}"
)
add_dependencies(holoscan-python holoscan-python-config)

######################
# Add pybind11 modules
######################
Expand Down
Loading

0 comments on commit db666c3

Please sign in to comment.