mirror of
https://github.com/tesseract-ocr/tesseract.git
synced 2024-11-23 18:49:08 +08:00
cmake: check if leptonica was build with tiff support
This commit is contained in:
parent
d999957fae
commit
58b75b3fd9
@ -372,6 +372,7 @@ add_definitions("-DCMAKE_BUILD")
|
||||
# packages
|
||||
#
|
||||
# ##############################################################################
|
||||
include(CheckFunctions)
|
||||
|
||||
if(SW_BUILD)
|
||||
find_package(SW REQUIRED)
|
||||
@ -398,9 +399,19 @@ else()
|
||||
endif()
|
||||
if(NOT Leptonica_FOUND)
|
||||
message(FATAL_ERROR "Cannot find required library Leptonica. Quitting!")
|
||||
else()
|
||||
message(STATUS "Found leptonica version: ${Leptonica_VERSION}")
|
||||
endif(NOT Leptonica_FOUND)
|
||||
include_directories(${Leptonica_INCLUDE_DIRS})
|
||||
|
||||
check_leptonica_tiff_support()
|
||||
if (NOT LEPT_TIFF_RESULT EQUAL 0)
|
||||
message(NOTICE "Leptonica was build without TIFF support! Disabling TIFF support...")
|
||||
set(DISABLE_TIFF ON)
|
||||
else()
|
||||
message(STATUS "Leptonica was build with TIFF support.")
|
||||
endif()
|
||||
|
||||
# Check for optional libraries.
|
||||
if(DISABLE_TIFF)
|
||||
set(HAVE_TIFFIO_H OFF)
|
||||
|
49
cmake/CheckFunctions.cmake
Normal file
49
cmake/CheckFunctions.cmake
Normal file
@ -0,0 +1,49 @@
|
||||
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
||||
# use this file except in compliance with the License. You may obtain a copy of
|
||||
# the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by
|
||||
# applicable law or agreed to in writing, software distributed under the License
|
||||
# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
# KIND, either express or implied. See the License for the specific language
|
||||
# governing permissions and limitations under the License.
|
||||
# ##############################################################################
|
||||
#
|
||||
# macros and functions
|
||||
#
|
||||
# ##############################################################################
|
||||
|
||||
# ##############################################################################
|
||||
# FUNCTION check_leptonica_tiff_support
|
||||
# ##############################################################################
|
||||
function(check_leptonica_tiff_support)
|
||||
# check if leptonica was build with tiff support set result to
|
||||
# LEPT_TIFF_RESULT
|
||||
set(TIFF_TEST
|
||||
"#include <leptonica/allheaders.h>\n"
|
||||
"int main() {\n"
|
||||
" l_uint8 *data = NULL;\n"
|
||||
" size_t size = 0;\n"
|
||||
" PIX* pix = pixCreate(3, 3, 4);\n"
|
||||
" l_int32 ret_val = pixWriteMemTiff(&data, &size, pix, IFF_TIFF_G3);\n"
|
||||
" pixDestroy(&pix);\n"
|
||||
" lept_free(data);\n"
|
||||
" return ret_val;}\n")
|
||||
set(CMAKE_TRY_COMPILE_CONFIGURATION ${CMAKE_BUILD_TYPE})
|
||||
try_run(
|
||||
LEPT_TIFF_RESULT
|
||||
LEPT_TIFF_COMPILE
|
||||
SOURCE_FROM_CONTENT tiff_test.cpp "${TIFF_TEST}"
|
||||
CMAKE_FLAGS "-DINCLUDE_DIRECTORIES=${Leptonica_INCLUDE_DIRS}"
|
||||
LINK_LIBRARIES ${Leptonica_LIBRARIES}
|
||||
COMPILE_OUTPUT_VARIABLE
|
||||
COMPILE_OUTPUT)
|
||||
if(NOT LEPT_TIFF_COMPILE)
|
||||
message(STATUS "COMPILE_OUTPUT: ${COMPILE_OUTPUT}")
|
||||
message(STATUS "Leptonica_INCLUDE_DIRS: ${Leptonica_INCLUDE_DIRS}")
|
||||
message(STATUS "Leptonica_LIBRARIES: ${Leptonica_LIBRARIES}")
|
||||
message(STATUS "LEPT_TIFF_RESULT: ${LEPT_TIFF_RESULT}")
|
||||
message(STATUS "LEPT_TIFF_COMPILE: ${LEPT_TIFF_COMPILE}")
|
||||
message(WARNING "Failed to compile test")
|
||||
endif()
|
||||
endfunction(check_leptonica_tiff_support)
|
||||
|
||||
# ##############################################################################
|
Loading…
Reference in New Issue
Block a user