Dear Frederik,
Am Dienstag, den 21.09.2010, 07:17 +0200 schrieb Frederik Sdun:
[…]
> fso is quit untested with none GNU libcs and we partly depend on it. I
> wrote a short patch which add a --enable-no-gnuism switch for configure,
> but want to talk to Michael, before commiting it. Could you test it and
> report more gnuism in our code?
thank you for your patch. It partly reduced the problem. It now chokes
on `eventfd.h`. Unfortunately I do not know anything about if there are
any non glibc equivalents.
[…]
| kobjectnotifier.c:188: warning: passing argument 2 of 'bind' from
incompatible pointer type
|
/oe/build-minimal-uclibc/minimal-uclibc-dev/sysroots/armv7a-oe-linux-uclibceabi/usr/include/sys/socket.h:115:
note: expected 'const struct sockaddr *' but argument is of type 'struct
sockaddr_nl *'
| CC libinitexit.lo
| CC logger.lo
| CC netlinknotifier.lo
| netlinknotifier.c: In function
'fso_framework_base_netlink_notifier_construct':
| netlinknotifier.c:206: warning: passing argument 4 of
'g_hash_table_new_full' from incompatible pointer type
|
/oe/build-minimal-uclibc/minimal-uclibc-dev/sysroots/armv7a-oe-linux-uclibceabi/usr/include/glib-2.0/glib/ghash.h:62:
note: expected 'GDestroyNotify' but argument is of type 'void (*)(struct GList
*)'
| netlinknotifier.c: In function '_lambda0_':
| netlinknotifier.c:260: warning: assignment discards qualifiers from
pointer target type
| netlinknotifier.c: In function
'fso_framework_base_netlink_notifier_handleNetlinkMessage':
| netlinknotifier.c:296: warning: assignment makes pointer from integer
without a cast
| netlinknotifier.c: In function
'fso_framework_base_netlink_notifier_handleMessage':
| netlinknotifier.c:344: warning: cast to pointer from integer of
different size
| netlinknotifier.c: In function
'_fso_framework_base_netlink_notifier_addMatch':
| netlinknotifier.c:366: warning: cast to pointer from integer of
different size
| netlinknotifier.c:372: warning: cast to pointer from integer of
different size
| CC netlinkutils.lo
| CC overlay.lo
| CC process.lo
| CC smartkeyfile.lo
| CC syncasync.lo
| CC threading.lo
| threading.c: In function
'fso_framework_threading_callDelegateOnMainThread':
| threading.c:451: warning: passing argument 4 of 'g_idle_add_full'
from incompatible pointer type
|
/oe/build-minimal-uclibc/minimal-uclibc-dev/sysroots/armv7a-oe-linux-uclibceabi/usr/include/glib-2.0/glib/gmain.h:291:
note: expected 'GDestroyNotify' but argument is of type 'void (*)(struct
Block3Data *)'
| threading.c:455: warning: passing argument 4 of 'g_idle_add_full'
from incompatible pointer type
|
/oe/build-minimal-uclibc/minimal-uclibc-dev/sysroots/armv7a-oe-linux-uclibceabi/usr/include/glib-2.0/glib/gmain.h:291:
note: expected 'GDestroyNotify' but argument is of type 'void (*)(struct
Block3Data *)'
| threading.c:458: warning: passing argument 4 of 'g_idle_add_full'
from incompatible pointer type
|
/oe/build-minimal-uclibc/minimal-uclibc-dev/sysroots/armv7a-oe-linux-uclibceabi/usr/include/glib-2.0/glib/gmain.h:291:
note: expected 'GDestroyNotify' but argument is of type 'void (*)(struct
Block3Data *)'
| CC types.lo
| CC utilities.lo
| utilities.c:35:25: error: sys/eventfd.h: No such file or directory
| make[3]: *** [utilities.lo] Error 1
| make[3]: Leaving directory
`/oe/build-minimal-uclibc/minimal-uclibc-dev/work/armv7a-oe-linux-uclibceabi/libfsobasics-1_0.9.10+gitr0+2f8221fea7c667d2ee46ff6b8dace2d53b8860cc-r2.0/git/libfsobasics/fsobasics'
| make[2]: *** [all] Error 2
| make[2]: Leaving directory
`/oe/build-minimal-uclibc/minimal-uclibc-dev/work/armv7a-oe-linux-uclibceabi/libfsobasics-1_0.9.10+gitr0+2f8221fea7c667d2ee46ff6b8dace2d53b8860cc-r2.0/git/libfsobasics/fsobasics'
| make[1]: *** [all-recursive] Error 1
| make[1]: Leaving directory
`/oe/build-minimal-uclibc/minimal-uclibc-dev/work/armv7a-oe-linux-uclibceabi/libfsobasics-1_0.9.10+gitr0+2f8221fea7c667d2ee46ff6b8dace2d53b8860cc-r2.0/git/libfsobasics'
| make: *** [all] Error 2
| FATAL: oe_runmake failed
| ERROR: Function do_compile failed
I am attaching the patch file to include your patch into OE easily for testing.
Thanks,
Paul
From 6b7dc740f29e5f2db5b7b971fb403a8d29cb53a1 Mon Sep 17 00:00:00 2001 From: Paul Menzel <[email protected]> Date: Tue, 21 Sep 2010 10:58:20 +0200 Subject: [PATCH] libfsobascis_git.bb: Add patch to compile with uClibc. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit uClibc does not provide `execinfo.h`, which is a “GNUism” [1]. Applying this patch from Frederik Sdun [1] and passing `--enable-no-gnuism` to configure when compiling with uClibc lets `libfsobasics_git.bb` build with uClibc. I just compile tested this and it solves the `execinfo.h` error. Now it fails with `eventfd.h`. [1] http://lists.linuxtogo.org/pipermail/openembedded-devel/2010-September/024411.html Signed-off-by: Paul Menzel <[email protected]> --- recipes/freesmartphone/libfsobasics/nognuism.patch | 54 ++++++++++++++++++++ recipes/freesmartphone/libfsobasics_git.bb | 6 ++- 2 files changed, 59 insertions(+), 1 deletions(-) create mode 100644 recipes/freesmartphone/libfsobasics/nognuism.patch diff --git a/recipes/freesmartphone/libfsobasics/nognuism.patch b/recipes/freesmartphone/libfsobasics/nognuism.patch new file mode 100644 index 0000000..455b76e --- /dev/null +++ b/recipes/freesmartphone/libfsobasics/nognuism.patch @@ -0,0 +1,54 @@ +diff --git a/libfsobasics/configure.ac b/libfsobasics/configure.ac +index ba06907..d9d4172 100644 +--- a/libfsobasics/configure.ac ++++ b/libfsobasics/configure.ac +@@ -48,6 +48,12 @@ AC_ARG_ENABLE(debug, + [debug="no"]) + AM_CONDITIONAL( [WANT_DEBUG], [test x"$debug" = x"yes"]) + ++AC_ARG_ENABLE(no_gnuism, ++ [ --enable-no-gnuism Enable build for none GNU-libc (default=disabled)], ++ [no_gnuism=$enableval], ++ [no_gnuism="no"]) ++AM_CONDITIONAL( [WANT_NO_GNUISM], [test x"$no_gnuism" = x"yes"]) ++ + # git version + GITV=`cat ../.git/refs/heads/master || echo "unknown"` + AC_DEFINE_UNQUOTED([PACKAGE_GITV], ["${GITV}"], [git version]) +diff --git a/libfsobasics/fsobasics/Makefile.am b/libfsobasics/fsobasics/Makefile.am +index 66a7cd7..0fc534a 100644 +--- a/libfsobasics/fsobasics/Makefile.am ++++ b/libfsobasics/fsobasics/Makefile.am +@@ -23,6 +23,10 @@ VALAC_ARGS += -g -D DEBUG + AM_CFLAGS += -ggdb -O0 + endif + ++if WANT_NO_GNUISM ++VALAC_ARGS += -D NO_GNUISM ++endif ++ + BUILT_SOURCES = fsobasics.vala.stamp + + lib_LTLIBRARIES = \ +diff --git a/libfsobasics/fsobasics/utilities.vala b/libfsobasics/fsobasics/utilities.vala +index 22d107d..6ed5fc8 100644 +--- a/libfsobasics/fsobasics/utilities.vala ++++ b/libfsobasics/fsobasics/utilities.vala +@@ -420,6 +420,9 @@ namespace FsoFramework { namespace Utility { + public string[] createBacktrace() + { + string[] result = new string[] { }; ++#if NO_GNUISM ++ result += "Backtrace not support for none GNU libcs"; ++#else + void* buffer = malloc0( BACKTRACE_SIZE * sizeof(string) ); + var size = Linux.backtrace( buffer, BACKTRACE_SIZE ); + string[] symbols = Linux.backtrace_symbols( buffer, size ); +@@ -429,6 +432,7 @@ namespace FsoFramework { namespace Utility { + result += "%s\n".printf( symbols[i] ); + } + result += "--- END BACKTRACE ---\n"; ++#endif + return result; + } + diff --git a/recipes/freesmartphone/libfsobasics_git.bb b/recipes/freesmartphone/libfsobasics_git.bb index 42b2ed7..018e0d2 100644 --- a/recipes/freesmartphone/libfsobasics_git.bb +++ b/recipes/freesmartphone/libfsobasics_git.bb @@ -5,4 +5,8 @@ DEPENDS += "libnl2" SRCREV = "${FSO_CORNUCOPIA_SRCREV}" PV = "0.9.10+gitr${SRCPV}" PE = "1" -PR = "${INC_PR}.0" +PR = "${INC_PR}.1" + +SRC_URI += "file://nognuism.patch;striplevel=2" + +EXTRA_OECONF_append_uclinux-uclibc = " --enable-no-gnuism" -- 1.7.1
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Openembedded-devel mailing list [email protected] http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
