On 07/19/2011 04:37 PM, Matthew McClintock wrote:
Some distro's don't include these macros in /usr/include/endian.h
so we include them via this patch
Matthew:
Thanks for this patch.
What will happen on distros that do include these macros? Will we get
redefines? I don't see any conditional testing to determine if they
exist already.
Signed-off-by: Matthew McClintock<m...@freescale.com>
---
This fixes builds on my CentOS 5.5 box
.../ldconfig-native-2.12.1/endianess-header.patch | 102 ++++++++++++++++++++
meta/recipes-core/eglibc/ldconfig-native_2.12.1.bb | 5 +-
2 files changed, 105 insertions(+), 2 deletions(-)
create mode 100644
meta/recipes-core/eglibc/ldconfig-native-2.12.1/endianess-header.patch
diff --git
a/meta/recipes-core/eglibc/ldconfig-native-2.12.1/endianess-header.patch
b/meta/recipes-core/eglibc/ldconfig-native-2.12.1/endianess-header.patch
new file mode 100644
index 0000000..3653967
We need to track information about the patch in the patch itself, so can
you please add details here and include a Signed-off-by line.
For information about commits and patches, please see
http://wiki.openembedded.org/index.php/Commit_Patch_Message_Guidelines
Also, this kind of patch actually goes to the
openembedded-c...@openembedded.org email list.
Thanks for the patch submission.
Sau!
--- /dev/null
+++ b/meta/recipes-core/eglibc/ldconfig-native-2.12.1/endianess-header.patch
@@ -0,0 +1,102 @@
+diff -purN ldconfig-native-2.12.1.orig/endian_extra.h
ldconfig-native-2.12.1/endian_extra.h
+--- ldconfig-native-2.12.1.orig/endian_extra.h 1969-12-31 18:00:00.000000000
-0600
++++ ldconfig-native-2.12.1/endian_extra.h 2011-07-19 18:09:14.323048417
-0500
+@@ -0,0 +1,61 @@
++/* Copyright (C) 1992, 1996, 1997, 2000, 2008 Free Software Foundation, Inc.
++ This file is part of the GNU C Library.
++
++ The GNU C Library is free software; you can redistribute it and/or
++ modify it under the terms of the GNU Lesser General Public
++ License as published by the Free Software Foundation; either
++ version 2.1 of the License, or (at your option) any later version.
++
++ The GNU C Library is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
++ Lesser General Public License for more details.
++
++ You should have received a copy of the GNU Lesser General Public
++ License along with the GNU C Library; if not, write to the Free
++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
++ 02111-1307 USA. */
++
++#include<endian.h>
++
++#ifndef _ENDIAN_EXTRA_H
++#define _ENDIAN_EXTRA_H 1
++
++#ifdef __USE_BSD
++/* Conversion interfaces. */
++# include<byteswap.h>
++
++# if __BYTE_ORDER == __LITTLE_ENDIAN
++# define htobe16(x) __bswap_16 (x)
++# define htole16(x) (x)
++# define be16toh(x) __bswap_16 (x)
++# define le16toh(x) (x)
++
++# define htobe32(x) __bswap_32 (x)
++# define htole32(x) (x)
++# define be32toh(x) __bswap_32 (x)
++# define le32toh(x) (x)
++
++# define htobe64(x) __bswap_64 (x)
++# define htole64(x) (x)
++# define be64toh(x) __bswap_64 (x)
++# define le64toh(x) (x)
++# else
++# define htobe16(x) (x)
++# define htole16(x) __bswap_16 (x)
++# define be16toh(x) (x)
++# define le16toh(x) __bswap_16 (x)
++
++# define htobe32(x) (x)
++# define htole32(x) __bswap_32 (x)
++# define be32toh(x) (x)
++# define le32toh(x) __bswap_32 (x)
++
++# define htobe64(x) (x)
++# define htole64(x) __bswap_64 (x)
++# define be64toh(x) (x)
++# define le64toh(x) __bswap_64 (x)
++# endif
++#endif
++
++#endif /* endian_extra.h */
+diff -purN ldconfig-native-2.12.1.orig/cache.c ldconfig-native-2.12.1/cache.c
+--- ldconfig-native-2.12.1.orig/cache.c 2011-07-19 18:21:28.347041301
-0500
++++ ldconfig-native-2.12.1/cache.c 2011-07-19 18:22:54.118048064 -0500
+@@ -39,6 +39,8 @@
+ # define N_(msgid) msgid
+ #define _(msg) msg
+
++#include "endian_extra.h"
++
+ extern int be;
+
+ static uint16_t write16(uint16_t x, int be)
+diff -purN ldconfig-native-2.12.1.orig/readelflib.c
ldconfig-native-2.12.1/readelflib.c
+--- ldconfig-native-2.12.1.orig/readelflib.c 2011-07-19 18:21:28.346041593
-0500
++++ ldconfig-native-2.12.1/readelflib.c 2011-07-19 18:23:05.324059875
-0500
+@@ -25,6 +25,9 @@
+
+ /* check_ptr checks that a pointer is in the mmaped file and doesn't
+ point outside it. */
++
++#include "endian_extra.h"
++
+ #undef check_ptr
+ #define check_ptr(ptr) \
+ do \
+diff -purN ldconfig-native-2.12.1.orig/readlib.c
ldconfig-native-2.12.1/readlib.c
+--- ldconfig-native-2.12.1.orig/readlib.c 2011-07-19 18:21:28.346041593
-0500
++++ ldconfig-native-2.12.1/readlib.c 2011-07-19 18:23:23.877046210 -0500
+@@ -40,6 +40,8 @@
+
+ #include "ldconfig.h"
+
++#include "endian_extra.h"
++
+ #define _(msg) msg
+
+ #define Elf32_CLASS ELFCLASS32
diff --git a/meta/recipes-core/eglibc/ldconfig-native_2.12.1.bb
b/meta/recipes-core/eglibc/ldconfig-native_2.12.1.bb
index bacf9f8..00edb6e 100644
--- a/meta/recipes-core/eglibc/ldconfig-native_2.12.1.bb
+++ b/meta/recipes-core/eglibc/ldconfig-native_2.12.1.bb
@@ -9,9 +9,10 @@ SRC_URI = "file://ldconfig-native-2.12.1.tar.bz2 \
file://ldconfig_aux-cache_path_fix.patch \
file://32and64bit.patch \
file://endian-ness_handling.patch \
- file://flag_fix.patch "
+ file://flag_fix.patch \
+ file://endianess-header.patch"
-PR = "r0"
+PR = "r1"
inherit native
_______________________________________________
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto