[oe] [meta-oe][PATCH] Recipe for docopt.cpp option parsing library

Khem Raj raj.khem at gmail.com
Sat Aug 24 17:34:58 UTC 2019


On Fri, Aug 23, 2019 at 3:55 AM Aaltonen Eero <eero.aaltonen at vaisala.com> wrote:
>
> Upstream is at
> https://github.com/docopt/docopt.cpp/
>
> Installs with a small build modification to pass QA checks.
>
> Signed-off-by: Eero Aaltonen <eero.aaltonen at vaisala.com>
> ---
>  file                                          |  0
>  ...01-Set-library-VERSION-and-SOVERSION.patch | 31 +++++++++++++++++++
>  .../docopt.cpp/docopt.cpp_git.bb              | 29 +++++++++++++++++
>  3 files changed, 60 insertions(+)
>  create mode 100644 file
>  create mode 100644 meta-oe/recipes-extended/docopt.cpp/docopt.cpp/0001-Set-library-VERSION-and-SOVERSION.patch
>  create mode 100644 meta-oe/recipes-extended/docopt.cpp/docopt.cpp_git.bb
>
> diff --git a/file b/file
> new file mode 100644
> index 000000000..e69de29bb
> diff --git a/meta-oe/recipes-extended/docopt.cpp/docopt.cpp/0001-Set-library-VERSION-and-SOVERSION.patch b/meta-oe/recipes-extended/docopt.cpp/docopt.cpp/0001-Set-library-VERSION-and-SOVERSION.patch
> new file mode 100644
> index 000000000..d4c776569
> --- /dev/null
> +++ b/meta-oe/recipes-extended/docopt.cpp/docopt.cpp/0001-Set-library-VERSION-and-SOVERSION.patch
> @@ -0,0 +1,31 @@
> +From a47ca75702318ff43446c70120f7aacde4ccee1b Mon Sep 17 00:00:00 2001
> +From: Eero Aaltonen <eero.aaltonen at vaisala.com>
> +Date: Thu, 20 Jun 2019 16:21:20 +0300
> +Subject: [PATCH] Set library VERSION and SOVERSION
> +
> +With soversion and version specified, `install` target will install the
> +library with the specified version and also create the proper symlink.
> +
> +Upstream-Status: Submitted [https://github.com/docopt/docopt.cpp/pull/112]
> +but unlikely to be merged soon as it is a duplicate of
> +[https://github.com/docopt/docopt.cpp/pull/112] which has been **Open**
> +since 2016-12-08.
> +---
> + CMakeLists.txt | 4 ++++
> + 1 file changed, 4 insertions(+)
> +
> +diff --git a/CMakeLists.txt b/CMakeLists.txt
> +index 23da468..feff32e 100644
> +--- a/CMakeLists.txt
> ++++ b/CMakeLists.txt
> +@@ -50,6 +50,10 @@ else()
> +     set_target_properties(docopt_o PROPERTIES POSITION_INDEPENDENT_CODE TRUE)
> +
> +     add_library(docopt SHARED $<TARGET_OBJECTS:docopt_o>)
> ++      set_target_properties(docopt PROPERTIES
> ++              VERSION ${PROJECT_VERSION}
> ++              SOVERSION ${PROJECT_VERSION_MAJOR}
> ++              )
> +     add_library(docopt_s STATIC $<TARGET_OBJECTS:docopt_o>)
> + endif()
> +
> diff --git a/meta-oe/recipes-extended/docopt.cpp/docopt.cpp_git.bb b/meta-oe/recipes-extended/docopt.cpp/docopt.cpp_git.bb
> new file mode 100644
> index 000000000..95c60617c
> --- /dev/null
> +++ b/meta-oe/recipes-extended/docopt.cpp/docopt.cpp_git.bb
> @@ -0,0 +1,29 @@
> +SUMMARY = "C++11 port of docopt command-line interface description language and parser"
> +
> +DESCRIPTION = "docopt is library that lets you define a command line interface with the \
> +utility argument syntax that has been used by command line utilities for \
> +decades (formalized in POSIX.1-2017). From the description, docopt \
> +automatically generates a parser for the command line arguments."
> +
> +HOMEPAGE = "https://github.com/docopt/docopt.cpp"
> +
> +LICENSE = "MIT | BSL-1.0"
> +LIC_FILES_CHKSUM = "\
> +    file://LICENSE-Boost-1.0;md5=e4224ccaecb14d942c71d31bef20d78c \
> +    file://LICENSE-MIT;md5=4b242fd9ef20207e18286d73da8a6677 \
> +"
> +
> +DEPENDS = "boost"
> +SRCREV = "3dd23e3280f213bacefdf5fcb04857bf52e90917"
> +PV = "0.6.2+git${SRCPV}"
> +
> +SRC_URI = "\
> +    git://git@github.com/docopt/docopt.cpp.git;protocol=ssh \
> +    file://0001-Set-library-VERSION-and-SOVERSION.patch \
> +"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit cmake gitpkgv

lets just use SRCPV

> +
> +PKGV = "0.6.2+git${GITPKGV}"
> --
> 2.17.1
>
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


More information about the Openembedded-devel mailing list