EXIT AUTOCRAP \o/
[apps/madmutt.git] / cmake / XConfig.cmake
diff --git a/cmake/XConfig.cmake b/cmake/XConfig.cmake
new file mode 100644 (file)
index 0000000..53eb357
--- /dev/null
@@ -0,0 +1,29 @@
+MACRO(XCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags)
+    # reset the variables at the beginning
+    SET(${_include_DIR})
+    SET(${_link_DIR})
+    SET(${_link_FLAGS})
+    SET(${_cflags})
+
+    FIND_PROGRAM(${_package}CONFIG_EXECUTABLE NAMES ${_package} PATHS /usr/local/bin )
+
+    # if pkg-config has been found
+    IF(${_package}CONFIG_EXECUTABLE)
+        SET(XCONFIG_EXECUTABLE "${${_package}CONFIG_EXECUTABLE}")
+        MESSAGE(STATUS "found ${_package}: ${XCONFIG_EXECUTABLE}")
+
+        EXECUTE_PROCESS(
+            COMMAND ${XCONFIG_EXECUTABLE} --libs
+            OUTPUT_VARIABLE ${_link_FLAGS}
+            OUTPUT_STRIP_TRAILING_WHITESPACE
+        )
+        EXECUTE_PROCESS(
+            COMMAND ${XCONFIG_EXECUTABLE} --cflags
+            OUTPUT_VARIABLE ${_cflags}
+            OUTPUT_STRIP_TRAILING_WHITESPACE
+        )
+    ELSE(${_package}CONFIG_EXECUTABLE)
+        MESSAGE(STATUS "found ${_package}: no")
+    ENDIF(${_package}CONFIG_EXECUTABLE)
+ENDMACRO(XCONFIG _package _include_DIR _link_DIR _link_FLAGS _cflags)
+