channels: refactoring of channels cmake scripts with macros

This commit is contained in:
Marc-André Moreau 2012-10-17 02:14:19 -04:00
parent c82ad752b9
commit 81e485736f
48 changed files with 253 additions and 245 deletions

View File

@ -91,6 +91,10 @@ if(CMAKE_COMPILER_IS_GNUCC)
if(Wno-unused-but-set-variable)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-but-set-variable")
endif()
CHECK_C_COMPILER_FLAG(-Wno-deprecated-declarations Wno-deprecated-declarations)
if(Wno-deprecated-declarations)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-deprecated-declarations")
endif()
if(CMAKE_BUILD_TYPE STREQUAL "Release")
set(CMAKE_C_FLAGS_RELEASE "-DNDEBUG")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O2")
@ -154,7 +158,7 @@ if(ANDROID)
set(WITH_X11 OFF)
set(WITH_CUPS OFF)
set(WITH_ALSA OFF)
set(WITH_PULSEAUDIO OFF)
set(WITH_PULSE OFF)
set(WITH_FFMPEG OFF)
set(WITH_GSTREAMER OFF)
set(WITH_PCSC OFF)
@ -194,10 +198,11 @@ set(FREERDP_DATA_PATH "${CMAKE_INSTALL_PREFIX}/share/freerdp")
set(FREERDP_KEYMAP_PATH "${FREERDP_DATA_PATH}/keymaps")
# Path to put plugins
if(WIN32)
set(FREERDP_PLUGIN_PATH "${CMAKE_INSTALL_FULL_LIBDIR}")
set(FREERDP_PLUGIN_PATH "${CMAKE_INSTALL_LIBDIR}")
else()
set(FREERDP_PLUGIN_PATH "${CMAKE_INSTALL_FULL_LIBDIR}/freerdp")
set(FREERDP_PLUGIN_PATH "${CMAKE_INSTALL_LIBDIR}/freerdp")
endif()
set(FREERDP_CLIENT_PLUGIN_PATH "${FREERDP_PLUGIN_PATH}/client")
@ -302,5 +307,8 @@ set(CPACK_PACKAGE_VERSION_MAJOR ${FREERDP_VERSION_MAJOR})
set(CPACK_PACKAGE_VERSION_MINOR ${FREERDP_VERSION_MINOR})
set(CPACK_PACKAGE_VERSION_PATCH ${FREERDP_VERSION_REVISION})
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE")
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE")
include(CPack)

View File

@ -17,6 +17,45 @@
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
macro(define_channel _channel_name)
set(CHANNEL_NAME ${_channel_name})
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
endmacro(define_channel)
macro(define_channel_client _channel_name)
set(CHANNEL_NAME ${_channel_name})
set(MODULE_NAME "${CHANNEL_NAME}-client")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
endmacro(define_channel_client)
macro(define_channel_server _channel_name)
set(CHANNEL_NAME ${_channel_name})
set(MODULE_NAME "${CHANNEL_NAME}-server")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_SERVER" MODULE_PREFIX)
endmacro(define_channel_server)
macro(define_channel_client_subsystem _channel_name _subsystem _type)
set(CHANNEL_NAME ${_channel_name})
set(CHANNEL_SUBSYSTEM ${_subsystem})
string(LENGTH "${_type}" _type_length)
if(_type_length GREATER 0)
set(SUBSYSTEM_TYPE ${_type})
set(MODULE_NAME "${CHANNEL_NAME}-client-${CHANNEL_SUBSYSTEM}-${SUBSYSTEM_TYPE}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT_${CHANNEL_SUBSYSTEM}-${SUBSYSTEM_TYPE}" MODULE_PREFIX)
else()
set(MODULE_NAME "${CHANNEL_NAME}-client-${CHANNEL_SUBSYSTEM}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT_${CHANNEL_SUBSYSTEM}" MODULE_PREFIX)
endif()
endmacro(define_channel_client_subsystem)
macro(define_channel_server_subsystem _channel_name _subsystem _type)
set(CHANNEL_NAME ${_channel_name})
set(CHANNEL_SUBSYSTEM ${_subsystem})
set(MODULE_NAME "${CHANNEL_NAME}-server-${CHANNEL_SUBSYSTEM}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_server_${CHANNEL_SUBSYSTEM}" MODULE_PREFIX)
endmacro(define_channel_server_subsystem)
macro(add_channel_client _channel_prefix _channel_name)
add_subdirectory(client)
if(${_channel_prefix}_CLIENT_STATIC)

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "audin")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("audin")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "audin")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("audin")
set(${MODULE_PREFIX}_SRCS
audin_main.c
@ -46,6 +44,6 @@ if(WITH_ALSA)
add_subdirectory(alsa)
endif()
if(WITH_PULSEAUDIO)
if(WITH_PULSE)
add_subdirectory(pulse)
endif()

View File

@ -1,9 +1,7 @@
# FreeRDP: A Remote Desktop Protocol Implementation
# FreeRDP cmake build script
#
# Copyright 2011 O.S. Systems Software Ltda.
# Copyright 2011 Otavio Salvador <otavio@ossystems.com.br>
# Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -17,21 +15,25 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(AUDIN_ALSA_SRCS
define_channel_client_subsystem("audin" "alsa" "")
set(${MODULE_PREFIX}_SRCS
audin_alsa.c)
include_directories(..)
include_directories(${ALSA_INCLUDE_DIRS})
add_library(audin_alsa ${AUDIN_ALSA_SRCS})
set_target_properties(audin_alsa PROPERTIES PREFIX "")
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
if(MONOLITHIC_BUILD)
target_link_libraries(audin_alsa freerdp)
else()
target_link_libraries(audin_alsa freerdp-utils)
endif()
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
target_link_libraries(audin_alsa ${ALSA_LIBRARIES})
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
MODULE freerdp
MODULES freerdp-utils)
install(TARGETS audin_alsa DESTINATION ${FREERDP_PLUGIN_PATH})
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${ALSA_LIBRARIES})
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH})

View File

@ -1,9 +1,7 @@
# FreeRDP: A Remote Desktop Protocol Implementation
# FreeRDP cmake build script
#
# Copyright 2011 O.S. Systems Software Ltda.
# Copyright 2011 Otavio Salvador <otavio@ossystems.com.br>
# Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -17,23 +15,25 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(AUDIN_PULSE_SRCS
audin_pulse.c
)
define_channel_client_subsystem("audin" "pulse" "")
set(${MODULE_PREFIX}_SRCS
audin_pulse.c)
include_directories(..)
include_directories(${PULSEAUDIO_INCLUDE_DIR})
include_directories(${PULSE_INCLUDE_DIR})
add_library(audin_pulse ${AUDIN_PULSE_SRCS})
set_target_properties(audin_pulse PROPERTIES PREFIX "")
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
if(MONOLITHIC_BUILD)
target_link_libraries(audin_pulse freerdp)
else()
target_link_libraries(audin_pulse freerdp-utils)
endif()
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
target_link_libraries(audin_pulse ${PULSEAUDIO_LIBRARY})
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
MODULE freerdp
MODULES freerdp-utils)
install(TARGETS audin_pulse DESTINATION ${FREERDP_PLUGIN_PATH})
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${PULSE_LIBRARY})
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "audin")
set(MODULE_NAME "${CHANNEL_NAME}-server")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_SERVER" MODULE_PREFIX)
define_channel_server("audin")
set(${MODULE_PREFIX}_SRCS
audin.c)

View File

@ -31,9 +31,10 @@ foreach(STATIC_ENTRY ${CHANNEL_STATIC_CLIENT_ENTRIES})
if(${${STATIC_MODULE}_CLIENT_ENTRY} STREQUAL ${STATIC_ENTRY})
set(STATIC_MODULE_NAME ${${STATIC_MODULE}_CLIENT_NAME})
set(STATIC_MODULE_CHANNEL ${${STATIC_MODULE}_CLIENT_CHANNEL})
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${STATIC_MODULE_NAME})
set(ENTRY_POINT_NAME "${${STATIC_MODULE}_CLIENT_NAME}_${${STATIC_MODULE}_CLIENT_ENTRY}")
set(ENTRY_POINT_NAME "${STATIC_MODULE_CHANNEL}_${${STATIC_MODULE}_CLIENT_ENTRY}")
set(ENTRY_POINT_IMPORT "extern void ${ENTRY_POINT_NAME}();")
set(${STATIC_ENTRY}_IMPORTS "${${STATIC_ENTRY}_IMPORTS}\n${ENTRY_POINT_IMPORT}")
set(${STATIC_ENTRY}_TABLE "${${STATIC_ENTRY}_TABLE}\n\t{ \"${STATIC_MODULE_NAME}\", ${ENTRY_POINT_NAME} },")
@ -75,7 +76,6 @@ set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MODULES winpr-crt winpr-synch winpr-interlocked)
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR})
set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/Client")

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "cliprdr")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("cliprdr")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "cliprdr")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("cliprdr")
set(${MODULE_PREFIX}_SRCS
cliprdr_constants.h

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "disk")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("disk")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "disk")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("disk")
set(${MODULE_PREFIX}_SRCS
disk_file.c

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "drdynvc")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("drdynvc")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "drdynvc")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("drdynvc")
set(${MODULE_PREFIX}_SRCS
drdynvc_main.c

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "parallel")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("parallel")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "parallel")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("parallel")
set(${MODULE_PREFIX}_SRCS
parallel_main.c)

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "printer")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("printer")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "printer")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("printer")
set(${MODULE_PREFIX}_SRCS
printer_main.c

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "rail")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("rail")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -1,7 +1,7 @@
# FreeRDP: A Remote Desktop Protocol Implementation
# FreeRDP cmake build script
#
# Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "rail")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("rail")
set(${MODULE_PREFIX}_SRCS
rail_main.c

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "rdpdr")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("rdpdr")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "rdpdr")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("rdpdr")
set(${MODULE_PREFIX}_SRCS
irp.c

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "rdpsnd")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("rdpsnd")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "rdpsnd")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("rdpsnd")
set(${MODULE_PREFIX}_SRCS
rdpsnd_main.c
@ -40,11 +38,11 @@ if(WITH_ALSA)
add_subdirectory(alsa)
endif()
if(WITH_PULSEAUDIO)
if(WITH_PULSE)
add_subdirectory(pulse)
endif()
if(WITH_MACAUDIO)
add_subdirectory(MacAudio)
add_subdirectory(mac)
endif()

View File

@ -1,9 +1,7 @@
# FreeRDP: A Remote Desktop Protocol Implementation
# FreeRDP cmake build script
#
# Copyright 2011 O.S. Systems Software Ltda.
# Copyright 2011 Otavio Salvador <otavio@ossystems.com.br>
# Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -17,21 +15,25 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(RDPSND_ALSA_SRCS
define_channel_client_subsystem("rdpsnd" "alsa" "")
set(${MODULE_PREFIX}_SRCS
rdpsnd_alsa.c)
include_directories(..)
include_directories(${ALSA_INCLUDE_DIRS})
add_library(rdpsnd_alsa ${RDPSND_ALSA_SRCS})
set_target_properties(rdpsnd_alsa PROPERTIES PREFIX "")
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
if(MONOLITHIC_BUILD)
target_link_libraries(rdpsnd_alsa freerdp winpr)
else()
target_link_libraries(rdpsnd_alsa freerdp-utils winpr-crt)
endif()
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
target_link_libraries(rdpsnd_alsa ${ALSA_LIBRARIES})
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
MODULE freerdp
MODULES freerdp-utils)
install(TARGETS rdpsnd_alsa DESTINATION ${FREERDP_PLUGIN_PATH})
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${ALSA_LIBRARIES})
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH})

View File

@ -16,23 +16,27 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(RDPSND_MACAUDIO_SRCS
rdpsnd_audio_q.c)
define_channel_client_subsystem("rdpsnd" "mac" "")
set(${MODULE_PREFIX}_SRCS
rdpsnd_mac.c)
include_directories(..)
include_directories(${MACAUDIO_INCLUDE_DIRS})
add_library(rdpsnd_macaudio ${RDPSND_MACAUDIO_SRCS})
set_target_properties(rdpsnd_macaudio PROPERTIES PREFIX "")
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
if(MONOLITHIC_BUILD)
target_link_libraries(rdpsnd_macaudio freerdp)
else()
target_link_libraries(rdpsnd_macaudio freerdp-utils)
endif()
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
target_link_libraries(rdpsnd_macaudio ${MAC_AUDIOTOOLBOX_LIBRARY_PATH})
target_link_libraries(rdpsnd_macaudio ${MAC_COREFOUNDATION_LIBRARY_PATH})
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
MODULE freerdp
MODULES freerdp-utils)
install(TARGETS rdpsnd_macaudio DESTINATION ${FREERDP_PLUGIN_PATH})
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${MAC_AUDIOTOOLBOX_LIBRARY_PATH})
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${MAC_COREFOUNDATION_LIBRARY_PATH})
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH})

View File

@ -1,9 +1,7 @@
# FreeRDP: A Remote Desktop Protocol Implementation
# FreeRDP cmake build script
#
# Copyright 2011 O.S. Systems Software Ltda.
# Copyright 2011 Otavio Salvador <otavio@ossystems.com.br>
# Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -17,21 +15,25 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(RDPSND_PULSE_SRCS
define_channel_client_subsystem("rdpsnd" "pulse" "")
set(${MODULE_PREFIX}_SRCS
rdpsnd_pulse.c)
include_directories(..)
include_directories(${PULSEAUDIO_INCLUDE_DIR})
include_directories(${PULSE_INCLUDE_DIR})
add_library(rdpsnd_pulse ${RDPSND_PULSE_SRCS})
set_target_properties(rdpsnd_pulse PROPERTIES PREFIX "")
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
if(MONOLITHIC_BUILD)
target_link_libraries(rdpsnd_pulse freerdp)
else()
target_link_libraries(rdpsnd_pulse freerdp-utils)
endif()
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
target_link_libraries(rdpsnd_pulse ${PULSEAUDIO_LIBRARY})
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
MODULE freerdp
MODULES freerdp-utils)
install(TARGETS rdpsnd_pulse DESTINATION ${FREERDP_PLUGIN_PATH})
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${PULSE_LIBRARY})
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "rdpsnd")
set(MODULE_NAME "${CHANNEL_NAME}-server")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_SERVER" MODULE_PREFIX)
define_channel_server("rdpsnd")
set(${MODULE_PREFIX}_SRCS
rdpsnd.c)

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "sample")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("sample")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "sample")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("sample")
set(${MODULE_PREFIX}_SRCS
skel_main.c

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "serial")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("serial")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "serial")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("serial")
set(${MODULE_PREFIX}_SRCS
serial_tty.c
@ -27,7 +25,7 @@ set(${MODULE_PREFIX}_SRCS
add_channel_client_library(${MODULE_PREFIX} ${MODULE_NAME} ${CHANNEL_NAME} TRUE "DeviceServiceEntry")
set_target_properties(serial PROPERTIES PREFIX "")
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
@ -41,3 +39,4 @@ if(NOT STATIC_CHANNELS)
endif()
set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/${MODULE_NAME}/Client")

View File

@ -44,6 +44,6 @@ set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MODULES winpr-crt winpr-synch winpr-interlocked)
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR})
set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/Server")

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "smartcard")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel("smartcard")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -15,8 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(MODULE_NAME "smartcard")
set(MODULE_PREFIX "CHANNEL_RDPDR_SMARTCARD_CLIENT")
define_channel_client("smartcard")
set(${MODULE_PREFIX}_SRCS
scard_main.c

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "tsmf")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("tsmf")
if(WITH_CLIENT_CHANNELS)
add_channel_client(${MODULE_PREFIX} ${CHANNEL_NAME})

View File

@ -16,9 +16,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "tsmf")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("tsmf")
set(${MODULE_PREFIX}_SRCS
tsmf_audio.c
@ -69,6 +67,6 @@ if(WITH_ALSA)
add_subdirectory(alsa)
endif()
if(WITH_PULSEAUDIO)
if(WITH_PULSE)
add_subdirectory(pulse)
endif()

View File

@ -1,9 +1,7 @@
# FreeRDP: A Remote Desktop Protocol Implementation
# FreeRDP cmake build script
#
# Copyright 2011 O.S. Systems Software Ltda.
# Copyright 2011 Otavio Salvador <otavio@ossystems.com.br>
# Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -17,23 +15,27 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(TSMF_ALSA_SRCS
tsmf_alsa.c
)
define_channel_client_subsystem("tsmf" "alsa" "audio")
set(${MODULE_PREFIX}_SRCS
tsmf_alsa.c)
include_directories(..)
include_directories(${ALSA_INCLUDE_DIRS})
add_library(tsmf_alsa ${TSMF_ALSA_SRCS})
set_target_properties(tsmf_alsa PROPERTIES PREFIX "")
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
if(MONOLITHIC_BUILD)
target_link_libraries(tsmf_alsa freerdp)
else()
target_link_libraries(tsmf_alsa freerdp-utils)
endif()
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
target_link_libraries(tsmf_alsa ${ALSA_LIBRARIES})
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
MODULE freerdp
MODULES freerdp-utils)
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${ALSA_LIBRARIES})
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH})
install(TARGETS tsmf_alsa DESTINATION ${FREERDP_PLUGIN_PATH})

View File

@ -1,9 +1,7 @@
# FreeRDP: A Remote Desktop Protocol Implementation
# FreeRDP cmake build script
#
# Copyright 2011 O.S. Systems Software Ltda.
# Copyright 2011 Otavio Salvador <otavio@ossystems.com.br>
# Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -17,30 +15,25 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(TSMF_FFMPEG_SRCS
tsmf_ffmpeg.c
)
define_channel_client_subsystem("tsmf" "ffmpeg" "video")
set(${MODULE_PREFIX}_SRCS
tsmf_ffmpeg.c)
include_directories(..)
include_directories(${FFMPEG_INCLUDE_DIRS})
add_library(tsmf_ffmpeg ${TSMF_FFMPEG_SRCS})
set_target_properties(tsmf_ffmpeg PROPERTIES PREFIX "")
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
if(CMAKE_COMPILER_IS_GNUCC)
CHECK_C_COMPILER_FLAG(-Wno-deprecated-declarations Wno-deprecated-declarations)
if(Wno-deprecated-declarations)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-deprecated-declarations")
endif()
endif()
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
if(MONOLITHIC_BUILD)
target_link_libraries(tsmf_ffmpeg freerdp)
else()
target_link_libraries(tsmf_ffmpeg freerdp-utils)
endif()
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
MODULE freerdp
MODULES freerdp-utils)
target_link_libraries(tsmf_ffmpeg ${FFMPEG_LIBRARIES})
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${FFMPEG_LIBRARIES})
install(TARGETS tsmf_ffmpeg DESTINATION ${FREERDP_PLUGIN_PATH})
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH})

View File

@ -1,5 +1,5 @@
# FreeRDP: A Remote Desktop Protocol Implementation
# FreeRDP cmake build script for gstreamer plugin
# FreeRDP cmake build script for gstreamer subsystem
#
# (C) Copyright 2012 Hewlett-Packard Development Company, L.P.
#
@ -15,25 +15,29 @@
# See the License for the specific language governing permissions and
# limitations under the License.
define_channel_client_subsystem("tsmf" "gstreamer" "video")
set(TSMF_GSTREAMER_SRCS
tsmf_gstreamer.c
)
set(${MODULE_PREFIX}_SRCS
tsmf_gstreamer.c)
include_directories(..)
include_directories(${GSTREAMER_INCLUDE_DIRS})
add_library(tsmf_gstreamer ${TSMF_GSTREAMER_SRCS})
set_target_properties(tsmf_gstreamer PROPERTIES PREFIX "")
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
if(MONOLITHIC_BUILD)
target_link_libraries(tsmf_gstreamer freerdp)
else()
target_link_libraries(tsmf_gstreamer freerdp-utils)
endif()
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
target_link_libraries(tsmf_gstreamer ${GSTREAMER_LIBRARIES} gstapp-0.10 gstinterfaces-0.10 Xrandr X11 Xext)
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
MODULE freerdp
MODULES freerdp-utils)
install(TARGETS tsmf_gstreamer DESTINATION ${FREERDP_PLUGIN_PATH})
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS}
${GSTREAMER_LIBRARIES}
gstapp-0.10
gstinterfaces-0.10
Xrandr X11 Xext)
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH})

View File

@ -1,9 +1,7 @@
# FreeRDP: A Remote Desktop Protocol Implementation
# FreeRDP cmake build script
#
# Copyright 2011 O.S. Systems Software Ltda.
# Copyright 2011 Otavio Salvador <otavio@ossystems.com.br>
# Copyright 2011 Marc-Andre Moreau <marcandre.moreau@gmail.com>
# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
@ -17,20 +15,25 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(TSMF_PULSE_SRCS
define_channel_client_subsystem("tsmf" "pulse" "audio")
set(${MODULE_PREFIX}_SRCS
tsmf_pulse.c)
include_directories(..)
include_directories(${PULSEAUDIO_INCLUDE_DIR})
include_directories(${PULSE_INCLUDE_DIR})
add_library(tsmf_pulse ${TSMF_PULSE_SRCS})
set_target_properties(tsmf_pulse PROPERTIES PREFIX "")
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
if(MONOLITHIC_BUILD)
target_link_libraries(tsmf_pulse ${PULSEAUDIO_LIBRARY} freerdp)
else()
target_link_libraries(tsmf_pulse ${PULSEAUDIO_LIBRARY} freerdp-utils)
endif()
set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "")
install(TARGETS tsmf_pulse DESTINATION ${FREERDP_PLUGIN_PATH})
set_complex_link_libraries(VARIABLE ${MODULE_PREFIX}_LIBS
MONOLITHIC ${MONOLITHIC_BUILD}
MODULE freerdp
MODULES freerdp-utils)
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} ${PULSE_LIBRARY})
target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH})

View File

@ -15,9 +15,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "urbdrc")
set(MODULE_NAME ${CHANNEL_NAME})
string(TOUPPER "CHANNEL_${CHANNEL_NAME}" MODULE_PREFIX)
define_channel("urbdrc")
add_subdirectory(libusb)

View File

@ -16,9 +16,7 @@
# See the License for the specific language governing permissions and
# limitations under the License.
set(CHANNEL_NAME "urbdrc")
set(MODULE_NAME "${CHANNEL_NAME}")
string(TOUPPER "CHANNEL_${CHANNEL_NAME}_CLIENT" MODULE_PREFIX)
define_channel_client("urbdrc")
set(${MODULE_PREFIX}_SRCS
searchman.c

View File

@ -1,13 +1,18 @@
include(FindPkgConfig)
if (PKG_CONFIG_FOUND)
pkg_check_modules(PCSC libpcsclite)
endif()
find_path(PCSC_INCLUDE_DIR pcsclite.h PATHS ${PCSC_INCLUDE_DIRS}
PATH_SUFFIXES PCSC )
find_library(PCSC_LIBRARY pcsclite PATHS ${PCSC_LIBRARY_DIRS})
find_path(PCSC_INCLUDE_DIR pcsclite.h
PATHS ${PCSC_INCLUDE_DIRS}
PATH_SUFFIXES PCSC)
find_library(PCSC_LIBRARY pcsclite
PATHS ${PCSC_LIBRARY_DIRS})
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PCSC DEFAULT_MSG PCSC_INCLUDE_DIR PCSC_LIBRARY)
mark_as_advanced(PCSC_INCLUDE_DIR PCSC_LIBRARY)

View File

@ -1,12 +1,14 @@
include(FindPkgConfig)
if (PKG_CONFIG_FOUND)
pkg_check_modules(PULSEAUDIO libpulse)
if(PKG_CONFIG_FOUND)
pkg_check_modules(PULSE libpulse)
endif()
find_path(PULSEAUDIO_INCLUDE_DIR pulse/pulseaudio.h PATHS ${PULSEAUDIO_INCLUDE_DIRS} PATH_SUFFIXES pulse )
find_library(PULSEAUDIO_LIBRARY pulse PATHS ${PULSEAUDIO_LIBRARY_DIRS})
find_path(PULSE_INCLUDE_DIR pulse/pulseaudio.h PATHS ${PULSE_INCLUDE_DIRS} PATH_SUFFIXES pulse )
find_library(PULSE_LIBRARY pulse PATHS ${PULSE_LIBRARY_DIRS})
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PulseAudio DEFAULT_MSG PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(PulseAudio DEFAULT_MSG PULSE_INCLUDE_DIR PULSE_LIBRARY)
mark_as_advanced(PULSE_INCLUDE_DIR PULSE_LIBRARY)
mark_as_advanced(PULSEAUDIO_INCLUDE_DIR PULSEAUDIO_LIBRARY)

View File

@ -96,7 +96,7 @@ cmake \
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
-DWITH_CUPS:BOOL=ON \
-DWITH_PCSC:BOOL=ON \
-DWITH_PULSEAUDIO:BOOL=ON \
-DWITH_PULSE:BOOL=ON \
-DWITH_MACAUDIO:BOOL=ON \
-DWITH_X11:BOOL=ON \
-DWITH_XCURSOR:BOOL=ON \

View File

@ -37,7 +37,6 @@ foreach(${MODULE_PREFIX}_SUBMODULE ${${MODULE_PREFIX}_SUBMODULES})
endforeach()
if(MONOLITHIC_BUILD)
foreach(${MODULE_PREFIX}_SUBMODULE ${${MODULE_PREFIX}_SUBMODULES})
set(${MODULE_PREFIX}_OBJECTS ${${MODULE_PREFIX}_OBJECTS} "$<TARGET_OBJECTS:${MODULE_NAME}-${${MODULE_PREFIX}_SUBMODULE}>")
endforeach()
@ -52,3 +51,4 @@ if(MONOLITHIC_BUILD)
set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "FreeRDP/libfreerdp")
endif()