[qhull] 02/03: patch for large file support
Barak A. Pearlmutter
barak+git at cs.nuim.ie
Wed Apr 30 12:41:05 UTC 2014
This is an automated email from the git hooks/post-receive script.
bap pushed a commit to branch master
in repository qhull.
commit d4bd533fefc0c709cc883d7336c58fecd11f6cc2
Author: Barak A. Pearlmutter <barak+git at cs.nuim.ie>
Date: Wed Apr 30 13:01:29 2014 +0100
patch for large file support
---
debian/patches/0006-cmake-LFS.patch | 143 ++++++++++++++++++++++++++++++++++++
debian/patches/series | 1 +
2 files changed, 144 insertions(+)
diff --git a/debian/patches/0006-cmake-LFS.patch b/debian/patches/0006-cmake-LFS.patch
new file mode 100644
index 0000000..48326fb
--- /dev/null
+++ b/debian/patches/0006-cmake-LFS.patch
@@ -0,0 +1,143 @@
+From: "Barak A. Pearlmutter" <barak+git at cs.nuim.ie>
+Date: Wed, 30 Apr 2014 12:50:37 +0100
+Subject: cmake LFS
+
+Enable LFS aka Large File Support (as option) in cmake.
+Snag cmake LFS macro from
+https://github.com/simongog/sdsl/blob/master/libdivsufsort-2.0.1/CMakeModules/CheckLFS.cmake
+---
+ CMakeLists.txt | 4 ++
+ CMakeModules/CheckLFS.cmake | 109 ++++++++++++++++++++++++++++++++++++++++++++
+ 2 files changed, 113 insertions(+)
+ create mode 100644 CMakeModules/CheckLFS.cmake
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 98dbc70..c3bf46a 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -44,6 +44,10 @@ string(REGEX REPLACE ".* ([0-9]+) .*"
+ set(qhull_SOVERSION 6)
+ set(qhull_VERSION2 "2012.1 2012/02/18")
+
++include(CMakeModules/CheckLFS.cmake)
++option(WITH_LFS "Enable Large File Support" ON)
++check_lfs(WITH_LFS)
++
+ if(INCLUDE_INSTALL_DIR)
+ else()
+ set(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include)
+diff --git a/CMakeModules/CheckLFS.cmake b/CMakeModules/CheckLFS.cmake
+new file mode 100644
+index 0000000..e2b0099
+--- /dev/null
++++ b/CMakeModules/CheckLFS.cmake
+@@ -0,0 +1,109 @@
++## Checks for large file support ##
++include(CheckIncludeFile)
++include(CheckSymbolExists)
++include(CheckTypeSize)
++
++macro(check_lfs _isenable)
++ set(LFS_OFF_T "")
++ set(LFS_FOPEN "")
++ set(LFS_FSEEK "")
++ set(LFS_FTELL "")
++ set(LFS_PRID "")
++
++ if(${_isenable})
++ set(SAFE_CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS}")
++ set(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS}
++ -D_LARGEFILE_SOURCE -D_LARGE_FILES -D_FILE_OFFSET_BITS=64
++ -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS)
++
++ check_include_file("sys/types.h" HAVE_SYS_TYPES_H)
++ check_include_file("inttypes.h" HAVE_INTTYPES_H)
++ check_include_file("stddef.h" HAVE_STDDEF_H)
++ check_include_file("stdint.h" HAVE_STDINT_H)
++
++ # LFS type1: 8 <= sizeof(off_t), fseeko, ftello
++ check_type_size("off_t" SIZEOF_OFF_T)
++ if(SIZEOF_OFF_T GREATER 7)
++ check_symbol_exists("fseeko" "stdio.h" HAVE_FSEEKO)
++ check_symbol_exists("ftello" "stdio.h" HAVE_FTELLO)
++ if(HAVE_FSEEKO AND HAVE_FTELLO)
++ set(LFS_OFF_T "off_t")
++ set(LFS_FOPEN "fopen")
++ set(LFS_FSEEK "fseeko")
++ set(LFS_FTELL "ftello")
++ check_symbol_exists("PRIdMAX" "inttypes.h" HAVE_PRIDMAX)
++ if(HAVE_PRIDMAX)
++ set(LFS_PRID "PRIdMAX")
++ else(HAVE_PRIDMAX)
++ check_type_size("long" SIZEOF_LONG)
++ check_type_size("int" SIZEOF_INT)
++ if(SIZEOF_OFF_T GREATER SIZEOF_LONG)
++ set(LFS_PRID "\"lld\"")
++ elseif(SIZEOF_LONG GREATER SIZEOF_INT)
++ set(LFS_PRID "\"ld\"")
++ else(SIZEOF_OFF_T GREATER SIZEOF_LONG)
++ set(LFS_PRID "\"d\"")
++ endif(SIZEOF_OFF_T GREATER SIZEOF_LONG)
++ endif(HAVE_PRIDMAX)
++ endif(HAVE_FSEEKO AND HAVE_FTELLO)
++ endif(SIZEOF_OFF_T GREATER 7)
++
++ # LFS type2: 8 <= sizeof(off64_t), fopen64, fseeko64, ftello64
++ if(NOT LFS_OFF_T)
++ check_type_size("off64_t" SIZEOF_OFF64_T)
++ if(SIZEOF_OFF64_T GREATER 7)
++ check_symbol_exists("fopen64" "stdio.h" HAVE_FOPEN64)
++ check_symbol_exists("fseeko64" "stdio.h" HAVE_FSEEKO64)
++ check_symbol_exists("ftello64" "stdio.h" HAVE_FTELLO64)
++ if(HAVE_FOPEN64 AND HAVE_FSEEKO64 AND HAVE_FTELLO64)
++ set(LFS_OFF_T "off64_t")
++ set(LFS_FOPEN "fopen64")
++ set(LFS_FSEEK "fseeko64")
++ set(LFS_FTELL "ftello64")
++ check_symbol_exists("PRIdMAX" "inttypes.h" HAVE_PRIDMAX)
++ if(HAVE_PRIDMAX)
++ set(LFS_PRID "PRIdMAX")
++ else(HAVE_PRIDMAX)
++ check_type_size("long" SIZEOF_LONG)
++ check_type_size("int" SIZEOF_INT)
++ if(SIZEOF_OFF64_T GREATER SIZEOF_LONG)
++ set(LFS_PRID "\"lld\"")
++ elseif(SIZEOF_LONG GREATER SIZEOF_INT)
++ set(LFS_PRID "\"ld\"")
++ else(SIZEOF_OFF64_T GREATER SIZEOF_LONG)
++ set(LFS_PRID "\"d\"")
++ endif(SIZEOF_OFF64_T GREATER SIZEOF_LONG)
++ endif(HAVE_PRIDMAX)
++ endif(HAVE_FOPEN64 AND HAVE_FSEEKO64 AND HAVE_FTELLO64)
++ endif(SIZEOF_OFF64_T GREATER 7)
++ endif(NOT LFS_OFF_T)
++
++ # LFS type3: 8 <= sizeof(__int64), _fseeki64, _ftelli64
++ if(NOT LFS_OFF_T)
++ check_type_size("__int64" SIZEOF___INT64)
++ if(SIZEOF___INT64 GREATER 7)
++ check_symbol_exists("_fseeki64" "stdio.h" HAVE__FSEEKI64)
++ check_symbol_exists("_ftelli64" "stdio.h" HAVE__FTELLI64)
++ if(HAVE__FSEEKI64 AND HAVE__FTELLI64)
++ set(LFS_OFF_T "__int64")
++ set(LFS_FOPEN "fopen")
++ set(LFS_FSEEK "_fseeki64")
++ set(LFS_FTELL "_ftelli64")
++ set(LFS_PRID "\"I64d\"")
++ endif(HAVE__FSEEKI64 AND HAVE__FTELLI64)
++ endif(SIZEOF___INT64 GREATER 7)
++ endif(NOT LFS_OFF_T)
++
++ set(CMAKE_REQUIRED_DEFINITIONS "${SAFE_CMAKE_REQUIRED_DEFINITIONS}")
++ endif(${_isenable})
++
++ if(NOT LFS_OFF_T)
++ ## not found
++ set(LFS_OFF_T "long")
++ set(LFS_FOPEN "fopen")
++ set(LFS_FSEEK "fseek")
++ set(LFS_FTELL "ftell")
++ set(LFS_PRID "\"ld\"")
++ endif(NOT LFS_OFF_T)
++
++endmacro(check_lfs)
diff --git a/debian/patches/series b/debian/patches/series
index 235f915..c67fbce 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,3 +3,4 @@
0003-QHpointer.patch
0004-spelling.patch
0005-man-macros.patch
+0006-cmake-LFS.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/qhull.git
More information about the debian-science-commits
mailing list