--- ./CMakeLists.txt.orig	2009-03-16 11:39:44.000000000 -0400
+++ ./CMakeLists.txt	2009-06-04 16:40:10.000000000 -0400
@@ -45,39 +45,55 @@
 MACRO_OPTIONAL_FIND_PACKAGE(PNG)
 MACRO_OPTIONAL_FIND_PACKAGE(TIFF)
 MACRO_OPTIONAL_FIND_PACKAGE(Jasper)
-MACRO_OPTIONAL_FIND_PACKAGE(Kdcraw)
-MACRO_OPTIONAL_FIND_PACKAGE(Kexiv2)
-MACRO_OPTIONAL_FIND_PACKAGE(Kipi)
 
 IF(ENABLE_GPHOTO2)
     MACRO_OPTIONAL_FIND_PACKAGE(Gphoto2)
 ENDIF(ENABLE_GPHOTO2)
 
-# Check KDcraw version installed to compile fine.
-IF(NOT WIN32)
-    FIND_PACKAGE(PkgConfig)
-    PKG_CHECK_MODULES(Kdcraw libkdcraw>=0.4.0)
-    IF(Kdcraw_FOUND)
-        SET(KDCRAW_FOR_DIGIKAM TRUE)
-    ELSE(Kdcraw_FOUND)
-        SET(KDCRAW_FOR_DIGIKAM FALSE)
-    ENDIF(Kdcraw_FOUND)
-ELSE(NOT WIN32)
-    SET(KDCRAW_FOR_DIGIKAM TRUE)
-ENDIF(NOT WIN32)
+INCLUDE(FindPkgConfig)
+# Check for KExiv2
+PKG_CHECK_MODULES(LIBKEXIV2 libkexiv2-kde4>=0.5.0)
+FIND_PATH(KEXIV2_INCLUDE_DIR NAMES libkexiv2/version.h
+  PATHS ${LIBKEXIV2_INCLUDE_DIRS} ${KDE4_INCLUDE_DIR} NO_DEFAULT_PATH)
+FIND_LIBRARY(KEXIV2_LIBRARY NAMES kexiv2
+  PATHS ${LIBKEXIV2_LIBRARY_DIRS} ${KDE4_LIB_DIR} NO_DEFAULT_PATH)
 
-# Check KExiv2 version installed to compile fine.
-IF(NOT WIN32)
-    FIND_PACKAGE(PkgConfig)
-    PKG_CHECK_MODULES(Kexiv2 libkexiv2>=0.5.0)
-    IF(Kexiv2_FOUND)
-        SET(KEXIV2_FOR_DIGIKAM TRUE)
-    ELSE(Kexiv2_FOUND)
-        SET(KEXIV2_FOR_DIGIKAM FALSE)
-    ENDIF(Kexiv2_FOUND)
-ELSE(NOT WIN32)
-    SET(KEXIV2_FOR_DIGIKAM TRUE)
-ENDIF(NOT WIN32)
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(KEXIV2 DEFAULT_MSG KEXIV2_LIBRARY KEXIV2_INCLUDE_DIR)
+
+IF(KEXIV2_FOUND)
+  SET(KEXIV2_LIBRARIES ${KEXIV2_LIBRARY})
+  SET(KEXIV2_FOR_DIGIKAM TRUE)
+ENDIF(KEXIV2_FOUND)
+
+# Check for Kdcraw
+PKG_CHECK_MODULES(LIBKDCRAW libkdcraw-kde4>=0.4.0)
+FIND_PATH(KDCRAW_INCLUDE_DIR NAMES libkdcraw/version.h
+  PATHS ${LIBKDCRAW_INCLUDE_DIRS} ${KDE4_INCLUDE_DIR} NO_DEFAULT_PATH)
+FIND_LIBRARY(KDCRAW_LIBRARY NAMES kdcraw
+  PATHS ${LIBKDCRAW_LIBRARY_DIRS} ${KDE4_LIB_DIR} NO_DEFAULT_PATH)
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(KDCRAW DEFAULT_MSG KDCRAW_LIBRARY KDCRAW_INCLUDE_DIR)
+
+IF(KDCRAW_FOUND)
+  SET(KDCRAW_LIBRARIES ${KDCRAW_LIBRARY})
+  SET(KDCRAW_FOR_DIGIKAM TRUE)
+ENDIF(KDCRAW_FOUND)
+
+# Check for Kipi
+PKG_CHECK_MODULES(LIBKIPI libkipi-kde4>=0.2.0)
+FIND_PATH(KIPI_INCLUDE_DIR NAMES libkipi/version.h
+  PATHS ${LIBKIPI_INCLUDE_DIRS} ${KDE4_INCLUDE_DIR} NO_DEFAULT_PATH)
+FIND_LIBRARY(KIPI_LIBRARY NAMES kipi
+  PATHS ${LIBKIPI_LIBRARY_DIRS} ${KDE4_LIB_DIR} NO_DEFAULT_PATH)
+
+INCLUDE(FindPackageHandleStandardArgs)
+FIND_PACKAGE_HANDLE_STANDARD_ARGS(KIPI DEFAULT_MSG KIPI_LIBRARY KIPI_INCLUDE_DIR)
+
+IF(KIPI_FOUND)
+  SET(KIPI_LIBRARIES ${KIPI_LIBRARY})
+ENDIF(KIPI_FOUND)
 
 # ==================================================================================================
 # Optional depencies
