Hi everyone, Given CMake's FindLua51 is broken and we already use pkg-config, I think it'll be clever to find lua by pkg-config.
patch attached. Have a nice day :) Regards, Perrin Alexandre
From 2a54ade05249ea6ce1f4ea72d4e4aea13e5785f7 Mon Sep 17 00:00:00 2001
From: Perrin "kAworu" Alexandre <kaworu(a)kaworu,ch>
Date: Thu, 8 Jan 2009 13:28:02 +0100
Subject: [PATCH] use pkg-config to find lua instead of CMake FindLua51
Signed-off-by: Perrin "kAworu" Alexandre <kaworu(a)kaworu,ch>
---
CMakeLists.txt | 4 ++++
awesomeConfig.cmake | 17 +++++++----------
2 files changed, 11 insertions(+), 10 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a605492..e4eaa9e 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -22,6 +22,10 @@ include_directories(
${AWESOME_REQUIRED_INCLUDE_DIRS}
${AWESOME_OPTIONAL_INCLUDE_DIRS})
+link_directories(
+ ${AWESOME_REQUIRED_LIBRARIES_DIRS}
+)
+
file(GLOB_RECURSE AWE_LUA_FILES ${BUILD_DIR}/lib/*.lua)
set(AWE_CONF_FILE_DEFAULT ${BUILD_DIR}/awesomerc.lua)
diff --git a/awesomeConfig.cmake b/awesomeConfig.cmake
index 6d5cc42..3940f05 100644
--- a/awesomeConfig.cmake
+++ b/awesomeConfig.cmake
@@ -61,8 +61,6 @@ include(FindDoxygen)
include(FindPkgConfig)
# ncurses
include(FindCurses)
-# lua 5.1
-include(FindLua51) #Due to a cmake bug, you will see Lua50 on screen
# }}}
# {{{ Check if documentation can be build
@@ -121,6 +119,7 @@ execute_process(
# {{{ Required libraries
#
# this sets up:
+# AWESOME_REQUIRED_LIBRARIES_DIRS
# AWESOME_REQUIRED_LIBRARIES
# AWESOME_REQUIRED_INCLUDE_DIRS
# AWESOMECLIENT_LIBRARIES
@@ -130,6 +129,7 @@ pkg_check_modules(AWESOME_COMMON_REQUIRED REQUIRED
xcb>=1.1)
pkg_check_modules(AWESOME_REQUIRED REQUIRED
+ lua>=5.1
glib-2.0
cairo
pango>=1.19.3
@@ -164,21 +164,18 @@ endmacro()
a_find_library(LIB_READLINE readline)
a_find_library(LIB_EV ev)
-# Error check
-if(NOT LUA51_FOUND AND NOT LUA50_FOUND) # This is a workaround to a cmake bug
- message(FATAL_ERROR "lua library not found")
-endif()
+set(AWESOME_REQUIRED_LIBRARIES_DIRS
+ ${AWESOME_COMMON_REQUIRED_LIBRARY_DIRS}
+ ${AWESOME_REQUIRED_LIBRARY_DIRS})
set(AWESOME_REQUIRED_LIBRARIES
${AWESOME_COMMON_REQUIRED_LIBRARIES}
${AWESOME_REQUIRED_LIBRARIES}
- ${LIB_EV}
- ${LUA_LIBRARIES})
+ ${LIB_EV})
set(AWESOME_REQUIRED_INCLUDE_DIRS
${AWESOME_COMMON_REQUIRED_INCLUDE_DIRS}
- ${AWESOME_REQUIRED_INCLUDE_DIRS}
- ${LUA_INCLUDE_DIR})
+ ${AWESOME_REQUIRED_INCLUDE_DIRS})
set(AWESOMECLIENT_LIBRARIES
${AWESOME_COMMON_REQUIRED_LIBRARIES}
--
1.6.0.6
signature.asc
Description: This is a digitally signed message part.
