diff options
author | Jean-Baptiste Queru <jbq@google.com> | 2009-11-12 18:45:25 -0800 |
---|---|---|
committer | Jean-Baptiste Queru <jbq@google.com> | 2009-11-12 18:45:25 -0800 |
commit | f955d1799555c6db796756856982e3138d1cf4d1 (patch) | |
tree | 85226b322c93fd12fa78fa6d78166afba5886656 | |
parent | 441f72d43a9b550baa779fc82f70816da5f74f0e (diff) | |
download | android_external_elfutils-f955d1799555c6db796756856982e3138d1cf4d1.tar.gz android_external_elfutils-f955d1799555c6db796756856982e3138d1cf4d1.tar.bz2 android_external_elfutils-f955d1799555c6db796756856982e3138d1cf4d1.zip |
eclair snapshot
-rwxr-xr-x | Android.mk | 6 | ||||
-rw-r--r-- | config-compat-freebsd.h | 73 | ||||
-rw-r--r-- | libelf/elf32_checksum.c | 1 |
3 files changed, 79 insertions, 1 deletions
@@ -125,6 +125,9 @@ endif ifeq ($(HOST_OS),windows) LOCAL_CFLAGS +=-include $(LOCAL_PATH)/config-compat-cygwin.h endif +ifeq ($(HOST_OS),freebsd) +LOCAL_CFLAGS +=-include $(LOCAL_PATH)/config-compat-freebsd.h +endif LOCAL_MODULE:= libelf @@ -184,6 +187,9 @@ endif ifeq ($(HOST_OS),windows) LOCAL_CFLAGS +=-include $(LOCAL_PATH)/config-compat-cygwin.h endif +ifeq ($(HOST_OS),freebsd) +LOCAL_CFLAGS +=-include $(LOCAL_PATH)/config-compat-freebsd.h +endif LOCAL_MODULE:=libebl diff --git a/config-compat-freebsd.h b/config-compat-freebsd.h new file mode 100644 index 00000000..092f9f0a --- /dev/null +++ b/config-compat-freebsd.h @@ -0,0 +1,73 @@ +#ifndef CONFIG_COMPAT_COMPAT_H +#define CONFIG_COMPAT_COMPAT_H + +#define gettext +#define _gettext +#define _dgettext + +#include <sys/types.h> +#include <sys/endian.h> + +typedef off_t __off64_t; + +#define __LITTLE_ENDIAN (1234) +#define __BIG_ENDIAN (4321) +#define __BYTE_ORDER __LITTLE_ENDIAN + +#include <stddef.h> +#include <locale.h> //LC_MESSAGES +#include <assert.h> +#include <stdlib.h> +#include <stdarg.h> +#include <string.h> +#include <errno.h> +#include <stdio.h> + +#define dgettext(domainname, msgid) dcgettext (domainname, msgid, LC_MESSAGES) + +static inline void __attribute__((noreturn)) error(int status, int errnum, const char *fmt, ...) +{ + va_list lst; + va_start(lst, fmt); + vfprintf(stderr, fmt, lst); + fprintf(stderr, "error %d: %s\n", errnum, strerror(errno)); + va_end(lst); + exit(status); +} + +static inline char *dcgettext (char *__domainname, char *__msgid, int __category) +{ + error(EXIT_FAILURE, 0, "%s not implemented!", __FUNCTION__); + return NULL; +} + +static inline size_t strnlen (const char *__string, size_t __maxlen) +{ + int len = 0; + while (__maxlen-- && *__string++) + len++; + return len; +} + +static inline void *mempcpy (void * __dest, const void * __src, size_t __n) +{ + memcpy(__dest, __src, __n); + return ((char *)__dest) + __n; +} + +#define __mempcpy mempcpy + +static inline wchar_t *wmempcpy (wchar_t *__restrict __s1, __const wchar_t *__restrict __s2, size_t __n) +{ + error(EXIT_FAILURE, 0, "%s not implemented!", __FUNCTION__); + return NULL; +} + + +#define bswap_16 bswap16 +#define bswap_32 bswap32 +#define bswap_64 bswap64 + +extern int ___libelf_fill_byte; + +#endif /*CONFIG_COMPAT_DARWIN_H*/ diff --git a/libelf/elf32_checksum.c b/libelf/elf32_checksum.c index 0395a940..066da041 100644 --- a/libelf/elf32_checksum.c +++ b/libelf/elf32_checksum.c @@ -20,7 +20,6 @@ #endif #include <assert.h> -//#include <endian.h> #include <stdbool.h> #include <stddef.h> #include <string.h> |