summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorJeff Trawick <trawick@apache.org>2013-09-12 12:22:46 +0000
committerJeff Trawick <trawick@apache.org>2013-09-12 12:22:46 +0000
commit4c593a40b4ee790b0982c7f9ccb22f9032b439c2 (patch)
tree55e29d016c239999e6552f0b2c6e9c40af2c00d1 /CMakeLists.txt
parent86335b8bb8d74e4f9ad59e5dd90932178dc3d0fa (diff)
downloadhttpd-4c593a40b4ee790b0982c7f9ccb22f9032b439c2.tar.gz
specify base addresses for libhttpd.dll and modules; mention an issue about Perl compatibility of a support script
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1522547 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt11
1 files changed, 10 insertions, 1 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index e2ff1ed783..5605ab0a0d 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -482,6 +482,9 @@ ELSE()
CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/os/win32/modules.c ${PROJECT_BINARY_DIR}/ COPYONLY)
ENDIF()
+# for easy reference from .dll/.so builds
+CONFIGURE_FILE(os/win32/BaseAddr.ref ${PROJECT_BINARY_DIR}/ COPYONLY)
+
ADD_EXECUTABLE(gen_test_char server/gen_test_char.c)
GET_TARGET_PROPERTY(GEN_TEST_CHAR_EXE gen_test_char LOCATION)
ADD_CUSTOM_COMMAND(
@@ -690,7 +693,10 @@ FOREACH (mod ${MODULE_PATHS})
SET(install_modules ${install_modules} ${mod_name})
SET(install_modules_pdb ${install_modules_pdb} "${PROJECT_BINARY_DIR}/${mod_name}.pdb")
SET(mod_extra_libs "${mod_name}_extra_libs")
- SET_TARGET_PROPERTIES(${mod_name} PROPERTIES SUFFIX .so)
+ SET_TARGET_PROPERTIES(${mod_name} PROPERTIES
+ SUFFIX .so
+ LINK_FLAGS /base:@${PROJECT_BINARY_DIR}/BaseAddr.ref,${mod_name}.so
+ )
TARGET_LINK_LIBRARIES(${mod_name} ${${mod_extra_libs}} libhttpd ${APR_LIBRARIES} ${HTTPD_SYSTEM_LIBS})
# Extra defines?
@@ -712,6 +718,9 @@ ENDFOREACH()
########### HTTPD LIBRARIES ############
ADD_LIBRARY(libhttpd SHARED ${LIBHTTPD_SOURCES})
+SET_TARGET_PROPERTIES(libhttpd PROPERTIES
+ LINK_FLAGS /base:@${PROJECT_BINARY_DIR}/BaseAddr.ref,libhttpd.dll
+)
SET(install_targets ${install_targets} libhttpd)
SET(install_bin_pdb ${install_bin_pdb} ${PROJECT_BINARY_DIR}/libhttpd.pdb)
TARGET_LINK_LIBRARIES(libhttpd ${APR_LIBRARIES} ${PCRE_LIBRARIES} ${HTTPD_SYSTEM_LIBS})