Patchwork curlpp: add curl c++ bindings

login
register
mail settings
Submitter ulf@emagii.com
Date Dec. 2, 2013, 11:46 a.m.
Message ID <1385984797-6864-1-git-send-email-ulf@emagii.com>
Download mbox | patch
Permalink /patch/62665/
State Changes Requested, archived
Headers show

Comments

ulf@emagii.com - Dec. 2, 2013, 11:46 a.m.
Signed-off-by: Ulf Samuelsson <ulf@emagii.com>
---
 .../curlpp/curlpp/pkgconfig_fix.patch              |   38 +++++++++
 meta/recipes-support/curlpp/curlpp_0.7.3.bb        |   90 ++++++++++++++++++++
 2 files changed, 128 insertions(+)
 create mode 100644 meta/recipes-support/curlpp/curlpp/pkgconfig_fix.patch
 create mode 100644 meta/recipes-support/curlpp/curlpp_0.7.3.bb
Paul Eggleton - Dec. 2, 2013, 3:23 p.m.
Hi Ulf,

On Monday 02 December 2013 12:46:37 Ulf Samuelsson wrote:
> +DESCRIPTION = "C++ library for client-side URL transfers."

Please set SUMMARY instead for a short one-line description, this will set 
DESCRIPTION as well.

> +HOMEPAGE = "http://code.google.com/p/curlpp/"
> +SECTION = "console/network"
> +LICENSE = "freely distributable"

The correct LICENSE value is "MIT" according to the website above.

> +LIC_FILES_CHKSUM = "file://COPYING;md5=fd0c9adf285a69aa3b4faf34384e1029"
> +
> +DEPENDS = "curl boost"
> +DEPENDS_class-native = "curl-native"
> +PR = "r1"

Drop PR here please

> +
> +SRC_URI = "http://curlpp.googlecode.com/files/curlpp-${PV}.tar.gz \
> +	"
> +
> +SRC_URI[md5sum] = "ccc3d30d4b3b5d2cdbed635898c29485"
> +SRC_URI[sha256sum] =
> "e3f9427b27c5bddf898d383d45c0d3d5397e2056ff935d9a5cdaef6a9a653bd5" 
> +
> +inherit autotools pkgconfig binconfig
> +
> +EXTRA_OECONF = "--prefix=${STAGING_DIR} \
> +		--with-boost=${STAGING_DIR} \
> +		"
> +#		--host=arm-angstrom-linux-gnueabi \

Drop this (and any other commented out lines)

Cheers,
Paul

Patch

diff --git a/meta/recipes-support/curlpp/curlpp/pkgconfig_fix.patch b/meta/recipes-support/curlpp/curlpp/pkgconfig_fix.patch
new file mode 100644
index 0000000..ad73c00
--- /dev/null
+++ b/meta/recipes-support/curlpp/curlpp/pkgconfig_fix.patch
@@ -0,0 +1,38 @@ 
+Upstream-Status: Inappropriate [packaging]
+
+
+Index: curl-7.20.0/libcurl.pc.in
+===================================================================
+--- curl-7.20.0.orig/libcurl.pc.in	2009-11-17 18:11:07.000000000 +0000
++++ curl-7.20.0/libcurl.pc.in	2010-03-25 12:13:26.814051066 +0000
+@@ -35,6 +35,7 @@
+ URL: http://curl.haxx.se/
+ Description: Library to transfer files with ftp, http, etc.
+ Version: @CURLVERSION@
+-Libs: -L${libdir} -lcurl @LIBS@
+-Libs.private: @LIBCURL_LIBS@ @LIBS@
++Requires.private: @GNUTLS_REQUIRED@
++Libs: -L${libdir} -lcurl
++Libs.private: -ldl -lz
+ Cflags: -I${includedir}
+Index: curl-7.20.0/configure.ac
+===================================================================
+--- curl-7.20.0.orig/configure.ac	2010-02-04 21:41:46.000000000 +0000
++++ curl-7.20.0/configure.ac	2010-03-25 12:12:18.673129001 +0000
+@@ -1668,6 +1668,7 @@
+        AC_SUBST(USE_GNUTLS, [1])
+        GNUTLS_ENABLED=1
+        USE_GNUTLS="yes"
++       GNUTLS_REQUIRED="gnutls"
+        curl_ssl_msg="enabled (GnuTLS)"
+        ],
+        [
+@@ -1696,6 +1697,8 @@
+ 
+ fi dnl OPENSSL != 1
+ 
++AC_SUBST(GNUTLS_REQUIRED)
++
+ dnl ----------------------------------------------------
+ dnl NSS. Only check if GnuTLS and OpenSSL are not enabled
+ dnl ----------------------------------------------------
diff --git a/meta/recipes-support/curlpp/curlpp_0.7.3.bb b/meta/recipes-support/curlpp/curlpp_0.7.3.bb
new file mode 100644
index 0000000..1dc72f1
--- /dev/null
+++ b/meta/recipes-support/curlpp/curlpp_0.7.3.bb
@@ -0,0 +1,90 @@ 
+DESCRIPTION = "C++ library for client-side URL transfers."
+HOMEPAGE = "http://code.google.com/p/curlpp/"
+SECTION = "console/network"
+LICENSE = "freely distributable"
+LIC_FILES_CHKSUM = "file://COPYING;md5=fd0c9adf285a69aa3b4faf34384e1029"
+
+DEPENDS = "curl boost"
+DEPENDS_class-native = "curl-native"
+PR = "r1"
+
+SRC_URI = "http://curlpp.googlecode.com/files/curlpp-${PV}.tar.gz \
+	"
+
+SRC_URI[md5sum] = "ccc3d30d4b3b5d2cdbed635898c29485"
+SRC_URI[sha256sum] = "e3f9427b27c5bddf898d383d45c0d3d5397e2056ff935d9a5cdaef6a9a653bd5"
+
+inherit autotools pkgconfig binconfig
+
+EXTRA_OECONF = "--prefix=${STAGING_DIR} \
+		--with-boost=${STAGING_DIR} \
+		"
+#		--host=arm-angstrom-linux-gnueabi \
+
+
+do_install() {
+	install -d ${D}/${includedir}/curlpp
+	cp -r include/curlpp/* 					${D}${includedir}/curlpp
+
+	install -d ${D}${includedir}/utilspp
+	cp -r include/utilspp/* 				${D}${includedir}/utilspp
+
+	install -d ${D}/${libdir}
+	install	-m 664 src/curlpp/.libs/libcurlpp.a		${D}/${libdir}
+#	install	-m 664 src/curlpp/.libs/libcurlpp.la		${D}/${libdir}
+	install	-m 664 src/curlpp/.libs/libcurlpp.lai		${D}/${libdir}/libcurlpp.la
+
+	install	-m 775 src/curlpp/.libs/libcurlpp.so		${D}/${libdir}
+	install	-m 775 src/curlpp/.libs/libcurlpp.so.0		${D}/${libdir}
+	install	-m 775 src/curlpp/.libs/libcurlpp.so.0.0.2	${D}/${libdir}
+
+	install	-m 664 src/utilspp/.libs/libutilspp.a		${D}/${libdir}
+#	install	-m 664 src/utilspp/.libs/libutilspp.la		${D}/${libdir}
+	install	-m 664 src/utilspp/.libs/libutilspp.lai		${D}/${libdir}/libutilspp.la
+
+	install	-m 664 src/utilspp/.libs/libutilspp.so		${D}/${libdir}
+	install	-m 664 src/utilspp/.libs/libutilspp.so.0	${D}/${libdir}
+	install	-m 664 src/utilspp/.libs/libutilspp.so.0.0.0	${D}/${libdir}
+
+	install -d ${D}/${libdir}/pkgconfig
+	install	-m 664 curlpp.pc				${D}/${libdir}/pkgconfig
+
+	install -d ${D}/${bindir}
+	install	-m 755 curlpp-config 				${D}/${bindir}
+
+	install -d ${D}/${includedir}/curlpp
+	install -d ${D}/${includedir}/curlpp/internal
+	install -d ${D}/${includedir}/utilspp
+	install -d ${D}/${includedir}/utilspp/functor
+	install -d ${D}/${includedir}/utilspp/singleton
+
+	install	-m 664 include/curlpp/config*			${D}/${includedir}/curlpp
+	install	-m 664 include/curlpp/*.h*			${D}/${includedir}/curlpp
+	install	-m 664 include/curlpp/*.inl			${D}/${includedir}/curlpp
+
+	install	-m 664 include/curlpp/internal/*.h*		${D}/${includedir}/curlpp/internal
+	install	-m 664 include/curlpp/internal/*.inl		${D}/${includedir}/curlpp/internal
+
+	install	-m 664 include/utilspp/*.h*			${D}/${includedir}/utilspp
+	install	-m 664 include/utilspp/*.inl			${D}/${includedir}/utilspp
+
+	install	-m 664 include/utilspp/functor/*.h*		${D}/${includedir}/utilspp/functor
+	install	-m 664 include/utilspp/singleton/*.h*		${D}/${includedir}/utilspp/singleton
+	install	-m 664 include/utilspp/singleton/*.inl		${D}/${includedir}/utilspp/singleton
+	install -m 755 curlpp-config				${D}/${bindir}
+}
+
+PACKAGES =+ "libcurlpp libcurlpp-dev libcurlpp-staticdev"
+
+FILES_lib${BPN} = "${libdir}/lib*.so.* \
+                      ${libdir}/lib*.so \
+		"
+
+FILES_lib${BPN}-dev = "${includedir} \
+                      ${libdir}/lib*.la \
+                      ${libdir}/pkgconfig \
+                      ${bindir}/*-config"
+
+FILES_lib${BPN}-staticdev = "${libdir}/lib*.a"
+
+BBCLASSEXTEND = "native nativesdk"