From bfd4ce770e80bd13544d7134c3288d94f61783cc Mon Sep 17 00:00:00 2001 From: syb0rg Date: Fri, 29 Jul 2016 14:56:14 -0500 Subject: [PATCH 01/19] Initial commit of experimental CMake build system --- CMakeLists.txt | 44 +++++++++++++++++++++++++++ src/CMakeLists.txt | 7 +++++ src/libsphinxad/CMakeLists.txt | 9 ++++++ src/libsphinxbase/CMakeLists.txt | 4 +++ src/libsphinxbase/fe/CMakeLists.txt | 21 +++++++++++++ src/libsphinxbase/feat/CMakeLists.txt | 8 +++++ src/libsphinxbase/lm/CMakeLists.txt | 13 ++++++++ src/libsphinxbase/util/CMakeLists.txt | 30 ++++++++++++++++++ src/sphinx_adtools/CMakeLists.txt | 5 +++ src/sphinx_cepview/CMakeLists.txt | 3 ++ src/sphinx_fe/CMakeLists.txt | 3 ++ src/sphinx_jsgf2fsg/CMakeLists.txt | 3 ++ src/sphinx_lmtools/CMakeLists.txt | 5 +++ 13 files changed, 155 insertions(+) create mode 100644 CMakeLists.txt create mode 100644 src/CMakeLists.txt create mode 100644 src/libsphinxad/CMakeLists.txt create mode 100644 src/libsphinxbase/CMakeLists.txt create mode 100644 src/libsphinxbase/fe/CMakeLists.txt create mode 100644 src/libsphinxbase/feat/CMakeLists.txt create mode 100644 src/libsphinxbase/lm/CMakeLists.txt create mode 100644 src/libsphinxbase/util/CMakeLists.txt create mode 100644 src/sphinx_adtools/CMakeLists.txt create mode 100644 src/sphinx_cepview/CMakeLists.txt create mode 100644 src/sphinx_fe/CMakeLists.txt create mode 100644 src/sphinx_jsgf2fsg/CMakeLists.txt create mode 100644 src/sphinx_lmtools/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 index 00000000..69e0fe4b --- /dev/null +++ b/CMakeLists.txt @@ -0,0 +1,44 @@ +# +# Initial CMake and project setup +# + +CMAKE_MINIMUM_REQUIRED(VERSION 2.8 FATAL_ERROR) +SET(PROJECT_NAME sphinxbase) +PROJECT(${PROJECT_NAME}) + +SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") +SET_DIRECTORY_PROPERTIES(PROPERTIES EP_PREFIX ${CMAKE_BINARY_DIR}/build-data) + +# +# Setup compiler flags +# + +if (NOT CMAKE_BUILD_TYPE) + message(STATUS "No build type selected, default to Release") + set(CMAKE_BUILD_TYPE CACHE Release FORCE) +endif() + +set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -std=gnu11 -O0 -fprofile-arcs -ftest-coverage") +set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -std=gnu11 -O3") + +# +# Final project settings +# +configure_file("${CMAKE_SOURCE_DIR}/include/sphinx_config.h.in" "${CMAKE_SOURCE_DIR}/include/sphinx_config.h") +INCLUDE_DIRECTORIES(include) +ADD_SUBDIRECTORY(src) + +ADD_LIBRARY(${PROJECT_NAME} STATIC + #$ + $ + $ + $ + $ + $ + $ + $ + $ + $ + ) + +TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${LIBS}) \ No newline at end of file diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 index 00000000..c04ec89b --- /dev/null +++ b/src/CMakeLists.txt @@ -0,0 +1,7 @@ +#add_subdirectory(libsphinxad) +add_subdirectory(libsphinxbase) +add_subdirectory(sphinx_adtools) +add_subdirectory(sphinx_cepview) +add_subdirectory(sphinx_fe) +add_subdirectory(sphinx_jsgf2fsg) +add_subdirectory(sphinx_lmtools) \ No newline at end of file diff --git a/src/libsphinxad/CMakeLists.txt b/src/libsphinxad/CMakeLists.txt new file mode 100644 index 00000000..52020266 --- /dev/null +++ b/src/libsphinxad/CMakeLists.txt @@ -0,0 +1,9 @@ +SET(SOURCES ad_alsa.c + ad_base.c + ad_openal.c + ad_oss.c + ad_pulse.c + ad_win32.c + ) + +add_library(libsphinxad OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/libsphinxbase/CMakeLists.txt b/src/libsphinxbase/CMakeLists.txt new file mode 100644 index 00000000..91d7de87 --- /dev/null +++ b/src/libsphinxbase/CMakeLists.txt @@ -0,0 +1,4 @@ +add_subdirectory(fe) +add_subdirectory(feat) +add_subdirectory(lm) +add_subdirectory(util) \ No newline at end of file diff --git a/src/libsphinxbase/fe/CMakeLists.txt b/src/libsphinxbase/fe/CMakeLists.txt new file mode 100644 index 00000000..6548e379 --- /dev/null +++ b/src/libsphinxbase/fe/CMakeLists.txt @@ -0,0 +1,21 @@ +SET(SOURCES fe_interface.c + fe_internal.h + fe_noise.c + fe_noise.h + fe_prespch_buf.c + fe_prespch_buf.h + fe_sigproc.c + fe_type.h + fe_warp.c + fe_warp.h + fe_warp_affine.c + fe_warp_affine.h + fe_warp_inverse_linear.c + fe_warp_inverse_linear.h + fe_warp_piecewise_linear.c + fe_warp_piecewise_linear.h + fixlog.c + yin.c + ) + +add_library(fe OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/libsphinxbase/feat/CMakeLists.txt b/src/libsphinxbase/feat/CMakeLists.txt new file mode 100644 index 00000000..38de1ade --- /dev/null +++ b/src/libsphinxbase/feat/CMakeLists.txt @@ -0,0 +1,8 @@ +SET(SOURCES agc.c + cmn.c + cmn_live.c + feat.c + lda.c + ) + +add_library(feat OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/libsphinxbase/lm/CMakeLists.txt b/src/libsphinxbase/lm/CMakeLists.txt new file mode 100644 index 00000000..192cc78f --- /dev/null +++ b/src/libsphinxbase/lm/CMakeLists.txt @@ -0,0 +1,13 @@ +SET(SOURCES fsg_model.c + jsgf.c + jsgf_parser.c + jsgf_scanner.c + lm_trie.c + #lm_trie_quant.c + ngram_model.c + ngram_model_set.c + ngram_model_trie.c + ngrams_raw.c + ) + +add_library(lm OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/libsphinxbase/util/CMakeLists.txt b/src/libsphinxbase/util/CMakeLists.txt new file mode 100644 index 00000000..c5d9435d --- /dev/null +++ b/src/libsphinxbase/util/CMakeLists.txt @@ -0,0 +1,30 @@ +SET(SOURCES bio.c + #bitarr.c + bitvec.c + blas_lite.c + case.c + ckd_alloc.c + cmd_ln.c + dtoa.c + err.c + errno.c + f2c_lite.c + filename.c + genrand.c + glist.c + hash_table.c + heap.c + listelem_alloc.c + logmath.c + matrix.c + mmio.c + pio.c + priority_queue.c + profile.c + sbthread.c + slamch.c + slapack_lite.c + strfuncs.c + ) + +add_library(util OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/sphinx_adtools/CMakeLists.txt b/src/sphinx_adtools/CMakeLists.txt new file mode 100644 index 00000000..b322a287 --- /dev/null +++ b/src/sphinx_adtools/CMakeLists.txt @@ -0,0 +1,5 @@ +SET(SOURCES cont_seg.c + sphinx_pitch.c + ) + +add_library(sphinx_adtools OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/sphinx_cepview/CMakeLists.txt b/src/sphinx_cepview/CMakeLists.txt new file mode 100644 index 00000000..bae55921 --- /dev/null +++ b/src/sphinx_cepview/CMakeLists.txt @@ -0,0 +1,3 @@ +SET(SOURCES main_cepview.c) + +add_library(sphinx_cepview OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/sphinx_fe/CMakeLists.txt b/src/sphinx_fe/CMakeLists.txt new file mode 100644 index 00000000..1d1bba9a --- /dev/null +++ b/src/sphinx_fe/CMakeLists.txt @@ -0,0 +1,3 @@ +SET(SOURCES sphinx_fe.c) + +add_library(sphinx_fe OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/sphinx_jsgf2fsg/CMakeLists.txt b/src/sphinx_jsgf2fsg/CMakeLists.txt new file mode 100644 index 00000000..4532b281 --- /dev/null +++ b/src/sphinx_jsgf2fsg/CMakeLists.txt @@ -0,0 +1,3 @@ +SET(SOURCES main.c) + +add_library(sphinx_jsgf2fsg OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/sphinx_lmtools/CMakeLists.txt b/src/sphinx_lmtools/CMakeLists.txt new file mode 100644 index 00000000..95b2fc33 --- /dev/null +++ b/src/sphinx_lmtools/CMakeLists.txt @@ -0,0 +1,5 @@ +SET(SOURCES sphinx_lm_convert.c + sphinx_lm_eval.c + ) + +add_library(sphinx_lmtools OBJECT ${SOURCES}) \ No newline at end of file From 19c77f183c3eca8edcbdd6f001c4b4cb4dd58ca5 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Sun, 31 Jul 2016 12:06:01 -0500 Subject: [PATCH 02/19] Fixed compilation with bitarr.c --- src/libsphinxbase/util/CMakeLists.txt | 52 +++++++++++++-------------- src/libsphinxbase/util/bitarr.c | 4 +-- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/src/libsphinxbase/util/CMakeLists.txt b/src/libsphinxbase/util/CMakeLists.txt index c5d9435d..d98e11e7 100644 --- a/src/libsphinxbase/util/CMakeLists.txt +++ b/src/libsphinxbase/util/CMakeLists.txt @@ -1,30 +1,30 @@ SET(SOURCES bio.c - #bitarr.c - bitvec.c - blas_lite.c - case.c - ckd_alloc.c - cmd_ln.c - dtoa.c - err.c - errno.c - f2c_lite.c - filename.c - genrand.c - glist.c - hash_table.c - heap.c - listelem_alloc.c - logmath.c - matrix.c - mmio.c - pio.c - priority_queue.c - profile.c - sbthread.c - slamch.c - slapack_lite.c - strfuncs.c + bitarr.c + bitvec.c + blas_lite.c + case.c + ckd_alloc.c + cmd_ln.c + dtoa.c + err.c + errno.c + f2c_lite.c + filename.c + genrand.c + glist.c + hash_table.c + heap.c + listelem_alloc.c + logmath.c + matrix.c + mmio.c + pio.c + priority_queue.c + profile.c + sbthread.c + slamch.c + slapack_lite.c + strfuncs.c ) add_library(util OBJECT ${SOURCES}) \ No newline at end of file diff --git a/src/libsphinxbase/util/bitarr.c b/src/libsphinxbase/util/bitarr.c index a76b0331..8d64152b 100644 --- a/src/libsphinxbase/util/bitarr.c +++ b/src/libsphinxbase/util/bitarr.c @@ -81,7 +81,7 @@ static uint64 read_off(bitarr_address_t address) uint64 bitarr_read_int57(bitarr_address_t address, uint8 length, uint64 mask) { - return (read_off(address) >> get_shift(address.offset & 7, length)) & mask; + return ((int)read_off(address) >> get_shift(address.offset & 7, length)) & (int)mask; } void bitarr_write_int57(bitarr_address_t address, uint8 length, uint64 value) @@ -93,7 +93,7 @@ void bitarr_write_int57(bitarr_address_t address, uint8 length, uint64 value) value64 |= (value << get_shift(address.offset & 7, length)); memcpy(base_off, &value64, sizeof(value64)); #else - *(uint64 *)((uint8 *)(address.base) + (address.offset >> 3)) |= (value << get_shift(address.offset & 7, length)); + *(int *)((uint8 *)(address.base) + (address.offset >> 3)) |= ((int)value << get_shift(address.offset & 7, length)); #endif } From b0cbcf65f1914e20b13b2b01b9fb8c7293b3d6bd Mon Sep 17 00:00:00 2001 From: syb0rg Date: Sun, 31 Jul 2016 15:35:37 -0500 Subject: [PATCH 03/19] Fixed compilation of lm_trie_quant.c --- src/libsphinxbase/lm/CMakeLists.txt | 2 +- src/libsphinxbase/lm/lm_trie_quant.c | 10 ++-------- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/src/libsphinxbase/lm/CMakeLists.txt b/src/libsphinxbase/lm/CMakeLists.txt index 192cc78f..de275b15 100644 --- a/src/libsphinxbase/lm/CMakeLists.txt +++ b/src/libsphinxbase/lm/CMakeLists.txt @@ -3,7 +3,7 @@ SET(SOURCES fsg_model.c jsgf_parser.c jsgf_scanner.c lm_trie.c - #lm_trie_quant.c + lm_trie_quant.c ngram_model.c ngram_model_set.c ngram_model_trie.c diff --git a/src/libsphinxbase/lm/lm_trie_quant.c b/src/libsphinxbase/lm/lm_trie_quant.c index 525e69da..32cd4de6 100644 --- a/src/libsphinxbase/lm/lm_trie_quant.c +++ b/src/libsphinxbase/lm/lm_trie_quant.c @@ -275,14 +275,8 @@ lm_trie_quant_mwrite(lm_trie_quant_t * quant, bitarr_address_t address, int order_minus_2, float prob, float backoff) { bitarr_write_int57(address, quant->prob_bits + quant->bo_bits, - (uint64) ((bins_encode - (&quant->tables[order_minus_2][0], - prob) << quant-> - bo_bits) | bins_encode(&quant-> - tables - [order_minus_2] - [1], - backoff))); + (((int)bins_encode(&quant->tables[order_minus_2][0],prob) << quant->bo_bits) + | (int)bins_encode(&quant-> tables[order_minus_2][1], backoff))); } void From 9e35be7a005468afaec2da43b58887560d7eee49 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Mon, 1 Aug 2016 23:50:56 -0500 Subject: [PATCH 04/19] Replaced Unix assumption branch check --- src/libsphinxbase/util/profile.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libsphinxbase/util/profile.c b/src/libsphinxbase/util/profile.c index c8d84ca9..e2b506a0 100644 --- a/src/libsphinxbase/util/profile.c +++ b/src/libsphinxbase/util/profile.c @@ -73,7 +73,7 @@ # ifndef _WIN32_WCE # include # endif -#elif defined(HAVE_UNISTD_H) /* I know this, this is Unix... */ +#else # include # include # include From 42ed76802917f28ec7569ffebcec1333bf50cf41 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Thu, 4 Aug 2016 13:17:12 -0500 Subject: [PATCH 05/19] Add compilation of libsphinxad --- CMakeLists.txt | 2 +- src/CMakeLists.txt | 2 +- src/libsphinxad/CMakeLists.txt | 33 ++++++++++++++++++++++++++------- 3 files changed, 28 insertions(+), 9 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 69e0fe4b..96beeab1 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,7 +29,7 @@ INCLUDE_DIRECTORIES(include) ADD_SUBDIRECTORY(src) ADD_LIBRARY(${PROJECT_NAME} STATIC - #$ + $ $ $ $ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c04ec89b..5e405bb0 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,4 +1,4 @@ -#add_subdirectory(libsphinxad) +add_subdirectory(libsphinxad) add_subdirectory(libsphinxbase) add_subdirectory(sphinx_adtools) add_subdirectory(sphinx_cepview) diff --git a/src/libsphinxad/CMakeLists.txt b/src/libsphinxad/CMakeLists.txt index 52020266..ace86b62 100644 --- a/src/libsphinxad/CMakeLists.txt +++ b/src/libsphinxad/CMakeLists.txt @@ -1,9 +1,28 @@ -SET(SOURCES ad_alsa.c - ad_base.c - ad_openal.c - ad_oss.c - ad_pulse.c - ad_win32.c - ) +if (WIN32) + set(SOURCES ${SOURCES} ad_win32.c) +endif () + +find_package(PulseAudio) +if (PULSEAUDIO_FOUND) + set(SOURCES ${SOURCES} ad_pulse.c) + set(LIBS ${LIBS} ${PULSEAUDIO_LIBRARIES}) +endif() + +find_package(OSS) +if (OSS_FOUND) + set(SOURCES ${SOURCES} ad_oss.c) +endif() + +find_package(OpenAL) +if (OPENAL_FOUND) + set(SOURCES ${SOURCES} ad_openal.c) + set(LIBS ${LIBS} ${OPENAL_LIBRARY}) +endif() + +find_package(ALSA) +if (ALSA_FOUND) + set(SOURCES ${SOURCES} ad_alsa.c) + set(LIBS ${LIBS} ${ALSA_LIBRARIES}) +endif() add_library(libsphinxad OBJECT ${SOURCES}) \ No newline at end of file From 889437891ca873cfeee03c55a01c05840ab00cd6 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Thu, 4 Aug 2016 16:40:16 -0500 Subject: [PATCH 06/19] Add CMake module files --- cmake/FindOSS.cmake | 51 ++++++++++++++++++++++++++++++++++++++ cmake/FindPulseAudio.cmake | 43 ++++++++++++++++++++++++++++++++ 2 files changed, 94 insertions(+) create mode 100644 cmake/FindOSS.cmake create mode 100644 cmake/FindPulseAudio.cmake diff --git a/cmake/FindOSS.cmake b/cmake/FindOSS.cmake new file mode 100644 index 00000000..7470e7d6 --- /dev/null +++ b/cmake/FindOSS.cmake @@ -0,0 +1,51 @@ +# - Find Oss +# Find Oss headers and libraries. +# +# OSS_INCLUDE_DIR - where to find soundcard.h, etc. +# OSS_FOUND - True if Oss found. + +# OSS is not for APPLE or WINDOWS + +IF(APPLE OR WIN32) + RETURN() +ENDIF() + +FIND_PATH(LINUX_OSS_INCLUDE_DIR "linux/soundcard.h" + "/usr/include" "/usr/local/include" +) + +FIND_PATH(SYS_OSS_INCLUDE_DIR "sys/soundcard.h" + "/usr/include" "/usr/local/include" +) + +FIND_PATH(MACHINE_OSS_INCLUDE_DIR "machine/soundcard.h" + "/usr/include" "/usr/local/include" +) + +SET(OSS_FOUND FALSE) + +IF(LINUX_OSS_INCLUDE_DIR) + SET(OSS_FOUND TRUE) + SET(OSS_INCLUDE_DIR ${LINUX_OSS_INCLUDE_DIR}) + SET(HAVE_LINUX_SOUNDCARD_H 1) +ENDIF() + +IF(SYS_OSS_INCLUDE_DIR) + SET(OSS_FOUND TRUE) + SET(OSS_INCLUDE_DIR ${SYS_OSS_INCLUDE_DIR}) + SET(HAVE_SYS_SOUNDCARD_H 1) +ENDIF() + +IF(MACHINE_OSS_INCLUDE_DIR) + SET(OSS_FOUND TRUE) + SET(OSS_INCLUDE_DIR ${MACHINE_OSS_INCLUDE_DIR}) + SET(HAVE_MACHINE_SOUNDCARD_H 1) +ENDIF() + +MARK_AS_ADVANCED ( + OSS_FOUND + OSS_INCLUDE_DIR + LINUX_OSS_INCLUDE_DIR + SYS_OSS_INCLUDE_DIR + MACHINE_OSS_INCLUDE_DIR +) diff --git a/cmake/FindPulseAudio.cmake b/cmake/FindPulseAudio.cmake new file mode 100644 index 00000000..ff9c22e7 --- /dev/null +++ b/cmake/FindPulseAudio.cmake @@ -0,0 +1,43 @@ +# - Find PulseAudio includes and libraries +# +# PULSEAUDIO_FOUND - True if PULSEAUDIO_INCLUDE_DIR & +# PULSEAUDIO_LIBRARY are found +# PULSEAUDIO_LIBRARIES - Set when PULSEAUDIO_LIBRARY is found +# PULSEAUDIO_INCLUDE_DIRS - Set when PULSEAUDIO_INCLUDE_DIR is found +# +# PULSEAUDIO_INCLUDE_DIR - where to find pulse/pulseaudio.h, etc. +# PULSEAUDIO_LIBRARY - the pulse library +# PULSEAUDIO_VERSION_STRING - the version of PulseAudio found +# + +find_path(PULSEAUDIO_INCLUDE_DIR + NAMES pulse/pulseaudio.h + DOC "The PulseAudio include directory" +) + +find_library(PULSEAUDIO_LIBRARY + NAMES pulse + DOC "The PulseAudio library" +) + +if(PULSEAUDIO_INCLUDE_DIR AND EXISTS "${PULSEAUDIO_INCLUDE_DIR}/pulse/version.h") + file(STRINGS "${PULSEAUDIO_INCLUDE_DIR}/pulse/version.h" pulse_version_str + REGEX "^#define[\t ]+pa_get_headers_version\\(\\)[\t ]+\\(\".*\"\\)") + + string(REGEX REPLACE "^.*pa_get_headers_version\\(\\)[\t ]+\\(\"([^\"]*)\"\\).*$" "\\1" + PULSEAUDIO_VERSION_STRING "${pulse_version_str}") + unset(pulse_version_str) +endif() + +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(PulseAudio + REQUIRED_VARS PULSEAUDIO_LIBRARY PULSEAUDIO_INCLUDE_DIR + VERSION_VAR PULSEAUDIO_VERSION_STRING +) + +if(PULSEAUDIO_FOUND) + set(PULSEAUDIO_LIBRARIES ${PULSEAUDIO_LIBRARY}) + set(PULSEAUDIO_INCLUDE_DIRS ${PULSEAUDIO_INCLUDE_DIR}) +endif() + +mark_as_advanced(PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY) \ No newline at end of file From e1941dcc1ad3e6ed4d780bf0ee9912af5c3c3cca Mon Sep 17 00:00:00 2001 From: syb0rg Date: Thu, 4 Aug 2016 16:54:10 -0500 Subject: [PATCH 07/19] Fix compilation with OpenAL --- src/libsphinxad/CMakeLists.txt | 2 ++ src/libsphinxad/ad_openal.c | 5 ++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/libsphinxad/CMakeLists.txt b/src/libsphinxad/CMakeLists.txt index ace86b62..f372a66a 100644 --- a/src/libsphinxad/CMakeLists.txt +++ b/src/libsphinxad/CMakeLists.txt @@ -1,3 +1,5 @@ +include_directories(${CMAKE_SOURCE_DIR}/include/sphinxbase) + if (WIN32) set(SOURCES ${SOURCES} ad_win32.c) endif () diff --git a/src/libsphinxad/ad_openal.c b/src/libsphinxad/ad_openal.c index 82e63008..edb05577 100644 --- a/src/libsphinxad/ad_openal.c +++ b/src/libsphinxad/ad_openal.c @@ -34,14 +34,13 @@ * ==================================================================== * */ -#include #include #include #include "ad.h" -#include -#include +#include +#include struct ad_rec_s { ALCdevice * device; From 741f627b1dd076bdec1c0abf45b5e7c7831e31d9 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Thu, 4 Aug 2016 17:08:39 -0500 Subject: [PATCH 08/19] Make OpenAL build more portable --- src/libsphinxad/CMakeLists.txt | 1 + src/libsphinxad/ad_openal.c | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/libsphinxad/CMakeLists.txt b/src/libsphinxad/CMakeLists.txt index f372a66a..3be13cdf 100644 --- a/src/libsphinxad/CMakeLists.txt +++ b/src/libsphinxad/CMakeLists.txt @@ -19,6 +19,7 @@ find_package(OpenAL) if (OPENAL_FOUND) set(SOURCES ${SOURCES} ad_openal.c) set(LIBS ${LIBS} ${OPENAL_LIBRARY}) + include_directories(${OPENAL_INCLUDE_DIR}) endif() find_package(ALSA) diff --git a/src/libsphinxad/ad_openal.c b/src/libsphinxad/ad_openal.c index edb05577..d3d8f113 100644 --- a/src/libsphinxad/ad_openal.c +++ b/src/libsphinxad/ad_openal.c @@ -39,8 +39,8 @@ #include "ad.h" -#include -#include +#include +#include struct ad_rec_s { ALCdevice * device; From 0ce23e2aa2361798d514a4f05989c05eb0e25881 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Thu, 4 Aug 2016 17:28:15 -0500 Subject: [PATCH 09/19] Remove unneeded header --- src/libsphinxad/ad_alsa.c | 1 - src/libsphinxad/ad_base.c | 1 - src/libsphinxad/ad_oss.c | 1 - src/libsphinxad/ad_pulse.c | 1 - 4 files changed, 4 deletions(-) diff --git a/src/libsphinxad/ad_alsa.c b/src/libsphinxad/ad_alsa.c index 6521cb19..8020a2f3 100644 --- a/src/libsphinxad/ad_alsa.c +++ b/src/libsphinxad/ad_alsa.c @@ -75,7 +75,6 @@ #include #include #include -#include #include #include "prim_type.h" diff --git a/src/libsphinxad/ad_base.c b/src/libsphinxad/ad_base.c index d248ccdb..8d81075e 100644 --- a/src/libsphinxad/ad_base.c +++ b/src/libsphinxad/ad_base.c @@ -50,7 +50,6 @@ #include #include -#include #include "prim_type.h" #include "ad.h" diff --git a/src/libsphinxad/ad_oss.c b/src/libsphinxad/ad_oss.c index d3a936d9..c75d3c63 100644 --- a/src/libsphinxad/ad_oss.c +++ b/src/libsphinxad/ad_oss.c @@ -64,7 +64,6 @@ #include #include #include -#include #include "prim_type.h" #include "ad.h" diff --git a/src/libsphinxad/ad_pulse.c b/src/libsphinxad/ad_pulse.c index 9df3ea73..7883f484 100644 --- a/src/libsphinxad/ad_pulse.c +++ b/src/libsphinxad/ad_pulse.c @@ -39,7 +39,6 @@ #include #include -#include #include #include From 5713af40631bbcc64971c1951fc5d6ca4239b7f7 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Thu, 4 Aug 2016 18:27:17 -0500 Subject: [PATCH 10/19] Set LIBS variable properly --- src/libsphinxad/CMakeLists.txt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/libsphinxad/CMakeLists.txt b/src/libsphinxad/CMakeLists.txt index 3be13cdf..2e5bd435 100644 --- a/src/libsphinxad/CMakeLists.txt +++ b/src/libsphinxad/CMakeLists.txt @@ -7,25 +7,25 @@ endif () find_package(PulseAudio) if (PULSEAUDIO_FOUND) set(SOURCES ${SOURCES} ad_pulse.c) - set(LIBS ${LIBS} ${PULSEAUDIO_LIBRARIES}) + set(LIBS ${LIBS} ${PULSEAUDIO_LIBRARIES} CACHE INTERNAL "libs") endif() find_package(OSS) if (OSS_FOUND) - set(SOURCES ${SOURCES} ad_oss.c) + set(SOURCES ${SOURCES} ad_oss.c ) endif() find_package(OpenAL) if (OPENAL_FOUND) set(SOURCES ${SOURCES} ad_openal.c) - set(LIBS ${LIBS} ${OPENAL_LIBRARY}) + set(LIBS ${LIBS} ${OPENAL_LIBRARY} CACHE INTERNAL "libs") include_directories(${OPENAL_INCLUDE_DIR}) endif() find_package(ALSA) if (ALSA_FOUND) set(SOURCES ${SOURCES} ad_alsa.c) - set(LIBS ${LIBS} ${ALSA_LIBRARIES}) + set(LIBS ${LIBS} ${ALSA_LIBRARIES} CACHE INTERNAL "libs") endif() add_library(libsphinxad OBJECT ${SOURCES}) \ No newline at end of file From 884054b8bdf87fe8e3b47c46e35133728f152e28 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Sat, 6 Aug 2016 21:37:20 -0500 Subject: [PATCH 11/19] Add check for one test --- CMakeLists.txt | 1 + test/CMakeLists.txt | 1 + test/unit/CMakeLists.txt | 15 +++++++++++++++ test/unit/test_alloc/CMakeLists.txt | 23 +++++++++++++++++++++++ 4 files changed, 40 insertions(+) create mode 100644 test/CMakeLists.txt create mode 100644 test/unit/CMakeLists.txt create mode 100644 test/unit/test_alloc/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 96beeab1..6da0269d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,6 +27,7 @@ set(CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -std=gnu11 -O3") configure_file("${CMAKE_SOURCE_DIR}/include/sphinx_config.h.in" "${CMAKE_SOURCE_DIR}/include/sphinx_config.h") INCLUDE_DIRECTORIES(include) ADD_SUBDIRECTORY(src) +ADD_SUBDIRECTORY(test EXCLUDE_FROM_ALL) ADD_LIBRARY(${PROJECT_NAME} STATIC $ diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt new file mode 100644 index 00000000..059f2a25 --- /dev/null +++ b/test/CMakeLists.txt @@ -0,0 +1 @@ +add_subdirectory(unit) \ No newline at end of file diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt new file mode 100644 index 00000000..71bd9ed4 --- /dev/null +++ b/test/unit/CMakeLists.txt @@ -0,0 +1,15 @@ +add_subdirectory(test_alloc) +#add_subdirectory(test_bitvec) +#add_subdirectory(test_case) +#add_subdirectory(test_cmdln) +#add_subdirectory(test_fe) +#add_subdirectory(test_feat) +#add_subdirectory(test_fsg) +#add_subdirectory(test_hash) +#add_subdirectory(test_lineiter) +#add_subdirectory(test_logmath) +#add_subdirectory(test_matrix) +#add_subdirectory(test_ngram) +#add_subdirectory(test_string) +#add_subdirectory(test_thread) +#add_subdirectory(test_util) \ No newline at end of file diff --git a/test/unit/test_alloc/CMakeLists.txt b/test/unit/test_alloc/CMakeLists.txt new file mode 100644 index 00000000..50e36d26 --- /dev/null +++ b/test/unit/test_alloc/CMakeLists.txt @@ -0,0 +1,23 @@ +include_directories(${CMAKE_SOURCE_DIR}/include/sphinxbase) + +SET(TESTS test_ckd_alloc + test_ckd_alloc_abort + test_ckd_alloc_catch + test_ckd_alloc_fail + test_listelem_alloc +) + +enable_testing() +add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} DEPENDS ${TESTS}) +set(CMAKE_CTEST_COMMAND ctest -V) + +foreach (test ${TESTS}) + add_executable(${test} ${test}) + target_link_libraries(${test} ${PROJECT_NAME}) + set_target_properties(${test} + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} + ) + add_test(NAME ${test} COMMAND ${test} WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) + add_dependencies(check ${test}) +endforeach () From 89a2b8ff1abda30d2439c99703c5738ca5928cff Mon Sep 17 00:00:00 2001 From: syb0rg Date: Sat, 6 Aug 2016 21:38:40 -0500 Subject: [PATCH 12/19] Set LIBS globally --- src/libsphinxad/CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libsphinxad/CMakeLists.txt b/src/libsphinxad/CMakeLists.txt index 2e5bd435..1465037f 100644 --- a/src/libsphinxad/CMakeLists.txt +++ b/src/libsphinxad/CMakeLists.txt @@ -7,7 +7,7 @@ endif () find_package(PulseAudio) if (PULSEAUDIO_FOUND) set(SOURCES ${SOURCES} ad_pulse.c) - set(LIBS ${LIBS} ${PULSEAUDIO_LIBRARIES} CACHE INTERNAL "libs") + set(LIBS ${PULSEAUDIO_LIBRARIES} CACHE INTERNAL "libs") endif() find_package(OSS) @@ -18,14 +18,14 @@ endif() find_package(OpenAL) if (OPENAL_FOUND) set(SOURCES ${SOURCES} ad_openal.c) - set(LIBS ${LIBS} ${OPENAL_LIBRARY} CACHE INTERNAL "libs") + set(LIBS ${OPENAL_LIBRARY} CACHE INTERNAL "libs") include_directories(${OPENAL_INCLUDE_DIR}) endif() find_package(ALSA) if (ALSA_FOUND) set(SOURCES ${SOURCES} ad_alsa.c) - set(LIBS ${LIBS} ${ALSA_LIBRARIES} CACHE INTERNAL "libs") + set(LIBS ${ALSA_LIBRARIES} CACHE INTERNAL "libs") endif() add_library(libsphinxad OBJECT ${SOURCES}) \ No newline at end of file From b21d652f323d263b12c91da39134d23c91a3aca0 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Sun, 7 Aug 2016 13:23:55 -0500 Subject: [PATCH 13/19] Fix ranlib no symbols problem --- src/libsphinxbase/util/CMakeLists.txt | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/libsphinxbase/util/CMakeLists.txt b/src/libsphinxbase/util/CMakeLists.txt index d98e11e7..865b3910 100644 --- a/src/libsphinxbase/util/CMakeLists.txt +++ b/src/libsphinxbase/util/CMakeLists.txt @@ -7,7 +7,6 @@ SET(SOURCES bio.c cmd_ln.c dtoa.c err.c - errno.c f2c_lite.c filename.c genrand.c @@ -26,5 +25,9 @@ SET(SOURCES bio.c slapack_lite.c strfuncs.c ) - + +if (WIN32) + set(SOURCES ${SOURCES} errno.c) +endif () + add_library(util OBJECT ${SOURCES}) \ No newline at end of file From e7c2e5aa691b4fcecfd063ee15fa4752046ae5cf Mon Sep 17 00:00:00 2001 From: syb0rg Date: Sun, 7 Aug 2016 15:48:30 -0500 Subject: [PATCH 14/19] Cleanup function --- src/libsphinxad/ad_openal.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/src/libsphinxad/ad_openal.c b/src/libsphinxad/ad_openal.c index d3d8f113..8ac469c9 100644 --- a/src/libsphinxad/ad_openal.c +++ b/src/libsphinxad/ad_openal.c @@ -112,16 +112,9 @@ ad_read(ad_rec_t * r, int16 * buf, int32 max) } -int32 -ad_close(ad_rec_t * r) +int32 ad_close(ad_rec_t *r) { - ALCboolean isClosed; - - isClosed = alcCaptureCloseDevice(r -> device); + ALCboolean isClosed = alcCaptureCloseDevice(r -> device); - if (isClosed) { - return 0; - } else { - return -1; - } + return isClosed ? 0 : -1; } From 7ddab2c534aeaa9284bb4548726150f11db87bd7 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Sun, 7 Aug 2016 16:10:11 -0500 Subject: [PATCH 15/19] Fix compilation of library & programs --- CMakeLists.txt | 16 ++++++++++------ src/sphinx_adtools/CMakeLists.txt | 15 +++++++++++---- src/sphinx_cepview/CMakeLists.txt | 9 ++++++++- src/sphinx_fe/CMakeLists.txt | 10 ++++++++-- src/sphinx_jsgf2fsg/CMakeLists.txt | 10 ++++++++-- src/sphinx_lmtools/CMakeLists.txt | 13 ++++++++++--- 6 files changed, 55 insertions(+), 18 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6da0269d..111c1614 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,6 +8,7 @@ PROJECT(${PROJECT_NAME}) SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") SET_DIRECTORY_PROPERTIES(PROPERTIES EP_PREFIX ${CMAKE_BINARY_DIR}/build-data) +set(CMAKE_MACOSX_RPATH TRUE) # # Setup compiler flags @@ -29,17 +30,20 @@ INCLUDE_DIRECTORIES(include) ADD_SUBDIRECTORY(src) ADD_SUBDIRECTORY(test EXCLUDE_FROM_ALL) -ADD_LIBRARY(${PROJECT_NAME} STATIC +ADD_LIBRARY(${PROJECT_NAME}_static STATIC $ $ $ $ $ - $ - $ - $ - $ - $ ) +ADD_LIBRARY(${PROJECT_NAME} SHARED + $ + $ + $ + $ + $ +) + TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${LIBS}) \ No newline at end of file diff --git a/src/sphinx_adtools/CMakeLists.txt b/src/sphinx_adtools/CMakeLists.txt index b322a287..45737846 100644 --- a/src/sphinx_adtools/CMakeLists.txt +++ b/src/sphinx_adtools/CMakeLists.txt @@ -1,5 +1,12 @@ -SET(SOURCES cont_seg.c - sphinx_pitch.c +set(PROGRAMS cont_seg + sphinx_pitch ) - -add_library(sphinx_adtools OBJECT ${SOURCES}) \ No newline at end of file + +foreach (program ${PROGRAMS}) + add_executable(${program} ${program}) + target_link_libraries(${program} ${PROJECT_NAME}) + set_target_properties (${program} + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} + ) +endforeach () \ No newline at end of file diff --git a/src/sphinx_cepview/CMakeLists.txt b/src/sphinx_cepview/CMakeLists.txt index bae55921..211aa86b 100644 --- a/src/sphinx_cepview/CMakeLists.txt +++ b/src/sphinx_cepview/CMakeLists.txt @@ -1,3 +1,10 @@ +set(PROGRAM sphinx_cepview) + SET(SOURCES main_cepview.c) -add_library(sphinx_cepview OBJECT ${SOURCES}) \ No newline at end of file +add_executable(${PROGRAM} ${SOURCES}) +target_link_libraries(${PROGRAM} ${PROJECT_NAME}) +set_target_properties (${PROGRAM} + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} +) \ No newline at end of file diff --git a/src/sphinx_fe/CMakeLists.txt b/src/sphinx_fe/CMakeLists.txt index 1d1bba9a..0e57d7f5 100644 --- a/src/sphinx_fe/CMakeLists.txt +++ b/src/sphinx_fe/CMakeLists.txt @@ -1,3 +1,9 @@ -SET(SOURCES sphinx_fe.c) +set(PROGRAM sphinx_fe) +set(SOURCES sphinx_fe.c) -add_library(sphinx_fe OBJECT ${SOURCES}) \ No newline at end of file +add_executable(${PROGRAM} ${SOURCES}) +target_link_libraries(${PROGRAM} ${PROJECT_NAME}) +set_target_properties (${PROGRAM} + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} +) \ No newline at end of file diff --git a/src/sphinx_jsgf2fsg/CMakeLists.txt b/src/sphinx_jsgf2fsg/CMakeLists.txt index 4532b281..07af436c 100644 --- a/src/sphinx_jsgf2fsg/CMakeLists.txt +++ b/src/sphinx_jsgf2fsg/CMakeLists.txt @@ -1,3 +1,9 @@ -SET(SOURCES main.c) +set(PROGRAM sphinx_jsgf2fsg) +set(SOURCES main.c) -add_library(sphinx_jsgf2fsg OBJECT ${SOURCES}) \ No newline at end of file +add_executable(${PROGRAM} ${SOURCES}) +target_link_libraries(${PROGRAM} ${PROJECT_NAME}) +set_target_properties (${PROGRAM} + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} +) \ No newline at end of file diff --git a/src/sphinx_lmtools/CMakeLists.txt b/src/sphinx_lmtools/CMakeLists.txt index 95b2fc33..23e12dcb 100644 --- a/src/sphinx_lmtools/CMakeLists.txt +++ b/src/sphinx_lmtools/CMakeLists.txt @@ -1,5 +1,12 @@ -SET(SOURCES sphinx_lm_convert.c - sphinx_lm_eval.c +set(PROGRAMS sphinx_lm_convert.c + sphinx_lm_eval.c ) -add_library(sphinx_lmtools OBJECT ${SOURCES}) \ No newline at end of file +foreach (program ${PROGRAMS}) + add_executable(${program} ${program}) + target_link_libraries(${program} ${PROJECT_NAME}) + set_target_properties (${program} + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR} + ) +endforeach () \ No newline at end of file From b452123660e543c7897e2fe409df19f9e5e21880 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Sun, 7 Aug 2016 17:34:04 -0500 Subject: [PATCH 16/19] Make code position independent --- src/libsphinxad/CMakeLists.txt | 3 ++- src/libsphinxbase/fe/CMakeLists.txt | 4 +++- src/libsphinxbase/feat/CMakeLists.txt | 3 ++- src/libsphinxbase/lm/CMakeLists.txt | 3 ++- src/libsphinxbase/util/CMakeLists.txt | 3 ++- 5 files changed, 11 insertions(+), 5 deletions(-) diff --git a/src/libsphinxad/CMakeLists.txt b/src/libsphinxad/CMakeLists.txt index 1465037f..a52e3c11 100644 --- a/src/libsphinxad/CMakeLists.txt +++ b/src/libsphinxad/CMakeLists.txt @@ -28,4 +28,5 @@ if (ALSA_FOUND) set(LIBS ${ALSA_LIBRARIES} CACHE INTERNAL "libs") endif() -add_library(libsphinxad OBJECT ${SOURCES}) \ No newline at end of file +add_library(libsphinxad OBJECT ${SOURCES}) +set_property(TARGET libsphinxad PROPERTY POSITION_INDEPENDENT_CODE TRUE) \ No newline at end of file diff --git a/src/libsphinxbase/fe/CMakeLists.txt b/src/libsphinxbase/fe/CMakeLists.txt index 6548e379..6b331353 100644 --- a/src/libsphinxbase/fe/CMakeLists.txt +++ b/src/libsphinxbase/fe/CMakeLists.txt @@ -18,4 +18,6 @@ SET(SOURCES fe_interface.c yin.c ) -add_library(fe OBJECT ${SOURCES}) \ No newline at end of file +add_library(fe OBJECT ${SOURCES}) + +set_property(TARGET fe PROPERTY POSITION_INDEPENDENT_CODE TRUE) \ No newline at end of file diff --git a/src/libsphinxbase/feat/CMakeLists.txt b/src/libsphinxbase/feat/CMakeLists.txt index 38de1ade..d5dd2392 100644 --- a/src/libsphinxbase/feat/CMakeLists.txt +++ b/src/libsphinxbase/feat/CMakeLists.txt @@ -5,4 +5,5 @@ SET(SOURCES agc.c lda.c ) -add_library(feat OBJECT ${SOURCES}) \ No newline at end of file +add_library(feat OBJECT ${SOURCES}) +set_property(TARGET feat PROPERTY POSITION_INDEPENDENT_CODE TRUE) \ No newline at end of file diff --git a/src/libsphinxbase/lm/CMakeLists.txt b/src/libsphinxbase/lm/CMakeLists.txt index de275b15..eb51651b 100644 --- a/src/libsphinxbase/lm/CMakeLists.txt +++ b/src/libsphinxbase/lm/CMakeLists.txt @@ -10,4 +10,5 @@ SET(SOURCES fsg_model.c ngrams_raw.c ) -add_library(lm OBJECT ${SOURCES}) \ No newline at end of file +add_library(lm OBJECT ${SOURCES}) +set_property(TARGET lm PROPERTY POSITION_INDEPENDENT_CODE TRUE) \ No newline at end of file diff --git a/src/libsphinxbase/util/CMakeLists.txt b/src/libsphinxbase/util/CMakeLists.txt index 865b3910..1bb2b0e3 100644 --- a/src/libsphinxbase/util/CMakeLists.txt +++ b/src/libsphinxbase/util/CMakeLists.txt @@ -30,4 +30,5 @@ if (WIN32) set(SOURCES ${SOURCES} errno.c) endif () -add_library(util OBJECT ${SOURCES}) \ No newline at end of file +add_library(util OBJECT ${SOURCES}) +set_property(TARGET util PROPERTY POSITION_INDEPENDENT_CODE TRUE) \ No newline at end of file From 007b3d0134b1d46d4cdd7c9a0a7fe306bce055ce Mon Sep 17 00:00:00 2001 From: syb0rg Date: Sun, 7 Aug 2016 17:35:42 -0500 Subject: [PATCH 17/19] Remove program compilation --- src/CMakeLists.txt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 5e405bb0..05f43485 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,7 +1,7 @@ add_subdirectory(libsphinxad) add_subdirectory(libsphinxbase) -add_subdirectory(sphinx_adtools) -add_subdirectory(sphinx_cepview) -add_subdirectory(sphinx_fe) -add_subdirectory(sphinx_jsgf2fsg) -add_subdirectory(sphinx_lmtools) \ No newline at end of file +#add_subdirectory(sphinx_adtools) +#add_subdirectory(sphinx_cepview) +#add_subdirectory(sphinx_fe) +#add_subdirectory(sphinx_jsgf2fsg) +#add_subdirectory(sphinx_lmtools) \ No newline at end of file From ef88146ff5a42aa59f1771860611f49fdcf0f054 Mon Sep 17 00:00:00 2001 From: syb0rg Date: Fri, 12 Aug 2016 12:24:31 -0500 Subject: [PATCH 18/19] Turn off rpath --- CMakeLists.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 111c1614..0899f0ed 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,7 +8,7 @@ PROJECT(${PROJECT_NAME}) SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake") SET_DIRECTORY_PROPERTIES(PROPERTIES EP_PREFIX ${CMAKE_BINARY_DIR}/build-data) -set(CMAKE_MACOSX_RPATH TRUE) +set(CMAKE_MACOSX_RPATH FALSE) # # Setup compiler flags @@ -46,4 +46,4 @@ ADD_LIBRARY(${PROJECT_NAME} SHARED $ ) -TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${LIBS}) \ No newline at end of file +TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${LIBS}) From a6a6dc9fcb6269de376513e8dde7d46b347affec Mon Sep 17 00:00:00 2001 From: syb0rg Date: Wed, 28 Dec 2016 10:07:15 -0600 Subject: [PATCH 19/19] Link proper Windows libraries --- src/libsphinxad/CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/libsphinxad/CMakeLists.txt b/src/libsphinxad/CMakeLists.txt index a52e3c11..1d898445 100644 --- a/src/libsphinxad/CMakeLists.txt +++ b/src/libsphinxad/CMakeLists.txt @@ -2,6 +2,7 @@ include_directories(${CMAKE_SOURCE_DIR}/include/sphinxbase) if (WIN32) set(SOURCES ${SOURCES} ad_win32.c) + set(LIBS winmm CACHE INTERNAL "libs") endif () find_package(PulseAudio) @@ -29,4 +30,4 @@ if (ALSA_FOUND) endif() add_library(libsphinxad OBJECT ${SOURCES}) -set_property(TARGET libsphinxad PROPERTY POSITION_INDEPENDENT_CODE TRUE) \ No newline at end of file +set_property(TARGET libsphinxad PROPERTY POSITION_INDEPENDENT_CODE TRUE)