From 7242ded71038720bd80003be944493a429dfe3f9 Mon Sep 17 00:00:00 2001 From: "Robert G. Jakabosky" Date: Thu, 23 Jun 2011 17:17:56 -0700 Subject: [PATCH] Add ZMQ_PATH cmake variable for Windows. --- CMakeLists.txt | 29 +++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 213533d..b9b2a6b 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -15,6 +15,8 @@ set(LUA_NATIVE_OBJECTS_PATH ../LuaNativeObjects CACHE PATH "Directory to LuaNativeObjects bindings generator.") set(USE_PRE_GENERATED_BINDINGS TRUE CACHE BOOL "Set this to FALSE to re-generate bindings using LuaNativeObjects") +set(ZMQ_PATH "" CACHE PATH + "Directory to libzmq. (by default use pkg-config to detect path)") set(COMMON_CFLAGS "${CFLAGS}") set(COMMON_LDFLAGS) @@ -23,16 +25,30 @@ set(COMMON_LIBS) ## Lua 5.1.x include(FindLua51) if(NOT ${LUA51_FOUND}) - message(FATAL_ERROR "The FindLua51 module could not find lua :-(") + message(FATAL_ERROR "The FindLua51 module could not find lua :-(") endif() set(COMMON_LIBS "${COMMON_LIBS};${LUA_LIBRARIES}") ## LibZMQ -include(FindPkgConfig) -pkg_search_module(ZMQ REQUIRED libzmq) -set(COMMON_CFLAGS "${COMMON_CFLAGS} ${ZMQ_CFLAGS}") -set(COMMON_LDFLAGS "${COMMON_LDFLAGS} ${ZMQ_LDFLAGS}") -set(COMMON_LIBS "${COMMON_LIBS};${ZMQ_LIBRARIES}") +if(WIN32) + ## need ZMQ_PATH + if(IS_DIRECTORY "${ZMQ_PATH}") + else() + message(FATAL_ERROR "Please set the ZMQ_PATH CMake variable.") + endif() +endif() +if(IS_DIRECTORY ${ZMQ_PATH}) + set(COMMON_CFLAGS "${COMMON_CFLAGS} -I${ZMQ_PATH}/include") + set(COMMON_LDFLAGS "${COMMON_LDFLAGS} -L${ZMQ_PATH}/lib") + set(COMMON_LIBS "${COMMON_LIBS};zmq") +else() + ## fallback to using pkg-config + include(FindPkgConfig) + pkg_search_module(ZMQ REQUIRED libzmq) + set(COMMON_CFLAGS "${COMMON_CFLAGS} ${ZMQ_CFLAGS}") + set(COMMON_LDFLAGS "${COMMON_LDFLAGS} ${ZMQ_LDFLAGS}") + set(COMMON_LIBS "${COMMON_LIBS};${ZMQ_LIBRARIES}") +endif() ## LuaNativeObjects include(LuaNativeObjects) @@ -63,6 +79,7 @@ add_library(lua-zmq MODULE ${LUA_ZMQ_SRC}) target_link_libraries(lua-zmq ${COMMON_LIBS}) set_target_properties(lua-zmq PROPERTIES PREFIX "") set_target_properties(lua-zmq PROPERTIES COMPILE_FLAGS "${COMMON_CFLAGS}") +set_target_properties(lua-zmq PROPERTIES LINK_FLAGS "${COMMON_LDFLAGS}") set_target_properties(lua-zmq PROPERTIES OUTPUT_NAME zmq) install(TARGETS lua-zmq