diff options
author | npmccallum <npmccallum@c587cffe-e639-0410-9787-d7902ae8ed56> | 2010-02-24 03:29:43 +0000 |
---|---|---|
committer | npmccallum <npmccallum@c587cffe-e639-0410-9787-d7902ae8ed56> | 2010-02-24 03:29:43 +0000 |
commit | 2aa9c49ae48dbc9411b12f75daec4fd01b63002d (patch) | |
tree | 6acc18836fa9c5ae63eb08351393b41b04ca1620 /libproxy/CMakeLists.txt | |
parent | f484d0580a2ba0c377f37e7b47c7ad8ee8331343 (diff) | |
download | libproxy-2aa9c49ae48dbc9411b12f75daec4fd01b63002d.tar.gz |
add support for builtin modules
git-svn-id: http://libproxy.googlecode.com/svn/trunk@569 c587cffe-e639-0410-9787-d7902ae8ed56
Diffstat (limited to 'libproxy/CMakeLists.txt')
-rw-r--r-- | libproxy/CMakeLists.txt | 95 |
1 files changed, 55 insertions, 40 deletions
diff --git a/libproxy/CMakeLists.txt b/libproxy/CMakeLists.txt index c00b684..21e0b85 100644 --- a/libproxy/CMakeLists.txt +++ b/libproxy/CMakeLists.txt @@ -1,32 +1,24 @@ -### Main library -add_library(libproxy SHARED extension_config.cpp extension_pacrunner.cpp extension_wpad.cpp proxy.cpp url.cpp) -include_directories(../) -if(WIN32) - target_link_libraries(libproxy libmodman ws2_32) -else() - target_link_libraries(libproxy libmodman m pthread dl) -endif() -file(TO_NATIVE_PATH ${moduledir} moduledir) -if(WIN32) - string(REGEX REPLACE "\\\\" "\\\\\\\\" moduledir ${moduledir}) -endif() - -set_property(SOURCE proxy.cpp PROPERTY COMPILE_DEFINITIONS SYSCONFDIR="/etc/";MODULEDIR="${moduledir}") -set_target_properties(libproxy PROPERTIES PREFIX "" VERSION 0 SOVERSION 0.0.0) -install(TARGETS libproxy DESTINATION ${rlibdir}) -install(FILES proxy.h DESTINATION ${rincludedir}) - ### Modules -function(px_module name build) - if("${build}") - set(built "*") - set_property(SOURCE modules/${name}.cpp PROPERTY COMPILE_DEFINITIONS SYSCONFDIR="/etc/";LIBEXECDIR="${libexecdir}") - add_library(${name} MODULE modules/${name}.cpp) - target_link_libraries(${name} libproxy) - set_target_properties(${name} PROPERTIES PREFIX "") - install(TARGETS ${name} LIBRARY DESTINATION ${rmoduledir}) - if(${ARGC} GREATER 2) - target_link_libraries(${name} ${ARGN}) +function(px_module name build builtin) + if(build) + if(builtin) + set(built "*") + set_property(SOURCE modules/${name}.cpp PROPERTY COMPILE_DEFINITIONS LIBEXECDIR="${libexecdir}";MM_MODULE_BUILTIN=${name}) + set(LIBPROXY_SOURCES ${LIBPROXY_SOURCES} modules/${name}.cpp PARENT_SCOPE) + set(BUILTIN_MODULES "${BUILTIN_MODULES} \"${name}\"," PARENT_SCOPE) + if(${ARGC} GREATER 3) + set(LIBPROXY_LIBRARIES ${LIBPROXY_LIBRARIES} ${ARGN} PARENT_SCOPE) + endif() + else() + set(built "m") + set_property(SOURCE modules/${name}.cpp PROPERTY COMPILE_DEFINITIONS LIBEXECDIR="${libexecdir}") + add_library(${name} MODULE modules/${name}.cpp) + target_link_libraries(${name} libproxy) + set_target_properties(${name} PROPERTIES PREFIX "") + install(TARGETS ${name} LIBRARY DESTINATION ${rmoduledir}) + if(${ARGC} GREATER 3) + target_link_libraries(${name} ${ARGN}) + endif() endif() endif() message("\t${built}\t${name}") @@ -118,23 +110,28 @@ if(APPLE) endif() endif() +# Build the pacrunner into libproxy unless we are building for multiple engines +set(BIPR 1) +if(MOZJS_FOUND AND WEBKIT_FOUND) + set(BIPR 0) +endif() # ## Module definition # message("MODULES TO BUILD:") -px_module(config_envvar "${ENVVAR_FOUND}") -px_module(config_gnome "${GNOME_FOUND}" ${X11_LIBRARIES}) -px_module(config_kde4 "${KDE4_FOUND}" ${KDE4_LIBRARIES} ${X11_LIBRARIES}) -px_module(config_macosx "${SC_FOUND}" ${SC_LIBRARIES} ${CF_LIBRARIES}) -px_module(config_w32reg "${WIN32}") -px_module(ignore_domain 1) -px_module(ignore_hostname 1) -px_module(ignore_ip 1) -px_module(network_networkmanager "${NM_FOUND}" ${NM_LIBRARIES}) -px_module(pacrunner_mozjs "${MOZJS_FOUND}" ${MOZJS_LIBRARIES}) -px_module(pacrunner_webkit "${WEBKIT_FOUND}" ${WEBKIT_LIBRARIES}) -px_module(wpad_dns_alias 1) +px_module(config_envvar "${ENVVAR_FOUND}" 1) +px_module(config_gnome "${GNOME_FOUND}" 0 ${X11_LIBRARIES}) +px_module(config_kde4 "${KDE4_FOUND}" 0 ${KDE4_LIBRARIES} ${X11_LIBRARIES}) +px_module(config_macosx "${SC_FOUND}" 1 ${SC_LIBRARIES} ${CF_LIBRARIES}) +px_module(config_w32reg "${WIN32}" 1) +px_module(ignore_domain 1 1) +px_module(ignore_hostname 1 1) +px_module(ignore_ip 1 1) +px_module(network_networkmanager "${NM_FOUND}" 0 ${NM_LIBRARIES}) +px_module(pacrunner_mozjs "${MOZJS_FOUND}" ${BIPR} ${MOZJS_LIBRARIES}) +px_module(pacrunner_webkit "${WEBKIT_FOUND}" ${BIPR} ${WEBKIT_LIBRARIES}) +px_module(wpad_dns_alias 1 1) message("") ### Misc files @@ -150,3 +147,21 @@ if(${GNOME_FOUND}) target_link_libraries(pxgconf ${GNOME_LIBRARIES}) install(TARGETS pxgconf RUNTIME DESTINATION ${rlibexecdir}) endif() + +### Main library +add_library(libproxy SHARED extension_config.cpp extension_pacrunner.cpp extension_wpad.cpp proxy.cpp url.cpp ${LIBPROXY_SOURCES}) +include_directories(../) +if(WIN32) + target_link_libraries(libproxy libmodman;ws2_32;${LIBPROXY_LIBRARIES}) +else() + target_link_libraries(libproxy libmodman;m;pthread;dl;${LIBPROXY_LIBRARIES}) +endif() +file(TO_NATIVE_PATH ${moduledir} moduledir) +if(WIN32) + string(REGEX REPLACE "\\\\" "\\\\\\\\" moduledir ${moduledir}) +endif() + +set_property(SOURCE proxy.cpp PROPERTY COMPILE_DEFINITIONS MODULEDIR="${moduledir}";BUILTIN_MODULES=${BUILTIN_MODULES}) +set_target_properties(libproxy PROPERTIES PREFIX "" VERSION 0 SOVERSION 0.0.0) +install(TARGETS libproxy DESTINATION ${rlibdir}) +install(FILES proxy.h DESTINATION ${rincludedir})
\ No newline at end of file |