Skip to content

Commit

Permalink
Test using sherpa-onnx as a cmake subproject (#1961)
Browse files Browse the repository at this point in the history
  • Loading branch information
csukuangfj authored Mar 6, 2025
1 parent 7740dbf commit 1e23282
Show file tree
Hide file tree
Showing 4 changed files with 95 additions and 2 deletions.
17 changes: 17 additions & 0 deletions .github/scripts/as-cmake-sub-project/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
cmake_minimum_required(VERSION 3.13 FATAL_ERROR)

project(use-of-sherpa-onnx-as-a-sub-project)

if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/sherpa-onnx/setup.py")
message(FATAL_ERROR "Please download the source code of sherpa-onnx and put it inside this directory")
endif()

set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin")

include_directories(./sherpa-onnx)
add_subdirectory(./sherpa-onnx)

add_executable(main main.cc)
target_link_libraries(main sherpa-onnx-core)
10 changes: 10 additions & 0 deletions .github/scripts/as-cmake-sub-project/main.cc
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#include "sherpa-onnx/csrc/offline-recognizer.h"
#include "sherpa-onnx/csrc/parse-options.h"

int main(int32_t argc, char *argv[]) {
sherpa_onnx::ParseOptions po("help info");
sherpa_onnx::OfflineRecognizerConfig config;
config.Register(&po);
po.PrintUsage();
return 0;
}
66 changes: 66 additions & 0 deletions .github/workflows/as_cmake_sub_project.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
name: as_cmake_sub_project

on:
push:
branches:
- master
pull_request:
branches:
- master

workflow_dispatch:

concurrency:
group: as-cmake-sub-project-${{ github.ref }}
cancel-in-progress: true

jobs:
as_cmake_sub_project:
name: ${{ matrix.os }} shared ${{ matrix.shared_lib }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
shared_lib: [ON, OFF]

steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: ccache
uses: hendrikmuhs/ccache-action@v1.2
with:
key: ${{ matrix.os }}-${{ matrix.shared_lib }}-cmake-sub-project

- name: Display PWD
shell: bash
run: |
echo "pwd: $PWD"
ls -lh
du -h -d1 .
- name: Build
shell: bash
run: |
mv .github/scripts/as-cmake-sub-project ..
cd ../as-cmake-sub-project
ln -s $PWD/../sherpa-onnx .
mkdir build
cd build
cmake -DBUILD_SHARED_LIBS=${{ matrix.shared_lib }} ..
make -j2 main
- name: Test
shell: bash
run: |
cd ../as-cmake-sub-project
cd build
ls -lh lib
echo "----"
ls -lh bin
readelf -d ./bin/main
./bin/main
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -322,8 +322,8 @@ if(WIN32 AND MSVC)
add_compile_options("$<$<CXX_COMPILER_ID:MSVC>:/utf-8>")
endif()

list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/Modules)
list(APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake)
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/Modules)
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)

if(SHERPA_ONNX_ENABLE_WASM)
# Enable it for debugging in case there is something wrong.
Expand Down

0 comments on commit 1e23282

Please sign in to comment.