Blame client/common/CMakeLists.txt

Packit Service fa4841
# FreeRDP: A Remote Desktop Protocol Implementation
Packit Service fa4841
# FreeRDP Client Common
Packit Service fa4841
#
Packit Service fa4841
# Copyright 2012 Marc-Andre Moreau <marcandre.moreau@gmail.com>
Packit Service fa4841
#
Packit Service fa4841
# Licensed under the Apache License, Version 2.0 (the "License");
Packit Service fa4841
# you may not use this file except in compliance with the License.
Packit Service fa4841
# You may obtain a copy of the License at
Packit Service fa4841
#
Packit Service fa4841
#     http://www.apache.org/licenses/LICENSE-2.0
Packit Service fa4841
#
Packit Service fa4841
# Unless required by applicable law or agreed to in writing, software
Packit Service fa4841
# distributed under the License is distributed on an "AS IS" BASIS,
Packit Service fa4841
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Packit Service fa4841
# See the License for the specific language governing permissions and
Packit Service fa4841
# limitations under the License.
Packit Service fa4841
Packit Service fa4841
set(MODULE_NAME "freerdp-client")
Packit Service fa4841
set(MODULE_PREFIX "FREERDP_CLIENT")
Packit Service fa4841
Packit Service fa4841
#  Policy CMP0022: INTERFACE_LINK_LIBRARIES defines the link
Packit Service fa4841
#  interface.  Run "cmake --help-policy CMP0022" for policy details.  Use the
Packit Service fa4841
#  cmake_policy command to set the policy and suppress this warning.
Packit Service fa4841
if(POLICY CMP0022)
Packit Service fa4841
  cmake_policy(SET CMP0022 NEW)
Packit Service fa4841
endif()
Packit Service fa4841
Packit Service fa4841
set(${MODULE_PREFIX}_SRCS
Packit Service fa4841
	client.c
Packit Service fa4841
	cmdline.c
Packit Service fa4841
	compatibility.c
Packit Service fa4841
	compatibility.h
Packit Service b1ea74
	file.c
Packit Service b1ea74
	geometry.c)
Packit Service fa4841
Packit Service fa4841
foreach(FREERDP_CHANNELS_CLIENT_SRC ${FREERDP_CHANNELS_CLIENT_SRCS})
Packit Service fa4841
	get_filename_component(NINC ${FREERDP_CHANNELS_CLIENT_SRC} PATH)
Packit Service fa4841
	include_directories(${NINC})
Packit Service fa4841
	set(${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_SRCS} "${FREERDP_CHANNELS_CLIENT_SRC}")
Packit Service fa4841
endforeach()
Packit Service fa4841
Packit Service fa4841
Packit Service fa4841
# On windows create dll version information.
Packit Service fa4841
# Vendor, product and year are already set in top level CMakeLists.txt
Packit Service fa4841
if (WIN32 AND BUILD_SHARED_LIBS)
Packit Service fa4841
  set (RC_VERSION_MAJOR ${FREERDP_VERSION_MAJOR})
Packit Service fa4841
  set (RC_VERSION_MINOR ${FREERDP_VERSION_MINOR})
Packit Service fa4841
  set (RC_VERSION_BUILD ${FREERDP_VERSION_REVISION})
Packit Service fa4841
  set (RC_VERSION_FILE "${CMAKE_SHARED_LIBRARY_PREFIX}${MODULE_NAME}${CMAKE_SHARED_LIBRARY_SUFFIX}" )
Packit Service fa4841
Packit Service fa4841
  configure_file(
Packit Service fa4841
    ${CMAKE_SOURCE_DIR}/cmake/WindowsDLLVersion.rc.in
Packit Service fa4841
    ${CMAKE_CURRENT_BINARY_DIR}/version.rc
Packit Service fa4841
    @ONLY)
Packit Service fa4841
Packit Service fa4841
  set ( ${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/version.rc)
Packit Service fa4841
endif()
Packit Service fa4841
Packit Service fa4841
add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS})
Packit Service fa4841
Packit Service fa4841
set_target_properties(${MODULE_NAME} PROPERTIES OUTPUT_NAME ${MODULE_NAME}${FREERDP_API_VERSION})
Packit Service fa4841
include_directories(${OPENSSL_INCLUDE_DIR})
Packit Service fa4841
if (WITH_LIBRARY_VERSIONING)
Packit Service fa4841
  set_target_properties(${MODULE_NAME} PROPERTIES VERSION ${FREERDP_VERSION} SOVERSION ${FREERDP_API_VERSION})
Packit Service fa4841
endif()
Packit Service fa4841
Packit Service fa4841
set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} winpr)
Packit Service fa4841
Packit Service fa4841
target_link_libraries(${MODULE_NAME} ${PRIVATE_KEYWORD} ${FREERDP_CHANNELS_CLIENT_LIBS})
Packit Service fa4841
if(OPENBSD)
Packit Service fa4841
	target_link_libraries(${MODULE_NAME} ${PUBLIC_KEYWORD} ${${MODULE_PREFIX}_LIBS} ossaudio)
Packit Service fa4841
else()
Packit Service fa4841
	target_link_libraries(${MODULE_NAME} ${PUBLIC_KEYWORD} ${${MODULE_PREFIX}_LIBS})
Packit Service fa4841
endif()
Packit Service fa4841
Packit Service fa4841
Packit Service fa4841
install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries EXPORT FreeRDP-ClientTargets)
Packit Service fa4841
Packit Service fa4841
if (WITH_DEBUG_SYMBOLS AND MSVC AND BUILD_SHARED_LIBS)
Packit Service fa4841
	get_target_property(OUTPUT_FILENAME ${MODULE_NAME} OUTPUT_NAME)
Packit Service fa4841
	install(FILES ${CMAKE_PDB_BINARY_DIR}/${OUTPUT_FILENAME}.pdb DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT symbols)
Packit Service fa4841
endif()
Packit Service fa4841
Packit Service fa4841
set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Client/Common")
Packit Service fa4841
Packit Service fa4841
if(BUILD_TESTING)
Packit Service fa4841
	add_subdirectory(test)
Packit Service fa4841
endif()
Packit Service fa4841
Packit Service fa4841
export_complex_library(LIBNAME ${MODULE_NAME})