[mapguide-commits] r9284 - in sandbox/jng/cmake_v2: . Oem Server/src Server/src/Core Server/src/Services Server/src/Services/Resource
svn_mapguide at osgeo.org
svn_mapguide at osgeo.org
Sat Jan 6 04:44:33 PST 2018
Author: jng
Date: 2018-01-06 04:44:33 -0800 (Sat, 06 Jan 2018)
New Revision: 9284
Added:
sandbox/jng/cmake_v2/Server/src/Core/CMakeLists.txt
sandbox/jng/cmake_v2/Server/src/Services/Resource/CMakeLists.txt
Modified:
sandbox/jng/cmake_v2/CMakeLists.txt
sandbox/jng/cmake_v2/Oem/CMakeLists.txt
sandbox/jng/cmake_v2/Server/src/CMakeLists.txt
sandbox/jng/cmake_v2/Server/src/Services/CMakeLists.txt
Log:
Get mgserver and MgServerResourceService building and linking
Modified: sandbox/jng/cmake_v2/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/CMakeLists.txt 2018-01-05 18:33:30 UTC (rev 9283)
+++ sandbox/jng/cmake_v2/CMakeLists.txt 2018-01-06 12:44:33 UTC (rev 9284)
@@ -10,8 +10,13 @@
${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules
)
-message(STATUS "Building for: ${CMAKE_BUILD_TYPE}")
+# Set configuration if not defined
+if (NOT CMAKE_BUILD_TYPE)
+ set(CMAKE_BUILD_TYPE "Release")
+endif (NOT CMAKE_BUILD_TYPE)
+message(STATUS "CMake Build Type is: ${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")
@@ -132,6 +137,20 @@
add_subdirectory(BuildTools)
add_subdirectory(Oem)
+
+# HACK/FIXME: This is a temporary location until we find a better solution
+add_library(db_cxx SHARED IMPORTED GLOBAL)
+set_target_properties(db_cxx PROPERTIES IMPORTED_LOCATION ${MG_OEM_DBXML_LIB_DIR}/libdb_cxx.so)
+
+add_library(dbxml SHARED IMPORTED GLOBAL)
+set_target_properties(dbxml PROPERTIES IMPORTED_LOCATION ${MG_OEM_DBXML_LIB_DIR}/libdbxml.so)
+
+add_library(xqilla SHARED IMPORTED GLOBAL)
+set_target_properties(xqilla PROPERTIES IMPORTED_LOCATION ${MG_OEM_DBXML_LIB_DIR}/libxqilla.so)
+
+add_library(db SHARED IMPORTED GLOBAL)
+set_target_properties(db PROPERTIES IMPORTED_LOCATION ${MG_OEM_DBXML_LIB_DIR}/libdb.so)
+
add_subdirectory(Common)
add_subdirectory(Server)
add_subdirectory(Web)
Modified: sandbox/jng/cmake_v2/Oem/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Oem/CMakeLists.txt 2018-01-05 18:33:30 UTC (rev 9283)
+++ sandbox/jng/cmake_v2/Oem/CMakeLists.txt 2018-01-06 12:44:33 UTC (rev 9284)
@@ -3,18 +3,24 @@
# Copy source to build area
message (STATUS "Preparing dbxml source for build")
file(COPY "dbxml" DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/DbXml_Build)
+if (CMAKE_BUILD_TYPE MATCHES Debug)
+ set (DBXML_CONF_EXTRA_FLAGS "--enable-debug")
+ message (STATUS "Building dbxml (and supporting libraries) with debug flags")
+else (CMAKE_BUILD_TYPE MATCHES Debug)
+ set (DBXML_CONF_EXTRA_FLAGS "")
+endif (CMAKE_BUILD_TYPE MATCHES Debug)
# NOTE: Although Ubuntu (and possibly other distros) provide packages for xerces, xqilla, (berkeley) db
# only xerces is the package that I am confident of getting dbxml to build against instead of having it
# build its private copy
# NOTE: Assumes system xerces is installed. Should adjust parameters based on find_package result for XercesC
set(DbXml_WORKDIR "${CMAKE_CURRENT_BINARY_DIR}/DbXml_Build/dbxml")
-ExternalProject_Add(dbxml
+ExternalProject_Add(dbxml-build
DOWNLOAD_COMMAND ""
SOURCE_DIR ${DbXml_WORKDIR}
CONFIGURE_COMMAND ""
INSTALL_COMMAND ""
- BUILD_COMMAND ${CMAKE_COMMAND} -E chdir <SOURCE_DIR> ./buildall.sh --with-xerces=/usr --have-system-xerces
+ BUILD_COMMAND ${CMAKE_COMMAND} -E chdir <SOURCE_DIR> ./buildall.sh --with-xerces=/usr --have-system-xerces ${DBXML_CONF_EXTRA_FLAGS}
BUILD_IN_SOURCE 0
)
# This sounds dirty, but we need to communicate back to projects that use dbxml (in a different dir) where
Modified: sandbox/jng/cmake_v2/Server/src/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/CMakeLists.txt 2018-01-05 18:33:30 UTC (rev 9283)
+++ sandbox/jng/cmake_v2/Server/src/CMakeLists.txt 2018-01-06 12:44:33 UTC (rev 9284)
@@ -1,5 +1,5 @@
add_subdirectory(Common)
-#add_subdirectory(Core)
+add_subdirectory(Core)
add_subdirectory(Gws)
add_subdirectory(Services)
add_subdirectory(UnitTesting)
Added: sandbox/jng/cmake_v2/Server/src/Core/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Core/CMakeLists.txt (rev 0)
+++ sandbox/jng/cmake_v2/Server/src/Core/CMakeLists.txt 2018-01-06 12:44:33 UTC (rev 9284)
@@ -0,0 +1,77 @@
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}
+ ${ACE_INCLUDE_DIR}
+ ${XERCESC_INCLUDE_DIR}
+ ${FREETYPE_INCLUDE_DIRS}
+ ${MG_OEM_DBXML_INCLUDE_DIR}
+ ${FDO_INCLUDE_DIR}
+ ${FDO_INCLUDE_DIR}/ExpressionEngine
+ ${MG_COMMON_DIR}
+ ${MG_COMMON_DIR}/CoordinateSystem
+ ${MG_COMMON_DIR}/Security
+ ${MG_COMMON_DIR}/MdfModel
+ ${MG_COMMON_DIR}/MdfParser
+ ${MG_COMMON_DIR}/Foundation
+ ${MG_COMMON_DIR}/Geometry
+ ${MG_COMMON_DIR}/Renderers
+ ${MG_COMMON_DIR}/Stylization
+ ${MG_COMMON_DIR}/PlatformBase
+ ${MG_COMMON_DIR}/MapGuideCommon
+ ${MG_SERVER_GWS_DIR}/Include
+ ${MG_SERVER_GWS_DIR}/GwsCommon/inc
+ ${MG_SERVER_GWS_DIR}/GwsQueryEngine/inc
+ ${MG_SERVER_COMMON_DIR}/Base
+ ${MG_SERVER_COMMON_DIR}/Cache
+ ${MG_SERVER_COMMON_DIR}/Manager
+ ${MG_SERVER_COMMON_DIR}/Thread
+ ${MG_SERVER_SERVICES_DIR}/Drawing
+ ${MG_SERVER_SERVICES_DIR}/Feature
+ ${MG_SERVER_SERVICES_DIR}/Kml
+ ${MG_SERVER_SERVICES_DIR}/Mapping
+ ${MG_SERVER_SERVICES_DIR}/Profiling
+ ${MG_SERVER_SERVICES_DIR}/Rendering
+ ${MG_SERVER_SERVICES_DIR}/Resource
+ ${MG_SERVER_SERVICES_DIR}/ServerAdmin
+ ${MG_SERVER_SERVICES_DIR}/Site
+ ${MG_SERVER_SERVICES_DIR}/Tile
+)
+
+add_definitions(-DACE_HAS_SVC_DLL=1)
+
+set (mgserver_SRCS
+ ServerCoreBuild.cpp
+)
+
+add_executable(mgserver ${mgserver_SRCS})
+target_link_libraries(mgserver
+ ${ACE_LIBRARY}
+ db_cxx
+ dbxml
+ ${XERCESC_LIBRARIES}
+ ${FDO_LIBRARY}
+ ${FDO_EXPRESSIONENGINE_LIBRARY}
+ MgGwsCommon${MG_VERSION_SUFFIX}
+ MgGwsQueryEngine${MG_VERSION_SUFFIX}
+ MgFoundation${MG_VERSION_SUFFIX}
+ MgGeometry${MG_VERSION_SUFFIX}
+ MgPlatformBase${MG_VERSION_SUFFIX}
+ MgMapGuideCommon${MG_VERSION_SUFFIX}
+ MgServerAdminService${MG_VERSION_SUFFIX}
+ MgServerBase${MG_VERSION_SUFFIX}
+ MgServerCache${MG_VERSION_SUFFIX}
+ MgServerDrawingService${MG_VERSION_SUFFIX}
+ MgServerFeatureService${MG_VERSION_SUFFIX}
+ MgServerKmlService${MG_VERSION_SUFFIX}
+ MgServerManager${MG_VERSION_SUFFIX}
+ MgServerMappingService${MG_VERSION_SUFFIX}
+ MgServerProfilingService${MG_VERSION_SUFFIX}
+ MgServerRenderingService${MG_VERSION_SUFFIX}
+ MgServerResourceService${MG_VERSION_SUFFIX}
+ MgServerSiteService${MG_VERSION_SUFFIX}
+ MgServerThread${MG_VERSION_SUFFIX}
+ MgServerTileService${MG_VERSION_SUFFIX}
+ MgMdfModel${MG_VERSION_SUFFIX}
+ MgMdfParser${MG_VERSION_SUFFIX}
+ MgStylization${MG_VERSION_SUFFIX}
+ MgRenderers${MG_VERSION_SUFFIX}
+)
+add_dependencies(mgserver dbxml-build)
\ No newline at end of file
Modified: sandbox/jng/cmake_v2/Server/src/Services/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/CMakeLists.txt 2018-01-05 18:33:30 UTC (rev 9283)
+++ sandbox/jng/cmake_v2/Server/src/Services/CMakeLists.txt 2018-01-06 12:44:33 UTC (rev 9284)
@@ -4,7 +4,7 @@
add_subdirectory(Mapping)
add_subdirectory(Profiling)
add_subdirectory(Rendering)
-#add_subdirectory(Resource)
+add_subdirectory(Resource)
add_subdirectory(ServerAdmin)
add_subdirectory(Site)
add_subdirectory(Tile)
\ No newline at end of file
Added: sandbox/jng/cmake_v2/Server/src/Services/Resource/CMakeLists.txt
===================================================================
--- sandbox/jng/cmake_v2/Server/src/Services/Resource/CMakeLists.txt (rev 0)
+++ sandbox/jng/cmake_v2/Server/src/Services/Resource/CMakeLists.txt 2018-01-06 12:44:33 UTC (rev 9284)
@@ -0,0 +1,41 @@
+include_directories(${FDO_INCLUDE_DIR}
+ ${FDO_INCLUDE_DIR}/ExpressionEngine
+ ${ACE_INCLUDE_DIR}
+ ${XERCESC_INCLUDE_DIR}
+ ${MG_OEM_DWF_INCLUDE_DIR}
+ ${MG_OEM_DBXML_INCLUDE_DIR}
+ ${MG_COMMON_DIR}/Security
+ ${MG_COMMON_DIR}/Foundation
+ ${MG_COMMON_DIR}/Geometry
+ ${MG_COMMON_DIR}/PlatformBase
+ ${MG_COMMON_DIR}/MapGuideCommon
+ ${MG_COMMON_DIR}/MdfModel
+ ${MG_COMMON_DIR}/MdfParser
+ ${MG_SERVER_COMMON_DIR}
+ ${MG_SERVER_COMMON_DIR}/Base
+ ${MG_SERVER_COMMON_DIR}/Cache
+ ${MG_SERVER_COMMON_DIR}/Manager
+ ${MG_SERVER_SERVICES_DIR}/Feature
+ ${MG_SERVER_SERVICES_DIR}/Site
+)
+
+set (MgServerResourceService_SRCS
+ ServerResourceServiceBuild.cpp
+)
+
+add_library(MgServerResourceService${MG_VERSION_SUFFIX} SHARED ${MgServerResourceService_SRCS})
+target_link_libraries(MgServerResourceService${MG_VERSION_SUFFIX}
+ MgFoundation${MG_VERSION_SUFFIX}
+ MgGeometry${MG_VERSION_SUFFIX}
+ MgPlatformBase${MG_VERSION_SUFFIX}
+ MgMapGuideCommon${MG_VERSION_SUFFIX}
+ MgServerBase${MG_VERSION_SUFFIX}
+ MgServerCache${MG_VERSION_SUFFIX}
+ MgServerManager${MG_VERSION_SUFFIX}
+ db_cxx
+ dbxml
+ xqilla
+ ${XERCESC_LIBRARIES}
+)
+install(TARGETS MgServerResourceService${MG_VERSION_SUFFIX} DESTINATION ${LIB_INSTALL_DIR} COMPONENT ${MG_COMPONENT})
+install_symlink(${CMAKE_INSTALL_PREFIX}/${LIB_INSTALL_DIR}/libMgServerResourceService${MG_VERSION_SUFFIX}.so libMgServerResourceService.so ${MG_COMPONENT})
\ No newline at end of file
More information about the mapguide-commits
mailing list