Control: tags -1 + patch

Hi, please consider applying this patch, fixing FTBFS by replacing
problematic library detector by pkg-config.
diff --git a/cmake/FindDM.cmake b/cmake/FindDM.cmake
index a7a3f9b..68c5ae7 100755
--- a/cmake/FindDM.cmake
+++ b/cmake/FindDM.cmake
@@ -59,68 +59,21 @@ ELSE()
     ENDIF()
   ELSE()
     MESSAGE(STATUS "${ODBC_CONFIG_EXEC} is not found ")
-    # Try to find the include directory, giving precedence to special variables
-    SET(LIB_PATHS /usr/local /usr /usr/local/Cellar/libiodbc/3.52.12)
+    FIND_PACKAGE(PkgConfig REQUIRED)
+    PKG_SEARCH_MODULE(ODBC REQUIRED ${ODBC_LIBS})
+    PKG_SEARCH_MODULE(ODBCINST REQUIRED ${ODBC_INSTLIBS})
 
-    IF("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
-      SET(LIB_PATHS "${LIB_PATHS}" "/usr/lib/x86_64-linux-gnu")
-
-      IF(EXISTS "/usr/lib64/")
-        SET(LIB_SUFFIX "lib64" "x86_64-linux-gnu")
-      ELSE()
-        SET(LIB_SUFFIX "lib" "x86_64-linux-gnu")
-      ENDIF()
-   
-    ELSE()
-      SET(LIB_PATHS "${LIB_PATHS}" "/usr/local/lib/i386-linux-gnu" "/usr/lib/i386-linux-gnu" "/usr/local/lib/i686-linux-gnu" "/usr/lib/i686-linux-gnu")
-      SET(LIB_SUFFIX "lib" "i386-linux-gnu" "i686-linux-gnu")
-    ENDIF()
-
-    FIND_PATH(ODBC_INCLUDE_DIR sql.h
-        HINTS ${DM_INCLUDE_DIR}
-              ${DM_DIR}
-              ENV DM_INCLUDE_DIR
-              ENV DM_DIR
-        PATHS /usr/local
-              /usr
-              /usr/local/Cellar/libiodbc/3.52.12
-        PATH_SUFFIXES include include/iodbc
-        NO_DEFAULT_PATH
-        DOC "Driver Manager Includes")
-    # Giving chance to cmake_(environment)path
-    FIND_PATH(ODBC_INCLUDE_DIR sql.h
-        DOC "Driver Manager Includes")
-
-    IF(ODBC_INCLUDE_DIR)
+    IF(ODBC_FOUND)
+      SET(ODBC_INCLUDE_DIR "${ODBC_INCLUDE_DIRS}")
       MESSAGE(STATUS "Found ODBC Driver Manager includes: ${ODBC_INCLUDE_DIR}")
     ENDIF()
     # Try to find DM libraries, giving precedence to special variables
-    FIND_PATH(ODBC_LIB_DIR "lib${ODBC_LIBS}.so"
-        HINTS ${DM_LIB_DIR}
-              ${DM_DIR}
-              ENV DM_LIB_DIR
-              ENV DM_DIR
-        PATHS ${LIB_PATHS}
-        PATH_SUFFIXES ${LIB_SUFFIX} 
-        NO_DEFAULT_PATH
-        DOC "Driver Manager Libraries")
-    FIND_PATH(ODBC_LIB_DIR "lib${ODBC_LIBS}.so"
-        DOC "Driver Manager Libraries")
-    FIND_PATH(ODBCINST_LIB_DIR "lib${ODBC_INSTLIBS}.so"
-        HINTS ${DM_LIB_DIR}
-              ${DM_DIR}
-              ENV DM_LIB_DIR
-              ENV DM_DIR
-        PATHS ${LIB_PATHS}
-        PATH_SUFFIXES ${LIB_SUFFIX} 
-        NO_DEFAULT_PATH
-        DOC "Driver Manager Libraries")
-    FIND_PATH(ODBCINST_LIB_DIR "lib${ODBC_INSTLIBS}.so"
-        DOC "Driver Manager Libraries")
+    SET(ODBC_LIB_DIR "${ODBC_LIBRARY_DIRS}")
+    SET(ODBCINST_LIB_DIR "${ODBCINST_LIBRARY_DIRS}")
   ENDIF()
 ENDIF()
 
-IF(ODBC_LIB_DIR AND ODBC_INCLUDE_DIR)
+IF(ODBC_FOUND AND ODBCINST_FOUND)
   MESSAGE(STATUS "Found ODBC Driver Manager libraries: ${ODBC_LIB_DIR} ${ODBCINST_LIB_DIR}")
   SET(DM_FOUND TRUE)
 ENDIF()

Reply via email to