r20605 - gnucash/trunk - Cutecash: Use pkg-config lookup of guile instead of custom macro.

Christian Stimming cstim at code.gnucash.org
Sun May 1 16:56:34 EDT 2011


Author: cstim
Date: 2011-05-01 16:56:33 -0400 (Sun, 01 May 2011)
New Revision: 20605
Trac: http://svn.gnucash.org/trac/changeset/20605

Removed:
   gnucash/trunk/src/cmake_modules/FindGuile.cmake
Modified:
   gnucash/trunk/CMakeLists.txt
   gnucash/trunk/src/gnc/CMakeLists.txt
Log:
Cutecash: Use pkg-config lookup of guile instead of custom macro.

Modified: gnucash/trunk/CMakeLists.txt
===================================================================
--- gnucash/trunk/CMakeLists.txt	2011-05-01 20:56:22 UTC (rev 20604)
+++ gnucash/trunk/CMakeLists.txt	2011-05-01 20:56:33 UTC (rev 20605)
@@ -77,21 +77,14 @@
 INCLUDE (${SWIG_USE_FILE})
 
 # guile library and include dir
-FIND_PACKAGE (Guile REQUIRED)
+PKG_CHECK_MODULES (GUILE guile-1.8>=1.8.0)
+ADD_DEFINITIONS (-DHAVE_GUILE18)
 # We also need to look up the executable
 FIND_PROGRAM (GUILE_EXECUTABLE guile)
 
-# Check for guile version > 1.7, i.e. guile-1.8.x?
-IF (GUILE_INCLUDE_DIR)
-  IF (${GUILE_VERSION_MAJOR} EQUAL 1
-      AND ${GUILE_VERSION_MINOR} GREATER 7)
-    # Yes, define this macro
-    ADD_DEFINITIONS (-DHAVE_GUILE18)
-  ENDIF (${GUILE_VERSION_MAJOR} EQUAL 1
-         AND ${GUILE_VERSION_MINOR} GREATER 7)
-ELSE (GUILE_INCLUDE_DIR)
-  MESSAGE (SEND_ERROR "Guile was not found, but is required. Please set GUILE_LIBRARY and GUILE_INCLUDE_DIR.")
-ENDIF (GUILE_INCLUDE_DIR)
+IF (NOT GUILE_INCLUDE_DIRS)
+  MESSAGE (SEND_ERROR "Guile was not found, but is required. Please set PKG_CONFIG_PATH so that guile-1.8.pc is found.")
+ENDIF (NOT GUILE_INCLUDE_DIRS)
 IF (NOT GUILE_EXECUTABLE)
   MESSAGe (SEND_ERROR "The guile executable was not found, but is required. Please set GUILE_EXECUTABLE.")
 ENDIF (NOT GUILE_EXECUTABLE)

Deleted: gnucash/trunk/src/cmake_modules/FindGuile.cmake
===================================================================
--- gnucash/trunk/src/cmake_modules/FindGuile.cmake	2011-05-01 20:56:22 UTC (rev 20604)
+++ gnucash/trunk/src/cmake_modules/FindGuile.cmake	2011-05-01 20:56:33 UTC (rev 20605)
@@ -1,78 +0,0 @@
-# Copyright (c) 2008, OpenCog.org (http://opencog.org)
-#
-# Redistribution and use is allowed according to the terms of the BSD license.
-# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-
-# - Try to find Guile; Once done this will define
-#
-# GUILE_FOUND - system has the GUILE library
-# GUILE_INCLUDE_DIRS - the GUILE include directory
-# GUILE_LIBRARIES - The libraries needed to use GUILE
-
-
-
-# Look for the header file
-FIND_PATH(GUILE_INCLUDE_DIR libguile.h /usr/include /usr/local/include /usr/include/libguile /usr/local/include/libguile)
-
-# Look for the library
-FIND_LIBRARY(GUILE_LIBRARY NAMES guile PATH /usr/lib /usr/local/lib)
-
-# Copy the results to the output variables.
-IF(GUILE_INCLUDE_DIR AND GUILE_LIBRARY)
-	SET(GUILE_FOUND 1)
-	SET(GUILE_LIBRARIES ${GUILE_LIBRARY})
-	SET(GUILE_INCLUDE_DIRS ${GUILE_INCLUDE_DIR})
-ELSE(GUILE_INCLUDE_DIR AND GUILE_LIBRARY)
-	SET(GUILE_FOUND 0)
-	SET(GUILE_LIBRARIES)
-	SET(GUILE_INCLUDE_DIRS)
-ENDIF(GUILE_INCLUDE_DIR AND GUILE_LIBRARY)
-
-
-# check guile's version if we're using cmake >= 2.6
-IF(GUILE_INCLUDE_DIR AND NOT CMAKE_MAJOR_VERSION LESS 2 AND NOT CMAKE_MINOR_VERSION LESS 6)
-	SET(GUILE_VERSION_MAJOR 0)
-	SET(GUILE_VERSION_MINOR 0)
-	SET(GUILE_VERSION_PATCH 0)
-
-	# Extract the libguile version from the 'version.h' file
-	SET(GUILE_MAJOR_VERSION 0)
-	FILE(READ "${GUILE_INCLUDE_DIR}/libguile/version.h" _GUILE_VERSION_H_CONTENTS)
-
-	STRING(REGEX MATCH "#define SCM_MAJOR_VERSION[	 ]+([0-9])" _MATCH "${_GUILE_VERSION_H_CONTENTS}")
-	SET(GUILE_VERSION_MAJOR ${CMAKE_MATCH_1})
-	STRING(REGEX MATCH "#define SCM_MINOR_VERSION[	 ]+([0-9])" _MATCH "${_GUILE_VERSION_H_CONTENTS}")
-	SET(GUILE_VERSION_MINOR ${CMAKE_MATCH_1})
-	STRING(REGEX MATCH "#define SCM_MICRO_VERSION[	 ]+([0-9])" _MATCH "${_GUILE_VERSION_H_CONTENTS}")
-	SET(GUILE_VERSION_PATCH ${CMAKE_MATCH_1})
-
-	# check found version against required one
-	IF (Guile_FIND_VERSION_MAJOR AND ${GUILE_VERSION_MAJOR} LESS Guile_FIND_VERSION_MAJOR)
-		SET(GUILE_FOUND FALSE)
-	ELSE (Guile_FIND_VERSION_MAJOR AND ${GUILE_VERSION_MAJOR} LESS Guile_FIND_VERSION_MAJOR)
-		IF (Guile_FIND_VERSION_MINOR AND ${GUILE_VERSION_MINOR} LESS Guile_FIND_VERSION_MINOR)
-			SET(GUILE_FOUND FALSE )
-		ELSE (Guile_FIND_VERSION_MINOR AND ${GUILE_VERSION_MINOR} LESS Guile_FIND_VERSION_MINOR)
-			IF (Guile_FIND_VERSION_PATCH AND ${GUILE_VERSION_PATCH} LESS Guile_FIND_VERSION_PATCH)
-				SET(GUILE_FOUND FALSE )
-			ENDIF (Guile_FIND_VERSION_PATCH AND ${GUILE_VERSION_PATCH} LESS Guile_FIND_VERSION_PATCH)
-		ENDIF (Guile_FIND_VERSION_MINOR AND ${GUILE_VERSION_MINOR} LESS Guile_FIND_VERSION_MINOR)
-	ENDIF (Guile_FIND_VERSION_MAJOR AND ${GUILE_VERSION_MAJOR} LESS Guile_FIND_VERSION_MAJOR)
-ENDIF(GUILE_INCLUDE_DIR AND NOT CMAKE_MAJOR_VERSION LESS 2 AND NOT CMAKE_MINOR_VERSION LESS 6)
-
-# Report the results.
-IF(NOT GUILE_FOUND)
-	IF (Guile_FIND_VERSION_MAJOR)
-		SET(_GUILE_VERSION_MESSAGE_STRING " (>=${Guile_FIND_VERSION_MAJOR}.${Guile_FIND_VERSION_MINOR}.${Guile_FIND_VERSION_PATCH})")
-	ENDIF (Guile_FIND_VERSION_MAJOR)
-	SET(GUILE_DIR_MESSAGE "Guile${_GUILE_VERSION_MESSAGE_STRING} was not found. Make sure GUILE_LIBRARY and GUILE_INCLUDE_DIR are set.")
-	IF(NOT GUILE_FIND_QUIETLY)
-		MESSAGE(STATUS "${GUILE_DIR_MESSAGE}")
-	ELSE(NOT GUILE_FIND_QUIETLY)
-		IF(GUILE_FIND_REQUIRED)
-			MESSAGE(FATAL_ERROR "${GUILE_DIR_MESSAGE}")
-		ENDIF(GUILE_FIND_REQUIRED)
-	ENDIF(NOT GUILE_FIND_QUIETLY)
-ENDIF(NOT GUILE_FOUND)
-
-MARK_AS_ADVANCED(GUILE_INCLUDE_DIR GUILE_LIBRARY)

Modified: gnucash/trunk/src/gnc/CMakeLists.txt
===================================================================
--- gnucash/trunk/src/gnc/CMakeLists.txt	2011-05-01 20:56:22 UTC (rev 20604)
+++ gnucash/trunk/src/gnc/CMakeLists.txt	2011-05-01 20:56:33 UTC (rev 20605)
@@ -7,6 +7,7 @@
   ${GOBJECT_LIBRARY_DIRS}
   ${GTHREAD_LIBRARY_DIRS}
   ${GCONF2_LIBRARY_DIRS}
+  ${GUILE_LIBRARY_DIRS}
 )
 
 SET (gnc_SOURCES



More information about the gnucash-changes mailing list