[PATCH] Clean up FindGObject.cmake.

Raphael Kubo da Costa kubito at gmail.com
Mon Apr 11 00:29:35 CEST 2011


 * Remove unnecessary WIN32 check.
 * Use the pkg-config paths as HINTS, not PATHS.
 * Use FindPackageHandleStandardArgs instead of duplicating its
   functionality.
---
 cmake/modules/FindGObject.cmake |   52 +++++++++------------------------------
 1 files changed, 12 insertions(+), 40 deletions(-)

diff --git a/cmake/modules/FindGObject.cmake b/cmake/modules/FindGObject.cmake
index d9e8df9..d84e6bb 100644
--- a/cmake/modules/FindGObject.cmake
+++ b/cmake/modules/FindGObject.cmake
@@ -6,75 +6,47 @@
 #  GOBJECT_LIBRARIES - the libraries needed to use GObject
 #  GOBJECT_DEFINITIONS - Compiler switches required for using GObject
 
+# Copyright (c) 2011, Raphael Kubo da Costa <kubito at gmail.com>
 # Copyright (c) 2006, Tim Beaulen <tbscope at gmail.com>
 #
 # Redistribution and use is allowed according to the terms of the BSD license.
 # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
 
-
-IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
-   # in cache already
-   SET(GObject_FIND_QUIETLY TRUE)
-ELSE (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
-   SET(GObject_FIND_QUIETLY FALSE)
-ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
-
-IF (NOT WIN32)
-   # use pkg-config to get the directories and then use these values
-   # in the FIND_PATH() and FIND_LIBRARY() calls
-   FIND_PACKAGE(PkgConfig)
-   PKG_CHECK_MODULES(PC_GOBJECT gobject-2.0) 
-   #MESSAGE(STATUS "DEBUG: GObject include directory = ${GOBJECT_INCLUDE_DIRS}")
-   #MESSAGE(STATUS "DEBUG: GObject link directory = ${GOBJECT_LIBRARY_DIRS}")
-   #MESSAGE(STATUS "DEBUG: GObject CFlags = ${GOBJECT_CFLAGS}")
-   SET(GOBJECT_DEFINITIONS ${PC_GOBJECT_CFLAGS_OTHER})
-ENDIF (NOT WIN32)
+FIND_PACKAGE(PkgConfig)
+PKG_CHECK_MODULES(PC_GOBJECT gobject-2.0)
+SET(GOBJECT_DEFINITIONS ${PC_GOBJECT_CFLAGS_OTHER})
 
 FIND_PATH(GOBJECT_INCLUDE_DIR gobject.h
-   PATHS
+   HINTS
    ${PC_GOBJECT_INCLUDEDIR}
    ${PC_GOBJECT_INCLUDE_DIRS}
    PATH_SUFFIXES glib-2.0/gobject/
    )
 
 FIND_LIBRARY(_GObjectLibs NAMES gobject-2.0
-   PATHS
+   HINTS
    ${PC_GOBJECT_LIBDIR}
    ${PC_GOBJECT_LIBRARY_DIRS}
    )
 FIND_LIBRARY(_GModuleLibs NAMES gmodule-2.0
-   PATHS
+   HINTS
    ${PC_GOBJECT_LIBDIR}
    ${PC_GOBJECT_LIBRARY_DIRS}
    )
 FIND_LIBRARY(_GThreadLibs NAMES gthread-2.0
-   PATHS
+   HINTS
    ${PC_GOBJECT_LIBDIR}
    ${PC_GOBJECT_LIBRARY_DIRS}
    )
 FIND_LIBRARY(_GLibs NAMES glib-2.0
-   PATHS
+   HINTS
    ${PC_GOBJECT_LIBDIR}
    ${PC_GOBJECT_LIBRARY_DIRS}
    )
 
 SET( GOBJECT_LIBRARIES ${_GObjectLibs} ${_GModuleLibs} ${_GThreadLibs} ${_GLibs} )
 
-IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
-   SET(GOBJECT_FOUND TRUE)
-ELSE (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
-   SET(GOBJECT_FOUND FALSE)
-ENDIF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES)
-
-IF (GOBJECT_FOUND)
-   IF (NOT GObject_FIND_QUIETLY)
-      MESSAGE(STATUS "Found GObject libraries: ${GOBJECT_LIBRARIES}")
-      MESSAGE(STATUS "Found GObject includes : ${GOBJECT_INCLUDE_DIR}")
-   ENDIF (NOT GObject_FIND_QUIETLY)
-ELSE (GOBJECT_FOUND)
-    IF (GObject_FIND_REQUIRED)
-      MESSAGE(STATUS "Could NOT find GObject")
-    ENDIF(GObject_FIND_REQUIRED)
-ENDIF (GOBJECT_FOUND)
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(GOBJECT DEFAULT_MSG GOBJECT_LIBRARIES GOBJECT_INCLUDE_DIR)
 
-MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR _GObjectLibs _GModuleLibs _GThreadLibs _GLibs)
+MARK_AS_ADVANCED(GOBJECT_INCLUDE_DIR _GObjectLibs _GModuleLibs _GThreadLibs _GLibs GOBJECT_LIBRARIES)
-- 
1.7.4.3



More information about the Kde-buildsystem mailing list