Patchwork Handle undefined O_CLOEXEC

login
register
mail settings
Submitter Radu Moisan
Date July 23, 2012, 1:31 p.m.
Message ID <1343050270-3641-1-git-send-email-radu.moisan@intel.com>
Download mbox | patch
Permalink /patch/32847/
State New
Headers show

Comments

Radu Moisan - July 23, 2012, 1:31 p.m.
Close-on-exec seems to be unsuported on some architectures like CentOS 5.8
and thus causing some packages to fail to build successfully. Future kernel
version will probably fix this, but for now this patch works around this
problem.

Signed-off-by: Radu Moisan <radu.moisan@intel.com>
---
 meta/recipes-kernel/kmod/kmod.inc                  |    3 +-
 .../Handle-unsupported-close-on-exec-flag.patch    |   60 ++++++++++++++++++++
 2 files changed, 62 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-kernel/kmod/kmod/Handle-unsupported-close-on-exec-flag.patch
Koen Kooi - July 23, 2012, 1:49 p.m.
Please update the commit message to adhere to the commit policy. At least mention the recipe name in the first line.

Op 23 jul. 2012, om 15:31 heeft Radu Moisan het volgende geschreven:

> Close-on-exec seems to be unsuported on some architectures like CentOS 5.8
> and thus causing some packages to fail to build successfully. Future kernel
> version will probably fix this, but for now this patch works around this
> problem.
> 
> Signed-off-by: Radu Moisan <radu.moisan@intel.com>
> ---
> meta/recipes-kernel/kmod/kmod.inc                  |    3 +-
> .../Handle-unsupported-close-on-exec-flag.patch    |   60 ++++++++++++++++++++
> 2 files changed, 62 insertions(+), 1 deletion(-)
> create mode 100644 meta/recipes-kernel/kmod/kmod/Handle-unsupported-close-on-exec-flag.patch
> 
> diff --git a/meta/recipes-kernel/kmod/kmod.inc b/meta/recipes-kernel/kmod/kmod.inc
> index adba4d4..c992ad8 100644
> --- a/meta/recipes-kernel/kmod/kmod.inc
> +++ b/meta/recipes-kernel/kmod/kmod.inc
> @@ -8,7 +8,7 @@ LICENSE = "GPL-2.0+ & LGPL-2.1+"
> LICENSE_libkmod = "LGPL-2.1+"
> SECTION = "base"
> PV = "8"
> -INC_PR = "r1"
> +INC_PR = "r2"
> 
> DEPENDS += "pkgconfig-native"
> 
> @@ -20,6 +20,7 @@ inherit autotools gtk-doc
> SRC_URI = "git://git.profusion.mobi/kmod.git;protocol=git;branch=master \
>            file://depmod-search.conf \
>            file://0001-man-disable-man-page-generation-because-we-don-t-hav.patch \
> +           file://Handle-unsupported-close-on-exec-flag.patch \
>           "
> 
> SRCREV = "819f79a24d58e3c8429f1631df2f8f85a2f95d4a"
> diff --git a/meta/recipes-kernel/kmod/kmod/Handle-unsupported-close-on-exec-flag.patch b/meta/recipes-kernel/kmod/kmod/Handle-unsupported-close-on-exec-flag.patch
> new file mode 100644
> index 0000000..f0820d9
> --- /dev/null
> +++ b/meta/recipes-kernel/kmod/kmod/Handle-unsupported-close-on-exec-flag.patch
> @@ -0,0 +1,60 @@
> +Index: git/libkmod/libkmod-config.c
> +===================================================================
> +--- git.orig/libkmod/libkmod-config.c	2012-07-23 16:13:44.000000000 +0300
> ++++ git/libkmod/libkmod-config.c	2012-07-23 16:15:53.000000000 +0300
> +@@ -33,6 +33,10 @@
> + #include "libkmod.h"
> + #include "libkmod-private.h"
> + 
> ++#ifndef O_CLOEXEC
> ++#define O_CLOEXEC 0
> ++#endif
> ++
> + struct kmod_alias {
> + 	char *name;
> + 	char modname[];
> +Index: git/libkmod/libkmod-file.c
> +===================================================================
> +--- git.orig/libkmod/libkmod-file.c	2012-07-23 16:13:44.000000000 +0300
> ++++ git/libkmod/libkmod-file.c	2012-07-23 16:15:57.000000000 +0300
> +@@ -31,6 +31,10 @@
> + #include "libkmod.h"
> + #include "libkmod-private.h"
> + 
> ++#ifndef O_CLOEXEC
> ++#define O_CLOEXEC 0
> ++#endif
> ++
> + #ifdef ENABLE_XZ
> + #include <lzma.h>
> + #endif
> +Index: git/libkmod/libkmod-index.c
> +===================================================================
> +--- git.orig/libkmod/libkmod-index.c	2012-07-23 16:13:44.000000000 +0300
> ++++ git/libkmod/libkmod-index.c	2012-07-23 16:16:00.000000000 +0300
> +@@ -31,6 +31,10 @@
> + #include "libkmod-index.h"
> + #include "macro.h"
> + 
> ++#ifndef O_CLOEXEC
> ++#define O_CLOEXEC 0
> ++#endif
> ++
> + /* index.c: module index file shared functions for modprobe and depmod */
> + 
> + #define INDEX_CHILDMAX 128
> +Index: git/libkmod/libkmod-module.c
> +===================================================================
> +--- git.orig/libkmod/libkmod-module.c	2012-07-23 16:13:44.000000000 +0300
> ++++ git/libkmod/libkmod-module.c	2012-07-23 16:16:04.000000000 +0300
> +@@ -40,6 +40,10 @@
> + #include "libkmod.h"
> + #include "libkmod-private.h"
> + 
> ++#ifndef O_CLOEXEC
> ++#define O_CLOEXEC 0
> ++#endif
> ++
> + /**
> +  * SECTION:libkmod-module
> +  * @short_description: operate on kernel modules
> -- 
> 1.7.9.5
> 
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Patch

diff --git a/meta/recipes-kernel/kmod/kmod.inc b/meta/recipes-kernel/kmod/kmod.inc
index adba4d4..c992ad8 100644
--- a/meta/recipes-kernel/kmod/kmod.inc
+++ b/meta/recipes-kernel/kmod/kmod.inc
@@ -8,7 +8,7 @@  LICENSE = "GPL-2.0+ & LGPL-2.1+"
 LICENSE_libkmod = "LGPL-2.1+"
 SECTION = "base"
 PV = "8"
-INC_PR = "r1"
+INC_PR = "r2"
 
 DEPENDS += "pkgconfig-native"
 
@@ -20,6 +20,7 @@  inherit autotools gtk-doc
 SRC_URI = "git://git.profusion.mobi/kmod.git;protocol=git;branch=master \
            file://depmod-search.conf \
            file://0001-man-disable-man-page-generation-because-we-don-t-hav.patch \
+           file://Handle-unsupported-close-on-exec-flag.patch \
           "
 
 SRCREV = "819f79a24d58e3c8429f1631df2f8f85a2f95d4a"
diff --git a/meta/recipes-kernel/kmod/kmod/Handle-unsupported-close-on-exec-flag.patch b/meta/recipes-kernel/kmod/kmod/Handle-unsupported-close-on-exec-flag.patch
new file mode 100644
index 0000000..f0820d9
--- /dev/null
+++ b/meta/recipes-kernel/kmod/kmod/Handle-unsupported-close-on-exec-flag.patch
@@ -0,0 +1,60 @@ 
+Index: git/libkmod/libkmod-config.c
+===================================================================
+--- git.orig/libkmod/libkmod-config.c	2012-07-23 16:13:44.000000000 +0300
++++ git/libkmod/libkmod-config.c	2012-07-23 16:15:53.000000000 +0300
+@@ -33,6 +33,10 @@
+ #include "libkmod.h"
+ #include "libkmod-private.h"
+ 
++#ifndef O_CLOEXEC
++#define O_CLOEXEC 0
++#endif
++
+ struct kmod_alias {
+ 	char *name;
+ 	char modname[];
+Index: git/libkmod/libkmod-file.c
+===================================================================
+--- git.orig/libkmod/libkmod-file.c	2012-07-23 16:13:44.000000000 +0300
++++ git/libkmod/libkmod-file.c	2012-07-23 16:15:57.000000000 +0300
+@@ -31,6 +31,10 @@
+ #include "libkmod.h"
+ #include "libkmod-private.h"
+ 
++#ifndef O_CLOEXEC
++#define O_CLOEXEC 0
++#endif
++
+ #ifdef ENABLE_XZ
+ #include <lzma.h>
+ #endif
+Index: git/libkmod/libkmod-index.c
+===================================================================
+--- git.orig/libkmod/libkmod-index.c	2012-07-23 16:13:44.000000000 +0300
++++ git/libkmod/libkmod-index.c	2012-07-23 16:16:00.000000000 +0300
+@@ -31,6 +31,10 @@
+ #include "libkmod-index.h"
+ #include "macro.h"
+ 
++#ifndef O_CLOEXEC
++#define O_CLOEXEC 0
++#endif
++
+ /* index.c: module index file shared functions for modprobe and depmod */
+ 
+ #define INDEX_CHILDMAX 128
+Index: git/libkmod/libkmod-module.c
+===================================================================
+--- git.orig/libkmod/libkmod-module.c	2012-07-23 16:13:44.000000000 +0300
++++ git/libkmod/libkmod-module.c	2012-07-23 16:16:04.000000000 +0300
+@@ -40,6 +40,10 @@
+ #include "libkmod.h"
+ #include "libkmod-private.h"
+ 
++#ifndef O_CLOEXEC
++#define O_CLOEXEC 0
++#endif
++
+ /**
+  * SECTION:libkmod-module
+  * @short_description: operate on kernel modules