ZipVoice.AXERA / cpp /CMakeLists.txt
HY-2012's picture
Compatible with ZipVoice AXCL version
134b4c4 verified
Raw
History Blame Contribute Delete
1.59 kB
cmake_minimum_required(VERSION 3.13 FATAL_ERROR)
project(zipvoice)
if (NOT DEFINED CMAKE_CXX_STANDARD)
set(CMAKE_CXX_STANDARD 14)
endif()
if(CMAKE_BUILD_TYPE MATCHES Debug)
set(CMAKE_CXX_FLAGS "-fvisibility=hidden -g -O0")
elseif(CMAKE_BUILD_TYPE MATCHES Release)
set(CMAKE_CXX_FLAGS "-fvisibility=hidden -O2 -fdata-sections -ffunction-sections")
endif()
# Platform dependencies (AXERA or AXCL)
include(cmake/msp_dependencies.cmake)
include_directories(${MSP_INC_DIR})
# Project includes
include_directories(${CMAKE_SOURCE_DIR})
include_directories(${CMAKE_SOURCE_DIR}/src/)
# Core source files (common to AXERA and AXCL)
set(SRC
src/EngineWrapper.cpp
src/tokenizer.cpp
src/fbank.cpp
src/zipvoice_engine.cpp
src/vocoder.cpp
third_party/kissfft/kiss_fft.c
)
# AXCL-only source files (middleware + utilities)
if(AXCL)
aux_source_directory(${CMAKE_SOURCE_DIR}/src/middleware AXCL_SRCS)
aux_source_directory(${CMAKE_SOURCE_DIR}/src/utilities AXCL_SRCS)
list(APPEND SRC ${AXCL_SRCS})
message(STATUS "AXCL middleware: ${AXCL_SRCS}")
endif()
add_executable(${PROJECT_NAME} zipvoice.cpp ${SRC})
target_include_directories(${PROJECT_NAME} PRIVATE third_party/kissfft)
target_link_libraries(${PROJECT_NAME} ${MSP_LIBS})
install(TARGETS ${PROJECT_NAME}
RUNTIME DESTINATION ./)
set_target_properties(${PROJECT_NAME}
PROPERTIES
INSTALL_RPATH "$ORIGIN/")
message(STATUS "========================================")
message(STATUS "ZipVoice C++ Build Configuration")
message(STATUS "========================================")