diff options
author | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2013-03-09 08:21:27 +0000 |
---|---|---|
committer | Peter Korsgaard <jacmet@sunsite.dk> | 2013-03-09 21:08:53 +0100 |
commit | d4b074554faa9451630cde47eb8378a8b0803252 (patch) | |
tree | 4dcc1642b1c06a627325f1477f540bd1aa23c15c /package/alsa-lib/alsa-lib-no-mmu.patch | |
parent | 3bae624d5fd924f34dfccb6c020f599b189ca8f9 (diff) | |
download | buildroot-novena-d4b074554faa9451630cde47eb8378a8b0803252.tar.gz buildroot-novena-d4b074554faa9451630cde47eb8378a8b0803252.zip |
alsa-lib: fix noMMU build
Add a patch to use vfork() instead of fork().
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'package/alsa-lib/alsa-lib-no-mmu.patch')
-rw-r--r-- | package/alsa-lib/alsa-lib-no-mmu.patch | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/package/alsa-lib/alsa-lib-no-mmu.patch b/package/alsa-lib/alsa-lib-no-mmu.patch new file mode 100644 index 000000000..317676af4 --- /dev/null +++ b/package/alsa-lib/alsa-lib-no-mmu.patch @@ -0,0 +1,44 @@ +Don't use fork() on noMMU platforms + +Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> + +Index: alsa-lib-1.0.26/configure.in +=================================================================== +--- alsa-lib-1.0.26.orig/configure.in 2012-09-06 10:55:14.000000000 +0200 ++++ alsa-lib-1.0.26/configure.in 2013-03-09 16:22:08.000000000 +0100 +@@ -66,6 +66,8 @@ + AM_CONDITIONAL(ALSA_HSEARCH_R, [test "x$HAVE_HSEARCH_R" != xyes]) + AC_CHECK_FUNCS([uselocale]) + ++AC_CHECK_FUNC([fork]) ++ + SAVE_LIBRARY_VERSION + AC_SUBST(LIBTOOL_VERSION_INFO) + +Index: alsa-lib-1.0.26/src/pcm/pcm_direct.c +=================================================================== +--- alsa-lib-1.0.26.orig/src/pcm/pcm_direct.c 2012-09-06 10:55:14.000000000 +0200 ++++ alsa-lib-1.0.26/src/pcm/pcm_direct.c 2013-03-09 16:22:51.000000000 +0100 +@@ -424,13 +424,21 @@ + close(dmix->server_fd); + return ret; + } +- ++ ++#ifdef HAVE_FORK + ret = fork(); ++#else ++ ret = vfork(); ++#endif + if (ret < 0) { + close(dmix->server_fd); + return ret; + } else if (ret == 0) { ++#ifdef HAVE_FORK + ret = fork(); ++#else ++ ret = vfork(); ++#endif + if (ret == 0) + server_job(dmix); + _exit(EXIT_SUCCESS); |