You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
rosegarden/src/CMakeLists.txt

162 lines
4.0 KiB
CMake

#################################################
#
# (C) 2011 Timothy Pearson
# kb9vqf (AT) pearsoncomputing.net
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
include_directories(
${TQT_INCLUDE_DIRS}
${TDE_INCLUDE_DIR}
${CMAKE_BINARY_DIR}
${CMAKE_BINARY_DIR}/src
${CMAKE_SOURCE_DIR}/src
${CMAKE_SOURCE_DIR}/src/base
${ALSA_INC_DIR}
${JACK_INC_DIR}
${XFT_INC_DIR}
${DSSI_INC_DIR}
${LIBLO_INC_DIR}
${LADSPA_INC_DIR}
${LRDF_INC_DIR}
${LIRC_INC_DIR}
${FFTW3F_INC_DIR}
)
link_directories(
${TQT_LIBRARY_DIRS}
${TDE_LIBRARY_DIR}
${ALSA_LIB_DIR}
${JACK_LIB_DIR}
${XFT_LIB_DIR}
${LIBLO_LIB_DIR}
${LRDF_LIB_DIR}
${LIRC_LIB_DIR}
${FFTW3F_LIB_DIR}
${CMAKE_BINARY_DIR}/src
)
##### include cmake file lists ##################
set( CMAKE_INCLUDE_PATH "." )
# Common sources
include( BaseFileList.txt )
include( MiscFileList.txt )
# Sound sources
include( SoundFileList.txt )
# sequencer executable
include( SequencerFileList.txt )
# gui executable
include( GUIFileList.txt )
##### other data ################################
# Install helper scripts
install( PROGRAMS
helpers/rosegarden-lilypondview
helpers/rosegarden-project-package
helpers/rosegarden-audiofile-importer
DESTINATION ${BIN_INSTALL_DIR} )
# Install GUI resource files
file( GLOB RC_FILES gui/ui/*.rc )
install( FILES ${RC_FILES} DESTINATION ${DATA_INSTALL_DIR}/rosegarden )
##### RosegardenCommon ##############################
tde_add_library( RosegardenCommon STATIC AUTOMOC
SOURCES ${misc_SRCS} ${base_SRCS} ${common_sound_SRCS}
LINK ${CMAKE_DL_LIBS} ${FFTW3F_LIBS} ${LRDF_LIBS}
DESTINATION ${LIB_INSTALL_DIR}
)
##### rosegardensequencer ###########################
if( WANT_SOUND )
set( snd_SRCS ${sound_SRCS} )
else( WANT_SOUND )
set( snd_SRCS ${nosnd_SRCS} )
endif( WANT_SOUND )
tde_add_executable( rosegardensequencer AUTOMOC
SOURCES ${seq_dcop_SRCS} ${snd_SRCS} ${sequencer_SRCS}
LINK
${CMAKE_DL_LIBS} ${CMAKE_THREAD_LIBS_INIT} tdecore-shared ${ALSA_LIBS} ${JACK_LIBS}
${LIBLO_LIBS} ${LRDF_LIBS} ${FFTW3F_LIBS} tdeui-shared RosegardenCommon-static
DESTINATION ${BIN_INSTALL_DIR}
)
##### RosegardenExtended ############################
tde_add_library( RosegardenExtended STATIC AUTOMOC
SOURCES ${document_SRCS} ${gui_SRCS} ${gui_dcop_SRCS} ${ui_SRCS}
LINK
${CMAKE_DL_LIBS} ${LIBLO_LIBS} ${JACK_LIBS} ${LIRC_LIBS} ${XFT_LIBRARIES}
fontconfig tdeprint-shared
DESTINATION ${LIB_INSTALL_DIR}
)
##### RosegardenCommands ############################
tde_add_library( RosegardenCommands STATIC AUTOMOC
SOURCES ${commands_SRCS}
DESTINATION ${LIB_INSTALL_DIR}
)
##### RosegardenSegmentCanvas #######################
tde_add_library( RosegardenSegmentCanvas STATIC AUTOMOC
SOURCES ${segmentcanvas_SRCS}
DESTINATION ${LIB_INSTALL_DIR}
)
##### rosegarden ####################################
tde_add_executable( rosegarden AUTOMOC
SOURCES gui/application/main.cpp
LINK
${CMAKE_DL_LIBS} ${CMAKE_THREAD_LIBS_INIT} tdecore-shared tdeio-shared tdeui-shared
RosegardenExtended-static RosegardenSegmentCanvas-static RosegardenCommands-static
RosegardenCommon-static
DESTINATION ${BIN_INSTALL_DIR}
)
if( WANT_TEST )
include( TestFileList.txt )
create_test_sourcelist(RosegardenTest
RosegardenTestDriver.cpp
${tests_SRCS}
# base/test/transpose.cpp
# base/test/segmenttransposecommand.cpp
)
tde_add_executable( RosegardenTestDriver AUTOMOC
SOURCES RosegardenTestDriver.cpp ${tests_SRCS}
LINK
${CMAKE_DL_LIBS} tdecore-shared tdeio-shared tdeui-shared RosegardenExtended-static
RosegardenSegmentCanvas-static RosegardenCommands-static RosegardenCommon-static
DESTINATION ${BIN_INSTALL_DIR}
)
foreach(currenttest ${tests_SRCS})
get_filename_component(TestName ${currenttest} NAME_WE)
add_test(test/${TestName} RosegardenTestDriver test/${TestName})
endforeach(currenttest ${tests_SRCS})
endif( WANT_TEST )