[mapguide-commits] r9274 - in sandbox/jng/cmake_v2: . Common Common/Foundation Common/Geometry Common/MapGuideCommon Common/MdfModel Common/MdfParser Common/PlatformBase Common/Renderers Common/Security Common/Stylization Desktop Desktop/MgDesktop Desktop/UnitTest Server Server/src/Common/Base Server/src/Common/Cache Server/src/Common/Manager Server/src/Common/Thread Server/src/Gws Server/src/Gws/GwsCommon Server/src/Gws/GwsQueryEngine Server/src/Gws/GwsResource Server/src/Services/Drawing Server/src/Services/Feature Server/src/Services/Kml Server/src/Services/Mapping Server/src/Services/Profiling Server/src/Services/Rendering Server/src/Services/ServerAdmin Server/src/Services/Site Server/src/Services/Tile Server/src/UnitTesting Web Web/src/ApacheAgent Web/src/HttpHandler Web/src/JavaApi Web/src/JavaApiEx Web/src/WebApp Web/src/WebSupport

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Fri Jan 5 00:13:34 PST 2018


Author: jng
Date: 2018-01-05 00:13:34 -0800 (Fri, 05 Jan 2018)
New Revision: 9274

Modified:
   sandbox/jng/cmake_v2/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/Foundation/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/Geometry/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/MapGuideCommon/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/MdfModel/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/MdfParser/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/PlatformBase/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/Renderers/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/Security/CMakeLists.txt
   sandbox/jng/cmake_v2/Common/Stylization/CMakeLists.txt
   sandbox/jng/cmake_v2/Desktop/CMakeLists.txt
   sandbox/jng/cmake_v2/Desktop/MgDesktop/CMakeLists.txt
   sandbox/jng/cmake_v2/Desktop/UnitTest/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Common/Base/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Common/Cache/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Common/Manager/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Common/Thread/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Gws/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Gws/GwsCommon/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Gws/GwsQueryEngine/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Gws/GwsResource/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Services/Drawing/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Services/Feature/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Services/Kml/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Services/Mapping/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Services/Profiling/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Services/Rendering/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Services/ServerAdmin/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Services/Site/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/Services/Tile/CMakeLists.txt
   sandbox/jng/cmake_v2/Server/src/UnitTesting/CMakeLists.txt
   sandbox/jng/cmake_v2/Web/CMakeLists.txt
   sandbox/jng/cmake_v2/Web/src/ApacheAgent/CMakeLists.txt
   sandbox/jng/cmake_v2/Web/src/HttpHandler/CMakeLists.txt
   sandbox/jng/cmake_v2/Web/src/JavaApi/CMakeLists.txt
   sandbox/jng/cmake_v2/Web/src/JavaApiEx/CMakeLists.txt
   sandbox/jng/cmake_v2/Web/src/WebApp/CMakeLists.txt
   sandbox/jng/cmake_v2/Web/src/WebSupport/CMakeLists.txt
Log:
Enable target installation for libraries that are building. Also apply symlink installation (just like FDO) and parameterize the target suffix instead of explictly tacking '-' to all targets

Modified: sandbox/jng/cmake_v2/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -7,11 +7,22 @@
 
 # Look first in internal modules
 set(CMAKE_MODULE_PATH 
-	${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules
+    ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules
 )
 
 message(STATUS "Building for: ${CMAKE_BUILD_TYPE}")
 
+# Determine bitness
+if ((NOT MG_CPU EQUAL 32) AND (NOT MG_CPU EQUAL 64))
+    message(STATUS "MG_CPU not defined, determining what we're building for based on system bitness")
+    if(CMAKE_SIZEOF_VOID_P EQUAL 8)
+        set(MG_CPU 64)
+    else(CMAKE_SIZEOF_VOID_P EQUAL 8)
+        set(MG_CPU 32)
+    endif(CMAKE_SIZEOF_VOID_P EQUAL 8)
+    message (STATUS "MG_CPU is ${MG_CPU}")
+endif ((NOT MG_CPU EQUAL 32) AND (NOT MG_CPU EQUAL 64))
+
 # Make CPack available to easy generate binary packages
 include(CPack)
 
@@ -43,32 +54,49 @@
 set(MG_SERVER_GWS_DIR "${CMAKE_CURRENT_SOURCE_DIR}/Server/src/Gws")
 
 # Override install directory to match what the automake build does (/usr/local, rather than /usr/local/lib)
-set( INSTALL_PREFIX "/usr/local/mapguideopensource-${MG_VERSION}" )
+set(MG_INSTALL_PREFIX "/usr/local/mapguideopensource-${MG_VERSION}")
+set(CMAKE_INSTALL_PREFIX "${MG_INSTALL_PREFIX}")
 
-if( UNIX )
-    add_definitions( -DFULLPROTO -fPIC -DPIC )
-endif( UNIX )
+set(MG_VERSION_SUFFIX "-${MG_VERSION}")
 
+macro(set_install_subdir relbase)
+    # Global definitions ( used by all sources )
+    # Check if is a 64 bits install and use user defined LIB_SUFFIX
+    if(UNIX)
+        set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")
+        if(MG_CPU EQUAL 64)
+            message(STATUS "Compiling in 64 bits machine")
+            set(LIB_SUFFIX "64")
+        endif(MG_CPU EQUAL 64)
+        set(LIB_INSTALL_DIR "${relbase}lib${LIB_SUFFIX}")
+        set(BIN_INSTALL_DIR "${relbase}bin")
+    endif(UNIX)
+endmacro(set_lib_install_dir)
+
+if(UNIX)
+    add_definitions(-DFULLPROTO -fPIC -DPIC)
+endif(UNIX)
+
 if (CMAKE_SYSTEM_NAME MATCHES Linux)
-    add_definitions( -DLINUX -DLINUX_IA32 -pthread -Wno-write-strings )
+    add_definitions(-DLINUX -DLINUX_IA32 -pthread -Wno-write-strings)
 endif (CMAKE_SYSTEM_NAME MATCHES Linux)
 
-if( CMAKE_COMPILER_IS_GNUCXX )
-    add_definitions( -D__USE_GNU -Wno-deprecated )
-    if( CMAKE_SIZEOF_VOID_P EQUAL 8 )
-        set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64" )
-        set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64" )
-    else( CMAKE_SIZEOF_VOID_P EQUAL 8 )
-        set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32" )
-        set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32" )
-    endif( CMAKE_SIZEOF_VOID_P EQUAL 8 )
+if (CMAKE_COMPILER_IS_GNUCXX)
+    add_definitions(-D__USE_GNU -Wno-deprecated)
+    if(MG_CPU EQUAL 64)
+        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m64")
+        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m64")
+    else(MG_CPU EQUAL 64)
+        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -m32")
+        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32")
+    endif(MG_CPU EQUAL 64)
     if (CMAKE_BUILD_TYPE MATCHES DEBUG)
         add_definitions(-DDEBUG -D_DEBUG)
-        set ( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3" )
-        set ( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g3" )
+        set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
+        set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g3")
         message(STATUS "Adding standard compiler flags for debug")
     endif (CMAKE_BUILD_TYPE MATCHES DEBUG)
-endif( CMAKE_COMPILER_IS_GNUCXX )
+endif(CMAKE_COMPILER_IS_GNUCXX)
 
 find_package(GEOS REQUIRED)
 find_package(ACE REQUIRED)
@@ -95,9 +123,20 @@
     message(STATUS "Skipping optional Java support")
 endif (WITH_JAVA)
 
+# Some helper macros
+macro(install_symlink target linkname component)
+    # The link target doesn't have to exist at this point in time, the symlink will be valid at install time
+    execute_process(COMMAND ln -sf ${target} ${CMAKE_CURRENT_BINARY_DIR}/${linkname})
+    install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${linkname} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${component})
+endmacro(install_symlink)
+
 add_subdirectory(BuildTools)
 add_subdirectory(Oem)
 add_subdirectory(Common)
 add_subdirectory(Server)
 add_subdirectory(Web)
-add_subdirectory(Desktop)
+if (WITH_DESKTOP)
+    add_subdirectory(Desktop)
+else (WITH_DESKTOP)
+    message(STATUS "Skipping optional mg-desktop support")
+endif (WITH_DESKTOP)

Modified: sandbox/jng/cmake_v2/Common/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -5,6 +5,9 @@
 
 add_definitions( -DACE_HAS_THREAD_SAFE_ACCEPT )
 
+set(MG_COMPONENT "common")
+set_install_subdir("")
+
 add_subdirectory(Foundation)
 add_subdirectory(Geometry)
 add_subdirectory(MapGuideCommon)

Modified: sandbox/jng/cmake_v2/Common/Foundation/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/Foundation/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/Foundation/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -12,13 +12,14 @@
     FoundationBuild.cpp
 )
 
-add_library(MgFoundation-${MG_VERSION} SHARED ${MgFoundation_SRCS})
+add_library(MgFoundation${MG_VERSION_SUFFIX} SHARED ${MgFoundation_SRCS})
 
-target_link_libraries(MgFoundation-${MG_VERSION}
+target_link_libraries(MgFoundation${MG_VERSION_SUFFIX}
     ${ACE_LIBRARY}
     ${XERCESC_LIBRARIES}
-    MgMdfModel-${MG_VERSION}
-    MgMdfParser-${MG_VERSION}
+    MgMdfModel${MG_VERSION_SUFFIX}
+    MgMdfParser${MG_VERSION_SUFFIX}
 )
 
-#install( TARGETS MgFoundation-${MG_VERSION} DESTINATION ${LIB_INSTALL_DIR} )
\ No newline at end of file
+install( TARGETS MgFoundation${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT} )
+install_symlink( ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgFoundation${MG_VERSION_SUFFIX}.so libMgFoundation.so ${MG_COMPONENT} )

Modified: sandbox/jng/cmake_v2/Common/Geometry/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/Geometry/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/Geometry/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -63,14 +63,15 @@
     ../CoordinateSystem/SmartCriticalClass.cpp
 )
 
-add_library(MgGeometry-${MG_VERSION} SHARED ${MgGeometry_SRCS})
+add_library(MgGeometry${MG_VERSION_SUFFIX} SHARED ${MgGeometry_SRCS})
 
-target_link_libraries(MgGeometry-${MG_VERSION}
-    MgFoundation-${MG_VERSION}
+target_link_libraries(MgGeometry${MG_VERSION_SUFFIX}
+    MgFoundation${MG_VERSION_SUFFIX}
     CsMap
     ${ACE_LIBRARY}
     ${GEOS_LIBRARY}
     pthread
 )
 
-#install( TARGETS MgGeometry-${MG_VERSION} DESTINATION ${LIB_INSTALL_DIR} )
\ No newline at end of file
+install( TARGETS MgGeometry${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT} )
+install_symlink( ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgGeometry${MG_VERSION_SUFFIX}.so libMgGeometry.so ${MG_COMPONENT} )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Common/MapGuideCommon/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/MapGuideCommon/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/MapGuideCommon/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -16,15 +16,16 @@
     MapGuideCommonBuild.cpp
 )
 
-add_library(MgMapGuideCommon-${MG_VERSION} SHARED ${MgMapGuideCommon_SRCS})
+add_library(MgMapGuideCommon${MG_VERSION_SUFFIX} SHARED ${MgMapGuideCommon_SRCS})
 
-target_link_libraries(MgMapGuideCommon-${MG_VERSION}
+target_link_libraries(MgMapGuideCommon${MG_VERSION_SUFFIX}
     ${ACE_LIBRARY}
-    MgMdfParser-${MG_VERSION}
-    MgMdfModel-${MG_VERSION}
-    MgFoundation-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgSecurity-${MG_VERSION}
+    MgMdfParser${MG_VERSION_SUFFIX}
+    MgMdfModel${MG_VERSION_SUFFIX}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgSecurity${MG_VERSION_SUFFIX}
 )
 
-#install( TARGETS ${MgMapGuideCommon_LIBRARY} DESTINATION ${LIB_INSTALL_DIR} )
\ No newline at end of file
+install( TARGETS MgMapGuideCommon${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT} )
+install_symlink( ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgMapGuideCommon${MG_VERSION_SUFFIX}.so libMgMapGuideCommon.so ${MG_COMPONENT} )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Common/MdfModel/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/MdfModel/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/MdfModel/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -117,6 +117,7 @@
     XYWatermarkPosition.cpp
 )
 
-add_library(MgMdfModel-${MG_VERSION} SHARED ${MgMdfModel_SRCS})
+add_library(MgMdfModel${MG_VERSION_SUFFIX} SHARED ${MgMdfModel_SRCS})
 
-#install( TARGETS MgMdfModel-${MG_VERSION} DESTINATION ${LIB_INSTALL_DIR} )
\ No newline at end of file
+install( TARGETS MgMdfModel${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT} )
+install_symlink( ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgMdfModel${MG_VERSION_SUFFIX}.so libMgMdfModel.so ${MG_COMPONENT} )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Common/MdfParser/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/MdfParser/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/MdfParser/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -118,11 +118,12 @@
     SAX2Parser.cpp
 )
 
-add_library(MgMdfParser-${MG_VERSION} SHARED ${MgMdfParser_SRCS})
+add_library(MgMdfParser${MG_VERSION_SUFFIX} SHARED ${MgMdfParser_SRCS})
 
-target_link_libraries(MgMdfParser-${MG_VERSION}
+target_link_libraries(MgMdfParser${MG_VERSION_SUFFIX}
     ${XERCESC_LIBRARIES}
-    MgMdfModel-${MG_VERSION}
+    MgMdfModel${MG_VERSION_SUFFIX}
 )
 
-#install( TARGETS MgMdfParser-${MG_VERSION} DESTINATION ${LIB_INSTALL_DIR} )
\ No newline at end of file
+install( TARGETS MgMdfParser${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT} )
+install_symlink( ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgMdfParser${MG_VERSION_SUFFIX}.so libMgMdfParser.so ${MG_COMPONENT} )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Common/PlatformBase/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/PlatformBase/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/PlatformBase/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -14,15 +14,16 @@
     PlatformBaseBuild.cpp
 )
 
-add_library(MgPlatformBase-${MG_VERSION} SHARED ${MgPlatformBase_SRCS})
+add_library(MgPlatformBase${MG_VERSION_SUFFIX} SHARED ${MgPlatformBase_SRCS})
 
-target_link_libraries(MgPlatformBase-${MG_VERSION}
+target_link_libraries(MgPlatformBase${MG_VERSION_SUFFIX}
     ${ACE_LIBRARY}
-    MgMdfParser-${MG_VERSION}
-    MgMdfModel-${MG_VERSION}
-    MgFoundation-${MG_VERSION}
-    MgSecurity-${MG_VERSION}
-    MgGeometry-${MG_VERSION}
+    MgMdfParser${MG_VERSION_SUFFIX}
+    MgMdfModel${MG_VERSION_SUFFIX}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgSecurity${MG_VERSION_SUFFIX}
+    MgGeometry${MG_VERSION_SUFFIX}
 )
 
-#install( TARGETS ${MgPlatformBase_LIBRARY} DESTINATION ${LIB_INSTALL_DIR} )
\ No newline at end of file
+install( TARGETS MgPlatformBase${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT} )
+install_symlink( ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgPlatformBase${MG_VERSION_SUFFIX}.so libMgPlatformBase.so ${MG_COMPONENT} )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Common/Renderers/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/Renderers/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/Renderers/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -54,9 +54,9 @@
 
 add_definitions(-DDWFTK_BUILD_EXPAT)
 
-add_library(MgRenderers-${MG_VERSION} SHARED ${MgRenderers_SRCS})
+add_library(MgRenderers${MG_VERSION_SUFFIX} SHARED ${MgRenderers_SRCS})
 
-target_link_libraries(MgRenderers-${MG_VERSION}
+target_link_libraries(MgRenderers${MG_VERSION_SUFFIX}
     ${GD_LIBRARY}
     ${FREETYPE_LIBRARY}
     ${JPEG_LIBRARY}
@@ -66,7 +66,8 @@
     dwftk
     dwfwhiptk
     dwfw3dtk
-    MgStylization-${MG_VERSION}
+    MgStylization${MG_VERSION_SUFFIX}
 )
 
-#install( TARGETS MgRenderers-${MG_VERSION} DESTINATION ${LIB_INSTALL_DIR} )
\ No newline at end of file
+install( TARGETS MgRenderers${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT} )
+install_symlink( ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgRenderers${MG_VERSION_SUFFIX}.so libMgRenderers.so ${MG_COMPONENT} )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Common/Security/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/Security/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/Security/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -2,4 +2,4 @@
     SecurityBuild.cpp
 )
 
-add_library(MgSecurity-${MG_VERSION} STATIC ${MgSecurity_SRCS})
\ No newline at end of file
+add_library(MgSecurity${MG_VERSION_SUFFIX} STATIC ${MgSecurity_SRCS})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Common/Stylization/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Common/Stylization/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Common/Stylization/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -97,13 +97,14 @@
     TransformMesh.cpp
 )
 
-add_library(MgStylization-${MG_VERSION} SHARED ${MgStylization_SRCS})
+add_library(MgStylization${MG_VERSION_SUFFIX} SHARED ${MgStylization_SRCS})
 
-target_link_libraries(MgStylization-${MG_VERSION}
+target_link_libraries(MgStylization${MG_VERSION_SUFFIX}
     ${FDO_EXPRESSIONENGINE_LIBRARY}
     ${FDO_LIBRARY}
-    MgFoundation-${MG_VERSION}
-    MgMdfModel-${MG_VERSION}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgMdfModel${MG_VERSION_SUFFIX}
 )
 
-#install( TARGETS MgStylization-${MG_VERSION} DESTINATION ${LIB_INSTALL_DIR} )
\ No newline at end of file
+install( TARGETS MgStylization${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT} )
+install_symlink( ${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgStylization${MG_VERSION_SUFFIX}.so libMgStylization.so ${MG_COMPONENT} )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Desktop/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Desktop/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Desktop/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -5,5 +5,8 @@
     set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--as-needed -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
 endif( CMAKE_COMPILER_IS_GNUCXX )
 
+set(MG_COMPONENT "portable")
+set_install_subdir("portable/")
+
 add_subdirectory(MgDesktop)
 add_subdirectory(UnitTest)
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Desktop/MgDesktop/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Desktop/MgDesktop/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Desktop/MgDesktop/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -29,9 +29,11 @@
 
 add_definitions(-DDWFCORE_STATIC -DDWFTK_STATIC -DDWFTK_USE_DWFCORE_ZLIB -DDWFTK_BUILD_EXPAT -DWHIP_STATIC_LIB)
 
-add_library(MgDesktop-${MG_VERSION} SHARED ${MgDesktop_SRCS})
+add_library(MgDesktop${MG_VERSION_SUFFIX} SHARED ${MgDesktop_SRCS})
+install(TARGETS MgDesktop${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgDesktop${MG_VERSION_SUFFIX}.so libMgDesktop.so ${MG_COMPONENT})
 
-target_link_libraries(MgDesktop-${MG_VERSION}
+target_link_libraries(MgDesktop${MG_VERSION_SUFFIX}
     ${ACE_LIBRARY}
     ${XERCESC_LIBRARIES}
     ${FDO_LIBRARY}
@@ -39,14 +41,14 @@
     dwfcore
     dwftk
     dwfwhiptk
-    MgMdfModel-${MG_VERSION}
-    MgMdfParser-${MG_VERSION}
-    MgFoundation-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgSecurity-${MG_VERSION}
-    MgRenderers-${MG_VERSION}
-    MgStylization-${MG_VERSION}
-    MgGwsCommon-${MG_VERSION}
-    MgGwsQueryEngine-${MG_VERSION}
+    MgMdfModel${MG_VERSION_SUFFIX}
+    MgMdfParser${MG_VERSION_SUFFIX}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgSecurity${MG_VERSION_SUFFIX}
+    MgRenderers${MG_VERSION_SUFFIX}
+    MgStylization${MG_VERSION_SUFFIX}
+    MgGwsCommon${MG_VERSION_SUFFIX}
+    MgGwsQueryEngine${MG_VERSION_SUFFIX}
     pthread
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Desktop/UnitTest/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Desktop/UnitTest/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Desktop/UnitTest/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -38,10 +38,10 @@
     ${FDO_LIBRARY}
     ${XERCESC_LIBRARIES}
     ${CPPUNIT_LIBRARIES}
-    MgMdfParser-${MG_VERSION}
-    MgMdfModel-${MG_VERSION}
-    MgFoundation-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgSecurity-${MG_VERSION}
-    MgDesktop-${MG_VERSION}
+    MgMdfParser${MG_VERSION_SUFFIX}
+    MgMdfModel${MG_VERSION_SUFFIX}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgSecurity${MG_VERSION_SUFFIX}
+    MgDesktop${MG_VERSION_SUFFIX}
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -1,3 +1,6 @@
 add_definitions( -DACE_HAS_THREAD_SAFE_ACCEPT )
 
+set(MG_COMPONENT "server")
+set_install_subdir("server/")
+
 add_subdirectory(src)
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Common/Base/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Common/Base/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Common/Base/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -13,10 +13,12 @@
     ServerBaseBuild.cpp
 )
 
-add_library(MgServerBase-${MG_VERSION} SHARED ${MgServerBase_SRCS})
+add_library(MgServerBase${MG_VERSION_SUFFIX} SHARED ${MgServerBase_SRCS})
+install(TARGETS MgServerBase${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerBase${MG_VERSION_SUFFIX}.so libMgServerBase.so ${MG_COMPONENT})
 
-target_link_libraries(MgServerBase-${MG_VERSION}
-    MgMapGuideCommon-${MG_VERSION}
-    MgServerManager-${MG_VERSION}
+target_link_libraries(MgServerBase${MG_VERSION_SUFFIX}
+    MgMapGuideCommon${MG_VERSION_SUFFIX}
+    MgServerManager${MG_VERSION_SUFFIX}
     ${ACE_LIBRARY}
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Common/Cache/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Common/Cache/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Common/Cache/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -10,10 +10,12 @@
     ServerCacheBuild.cpp
 )
 
-add_library(MgServerCache-${MG_VERSION} SHARED ${MgServerCache_SRCS})
+add_library(MgServerCache${MG_VERSION_SUFFIX} SHARED ${MgServerCache_SRCS})
+install(TARGETS MgServerCache${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerCache${MG_VERSION_SUFFIX}.so libMgServerCache.so ${MG_COMPONENT})
 
-target_link_libraries(MgServerCache-${MG_VERSION}
-    MgFoundation-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgMapGuideCommon-${MG_VERSION}
+target_link_libraries(MgServerCache${MG_VERSION_SUFFIX}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgMapGuideCommon${MG_VERSION_SUFFIX}
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Common/Manager/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Common/Manager/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Common/Manager/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -27,14 +27,16 @@
     ServerManagerBuild.cpp
 )
 
-add_library(MgServerManager-${MG_VERSION} SHARED ${MgServerManager_SRCS})
+add_library(MgServerManager${MG_VERSION_SUFFIX} SHARED ${MgServerManager_SRCS})
+install(TARGETS MgServerManager${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerManager${MG_VERSION_SUFFIX}.so libMgServerManager.so ${MG_COMPONENT})
 
-target_link_libraries(MgServerManager-${MG_VERSION}
+target_link_libraries(MgServerManager${MG_VERSION_SUFFIX}
     ${FDO_LIBRARY}
     ${ACE_LIBRARY}
-    MgFoundation-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgMapGuideCommon-${MG_VERSION}
-    MgServerThread-${MG_VERSION}
-    MgServerCache-${MG_VERSION}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgMapGuideCommon${MG_VERSION_SUFFIX}
+    MgServerThread${MG_VERSION_SUFFIX}
+    MgServerCache${MG_VERSION_SUFFIX}
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Common/Thread/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Common/Thread/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Common/Thread/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -11,8 +11,10 @@
     ServerThreadBuild.cpp
 )
 
-add_library(MgServerThread-${MG_VERSION} SHARED ${MgServerThread_SRCS})
+add_library(MgServerThread${MG_VERSION_SUFFIX} SHARED ${MgServerThread_SRCS})
+install(TARGETS MgServerThread${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerThread${MG_VERSION_SUFFIX}.so libMgServerThread.so ${MG_COMPONENT})
 
-target_link_libraries(MgServerThread-${MG_VERSION}
+target_link_libraries(MgServerThread${MG_VERSION_SUFFIX}
     ${ACE_LIBRARY}
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Gws/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Gws/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Gws/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -1,3 +1,6 @@
+set(MG_COMPONENT "common")
+set(CMAKE_INSTALL_PREFIX "${MG_INSTALL_PREFIX}")
+
 add_subdirectory(GwsCommon)
 add_subdirectory(GwsQueryEngine)
 add_subdirectory(GwsResource)
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Gws/GwsCommon/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Gws/GwsCommon/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Gws/GwsCommon/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -23,4 +23,6 @@
     IGwsException.cpp
 )
 
-add_library(MgGwsCommon-${MG_VERSION} SHARED ${GwsCommon_SRCS})
\ No newline at end of file
+add_library(MgGwsCommon${MG_VERSION_SUFFIX} SHARED ${GwsCommon_SRCS})
+install(TARGETS MgGwsCommon${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgGwsCommon${MG_VERSION_SUFFIX}.so libMgGwsCommon.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Gws/GwsQueryEngine/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Gws/GwsQueryEngine/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Gws/GwsQueryEngine/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -49,4 +49,6 @@
     utf8_.cpp
 )
 
-add_library(MgGwsQueryEngine-${MG_VERSION} SHARED ${GwsQueryEngine_SRCS})
\ No newline at end of file
+add_library(MgGwsQueryEngine${MG_VERSION_SUFFIX} SHARED ${GwsQueryEngine_SRCS})
+install(TARGETS MgGwsQueryEngine${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgGwsQueryEngine${MG_VERSION_SUFFIX}.so libMgGwsQueryEngine.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Gws/GwsResource/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Gws/GwsResource/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Gws/GwsResource/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -4,4 +4,6 @@
     GwsResourceLinux.cpp
 )
 
-add_library(MgGwsResource-${MG_VERSION} SHARED ${GwsResource_SRCS})
\ No newline at end of file
+add_library(MgGwsResource${MG_VERSION_SUFFIX} SHARED ${GwsResource_SRCS})
+install(TARGETS MgGwsResource${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgGwsResource${MG_VERSION_SUFFIX}.so libMgGwsResource.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Services/Drawing/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/Drawing/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Services/Drawing/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -19,4 +19,6 @@
     ServerDrawingServiceBuild.cpp
 )
 
-add_library(MgServerDrawingService-${MG_VERSION} SHARED ${MgServerDrawingService_SRCS})
\ No newline at end of file
+add_library(MgServerDrawingService${MG_VERSION_SUFFIX} SHARED ${MgServerDrawingService_SRCS})
+install(TARGETS MgServerDrawingService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerDrawingService${MG_VERSION_SUFFIX}.so libMgServerDrawingService.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Services/Feature/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/Feature/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Services/Feature/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -24,9 +24,11 @@
     ServerFeatureServiceBuild.cpp
 )
 
-add_library(MgServerFeatureService-${MG_VERSION} SHARED ${MgServerFeatureService_SRCS})
+add_library(MgServerFeatureService${MG_VERSION_SUFFIX} SHARED ${MgServerFeatureService_SRCS})
+install(TARGETS MgServerFeatureService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerFeatureService${MG_VERSION_SUFFIX}.so libMgServerFeatureService.so ${MG_COMPONENT})
 
-target_link_libraries(MgServerFeatureService-${MG_VERSION}
-    MgGwsCommon-${MG_VERSION}
-    MgGwsQueryEngine-${MG_VERSION}
+target_link_libraries(MgServerFeatureService${MG_VERSION_SUFFIX}
+    MgGwsCommon${MG_VERSION_SUFFIX}
+    MgGwsQueryEngine${MG_VERSION_SUFFIX}
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Services/Kml/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/Kml/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Services/Kml/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -26,4 +26,6 @@
     ServerKmlServiceBuild.cpp
 )
 
-add_library(MgServerKmlService-${MG_VERSION} SHARED ${MgServerKmlService_SRCS})
\ No newline at end of file
+add_library(MgServerKmlService${MG_VERSION_SUFFIX} SHARED ${MgServerKmlService_SRCS})
+install(TARGETS MgServerKmlService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerKmlService${MG_VERSION_SUFFIX}.so libMgServerKmlService.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Services/Mapping/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/Mapping/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Services/Mapping/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -25,4 +25,6 @@
     ServerMappingServiceBuild.cpp
 )
 
-add_library(MgServerMappingService-${MG_VERSION} SHARED ${MgServerMappingService_SRCS})
\ No newline at end of file
+add_library(MgServerMappingService${MG_VERSION_SUFFIX} SHARED ${MgServerMappingService_SRCS})
+install(TARGETS MgServerMappingService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerMappingService${MG_VERSION_SUFFIX}.so libMgServerMappingService.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Services/Profiling/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/Profiling/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Services/Profiling/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -18,4 +18,6 @@
     ServerProfilingServiceBuild.cpp
 )
 
-add_library(MgServerProfilingService-${MG_VERSION} SHARED ${MgServerProfilingService_SRCS})
\ No newline at end of file
+add_library(MgServerProfilingService${MG_VERSION_SUFFIX} SHARED ${MgServerProfilingService_SRCS})
+install(TARGETS MgServerProfilingService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerProfilingService${MG_VERSION_SUFFIX}.so libMgServerProfilingService.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Services/Rendering/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/Rendering/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Services/Rendering/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -21,4 +21,6 @@
     ServerRenderingServiceBuild.cpp
 )
 
-add_library(MgServerRenderingService-${MG_VERSION} SHARED ${MgServerRenderingService_SRCS})
\ No newline at end of file
+add_library(MgServerRenderingService${MG_VERSION_SUFFIX} SHARED ${MgServerRenderingService_SRCS})
+install(TARGETS MgServerRenderingService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerRenderingService${MG_VERSION_SUFFIX}.so libMgServerRenderingService.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Services/ServerAdmin/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/ServerAdmin/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Services/ServerAdmin/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -13,4 +13,6 @@
     ServerAdminServiceBuild.cpp
 )
 
-add_library(MgServerAdminService-${MG_VERSION} SHARED ${MgServerAdminService_SRCS})
\ No newline at end of file
+add_library(MgServerAdminService${MG_VERSION_SUFFIX} SHARED ${MgServerAdminService_SRCS})
+install(TARGETS MgServerAdminService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerAdminService${MG_VERSION_SUFFIX}.so libMgServerAdminService.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Services/Site/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/Site/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Services/Site/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -16,4 +16,6 @@
     ServerSiteServiceBuild.cpp
 )
 
-add_library(MgServerSiteService-${MG_VERSION} SHARED ${MgServerSiteService_SRCS})
\ No newline at end of file
+add_library(MgServerSiteService${MG_VERSION_SUFFIX} SHARED ${MgServerSiteService_SRCS})
+install(TARGETS MgServerSiteService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerSiteService${MG_VERSION_SUFFIX}.so libMgServerSiteService.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/Services/Tile/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/Tile/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/Services/Tile/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -15,4 +15,6 @@
     ServerTileServiceBuild.cpp
 )
 
-add_library(MgServerTileService-${MG_VERSION} SHARED ${MgServerTileService_SRCS})
\ No newline at end of file
+add_library(MgServerTileService${MG_VERSION_SUFFIX} SHARED ${MgServerTileService_SRCS})
+install(TARGETS MgServerTileService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerTileService${MG_VERSION_SUFFIX}.so libMgServerTileService.so ${MG_COMPONENT})
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Server/src/UnitTesting/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/UnitTesting/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Server/src/UnitTesting/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -44,8 +44,10 @@
     UnitTesting.cpp
 )
 
-add_library(MgUnitTesting-${MG_VERSION} SHARED ${MgUnitTesting_SRCS})
+add_library(MgUnitTesting${MG_VERSION_SUFFIX} SHARED ${MgUnitTesting_SRCS})
+install(TARGETS MgUnitTesting${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgUnitTesting${MG_VERSION_SUFFIX}.so libMgUnitTesting.so ${MG_COMPONENT})
 
-target_link_libraries(MgUnitTesting-${MG_VERSION}
+target_link_libraries(MgUnitTesting${MG_VERSION_SUFFIX}
     ${CPPUNIT_LIBRARY}
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Web/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Web/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Web/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -5,4 +5,7 @@
     set ( CMAKE_SHARED_LINKER_FLAGS "-Wl,--as-needed -Wl,--no-undefined -lc ${CMAKE_SHARED_LINKER_FLAGS}")
 endif( CMAKE_COMPILER_IS_GNUCXX )
 
+set(MG_COMPONENT "web")
+set_install_subdir("webserverextensions/")
+
 add_subdirectory(src)
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Web/src/ApacheAgent/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Web/src/ApacheAgent/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Web/src/ApacheAgent/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -28,12 +28,12 @@
 add_library(mod_mgmapagent SHARED ${mod_mgmapagent_SRCS})
 
 target_link_libraries(mod_mgmapagent
-    MgFoundation-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgMdfModel-${MG_VERSION}
-    MgMdfParser-${MG_VERSION}
-    MgHttpHandler-${MG_VERSION}
-    MgWebSupport-${MG_VERSION}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgMdfModel${MG_VERSION_SUFFIX}
+    MgMdfParser${MG_VERSION_SUFFIX}
+    MgHttpHandler${MG_VERSION_SUFFIX}
+    MgWebSupport${MG_VERSION_SUFFIX}
 )
 
 # Make sure this doesn't have the "lib" prefix

Modified: sandbox/jng/cmake_v2/Web/src/HttpHandler/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Web/src/HttpHandler/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Web/src/HttpHandler/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -14,14 +14,16 @@
     HttpHandlerBuild.cpp
 )
 
-add_library(MgHttpHandler-${MG_VERSION} SHARED ${MgHttpHandler_SRCS})
+add_library(MgHttpHandler${MG_VERSION_SUFFIX} SHARED ${MgHttpHandler_SRCS})
+install(TARGETS MgHttpHandler${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgHttpHandler${MG_VERSION_SUFFIX}.so libMgHttpHandler.so ${MG_COMPONENT})
 
-target_link_libraries(MgHttpHandler-${MG_VERSION}
-    MgFoundation-${MG_VERSION}
-    MgGeometry-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgMapGuideCommon-${MG_VERSION}
+target_link_libraries(MgHttpHandler${MG_VERSION_SUFFIX}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgGeometry${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgMapGuideCommon${MG_VERSION_SUFFIX}
     ${JsonCpp_LIBRARY}
-    MgMdfModel-${MG_VERSION}
-    MgMdfParser-${MG_VERSION}
+    MgMdfModel${MG_VERSION_SUFFIX}
+    MgMdfParser${MG_VERSION_SUFFIX}
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Web/src/JavaApi/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Web/src/JavaApi/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Web/src/JavaApi/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -56,20 +56,22 @@
             ${CMAKE_CURRENT_BINARY_DIR}/org/osgeo/mapguide/*.java
 )
 
-add_library(MapGuideJavaApi-${MG_VERSION} SHARED ${MapGuideJavaApi_SRCS})
+add_library(MapGuideJavaApi${MG_VERSION_SUFFIX} SHARED ${MapGuideJavaApi_SRCS})
+install(TARGETS MapGuideJavaApi${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMapGuideJavaApi${MG_VERSION_SUFFIX}.so libMapGuideJavaApi.so ${MG_COMPONENT})
 
-target_link_libraries(MapGuideJavaApi-${MG_VERSION}
+target_link_libraries(MapGuideJavaApi${MG_VERSION_SUFFIX}
     ${ACE_LIBRARY}
     ${JNI_LIBRARIES}
-    MgFoundation-${MG_VERSION}
-    MgGeometry-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgMapGuideCommon-${MG_VERSION}
-    MgHttpHandler-${MG_VERSION}
-    MgMdfModel-${MG_VERSION}
-    MgMdfParser-${MG_VERSION}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgGeometry${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgMapGuideCommon${MG_VERSION_SUFFIX}
+    MgHttpHandler${MG_VERSION_SUFFIX}
+    MgMdfModel${MG_VERSION_SUFFIX}
+    MgMdfParser${MG_VERSION_SUFFIX}
     ${XERCESC_LIBRARIES}
-    MgWebApp-${MG_VERSION}
+    MgWebApp${MG_VERSION_SUFFIX}
 )
 
 file(COPY "java.i" DESTINATION ${CMAKE_CURRENT_BINARY_DIR})

Modified: sandbox/jng/cmake_v2/Web/src/JavaApiEx/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Web/src/JavaApiEx/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Web/src/JavaApiEx/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -57,20 +57,22 @@
             ${CMAKE_CURRENT_BINARY_DIR}/org/osgeo/mapguide/*.java
 )
 
-add_library(MapGuideJavaApiEx-${MG_VERSION} SHARED ${MapGuideJavaApiEx_SRCS})
+add_library(MapGuideJavaApiEx${MG_VERSION_SUFFIX} SHARED ${MapGuideJavaApiEx_SRCS})
+install(TARGETS MapGuideJavaApiEx${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMapGuideJavaApiEx${MG_VERSION_SUFFIX}.so libMapGuideJavaApiEx.so ${MG_COMPONENT})
 
-target_link_libraries(MapGuideJavaApiEx-${MG_VERSION}
+target_link_libraries(MapGuideJavaApiEx${MG_VERSION_SUFFIX}
     ${ACE_LIBRARY}
     ${JNI_LIBRARIES}
-    MgFoundation-${MG_VERSION}
-    MgGeometry-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgMapGuideCommon-${MG_VERSION}
-    MgHttpHandler-${MG_VERSION}
-    MgMdfModel-${MG_VERSION}
-    MgMdfParser-${MG_VERSION}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgGeometry${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgMapGuideCommon${MG_VERSION_SUFFIX}
+    MgHttpHandler${MG_VERSION_SUFFIX}
+    MgMdfModel${MG_VERSION_SUFFIX}
+    MgMdfParser${MG_VERSION_SUFFIX}
     ${XERCESC_LIBRARIES}
-    MgWebApp-${MG_VERSION}
+    MgWebApp${MG_VERSION_SUFFIX}
 )
 
 file(COPY "java.i" DESTINATION ${CMAKE_CURRENT_BINARY_DIR})

Modified: sandbox/jng/cmake_v2/Web/src/WebApp/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Web/src/WebApp/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Web/src/WebApp/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -38,12 +38,14 @@
     WebWidgetCollection.cpp
 )
 
-add_library(MgWebApp-${MG_VERSION} SHARED ${MgWebApp_SRCS})
+add_library(MgWebApp${MG_VERSION_SUFFIX} SHARED ${MgWebApp_SRCS})
+install(TARGETS MgWebApp${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgWebApp${MG_VERSION_SUFFIX}.so libMgWebApp.so ${MG_COMPONENT})
 
-target_link_libraries(MgWebApp-${MG_VERSION}
+target_link_libraries(MgWebApp${MG_VERSION_SUFFIX}
     ${XERCESC_LIBRARIES}
-    MgFoundation-${MG_VERSION}
-    MgGeometry-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgMapGuideCommon-${MG_VERSION}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgGeometry${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgMapGuideCommon${MG_VERSION_SUFFIX}
 )
\ No newline at end of file

Modified: sandbox/jng/cmake_v2/Web/src/WebSupport/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Web/src/WebSupport/CMakeLists.txt	2018-01-04 15:49:46 UTC (rev 9273)
+++ sandbox/jng/cmake_v2/Web/src/WebSupport/CMakeLists.txt	2018-01-05 08:13:34 UTC (rev 9274)
@@ -10,10 +10,12 @@
     InitializeWebTier.cpp
 )
 
-add_library(MgWebSupport-${MG_VERSION} SHARED ${MgWebSupport_SRCS})
+add_library(MgWebSupport${MG_VERSION_SUFFIX} SHARED ${MgWebSupport_SRCS})
+install(TARGETS MgWebSupport${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgWebSupport${MG_VERSION_SUFFIX}.so libMgWebSupport.so ${MG_COMPONENT})
 
-target_link_libraries(MgWebSupport-${MG_VERSION}
-    MgFoundation-${MG_VERSION}
-    MgPlatformBase-${MG_VERSION}
-    MgMapGuideCommon-${MG_VERSION}
+target_link_libraries(MgWebSupport${MG_VERSION_SUFFIX}
+    MgFoundation${MG_VERSION_SUFFIX}
+    MgPlatformBase${MG_VERSION_SUFFIX}
+    MgMapGuideCommon${MG_VERSION_SUFFIX}
 )
\ No newline at end of file



More information about the mapguide-commits mailing list