Don't use fork() on noMMU platforms [Gustavo: update patch for 1.0.28] Signed-off-by: Thomas Petazzoni Index: alsa-lib-1.0.26/configure.ac =================================================================== --- alsa-lib-1.0.26.orig/configure.ac 2012-09-06 10:55:14.000000000 +0200 +++ alsa-lib-1.0.26/configure.ac 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);