[oe] [meta-oe][PATCH] iniparser: add initial recipe

Joshua Watt jpewhacker at gmail.com
Tue Jul 9 18:38:52 UTC 2019


On 6/27/19 1:25 PM, Gianfranco Costamagna wrote:
> From: Gianfranco Costamagna <gianfranco.costamagna at abinsula.com>
>
> Signed-off-by: Gianfranco Costamagna <costamagnagianfranco at yahoo.it>
> Signed-off-by: Gianfranco Costamagna <locutusofborg at debian.org>
> Signed-off-by: Gianfranco Costamagna <gianfranco.costamagna at abinsula.com>
> ---
>   .../iniparser/Add-CMake-support.patch         | 63 +++++++++++++++++++
>   .../iniparser/iniparser_4.1.bb                | 17 +++++
>   2 files changed, 80 insertions(+)
>   create mode 100644 meta-oe/recipes-support/iniparser/iniparser/Add-CMake-support.patch
>   create mode 100644 meta-oe/recipes-support/iniparser/iniparser_4.1.bb
>
> diff --git a/meta-oe/recipes-support/iniparser/iniparser/Add-CMake-support.patch b/meta-oe/recipes-support/iniparser/iniparser/Add-CMake-support.patch
> new file mode 100644
> index 000000000..b666f00f7
> --- /dev/null
> +++ b/meta-oe/recipes-support/iniparser/iniparser/Add-CMake-support.patch
> @@ -0,0 +1,63 @@
> +Origin: Debian packaging
> +From: Klee Dienes <klee at mit.edu>
> +Date: Thu, 13 Feb 2014 07:03:26 -0500
> +Subject: Add CMake support.
> +
> +---
> + CMakeLists.txt | 44 ++++++++++++++++++++++++++++++++++++++++++++
> + 1 file changed, 44 insertions(+)
> + create mode 100644 CMakeLists.txt
> +
> +--- /dev/null
> ++++ b/CMakeLists.txt
> +@@ -0,0 +1,50 @@
> ++cmake_minimum_required (VERSION 2.8.8)
> ++
> ++project (iniparser)
> ++include (GNUInstallDirs)
> ++
> ++include_directories (src)
> ++
> ++set(INIPARSER_SRCS src/dictionary.c src/iniparser.c)
> ++set(INIPARSER_HDRS src/dictionary.h src/iniparser.h)
> ++
> ++add_library(iniparser-shared SHARED ${INIPARSER_SRCS} ${INIPARSER_HDRS})
> ++add_library(iniparser-static STATIC ${INIPARSER_SRCS} ${INIPARSER_HDRS})
> ++
> ++set_target_properties(iniparser-shared PROPERTIES SOVERSION 1)
> ++set_target_properties(iniparser-shared PROPERTIES OUTPUT_NAME iniparser)
> ++set_target_properties(iniparser-static PROPERTIES OUTPUT_NAME iniparser)
> ++
> ++install (TARGETS iniparser-shared
> ++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
> ++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
> ++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
> ++
> ++install (TARGETS iniparser-static
> ++  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
> ++  DESTINATION ${CMAKE_INSTALL_LIBDIR}
> ++  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
> ++
> ++find_package(Doxygen)
> ++if (NOT DOXYGEN_FOUND)
> ++message(FATAL_ERROR "Doxygen is needed to build the documentation. Please install it correctly")
> ++endif()
> ++
> ++file (WRITE ${CMAKE_CURRENT_BINARY_DIR}/iniparser.dox
> ++  "@INCLUDE = ${CMAKE_CURRENT_SOURCE_DIR}/doc/iniparser.dox\n"
> ++  "OUTPUT_DIRECTORY = ${CMAKE_CURRENT_BINARY_DIR}\n"
> ++  )
> ++
> ++add_custom_target (doc ALL
> ++  COMMAND ${DOXYGEN_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/iniparser.dox
> ++  SOURCES doc/iniparser.dox)
> ++
> ++enable_testing()
> ++
> ++add_test(NAME testsuite
> ++  COMMAND make
> ++  WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/test)
> ++
> ++install (FILES ${INIPARSER_HDRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/iniparser)
> ++
> ++install (DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION ${CMAKE_INSTALL_DOCDIR})
> diff --git a/meta-oe/recipes-support/iniparser/iniparser_4.1.bb b/meta-oe/recipes-support/iniparser/iniparser_4.1.bb
> new file mode 100644
> index 000000000..491298506
> --- /dev/null
> +++ b/meta-oe/recipes-support/iniparser/iniparser_4.1.bb
> @@ -0,0 +1,17 @@
> +SUMMARY = "The iniParser library is a simple C library offering INI file parsing services (both reading and writing)."
> +SECTION = "libs"
> +HOMEPAGE = "https://github.com/ndevilla/iniparser"
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=e02baf71c76e0650e667d7da133379ac"
> +
> +DEPENDS = "doxygen-native"
> +
> +SRC_URI = "git://github.com/ndevilla/iniparser.git;protocol=https;branch=master \
> +	   file://Add-CMake-support.patch"

iniparser has a Makefile; why is the cmake patch necessary?

> +
> +# tag 4.1
> +SRCREV= "0a38e85c9cde1e099ca3bf70083bd00f89c3e5b6"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit cmake


More information about the Openembedded-devel mailing list