diff options
Diffstat (limited to 'poky/meta/recipes-connectivity/socat')
4 files changed, 160 insertions, 0 deletions
diff --git a/poky/meta/recipes-connectivity/socat/socat/0001-Access-c_ispeed-and-c_ospeed-via-APIs.patch b/poky/meta/recipes-connectivity/socat/socat/0001-Access-c_ispeed-and-c_ospeed-via-APIs.patch new file mode 100644 index 000000000..c0e27f3d7 --- /dev/null +++ b/poky/meta/recipes-connectivity/socat/socat/0001-Access-c_ispeed-and-c_ospeed-via-APIs.patch @@ -0,0 +1,52 @@ +From fb10ab134d630705cae0c7be42437cc289af7d32 Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Tue, 15 Mar 2016 21:36:02 +0000 +Subject: [PATCH] Use __c_ispeed and __c_ospeed on musl + +Original intention of these asserts is to find if termios structure +is mapped correctly to locally define union, the get* APIs for +baudrate would not do the right thing since they do not return the +value from c_ospeed/c_ispeed but the value which is stored in iflag +for baudrate. + +So we check if we are on Linux but not using glibc then we use +__c_ispeed and __c_ospeed as defined in musl, however these are +internal elements of structs it should not have been used this +way. + +Signed-off-by: Khem Raj <raj.khem@gmail.com> + +--- +Upstream-Status: Pending + + xioinitialize.c | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/xioinitialize.c b/xioinitialize.c +index 9f50155..8fb2e4c 100644 +--- a/xioinitialize.c ++++ b/xioinitialize.c +@@ -65,6 +65,12 @@ int xioinitialize(void) { + #if HAVE_TERMIOS_ISPEED && (ISPEED_OFFSET != -1) && (OSPEED_OFFSET != -1) + #if defined(ISPEED_OFFSET) && (ISPEED_OFFSET != -1) + #if defined(OSPEED_OFFSET) && (OSPEED_OFFSET != -1) ++#if defined(__linux__) && !defined(__GLIBC__) ++ tdata.termarg.__c_ispeed = 0x56789abc; ++ tdata.termarg.__c_ospeed = 0x6789abcd; ++ assert(tdata.termarg.__c_ispeed == tdata.speeds[ISPEED_OFFSET]); ++ assert(tdata.termarg.__c_ospeed == tdata.speeds[OSPEED_OFFSET]); ++#else + tdata.termarg.c_ispeed = 0x56789abc; + tdata.termarg.c_ospeed = 0x6789abcd; + assert(tdata.termarg.c_ispeed == tdata.speeds[ISPEED_OFFSET]); +@@ -72,6 +78,7 @@ int xioinitialize(void) { + #endif + #endif + #endif ++#endif + } + #endif + +-- +2.8.0 + diff --git a/poky/meta/recipes-connectivity/socat/socat/0001-define-NETDB_INTERNAL-to-1-if-not-available.patch b/poky/meta/recipes-connectivity/socat/socat/0001-define-NETDB_INTERNAL-to-1-if-not-available.patch new file mode 100644 index 000000000..4bbd36766 --- /dev/null +++ b/poky/meta/recipes-connectivity/socat/socat/0001-define-NETDB_INTERNAL-to-1-if-not-available.patch @@ -0,0 +1,32 @@ +From e6a7d96fa3675bdd3f4d7a3d7682381789eef22f Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.khem@gmail.com> +Date: Mon, 15 Feb 2016 20:25:34 +0000 +Subject: [PATCH] define NETDB_INTERNAL to -1 if not available + +helps build with musl + +Signed-off-by: Khem Raj <raj.khem@gmail.com> +--- +Upstream-Status: Pending + + compat.h | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/compat.h b/compat.h +index c8bee4d..bfb013a 100644 +--- a/compat.h ++++ b/compat.h +@@ -666,6 +666,10 @@ typedef int sig_atomic_t; + # define NETDB_INTERNAL h_NETDB_INTERNAL + #endif + ++#if !defined(NETDB_INTERNAL) ++# define NETDB_INTERNAL (-1) ++#endif ++ + #ifndef INET_ADDRSTRLEN + # define INET_ADDRSTRLEN sizeof(struct sockaddr_in) + #endif +-- +2.7.1 + diff --git a/poky/meta/recipes-connectivity/socat/socat/Makefile.in-fix-for-parallel-build.patch b/poky/meta/recipes-connectivity/socat/socat/Makefile.in-fix-for-parallel-build.patch new file mode 100644 index 000000000..aa4db65a7 --- /dev/null +++ b/poky/meta/recipes-connectivity/socat/socat/Makefile.in-fix-for-parallel-build.patch @@ -0,0 +1,35 @@ +From c6f0080b55679b6e8b5d332d6e05fdcbda1e4064 Mon Sep 17 00:00:00 2001 +From: Robert Yang <liezhi.yang@windriver.com> +Date: Mon, 4 May 2015 00:58:47 -0700 +Subject: [PATCH] Makefile.in: fix for parallel build + +Fixed: +vsnprintf_r.o: file not recognized: File truncated +collect2: error: ld returned 3 exit status +Makefile:122: recipe for target 'filan' failed + +Let filan depend on vsnprintf_r.o and snprinterr.o to fix the issue. + +Upstream-Status: Pending + +Signed-off-by: Robert Yang <liezhi.yang@windriver.com> +--- + Makefile.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile.in b/Makefile.in +index f2a6edb..88b784b 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -118,7 +118,7 @@ PROCAN_OBJS=procan_main.o procan.o procan-cdefs.o hostan.o error.o sycls.o sysut + procan: $(PROCAN_OBJS) + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(PROCAN_OBJS) $(CLIBS) + +-filan: filan_main.o filan.o fdname.o error.o sycls.o sysutils.o utils.o ++filan: filan_main.o filan.o fdname.o error.o sycls.o sysutils.o utils.o vsnprintf_r.o snprinterr.o + $(CC) $(CFLAGS) $(LDFLAGS) -o $@ filan_main.o filan.o fdname.o error.o sycls.o sysutils.o utils.o vsnprintf_r.o snprinterr.o $(CLIBS) + + libxio.a: $(XIOOBJS) $(UTLOBJS) +-- +1.7.9.5 + diff --git a/poky/meta/recipes-connectivity/socat/socat_1.7.3.2.bb b/poky/meta/recipes-connectivity/socat/socat_1.7.3.2.bb new file mode 100644 index 000000000..4dcb7b4ad --- /dev/null +++ b/poky/meta/recipes-connectivity/socat/socat_1.7.3.2.bb @@ -0,0 +1,41 @@ +SUMMARY = "Multipurpose relay for bidirectional data transfer" +DESCRIPTION = "Socat is a relay for bidirectional data \ +transfer between two independent data channels." +HOMEPAGE = "http://www.dest-unreach.org/socat/" + +SECTION = "console/network" + +DEPENDS = "openssl readline" + +LICENSE = "GPL-2.0+-with-OpenSSL-exception" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263 \ + file://README;beginline=257;endline=287;md5=338c05eadd013872abb1d6e198e10a3f" + + +SRC_URI = "http://www.dest-unreach.org/socat/download/socat-${PV}.tar.bz2 \ + file://Makefile.in-fix-for-parallel-build.patch \ + file://0001-define-NETDB_INTERNAL-to-1-if-not-available.patch \ + file://0001-Access-c_ispeed-and-c_ospeed-via-APIs.patch \ +" + +SRC_URI[md5sum] = "607a24c15bd2cb54e9328bfbbd3a1ae9" +SRC_URI[sha256sum] = "e3561f808739383eb10fada1e5d4f26883f0311b34fd0af7837d0c95ef379251" + +inherit autotools + +EXTRA_AUTORECONF += "--exclude=autoheader" + +EXTRA_OECONF += "ac_cv_have_z_modifier=yes \ + ac_cv_header_bsd_libutil_h=no \ +" + +PACKAGECONFIG_class-target ??= "tcp-wrappers" +PACKAGECONFIG ??= "" +PACKAGECONFIG[tcp-wrappers] = "--enable-libwrap,--disable-libwrap,tcp-wrappers" + +do_install_prepend () { + mkdir -p ${D}${bindir} + install -d ${D}${bindir} ${D}${mandir}/man1 +} + +BBCLASSEXTEND = "native nativesdk" |