Kyle McMartin wrote:
On Fri, Jun 12, 2009 at 01:48:15PM +0200, Daniel Lezcano wrote:
In file included from /usr/include/sys/capability.h:23,
from myinclude.c:1:
/usr/include/stdint.h:41: error: conflicting types for ?int64_t?
/usr/include/linux/types.h:98: note: previous declaration of ?int64_t?
was here
/usr/include/stdint.h:56: error: conflicting types for ?uint64_t?
/usr/include/linux/types.h:96: note: previous declaration of ?uint64_t?
was here
make: *** [myinclude] Error 1
<sys/capability.h> is /still/ broken. there was a bug filed against the
kernel, but the problem is actually the userspace header, which 'cheats'
the preprocessor rather badly:
#include <linux/types.h>
#include <stdint.h>
/*
* Make sure we can be included from userland by preventing
* capability.h from including other kernel headers
*/
#define _LINUX_TYPES_H
#define _LINUX_FS_H
#define __LINUX_COMPILER_H
#define __user
typedef unsigned int __u32;
typedef __u32 __le32;
#include <linux/capability.h>
Grumf ! that's annoying :(
Thank you very much for your quick answer ! :)
As I only need the CAP_SYS_BOOT, I will define it manually in the source
code and will remove the include, that's ugly but anyway... :/
As I understood, the fix in the kernel conflicts with the workaround in
userspace, right ?
I was wondering if I should notify this to the maintainer of the libcap
or is it already known ?
Thanks
-- Daniel
--
fedora-devel-list mailing list
fedora-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/fedora-devel-list