1
0
Fork 0
flightgear/3rdparty/iaxclient/lib/CMakeLists.txt

166 lines
4.7 KiB
Text
Raw Normal View History

# CMakeLists.txt, for utils/iaxclient/lib - 20130925
# even if we don't select the codec, speex is used for pre-processing audio
set(ENABLE_SPEXX 1)
set(IAXCLIENT_BASE_SOURCES
audio_encode.c
audio_file.c
audio_openal.c
codec_alaw.c
codec_gsm.c
codec_ulaw.c
iaxclient_lib.c
)
set(LIBIAX2_SOURCES
libiax2/src/iax.c
libiax2/src/iax2-parser.c
libiax2/src/jitterbuf.c
libiax2/src/md5.c
)
if (SYSTEM_GSM)
set(Gsm_FIND_REQUIRED TRUE)
find_package(Gsm)
endif(SYSTEM_GSM)
if (GSM_FOUND)
include_directories(${GSM_INCLUDE_DIR})
message(STATUS "Using GSM includes at: ${GSM_INCLUDE_DIR}")
message(STATUS "Using GSM libraries: ${GSM_LIBRARIES}")
else(GSM_FOUND)
set(GSM_SOURCES
gsm/src/add.c
gsm/src/code.c
gsm/src/debug.c
gsm/src/decode.c
gsm/src/gsm_create.c
gsm/src/gsm_decode.c
gsm/src/gsm_destroy.c
gsm/src/gsm_encode.c
gsm/src/gsm_explode.c
gsm/src/gsm_implode.c
gsm/src/gsm_option.c
gsm/src/gsm_print.c
gsm/src/long_term.c
gsm/src/lpc.c
gsm/src/preprocess.c
gsm/src/rpe.c
gsm/src/short_term.c
gsm/src/table.c
)
endif(GSM_FOUND)
if (WIN32)
list(APPEND IAXCLIENT_BASE_SOURCES winfuncs.c)
else()
list(APPEND IAXCLIENT_BASE_SOURCES unixfuncs.c)
endif(WIN32)
if (ENABLE_SPEXX)
list(APPEND IAXCLIENT_BASE_SOURCES codec_speex.c)
if (SYSTEM_SPEEX)
set(Speex_FIND_REQUIRED TRUE)
set(Speexdsp_FIND_REQUIRED TRUE)
find_package(Speex)
find_package(Speexdsp)
endif(SYSTEM_SPEEX)
if (SPEEX_FOUND AND SPEEXDSP_FOUND)
include_directories(${SPEEX_INCLUDE_DIR} ${SPEEXDSP_INCLUDE_DIR})
message(STATUS "Using speex includes at: ${SPEEX_INCLUDE_DIR}")
message(STATUS "Using speex libraries: ${SPEEX_LIBRARIES}")
message(STATUS "Using speex extended library includes at: ${SPEEXDSP_INCLUDE_DIR}")
message(STATUS "Using speex extended library libraries: ${SPEEXDSP_LIBRARIES}")
else(SPEEX_FOUND AND SPEEXDSP_FOUND)
set(SPEEX_SOURCES
libspeex/bits.c
libspeex/cb_search.c
libspeex/exc_10_16_table.c
libspeex/exc_10_32_table.c
libspeex/exc_20_32_table.c
libspeex/exc_5_256_table.c
libspeex/exc_5_64_table.c
libspeex/exc_8_128_table.c
libspeex/filters.c
libspeex/gain_table.c
libspeex/gain_table_lbr.c
libspeex/hexc_10_32_table.c
libspeex/hexc_table.c
libspeex/high_lsp_tables.c
libspeex/jitter.c
libspeex/lbr_48k_tables.c
libspeex/lpc.c
libspeex/lsp.c
libspeex/lsp_tables_nb.c
libspeex/ltp.c
libspeex/math_approx.c
libspeex/mdf.c
libspeex/medfilter.c
libspeex/misc.c
libspeex/modes.c
libspeex/nb_celp.c
libspeex/preprocess.c
libspeex/quant_lsp.c
libspeex/sb_celp.c
libspeex/smallft.c
libspeex/speex.c
libspeex/speex_callbacks.c
libspeex/speex_header.c
libspeex/stereo.c
libspeex/vbr.c
libspeex/vq.c
)
include_directories(${PROJECT_SOURCE_DIR}/3rdparty/iaxclient/lib/libspeex/include)
endif(SPEEX_FOUND AND SPEEXDSP_FOUND)
endif(ENABLE_SPEXX)
if (ENABLE_ALSA)
list(APPEND IAXCLIENT_BASE_SOURCES audio_alsa.c)
endif(ENABLE_ALSA)
if (ENABLE_PORTAUDIO)
list(APPEND IAXCLIENT_BASE_SOURCES audio_portaudio.c)
endif(ENABLE_PORTAUDIO)
if (APPLE)
add_definitions(-DMACOSX)
endif(APPLE)
list(APPEND IAXCLIENT_BASE_SOURCES spandsp/plc.c)
add_definitions(-DAUDIO_OPENAL=1)
add_definitions(-DLIBIAX)
# for GSM
add_definitions(-DHAS_STRING_H -DHAS_STDLIB_H)
add_definitions(-DCODEC_GSM)
if (MSVC)
# turn off various warnings
set(WFLAGS)
foreach(warning 4244 4305 4996)
set(WFLAGS "${WFLAGS} /wd${warning}")
endforeach()
add_definitions(${WFLAGS})
endif ()
add_definitions( -DHAVE_CONFIG_H ) # to use fgfs config.h to get FG version, if needed
add_definitions( -DLIBVER="SVN 261" ) # add an iaxclient_lib version string
include_directories(${PROJECT_SOURCE_DIR}/3rdparty/iaxclient/lib)
include_directories(${PROJECT_SOURCE_DIR}/3rdparty/iaxclient/lib/libiax2/src)
include_directories(${PROJECT_SOURCE_DIR}/3rdparty/iaxclient/lib/gsm/inc)
add_library(iaxclient_lib STATIC
${IAXCLIENT_BASE_SOURCES}
${GSM_SOURCES}
${SPEEX_SOURCES}
${LIBIAX2_SOURCES})
target_link_libraries(iaxclient_lib ${CMAKE_THREAD_LIBS_INIT} ${SPEEX_LIBRARIES} ${SPEEXDSP_LIBRARIES} ${GSM_LIBRARIES})
2013-09-30 16:32:59 +00:00
# eof