From e0693c8f4cf13a3b861314ab4a58c056ebfb73df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Moreau?= Date: Thu, 4 Oct 2012 16:54:16 -0400 Subject: [PATCH] cmake: refactoring of channels cmake scripts --- channels/audin/client/CMakeLists.txt | 21 ++++++---- channels/cliprdr/client/CMakeLists.txt | 21 ++++++---- channels/drdynvc/client/CMakeLists.txt | 23 ++++++----- channels/rail/client/CMakeLists.txt | 18 ++++---- channels/rdpdr/client/CMakeLists.txt | 22 ++++++---- channels/rdpsnd/client/CMakeLists.txt | 18 ++++---- .../{mac_audio => MacAudio}/CMakeLists.txt | 4 +- .../{mac_audio => MacAudio}/rdpsnd_audio_q.c | 0 channels/rdpsnd/server/CMakeLists.txt | 2 + channels/sample/client/CMakeLists.txt | 19 +++++---- channels/server/CMakeLists.txt | 6 ++- channels/tsmf/client/CMakeLists.txt | 28 +++++++------ channels/urbdrc/CMakeLists.txt | 2 - channels/urbdrc/client/CMakeLists.txt | 41 ++++++++++++------- libfreerdp/CMakeLists.txt | 27 +++++++----- server/Sample/CMakeLists.txt | 4 +- winpr/include/winpr/wtypes.h | 8 ++-- winpr/libwinpr/CMakeLists.txt | 28 ++++++++----- 18 files changed, 166 insertions(+), 126 deletions(-) rename channels/rdpsnd/client/{mac_audio => MacAudio}/CMakeLists.txt (88%) rename channels/rdpsnd/client/{mac_audio => MacAudio}/rdpsnd_audio_q.c (100%) diff --git a/channels/audin/client/CMakeLists.txt b/channels/audin/client/CMakeLists.txt index 2be9f936b..f14356f8f 100644 --- a/channels/audin/client/CMakeLists.txt +++ b/channels/audin/client/CMakeLists.txt @@ -1,9 +1,7 @@ # FreeRDP: A Remote Desktop Protocol Client # FreeRDP cmake build script # -# Copyright 2011 O.S. Systems Software Ltda. -# Copyright 2011 Otavio Salvador -# Copyright 2011 Marc-Andre Moreau +# Copyright 2012 Marc-Andre Moreau # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,22 +15,27 @@ # See the License for the specific language governing permissions and # limitations under the License. -set(AUDIN_SRCS +set(MODULE_NAME "audin") +set(MODULE_PREFIX "CHANNEL_AUDIN_CLIENT") + +set(${MODULE_PREFIX}_SRCS audin_main.c audin_main.h) include_directories(..) -add_library(audin ${AUDIN_SRCS}) -set_target_properties(audin PROPERTIES PREFIX "") +add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "") if(WITH_MONOLITHIC_BUILD) - target_link_libraries(audin freerdp) + target_link_libraries(${MODULE_NAME} freerdp) else() - target_link_libraries(audin freerdp-utils) + target_link_libraries(${MODULE_NAME} freerdp-utils) endif() -install(TARGETS audin DESTINATION ${FREERDP_PLUGIN_PATH}) +install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH}) + +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/${MODULE_NAME}/Client") if(WITH_ALSA) add_subdirectory(alsa) diff --git a/channels/cliprdr/client/CMakeLists.txt b/channels/cliprdr/client/CMakeLists.txt index 5c30a67ef..c67038cd5 100644 --- a/channels/cliprdr/client/CMakeLists.txt +++ b/channels/cliprdr/client/CMakeLists.txt @@ -1,9 +1,7 @@ # FreeRDP: A Remote Desktop Protocol Client # FreeRDP cmake build script # -# Copyright 2011 O.S. Systems Software Ltda. -# Copyright 2011 Otavio Salvador -# Copyright 2011 Marc-Andre Moreau +# Copyright 2012 Marc-Andre Moreau # # 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(CLIPRDR_SRCS +set(MODULE_NAME "cliprdr") +set(MODULE_PREFIX "CHANNEL_CLIPRDR_CLIENT") + +set(${MODULE_PREFIX}_SRCS cliprdr_constants.h cliprdr_format.c cliprdr_format.h cliprdr_main.c cliprdr_main.h) -add_library(cliprdr ${CLIPRDR_SRCS}) -set_target_properties(cliprdr PROPERTIES PREFIX "") +add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "") if(WITH_MONOLITHIC_BUILD) - target_link_libraries(cliprdr freerdp) + target_link_libraries(${MODULE_NAME} freerdp) else() - target_link_libraries(cliprdr freerdp-utils) + target_link_libraries(${MODULE_NAME} freerdp-utils) endif() -install(TARGETS cliprdr DESTINATION ${FREERDP_PLUGIN_PATH}) +install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH}) + +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/${MODULE_NAME}/Client") diff --git a/channels/drdynvc/client/CMakeLists.txt b/channels/drdynvc/client/CMakeLists.txt index 42f8bf1d2..0da01496e 100644 --- a/channels/drdynvc/client/CMakeLists.txt +++ b/channels/drdynvc/client/CMakeLists.txt @@ -1,9 +1,7 @@ # FreeRDP: A Remote Desktop Protocol Client # FreeRDP cmake build script # -# Copyright 2011 O.S. Systems Software Ltda. -# Copyright 2011 Otavio Salvador -# Copyright 2011 Marc-Andre Moreau +# Copyright 2012 Marc-Andre Moreau # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,22 +15,25 @@ # See the License for the specific language governing permissions and # limitations under the License. -set(DRDYNVC_SRCS +set(MODULE_NAME "drdynvc") +set(MODULE_PREFIX "CHANNEL_DRDYNVC_CLIENT") + +set(${MODULE_PREFIX}_SRCS drdynvc_main.c drdynvc_main.h drdynvc_types.h dvcman.c - dvcman.h -) + dvcman.h) -add_library(drdynvc ${DRDYNVC_SRCS}) -set_target_properties(drdynvc PROPERTIES PREFIX "") +add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "") if(WITH_MONOLITHIC_BUILD) - target_link_libraries(drdynvc freerdp winpr) + target_link_libraries(${MODULE_NAME} freerdp winpr) else() - target_link_libraries(drdynvc freerdp-utils winpr-synch) + target_link_libraries(${MODULE_NAME} freerdp-utils winpr-synch) endif() -install(TARGETS drdynvc DESTINATION ${FREERDP_PLUGIN_PATH}) +install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH}) +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/${MODULE_NAME}/Client") diff --git a/channels/rail/client/CMakeLists.txt b/channels/rail/client/CMakeLists.txt index 6e6a45441..e8146d7e0 100644 --- a/channels/rail/client/CMakeLists.txt +++ b/channels/rail/client/CMakeLists.txt @@ -1,8 +1,6 @@ # FreeRDP: A Remote Desktop Protocol Client # FreeRDP cmake build script # -# Copyright 2011 O.S. Systems Software Ltda. -# Copyright 2011 Otavio Salvador # Copyright 2011 Marc-Andre Moreau # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -17,20 +15,24 @@ # See the License for the specific language governing permissions and # limitations under the License. -set(RAIL_SRCS +set(MODULE_NAME "rail") +set(MODULE_PREFIX "CHANNEL_RAIL_CLIENT") + +set(${MODULE_PREFIX}_SRCS rail_main.c rail_main.h rail_orders.c rail_orders.h) -add_library(rail ${RAIL_SRCS}) -set_target_properties(rail PROPERTIES PREFIX "") +add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "") if(WITH_MONOLITHIC_BUILD) - target_link_libraries(rail freerdp) + target_link_libraries(${MODULE_NAME} freerdp) else() - target_link_libraries(rail freerdp-utils) + target_link_libraries(${MODULE_NAME} freerdp-utils) endif() -install(TARGETS rail DESTINATION ${FREERDP_PLUGIN_PATH}) +install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH}) +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/${MODULE_NAME}/Client") diff --git a/channels/rdpdr/client/CMakeLists.txt b/channels/rdpdr/client/CMakeLists.txt index a3fa82e1c..f6dcdde22 100644 --- a/channels/rdpdr/client/CMakeLists.txt +++ b/channels/rdpdr/client/CMakeLists.txt @@ -1,9 +1,7 @@ # FreeRDP: A Remote Desktop Protocol Client # FreeRDP cmake build script # -# Copyright 2011 O.S. Systems Software Ltda. -# Copyright 2011 Otavio Salvador -# Copyright 2011 Marc-Andre Moreau +# Copyright 2012 Marc-Andre Moreau # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,7 +15,10 @@ # See the License for the specific language governing permissions and # limitations under the License. -set(RDPDR_SRCS +set(MODULE_NAME "rdpdr") +set(MODULE_PREFIX "CHANNEL_RDPDR_CLIENT") + +set(${MODULE_PREFIX}_SRCS rdpdr_constants.h rdpdr_types.h rdpdr_capabilities.c @@ -29,19 +30,22 @@ set(RDPDR_SRCS rdpdr_main.c rdpdr_main.h) -add_library(rdpdr ${RDPDR_SRCS}) -set_target_properties(rdpdr PROPERTIES PREFIX "") +add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "") if(WITH_MONOLITHIC_BUILD) - target_link_libraries(rdpdr freerdp) + target_link_libraries(${MODULE_NAME} freerdp) else() - target_link_libraries(rdpdr freerdp-utils) + target_link_libraries(${MODULE_NAME} freerdp-utils) endif() -install(TARGETS rdpdr DESTINATION ${FREERDP_PLUGIN_PATH}) +install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH}) + +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/${MODULE_NAME}/Client") add_subdirectory(disk) add_subdirectory(printer) + if(NOT WIN32) add_subdirectory(parallel) add_subdirectory(serial) diff --git a/channels/rdpsnd/client/CMakeLists.txt b/channels/rdpsnd/client/CMakeLists.txt index 745358da0..6bc8a307f 100644 --- a/channels/rdpsnd/client/CMakeLists.txt +++ b/channels/rdpsnd/client/CMakeLists.txt @@ -17,20 +17,23 @@ # See the License for the specific language governing permissions and # limitations under the License. -set(RDPSND_SRCS +set(MODULE_NAME "rdpsnd") +set(MODULE_PREFIX "CHANNEL_RDPSND_CLIENT") + +set(${MODULE_PREFIX}_SRCS rdpsnd_main.c rdpsnd_main.h) -add_library(rdpsnd ${RDPSND_SRCS}) -set_target_properties(rdpsnd PROPERTIES PREFIX "") +add_library(${MODULE_NAME} ${RDPSND_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "") if(WITH_MONOLITHIC_BUILD) - target_link_libraries(rdpsnd freerdp) + target_link_libraries(${MODULE_NAME} freerdp) else() - target_link_libraries(rdpsnd freerdp-utils) + target_link_libraries(${MODULE_NAME} freerdp-utils) endif() -install(TARGETS rdpsnd DESTINATION ${FREERDP_PLUGIN_PATH}) +install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH}) if(WITH_ALSA) add_subdirectory(alsa) @@ -41,6 +44,5 @@ if(WITH_PULSEAUDIO) endif() if(WITH_MACAUDIO) - add_subdirectory(mac_audio) + add_subdirectory(MacAudio) endif() - diff --git a/channels/rdpsnd/client/mac_audio/CMakeLists.txt b/channels/rdpsnd/client/MacAudio/CMakeLists.txt similarity index 88% rename from channels/rdpsnd/client/mac_audio/CMakeLists.txt rename to channels/rdpsnd/client/MacAudio/CMakeLists.txt index 45b50548c..76035fed6 100644 --- a/channels/rdpsnd/client/mac_audio/CMakeLists.txt +++ b/channels/rdpsnd/client/MacAudio/CMakeLists.txt @@ -2,9 +2,7 @@ # FreeRDP cmake build script # # Copyright 2012 Laxmikant Rashinkar -# Copyright 2011 O.S. Systems Software Ltda. -# Copyright 2011 Otavio Salvador -# Copyright 2011 Marc-Andre Moreau +# Copyright 2012 Marc-Andre Moreau # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/channels/rdpsnd/client/mac_audio/rdpsnd_audio_q.c b/channels/rdpsnd/client/MacAudio/rdpsnd_audio_q.c similarity index 100% rename from channels/rdpsnd/client/mac_audio/rdpsnd_audio_q.c rename to channels/rdpsnd/client/MacAudio/rdpsnd_audio_q.c diff --git a/channels/rdpsnd/server/CMakeLists.txt b/channels/rdpsnd/server/CMakeLists.txt index 2e680b46e..bbdd507b2 100644 --- a/channels/rdpsnd/server/CMakeLists.txt +++ b/channels/rdpsnd/server/CMakeLists.txt @@ -15,6 +15,7 @@ # See the License for the specific language governing permissions and # limitations under the License. +set(MODULE_NAME "rdpsnd") set(MODULE_PREFIX "CHANNEL_RDPSND_SERVER") set(${MODULE_PREFIX}_SRCS @@ -27,3 +28,4 @@ else() set(${MODULE_PREFIX}_LIBS freerdp-utils PARENT_SCOPE) endif() +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/${MODULE_NAME}/Server") diff --git a/channels/sample/client/CMakeLists.txt b/channels/sample/client/CMakeLists.txt index 1c2943c8f..e7919065f 100644 --- a/channels/sample/client/CMakeLists.txt +++ b/channels/sample/client/CMakeLists.txt @@ -1,9 +1,7 @@ # FreeRDP: A Remote Desktop Protocol Client # FreeRDP cmake build script # -# Copyright 2011 O.S. Systems Software Ltda. -# Copyright 2011 Otavio Salvador -# Copyright 2011 Marc-Andre Moreau +# Copyright 2012 Marc-Andre Moreau # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,17 +15,20 @@ # See the License for the specific language governing permissions and # limitations under the License. -set(SKEL_SRCS +set(MODULE_NAME "sample") +set(MODULE_PREFIX "CHANNEL_SAMPLE_CLIENT") + +set(${MODULE_PREFIX}_SRCS skel_main.c skel_main.h) -add_library(skel ${SKEL_SRCS}) -set_target_properties(skel PROPERTIES PREFIX "") +add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "") if(WITH_MONOLITHIC_BUILD) - target_link_libraries(skel freerdp) + target_link_libraries(${MODULE_NAME} freerdp) else() - target_link_libraries(skel freerdp-utils) + target_link_libraries(${MODULE_NAME} freerdp-utils) endif() -install(TARGETS skel DESTINATION ${FREERDP_PLUGIN_PATH}) +install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH}) diff --git a/channels/server/CMakeLists.txt b/channels/server/CMakeLists.txt index b8de4ee2d..793564e05 100644 --- a/channels/server/CMakeLists.txt +++ b/channels/server/CMakeLists.txt @@ -15,8 +15,8 @@ # See the License for the specific language governing permissions and # limitations under the License. -set(MODULE_NAME "freerdp-server-channels") -set(MODULE_PREFIX "FREERDP_SERVER_CHANNELS") +set(MODULE_NAME "freerdp-channels-server") +set(MODULE_PREFIX "FREERDP_CHANNELS_SERVER") foreach(_MODULE_NAME ${CHANNEL_BUILTIN_SERVER_MODULES}) string(TOUPPER "CHANNEL_${_MODULE_NAME}" _MODULE_PREFIX) @@ -35,3 +35,5 @@ set_target_properties(${MODULE_NAME} PROPERTIES VERSION ${FREERDP_VERSION_FULL} target_link_libraries(${MODULE_NAME} ${CHANNEL_SERVER_LIBS}) install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR}) + +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/Server") diff --git a/channels/tsmf/client/CMakeLists.txt b/channels/tsmf/client/CMakeLists.txt index baf97c55b..f4533a305 100644 --- a/channels/tsmf/client/CMakeLists.txt +++ b/channels/tsmf/client/CMakeLists.txt @@ -1,9 +1,7 @@ # FreeRDP: A Remote Desktop Protocol Client # FreeRDP cmake build script # -# Copyright 2011 O.S. Systems Software Ltda. -# Copyright 2011 Otavio Salvador -# Copyright 2011 Marc-Andre Moreau +# Copyright 2012 Marc-Andre Moreau # Copyright 2012 Hewlett-Packard Development Company, L.P. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -18,7 +16,10 @@ # See the License for the specific language governing permissions and # limitations under the License. -set(TSMF_SRCS +set(MODULE_NAME "tsmf") +set(MODULE_PREFIX "CHANNEL_TSMF_CLIENT") + +set(${MODULE_PREFIX}_SRCS tsmf_audio.c tsmf_audio.h tsmf_codec.c @@ -36,25 +37,27 @@ set(TSMF_SRCS include_directories(..) -add_library(tsmf ${TSMF_SRCS}) -set_target_properties(tsmf PROPERTIES PREFIX "") +add_library(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "") if(WITH_MONOLITHIC_BUILD) - target_link_libraries(tsmf freerdp) + target_link_libraries(${MODULE_NAME} freerdp) else() - target_link_libraries(tsmf freerdp-utils) + target_link_libraries(${MODULE_NAME} freerdp-utils) endif() -install(TARGETS tsmf DESTINATION ${FREERDP_PLUGIN_PATH}) +install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH}) + +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/${MODULE_NAME}/Client") if(WITH_FFMPEG) add_subdirectory(ffmpeg) endif() if(WITH_XRANDR) -if(GSTREAMER_FOUND) - add_subdirectory(gstreamer) -endif() + if(GSTREAMER_FOUND) + add_subdirectory(gstreamer) + endif() endif() if(WITH_ALSA) @@ -64,4 +67,3 @@ endif() if(WITH_PULSEAUDIO) add_subdirectory(pulse) endif() - diff --git a/channels/urbdrc/CMakeLists.txt b/channels/urbdrc/CMakeLists.txt index f49c8bedc..a506d0f74 100644 --- a/channels/urbdrc/CMakeLists.txt +++ b/channels/urbdrc/CMakeLists.txt @@ -20,5 +20,3 @@ add_subdirectory(libusb) if(WITH_CLIENT_CHANNELS) add_subdirectory(client) endif() - - diff --git a/channels/urbdrc/client/CMakeLists.txt b/channels/urbdrc/client/CMakeLists.txt index ce8087e8c..198ed1d28 100644 --- a/channels/urbdrc/client/CMakeLists.txt +++ b/channels/urbdrc/client/CMakeLists.txt @@ -16,27 +16,38 @@ # See the License for the specific language governing permissions and # limitations under the License. -set(URBDRC_SRCS - searchman.c - searchman.h +set(MODULE_NAME "urbdrc") +set(MODULE_PREFIX "CHANNEL_URBDRC_CLIENT") + +set(${MODULE_PREFIX}_SRCS + searchman.c + searchman.h isoch_queue.c isoch_queue.h - data_transfer.c - data_transfer.h - urbdrc_main.c - urbdrc_main.h + data_transfer.c + data_transfer.h + urbdrc_main.c + urbdrc_main.h urbdrc_types.h) include_directories(..) -add_library(urbdrc ${URBDRC_SRCS}) -set_target_properties(urbdrc PROPERTIES PREFIX "") +add_library(${MODULE_NAME} ${URBDRC_SRCS}) +set_target_properties(${MODULE_NAME} PROPERTIES PREFIX "") -target_link_libraries(urbdrc udev) -target_link_libraries(urbdrc dbus-glib-1) -target_link_libraries(urbdrc pthread) -target_link_libraries(urbdrc uuid) -target_link_libraries(urbdrc freerdp-utils) +set(${MODULE_PREFIX}_LIBS + dbus-glib-1 + udev + uuid) -install(TARGETS urbdrc DESTINATION ${FREERDP_PLUGIN_PATH}) +if(WITH_MONOLITHIC_BUILD) + set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} freerdp) + target_link_libraries(${MODULE_NAME} ${MODULE_PREFIX}_LIBS) +else() + set(${MODULE_PREFIX}_LIBS ${${MODULE_PREFIX}_LIBS} freerdp-utils) + target_link_libraries(${MODULE_NAME} ${MODULE_PREFIX}_LIBS) +endif() +install(TARGETS ${MODULE_NAME} DESTINATION ${FREERDP_PLUGIN_PATH}) + +set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Channels/${MODULE_NAME}/Client") diff --git a/libfreerdp/CMakeLists.txt b/libfreerdp/CMakeLists.txt index 513f49398..83ff2d7c8 100644 --- a/libfreerdp/CMakeLists.txt +++ b/libfreerdp/CMakeLists.txt @@ -15,11 +15,14 @@ # See the License for the specific language governing permissions and # limitations under the License. +set(MODULE_NAME "freerdp") +set(MODULE_PREFIX "FREERDP") + if(WITH_MONOLITHIC_BUILD) set(CMAKE_POSITION_INDEPENDENT_CODE ON) endif() -set(FREERDP_MODULES +set(${MODULE_PREFIX}_SUBMODULES utils gdi rail @@ -30,21 +33,23 @@ set(FREERDP_MODULES locale core) -foreach(FREERDP_MODULE ${FREERDP_MODULES}) - add_subdirectory(${FREERDP_MODULE}) +foreach(${MODULE_PREFIX}_SUBMODULE ${FREERDP_SUBMODULES}) + add_subdirectory(${${MODULE_PREFIX}_SUBMODULE}) endforeach() if(WITH_MONOLITHIC_BUILD) - foreach(FREERDP_MODULE ${FREERDP_MODULES}) - set(FREERDP_OBJECTS ${FREERDP_OBJECTS} "$") + foreach(${MODULE_PREFIX}_SUBMODULE ${${MODULE_PREFIX}_MODULES}) + set(${MODULE_PREFIX}_OBJECTS ${${MODULE_PREFIX}_OBJECTS} "$") endforeach() - add_library(freerdp ${FREERDP_OBJECTS}) - set_target_properties(freerdp PROPERTIES VERSION ${FREERDP_VERSION_FULL} SOVERSION ${FREERDP_VERSION} PREFIX "lib") + add_library(${MODULE_NAME} ${${MODULE_PREFIX}_OBJECTS}) - target_link_libraries(freerdp ${FREERDP_LIBS}) - install(TARGETS freerdp DESTINATION ${CMAKE_INSTALL_LIBDIR}) + set_target_properties(${MODULE_NAME} PROPERTIES LINKER_LANGUAGE C) + set_target_properties(${MODULE_NAME} PROPERTIES VERSION ${FREERDP_VERSION_FULL} SOVERSION ${FREERDP_VERSION} PREFIX "lib") + + target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS}) + install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR}) + + set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "FreeRDP/libfreerdp") endif() - -set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "FreeRDP/libfreerdp") diff --git a/server/Sample/CMakeLists.txt b/server/Sample/CMakeLists.txt index a7219c248..a1b510580 100644 --- a/server/Sample/CMakeLists.txt +++ b/server/Sample/CMakeLists.txt @@ -26,14 +26,14 @@ add_executable(${MODULE_NAME} ${${MODULE_PREFIX}_SRCS}) if(WITH_MONOLITHIC_BUILD) target_link_libraries(${MODULE_NAME} freerdp - freerdp-server) + freerdp-channels-server) else() target_link_libraries(${MODULE_NAME} freerdp-core freerdp-utils freerdp-codec freerdp-channels - freerdp-server-channels) + freerdp-channels-server) endif() set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "Server/Sample") diff --git a/winpr/include/winpr/wtypes.h b/winpr/include/winpr/wtypes.h index 3b3669123..d1cd6b42d 100644 --- a/winpr/include/winpr/wtypes.h +++ b/winpr/include/winpr/wtypes.h @@ -89,11 +89,11 @@ typedef unsigned __int3264 ULONG_PTR, *PULONG_PTR; typedef signed int LONG32; typedef signed __int64 LONG64; -typedef CHAR* PSTR, *LPSTR; -typedef const CHAR *LPCSTR,*PCSTR; +typedef CHAR *PSTR, *LPSTR, *LPCH; +typedef const CHAR *LPCSTR, *PCSTR, *LPCCH; -typedef WCHAR* LPWSTR, *PWSTR; -typedef const WCHAR *LPCWSTR,*PCWSTR; +typedef WCHAR *LPWSTR, *PWSTR, *LPWCH; +typedef const WCHAR *LPCWSTR, *PCWSTR, *LPCWCH; typedef CHAR *LPSTR, *LPCH; typedef WCHAR *LPWSTR, *LPWCH; diff --git a/winpr/libwinpr/CMakeLists.txt b/winpr/libwinpr/CMakeLists.txt index 3ebf5cb2b..df1c31e48 100644 --- a/winpr/libwinpr/CMakeLists.txt +++ b/winpr/libwinpr/CMakeLists.txt @@ -15,6 +15,9 @@ # See the License for the specific language governing permissions and # limitations under the License. +set(MODULE_NAME "winpr") +set(MODULE_PREFIX "WINPR") + if (APPLE) # flat_namespace should be avoided, but is required for -undefined warning. Since WinPR currently has # a lot of undefined symbols in use, use this hack until they're filled out. @@ -30,25 +33,28 @@ file(GLOB FILEPATHS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*/${FILENAME}") foreach(FILEPATH ${FILEPATHS}) if(${FILEPATH} MATCHES "^([^/]*)//${FILENAME}") - string(REGEX REPLACE "^([^/]*)//${FILENAME}" "\\1" WINPR_MODULE ${FILEPATH}) - set(WINPR_MODULES ${WINPR_MODULES} ${WINPR_MODULE}) + string(REGEX REPLACE "^([^/]*)//${FILENAME}" "\\1" ${MODULE_PREFIX}_SUBMODULE ${FILEPATH}) + set(${MODULE_PREFIX}_SUBMODULES ${${MODULE_PREFIX}_SUBMODULES} ${${MODULE_PREFIX}_SUBMODULE}) endif() endforeach(FILEPATH) -foreach(WINPR_MODULE ${WINPR_MODULES}) - add_subdirectory(${WINPR_MODULE}) +foreach(${MODULE_PREFIX}_SUBMODULE ${${MODULE_PREFIX}_SUBMODULES}) + add_subdirectory(${${MODULE_PREFIX}_SUBMODULE}) endforeach() if(WITH_MONOLITHIC_BUILD) - foreach(WINPR_MODULE ${WINPR_MODULES}) - set(WINPR_OBJECTS ${WINPR_OBJECTS} "$") + foreach(${MODULE_PREFIX}_SUBMODULE ${${MODULE_PREFIX}_SUBMODULES}) + set(${MODULE_PREFIX}_OBJECTS ${${MODULE_PREFIX}_OBJECTS} "$") endforeach() - add_library(winpr ${WINPR_OBJECTS}) - set_target_properties(winpr PROPERTIES VERSION ${WINPR_VERSION_FULL} SOVERSION ${WINPR_VERSION} PREFIX "lib") + add_library(${MODULE_NAME} ${${MODULE_PREFIX}_OBJECTS}) - target_link_libraries(winpr ${WINPR_LIBS}) - install(TARGETS winpr DESTINATION ${CMAKE_INSTALL_LIBDIR}) + set_target_properties(${MODULE_NAME} PROPERTIES LINKER_LANGUAGE C) + set_target_properties(${MODULE_NAME} PROPERTIES VERSION ${WINPR_VERSION_FULL} SOVERSION ${WINPR_VERSION} PREFIX "lib") + + target_link_libraries(${MODULE_NAME} ${WINPR_LIBS}) + install(TARGETS ${MODULE_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR}) + + set_property(TARGET ${MODULE_NAME} PROPERTY FOLDER "WinPR/libwinpr") endif() -