Changeset 2184

Show
Ignore:
Timestamp:
05/26/2008 10:09:32 AM (3 months ago)
Author:
moo
Message:

added ADD_TARGET_PROPERTIES to simplify code. use pkg-config for checking lua

Location:
trunk
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • trunk/cmake/LighttpdMacros.cmake

    r1782 r2184  
    2828) 
    2929ENDMACRO(LEMON_PARSER) 
     30 
     31MACRO(ADD_TARGET_PROPERTIES _target _name _properties) 
     32  SET(_properties ${ARGV}) 
     33  LIST(REMOVE_AT _properties 0) 
     34  LIST(REMOVE_AT _properties 1) 
     35  GET_TARGET_PROPERTY(_old_properties ${_target} ${_name}) 
     36        MESSAGE("adding property to ${_target} ${_name}: ${_properties}") 
     37  IF(NOT _old_properties) 
     38    # in case it's NOTFOUND 
     39    SET(_old_properties) 
     40  ENDIF(NOT _old_properties) 
     41  SET_TARGET_PROPERTIES(${_target} PROPERTIES ${_name} "${_old_properties} ${_properties}") 
     42ENDMACRO(ADD_TARGET_PROPERTIES) 
  • trunk/src/CMakeLists.txt

    r2183 r2184  
    303303 
    304304IF(WITH_LUA) 
    305   SET(CMAKE_REQUIRED_LIBRARIES "-lm") 
    306   CHECK_INCLUDE_FILES(lua.h HAVE_LUA_H) 
    307   CHECK_LIBRARY_EXISTS(lua lua_setfield "" HAVE_LIBLUA) 
    308   SET(CMAKE_REQUIRED_LIBRARIES) 
     305  PKGCONFIG(lua LUA_INCDIR LUA_LIBDIR LUA_LDFLAGS LUA_CFLAGS) 
     306  IF(NOT LUA_LDFLAGS) 
     307    PKGCONFIG(lua5.1 LUA_INCDIR LUA_LIBDIR LUA_LDFLAGS LUA_CFLAGS) 
     308  ENDIF(NOT LUA_LDFLAGS) 
     309  MESSAGE(STATUS "found lua at: INCDIR: ${LUA_INCDIR} LIBDIR: ${LUA_LIBDIR} LDFLAGS: ${LUA_LDFLAGS} CFLAGS: ${LUA_CFLAGS}") 
     310  IF(LUA_LDFLAGS) 
     311    SET(HAVE_LIBLUA 1 "Have liblua") 
     312    INCLUDE_DIRECTORIES(${LUA_INCDIR}) 
     313                ADD_DEFINITIONS(${LUA_CFLAGS}) 
     314 
     315    SET(CMAKE_REQUIRED_INCLUDES ${LUA_INCDIR}) 
     316    SET(CMAKE_REQUIRED_FLAGS ${LUA_CFLAGS}) 
     317                MESSAGE(${CMAKE_REQUIRED_FLAGS}) 
     318    CHECK_INCLUDE_FILES(lua.h HAVE_LUA_H) 
     319    SET(CMAKE_REQUIRED_INCLUDES) 
     320    SET(CMAKE_REQUIRED_FLAGS) 
     321  ELSE(LUA_LDFLAGS) 
     322    SET(HAVE_LIBLUA "" "Have liblua") 
     323    SET(HAVE_LUA_H  "" "Have liblua header") 
     324  ENDIF(LUA_LDFLAGS) 
    309325ENDIF(WITH_LUA) 
    310326 
     
    580596ENDIF(CMAKE_COMPILER_IS_GNUCC) 
    581597 
    582 SET(L_FLAGS) 
    583  
    584 SET(L_FLAGS "${L_FLAGS} ${GTHREAD_LDFLAGS} ${XML2_LDFLAGS}") 
     598ADD_TARGET_PROPERTIES(lighttpd LINK_FLAGS "${GTHREAD_LDFLAGS} ${XML2_LDFLAGS} ${LUA_LDFLAGS}") 
    585599IF(CMAKE_SYSTEM MATCHES "Linux") 
    586600  ## on linux we need pthread and librt for posix-aio 
    587   SET(L_FLAGS "${L_FLAGS} -lrt") 
     601  ADD_TARGET_PROPERTIES(lighttpd LINK_FLAGS "-lrt") 
    588602ENDIF(CMAKE_SYSTEM MATCHES "Linux") 
    589603 
    590 SET_TARGET_PROPERTIES(lighttpd PROPERTIES LINK_FLAGS "${L_FLAGS}") 
     604ADD_TARGET_PROPERTIES(lighttpd COMPILE_FLAGS "${GTHREAD_CFLAGS} ${LUA_CFLAGS}") 
    591605SET_TARGET_PROPERTIES(lighttpd PROPERTIES CMAKE_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX}) 
    592606 
    593607IF(WIN32) 
    594608  SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNVALGRIND") 
    595   SET_TARGET_PROPERTIES(lighttpd PROPERTIES COMPILE_FLAGS "-DLI_DECLARE_EXPORTS") 
     609  ADD_TARGET_PROPERTIES(lighttpd COMPILE_FLAGS "-DLI_DECLARE_EXPORTS") 
    596610  TARGET_LINK_LIBRARIES(lighttpd ws2_32) 
    597611  TARGET_LINK_LIBRARIES(mod_proxy_core ws2_32) 
     
    605619  ENDIF(WITH_GLIB) 
    606620 
    607   SET(LINK_FLAGS "${GTHREAD_LDFLAGS}") 
    608621  IF(MINGW) 
    609622    TARGET_LINK_LIBRARIES(lighttpd msvcr70) 
    610     SET(FLAGS "${LINK_FLAGS} -Wl,-subsystem,console") 
     623    ADD_TARGET_PROPERTIES(lighttpd LINK_FLAGS "-Wl,-subsystem,console") 
    611624  ENDIF(MINGW) 
    612   SET_TARGET_PROPERTIES(lighttpd PROPERTIES LINK_FLAGS ${LINK_FLAGS}) 
    613625ENDIF(WIN32) 
    614626