Browse Source

autotools: install Leptonica cmake files for using it with other programs + sync generating configuration with cmake

pull/432/head
zdenop 6 years ago
parent
commit
547c4eb77f
  1. 2
      .gitignore
  2. 15
      CMakeLists.txt
  3. 6
      Makefile.am
  4. 4
      cmake/templates/LeptonicaConfig.cmake.in
  5. 15
      configure.ac
  6. 2
      lept.pc.in

2
.gitignore

@ -37,6 +37,8 @@ Makefile.in
/obj/
/src/endianness.h
/stamp-h1
cmake/templates/LeptonicaConfig-version.cmake
cmake/templates/LeptonicaConfig.cmake
# files generated by compiling conv2doxy
conv2doxy

15
CMakeLists.txt

@ -190,13 +190,6 @@ configure_file(${AUTOCONFIG_SRC} ${AUTOCONFIG} @ONLY)
set(INCLUDE_DIR "${CMAKE_INSTALL_PREFIX}/include" "${CMAKE_INSTALL_PREFIX}/include/leptonica")
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/cmake/templates/LeptonicaConfig-version.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/LeptonicaConfig-version.cmake @ONLY)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/cmake/templates/LeptonicaConfig.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/LeptonicaConfig.cmake @ONLY)
###############################################################################
#
# build
@ -217,7 +210,15 @@ add_subdirectory(src)
get_target_property(leptonica_NAME leptonica NAME)
get_target_property(leptonica_VERSION leptonica VERSION)
get_target_property(leptonica_OUTPUT_NAME leptonica OUTPUT_NAME)
configure_file(lept.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/lept.pc @ONLY)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/cmake/templates/LeptonicaConfig-version.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/LeptonicaConfig-version.cmake @ONLY)
configure_file(
${CMAKE_CURRENT_SOURCE_DIR}/cmake/templates/LeptonicaConfig.cmake.in
${CMAKE_CURRENT_BINARY_DIR}/LeptonicaConfig.cmake @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/lept.pc DESTINATION lib/pkgconfig)
install(FILES
${CMAKE_CURRENT_BINARY_DIR}/LeptonicaConfig.cmake

6
Makefile.am

@ -5,4 +5,10 @@ EXTRA_DIST = config README.html leptonica-license.txt moller52.jpg version-notes
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = lept.pc
# Cmake configs:
lept_cmakeconfigdir = $(libdir)/cmake/
lept_cmakeconfig_DATA = \
cmake/templates/LeptonicaConfig.cmake \
cmake/templates/LeptonicaConfig-version.cmake
SUBDIRS = src prog

4
cmake/templates/LeptonicaConfig.cmake.in

@ -36,10 +36,10 @@ SET(Leptonica_VERSION_PATCH @VERSION_PATCH@)
# ======================================================
# Provide the include directories to the caller
set(Leptonica_INCLUDE_DIRS "@INCLUDE_DIR@")
set(Leptonica_INCLUDE_DIRS "@INCLUDE_DIR@")
# ====================================================================
# Link libraries:
# ====================================================================
set(Leptonica_LIBRARIES leptonica)
set(Leptonica_LIBRARIES @leptonica_OUTPUT_NAME@)

15
configure.ac

@ -255,5 +255,20 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM()],
AC_CHECK_FUNCS([fmemopen])
AC_CHECK_FUNC([fstatat])
# Configuration files
AC_CONFIG_FILES([Makefile src/endianness.h src/Makefile prog/Makefile lept.pc])
# cmake configuration. Get versions from PACKAGE_VERSION.
AX_SPLIT_VERSION
AC_SUBST([VERSION_PLAIN], ["${PACKAGE_VERSION}"])
AC_SUBST([VERSION_MAJOR], [$(echo "$AX_MAJOR_VERSION" | $SED 's/^[[^0-9]]*//')])
AC_SUBST([VERSION_MINOR], [$AX_MINOR_VERSION])
AC_SUBST([VERSION_PATCH], [$(echo "$AX_POINT_VERSION" | $SED 's/^\([[0-9]][[0-9]]*\).*/\1/')])
INCLUDE_PATH=`eval echo $includedir`
AC_SUBST([INCLUDE_DIR], ["${INCLUDE_PATH}/leptonica"])
AC_SUBST([leptonica_OUTPUT_NAME], ["lept"])
AC_CONFIG_FILES(cmake/templates/LeptonicaConfig.cmake)
AC_CONFIG_FILES(cmake/templates/LeptonicaConfig-version.cmake)
# Create symlink
AC_OUTPUT

2
lept.pc.in

@ -6,7 +6,7 @@ includedir=@includedir@/leptonica
Name: leptonica
Description: An open source C library for efficient image processing and image analysis operations
Version: @VERSION@
Libs: -L${libdir} -llept
Libs: -L${libdir} -l@leptonica_OUTPUT_NAME@
Libs.private: @ZLIB_LIBS@ @LIBPNG_LIBS@ @JPEG_LIBS@ @LIBJP2K_LIBS@ @GIFLIB_LIBS@ @LIBTIFF_LIBS@ @LIBWEBP_LIBS@ @LIBWEBPMUX_LIBS@
Cflags: -I${includedir}
Loading…
Cancel
Save