From bf2047023fd7c551c94673b8ead61a929e1243df Mon Sep 17 00:00:00 2001 From: Fangjun Kuang Date: Thu, 9 Mar 2023 15:05:27 +0800 Subject: [PATCH] Add alternative URLs for cmake deps (#67) * Add alternative URLs for cmake deps * add missing files --- CMakeLists.txt | 2 +- cmake/googletest.cmake | 30 ++++++++++++++++++++++---- cmake/pybind11.cmake | 31 +++++++++++++++++++++++---- scripts/conda-cpu/kaldifeat/meta.yaml | 2 +- scripts/conda/kaldifeat/meta.yaml | 2 +- 5 files changed, 56 insertions(+), 11 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 82124ea..503501c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -7,7 +7,7 @@ project(kaldifeat) # remember to change the version in # scripts/conda/kaldifeat/meta.yaml # scripts/conda-cpu/kaldifeat/meta.yaml -set(kaldifeat_VERSION "1.22") +set(kaldifeat_VERSION "1.23") set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib") set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib") diff --git a/cmake/googletest.cmake b/cmake/googletest.cmake index 0795a30..f4d225a 100644 --- a/cmake/googletest.cmake +++ b/cmake/googletest.cmake @@ -24,8 +24,28 @@ function(download_googltest) include(FetchContent) - set(googletest_URL "https://github.com/google/googletest/archive/release-1.10.0.tar.gz") - set(googletest_HASH "SHA256=9dc9157a9a1551ec7a7e43daea9a694a0bb5fb8bec81235d8a1e6ef64c716dcb") + set(googletest_URL "https://github.com/google/googletest/archive/refs/tags/v1.13.0.tar.gz") + set(googletest_URL2 "https://huggingface.co/csukuangfj/k2-cmake-deps/resolve/main/googletest-1.13.0.tar.gz") + set(googletest_HASH "SHA256=ad7fdba11ea011c1d925b3289cf4af2c66a352e18d4c7264392fead75e919363") + + # If you don't have access to the Internet, + # please pre-download googletest + set(possible_file_locations + $ENV{HOME}/Downloads/googletest-1.13.0.tar.gz + ${PROJECT_SOURCE_DIR}/googletest-1.13.0.tar.gz + ${PROJECT_BINARY_DIR}/googletest-1.13.0.tar.gz + /tmp/googletest-1.13.0.tar.gz + /star-fj/fangjun/download/github/googletest-1.13.0.tar.gz + ) + + foreach(f IN LISTS possible_file_locations) + if(EXISTS ${f}) + set(googletest_URL "${f}") + file(TO_CMAKE_PATH "${googletest_URL}" googletest_URL) + set(googletest_URL2) + break() + endif() + endforeach() set(BUILD_GMOCK ON CACHE BOOL "" FORCE) set(INSTALL_GTEST OFF CACHE BOOL "" FORCE) @@ -33,13 +53,15 @@ function(download_googltest) set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) FetchContent_Declare(googletest - URL ${googletest_URL} + URL + ${googletest_URL} + ${googletest_URL2} URL_HASH ${googletest_HASH} ) FetchContent_GetProperties(googletest) if(NOT googletest_POPULATED) - message(STATUS "Downloading googletest") + message(STATUS "Downloading googletest from ${googletest_URL}") FetchContent_Populate(googletest) endif() message(STATUS "googletest is downloaded to ${googletest_SOURCE_DIR}") diff --git a/cmake/pybind11.cmake b/cmake/pybind11.cmake index aa99e6a..0ede964 100644 --- a/cmake/pybind11.cmake +++ b/cmake/pybind11.cmake @@ -8,17 +8,40 @@ function(download_pybind11) include(FetchContent) - set(pybind11_URL "https://github.com/pybind/pybind11/archive/v2.9.2.tar.gz") - set(pybind11_HASH "SHA256=6bd528c4dbe2276635dc787b6b1f2e5316cf6b49ee3e150264e455a0d68d19c1") + # latest commit as of 2022.10.31 that supports python 3.11 + set(pybind11_URL "https://github.com/pybind/pybind11/archive/5bc0943ed96836f46489f53961f6c438d2935357.zip") + set(pybind11_URL2 "https://huggingface.co/csukuangfj/k2-cmake-deps/resolve/main/pybind11-5bc0943ed96836f46489f53961f6c438d2935357.zip") + set(pybind11_HASH "SHA256=ff65a1a8c9e6ceec11e7ed9d296f2e22a63e9ff0c4264b3af29c72b4f18f25a0") + + # If you don't have access to the Internet, + # please pre-download pybind11 + set(possible_file_locations + $ENV{HOME}/Downloads/pybind11-5bc0943ed96836f46489f53961f6c438d2935357.zip + ${PROJECT_SOURCE_DIR}/pybind11-5bc0943ed96836f46489f53961f6c438d2935357.zip + ${PROJECT_BINARY_DIR}/pybind11-5bc0943ed96836f46489f53961f6c438d2935357.zip + /tmp/pybind11-5bc0943ed96836f46489f53961f6c438d2935357.zip + /star-fj/fangjun/download/github/pybind11-5bc0943ed96836f46489f53961f6c438d2935357.zip + ) + + foreach(f IN LISTS possible_file_locations) + if(EXISTS ${f}) + set(pybind11_URL "${f}") + file(TO_CMAKE_PATH "${pybind11_URL}" pybind11_URL) + set(pybind11_URL2) + break() + endif() + endforeach() FetchContent_Declare(pybind11 - URL ${pybind11_URL} + URL + ${pybind11_URL} + ${pybind11_URL2} URL_HASH ${pybind11_HASH} ) FetchContent_GetProperties(pybind11) if(NOT pybind11_POPULATED) - message(STATUS "Downloading pybind11") + message(STATUS "Downloading pybind11 from ${pybind11_URL}") FetchContent_Populate(pybind11) endif() message(STATUS "pybind11 is downloaded to ${pybind11_SOURCE_DIR}") diff --git a/scripts/conda-cpu/kaldifeat/meta.yaml b/scripts/conda-cpu/kaldifeat/meta.yaml index 005d8df..2fdea8a 100644 --- a/scripts/conda-cpu/kaldifeat/meta.yaml +++ b/scripts/conda-cpu/kaldifeat/meta.yaml @@ -1,6 +1,6 @@ package: name: kaldifeat - version: "1.22" + version: "1.23" source: path: "{{ environ.get('KALDIFEAT_ROOT_DIR') }}" diff --git a/scripts/conda/kaldifeat/meta.yaml b/scripts/conda/kaldifeat/meta.yaml index 0de720d..adbf194 100644 --- a/scripts/conda/kaldifeat/meta.yaml +++ b/scripts/conda/kaldifeat/meta.yaml @@ -1,6 +1,6 @@ package: name: kaldifeat - version: "1.22" + version: "1.23" source: path: "{{ environ.get('KALDIFEAT_ROOT_DIR') }}"