diff options
author | npmccallum <npmccallum@c587cffe-e639-0410-9787-d7902ae8ed56> | 2010-01-28 05:47:08 +0000 |
---|---|---|
committer | npmccallum <npmccallum@c587cffe-e639-0410-9787-d7902ae8ed56> | 2010-01-28 05:47:08 +0000 |
commit | 0703d4b56b8be4dbfc18e2ba83c7537fe71d616f (patch) | |
tree | cec11ace1a5b620cf4abcc4546feec7428f40162 /libproxy/CMakeLists.txt | |
parent | 1413dcea3932fe0e1750fb69414a5c78769393be (diff) | |
download | libproxy-0703d4b56b8be4dbfc18e2ba83c7537fe71d616f.tar.gz |
remove builtin module support; there is a better way to do this
git-svn-id: http://libproxy.googlecode.com/svn/trunk@509 c587cffe-e639-0410-9787-d7902ae8ed56
Diffstat (limited to 'libproxy/CMakeLists.txt')
-rw-r--r-- | libproxy/CMakeLists.txt | 149 |
1 files changed, 71 insertions, 78 deletions
diff --git a/libproxy/CMakeLists.txt b/libproxy/CMakeLists.txt index ecca9dc..6c32e35 100644 --- a/libproxy/CMakeLists.txt +++ b/libproxy/CMakeLists.txt @@ -1,50 +1,41 @@ -### Misc files -# PkgConfig file -configure_file(libproxy-1.0.pc.in libproxy-1.0.pc @ONLY) -install(FILES libproxy-1.0.pc DESTINATION ${libdir}/pkgconfig) +### Main library +add_library(libproxy SHARED config_file.cpp dl_module.cpp module_config.cpp module.cpp module_manager.cpp module_pacrunner.cpp module_wpad.cpp proxy.cpp url.cpp) +if(WIN32) + target_link_libraries(libproxy ws2_32) +else() + target_link_libraries(libproxy m pthread dl) +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 condition) - if(${condition} GREATER 0) - if(${condition} GREATER 1) - message("\t+\t${name}") - set_property(SOURCE modules/${name}.cpp PROPERTY COMPILE_DEFINITIONS SYSCONFDIR="/etc/";LIBEXECDIR="${libexecdir}";BUILTIN=1) - set(BUILTIN_MODULES_SOURCES ${BUILTIN_MODULES_SOURCES};modules/${name}.cpp PARENT_SCOPE) - set(BUILTIN_MODULES "${BUILTIN_MODULES} \"${name}\"," PARENT_SCOPE) - if(${ARGC} GREATER 2) - set(BUILTIN_MODULES_LIBRARIES ${BUILTIN_MODULES_LIBRARIES};${ARGN} PARENT_SCOPE) - endif() - else() - message("\tm\t${name}") - add_library(${name} MODULE modules/${name}.cpp) - set_property(SOURCE modules/${name}.cpp PROPERTY COMPILE_DEFINITIONS SYSCONFDIR="/etc/";LIBEXECDIR="${libexecdir}") - 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}) - endif() +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}) endif() - else() - message("\t\t${name}") endif() + message("\t${built}\t${name}") endfunction(px_module) -function(px_module_condmod name loadcond condition) - px_module(${name} ${condition} ${ARGN}) - if(${condition} EQUAL 1) - set(CONDITIONAL_MODULES "${CONDITIONAL_MODULES} {\"${loadcond}\", \"${name}\"}," PARENT_SCOPE) - endif() -endfunction(px_module_condmod) - # ## Dependency detection # -if(UNIX AND NOT APPLE) - find_package(PkgConfig REQUIRED) + +find_package(PkgConfig) +if("${PKG_CONFIG_FOUND}") + # Define our magical px_check_modules function function(px_check_modules name) pkg_check_modules(${name} ${ARGN}) - if (${${name}_FOUND}) + if(${${name}_FOUND}) include_directories(${${name}_INCLUDE_DIRS}) link_directories(${${name}_LIBRARY_DIRS}) else() @@ -56,16 +47,16 @@ if(UNIX AND NOT APPLE) px_check_modules(NM NetworkManager dbus-1) px_check_modules(WEBKIT webkit-1.0) px_check_modules(MOZJS xulrunner-js) - if(NOT MOZJS_FOUND) + if(NOT ${MOZJS_FOUND}) px_check_modules(MOZJS firefox-js) - if(NOT MOZJS_FOUND) + if(NOT ${MOZJS_FOUND}) px_check_modules(MOZJS mozilla-js) - if(NOT MOZJS_FOUND) + if(NOT ${MOZJS_FOUND}) px_check_modules(MOZJS seamonkey-js) endif() endif() endif() - if(X11_FOUND) + if("${X11_FOUND}") px_check_modules(GNOME gconf-2.0) find_package(KDE4) if("${KDE4_FOUND}" STREQUAL "TRUE") @@ -78,50 +69,52 @@ if(UNIX AND NOT APPLE) set(KDE4_FOUND 0) endif() endif() - find_program(GCONFTOOLBIN gconftool-2) endif() -# -## Module definition -# -message("MODULES TO BUILD:") -if(UNIX AND NOT APPLE) - px_module(config_wpad 1) - px_module(config_envvar 2) - px_module(config_file 2) - px_module(config_gnome ${GNOME_FOUND} ${X11_LIBRARIES}) - px_module(config_kde4 ${KDE4_FOUND} ${KDE4_LIBRARIES} ${X11_LIBRARIES}) - px_module(network_networkmanager ${NM_FOUND} ${NM_LIBRARIES}) - px_module_condmod(pacrunner_mozjs JS_DefineFunction ${MOZJS_FOUND} ${MOZJS_LIBRARIES}) - px_module_condmod(pacrunner_webkit JSObjectMakeFunctionWithCallback ${WEBKIT_FOUND} ${WEBKIT_LIBRARIES}) - if(${GNOME_FOUND}) - add_executable(pxgconf modules/pxgconf.cpp) - target_link_libraries(pxgconf ${GNOME_LIBRARIES}) - install(TARGETS pxgconf RUNTIME DESTINATION ${rlibexecdir}) - endif() -elseif(APPLE) +if(APPLE) find_library(WEBKIT_LIBRARIES JavaScriptCore) find_library(SC_LIBRARIES SystemConfiguration) find_library(CF_LIBRARIES CoreFoundation) - px_module(pacrunner_webkit 2 ${WEBKIT_LIBRARIES}) - px_module(config_macosx 2 ${SC_LIBRARIES} ${CF_LIBRARIES}) - px_module(ignore_hostname 2) -elseif(WIN32) - px_module(config_w32reg 2) + if(${WEBKIT_LIBRARIES}) + set(WEBKIT_FOUND 1) + endif() + if(${SC_LIBRARIES}) + set(SC_FOUND 1) + endif() + if(${CF_LIBRARIES}) + set(CF_FOUND 1) + endif() endif() -px_module(ignore_domain 2) -px_module(ignore_ip 2) -px_module(wpad_dns_alias 2) + + +# +## Module definition +# +message("MODULES TO BUILD:") +px_module(config_envvar "${UNIX}") +px_module(config_file "${UNIX}") +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(config_wpad 1) +px_module(ignore_domain 1) +px_module(ignore_hostname "${APPLE}") +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) message("") -### Main library -add_library(libproxy SHARED config_file.cpp dl_module.cpp module_config.cpp module.cpp module_manager.cpp module_pacrunner.cpp module_wpad.cpp proxy.cpp url.cpp ${BUILTIN_MODULES_SOURCES}) -if (WIN32) - target_link_libraries(libproxy ws2_32 ${BUILTIN_MODULES_LIBRARIES}) -else() - target_link_libraries(libproxy m pthread dl ${BUILTIN_MODULES_LIBRARIES}) +### Misc files +# PkgConfig file +configure_file(libproxy-1.0.pc.in libproxy-1.0.pc @ONLY) +install(FILES libproxy-1.0.pc DESTINATION ${libdir}/pkgconfig) + +# GNOME (gconf) helper +if(${GNOME_FOUND}) + add_executable(pxgconf modules/pxgconf.cpp) + target_link_libraries(pxgconf ${GNOME_LIBRARIES}) + install(TARGETS pxgconf RUNTIME DESTINATION ${rlibexecdir}) endif() -set_property(SOURCE proxy.cpp PROPERTY COMPILE_DEFINITIONS SYSCONFDIR="/etc/";MODULEDIR="${moduledir}";BUILTIN_MODULES=${BUILTIN_MODULES};CONDITIONAL_MODULES=${CONDITIONAL_MODULES}) -set_target_properties(libproxy PROPERTIES PREFIX "" VERSION 0 SOVERSION 0.0.0) -install(TARGETS libproxy DESTINATION ${rlibdir}) -install(FILES proxy.h DESTINATION ${rincludedir}) |