File FindCFitsio.cmake.patch of Package kstars
--- cmake/modules/FindCFitsio.cmake.orig 2011-05-20 23:34:16.000000000 +0300
+++ cmake/modules/FindCFitsio.cmake 2011-09-22 23:58:49.489000042 +0300
@@ -4,6 +4,9 @@
# CFITSIO_FOUND - system has CFITSIO
# CFITSIO_INCLUDE_DIR - the CFITSIO include directory
# CFITSIO_LIBRARIES - Link these to use CFITSIO
+# CFITSIO_VERSION_STRING - Human readable version number of cfitsio
+# CFITSIO_VERSION_MAJOR - Major version number of cfitsio
+# CFITSIO_VERSION_MINOR - Minor version number of cfitsio
# Copyright (c) 2006, Jasem Mutlaq <mutlaqja@ikarustech.com>
# Based on FindLibfacile by Carsten Niehaus, <cniehaus@gmx.de>
@@ -13,29 +16,23 @@
if (CFITSIO_INCLUDE_DIR AND CFITSIO_LIBRARIES)
- # in cache already
- set(CFITSIO_FOUND TRUE)
- message(STATUS "Found CFITSIO: ${CFITSIO_LIBRARIES}")
-
+ # in cache already, be quiet
+ set(CFITSIO_FIND_QUIETLY TRUE)
else (CFITSIO_INCLUDE_DIR AND CFITSIO_LIBRARIES)
- if (NOT WIN32)
- find_package(PkgConfig)
- if (PKG_CONFIG_FOUND)
- pkg_check_modules(PC_CFITSIO cfitsio)
- endif (PKG_CONFIG_FOUND)
- endif (NOT WIN32)
-
+ # JM: Packages from different distributions have different suffixes
find_path(CFITSIO_INCLUDE_DIR fitsio.h
- ${PC_CFITSIO_INCLUDE_DIRS}
+ PATH_SUFFIXES libcfitsio3 libcfitsio0 cfitsio
+ PATHS
+ $ENV{CFITSIO}
${_obIncDir}
${GNUWIN32_DIR}/include
)
- find_library(CFITSIO_LIBRARIES NAMES cfitsio libcfitsio
+ find_library(CFITSIO_LIBRARIES NAMES cfitsio
PATHS
- ${PC_CFITSIO_LIBRARY_DIRS}
+ $ENV{CFITSIO}
${_obLinkDir}
${GNUWIN32_DIR}/lib
)
@@ -48,13 +45,21 @@
if (CFITSIO_FOUND)
- if (NOT CFitsio_FIND_QUIETLY)
- message(STATUS "Found CFITSIO: ${CFITSIO_LIBRARIES}")
- endif (NOT CFitsio_FIND_QUIETLY)
+
+ # Find the version of the cfitsio header
+ FILE(READ "${CFITSIO_INCLUDE_DIR}/fitsio.h" FITSIO_H)
+ STRING(REGEX REPLACE ".*#define CFITSIO_VERSION[^0-9]*([0-9]+)\\.([0-9]+).*" "\\1.\\2" CFITSIO_VERSION_STRING "${FITSIO_H}")
+ STRING(REGEX REPLACE "^([0-9]+)[.]([0-9]+)" "\\1" CFITSIO_VERSION_MAJOR ${CFITSIO_VERSION_STRING})
+ STRING(REGEX REPLACE "^([0-9]+)[.]([0-9]+)" "\\2" CFITSIO_VERSION_MINOR ${CFITSIO_VERSION_STRING})
+ message(STATUS "found version string ${CFITSIO_VERSION_STRING}")
+
+ if (NOT CFITSIO_FIND_QUIETLY)
+ message(STATUS "Found CFITSIO ${CFITSIO_VERSION_MAJOR}.${CFITSIO_VERSION_MINOR}: ${CFITSIO_LIBRARIES}")
+ endif (NOT CFITSIO_FIND_QUIETLY)
else (CFITSIO_FOUND)
- if (CFitsio_FIND_REQUIRED)
- message(FATAL_ERROR "CFITSIO not found. Please install libcfitsio0-devel and try again. http://indi.sf.net")
- endif (CFitsio_FIND_REQUIRED)
+ if (CFITSIO_FIND_REQUIRED)
+ message(STATUS "CFITSIO not found.")
+ endif (CFITSIO_FIND_REQUIRED)
endif (CFITSIO_FOUND)
mark_as_advanced(CFITSIO_INCLUDE_DIR CFITSIO_LIBRARIES)