Hi,

Le 29/07/2010 22:21, RTovo DSP a écrit :
I'm trying to build angstrom for mx31ads but it fails when trying to build
alsamixer by not finding libtinfo:

you can try the attached patch (work in progress) which should compile (tested on i.MX35 which is also an armv6).

Eric
diff --git a/recipes/alsa/alsa-plugins_1.0.23.bb b/recipes/alsa/alsa-plugins_1.0.23.bb
new file mode 100644
index 0000000..4d0da01
--- /dev/null
+++ b/recipes/alsa/alsa-plugins_1.0.23.bb
@@ -0,0 +1,25 @@
+DESCRIPTION = "ALSA Plugins"
+HOMEPAGE = "http://www.alsa-project.org";
+SECTION = "multimedia/alsa/plugins"
+LICENSE = "GPL"
+DEPENDS = "alsa-lib pulseaudio ffmpeg"
+PR = "r1"
+
+SRC_URI = "ftp://ftp.alsa-project.org/pub/plugins/alsa-plugins-${PV}.tar.bz2";
+
+inherit autotools
+
+CFLAGS += "-lavutil"
+
+PACKAGES_DYNAMIC = "libasound-module*"
+
+python populate_packages_prepend() {
+        plugindir = bb.data.expand('${libdir}/alsa-lib/', d)
+        do_split_packages(d, plugindir, '^libasound_module_(.*)\.so$', 'libasound-module-%s', 'Alsa plugin for %s', extra_depends='' )
+}
+
+FILES_${PN}-dev += "${libdir}/alsa-lib/libasound*.a ${libdir}/alsa-lib/libasound*.la"
+FILES_${PN}-dbg += "${libdir}/alsa-lib/.debug"
+
+SRC_URI[md5sum] = "819c4f21e3e913eacefd32993a8fbed7"
+SRC_URI[sha256sum] = "210ceedcb84bf3030e9f362d55b734312632ce72e348bd758536ec62a37aac97"
diff --git a/recipes/alsa/alsa-utils_1.0.23.bb b/recipes/alsa/alsa-utils_1.0.23.bb
new file mode 100644
index 0000000..ba9dbe5
--- /dev/null
+++ b/recipes/alsa/alsa-utils_1.0.23.bb
@@ -0,0 +1,74 @@
+DESCRIPTION = "ALSA Utilities"
+HOMEPAGE = "http://www.alsa-project.org";
+SECTION = "console/utils"
+LICENSE = "GPLv2"
+DEPENDS = "alsa-lib ncurses"
+PR = "r2"
+
+SRC_URI = "ftp://ftp.alsa-project.org/pub/utils/alsa-utils-${PV}.tar.bz2 \
+	  file://configure_1.0.23.diff "
+	
+
+inherit gettext autotools
+
+# This are all packages that we need to make. Also, the now empty alsa-utils
+# ipk depend on them.
+
+EXTRA_OECONF = "--disable-xmlto"
+
+#CURSESLIBDIR=""
+#do_configure_prepend() {
+#	sed -i -e 's:panel.h menu.h:menu.h:g' configure.in
+#}
+
+do_configure_append() {
+	for i in $(find ${S} -name Makefile) ; do
+		sed -i -e s:/usr/include/ncurses:${STAGING_INCDIR}/ncurses:g $i
+		sed -i -e 's:-L/usr/lib -lncurses:-L${STAGING_LIBDIR} -lncurses -lpanel -lmenu -lform:g' $i
+	done
+}
+
+PACKAGES += "\
+             alsa-utils-alsamixer \
+             alsa-utils-midi \
+             alsa-utils-aplay \
+             alsa-utils-amixer \
+             alsa-utils-aconnect \
+             alsa-utils-iecset \
+             alsa-utils-speakertest \
+             alsa-utils-aseqnet \
+             alsa-utils-aseqdump \
+             alsa-utils-alsaconf \
+             alsa-utils-alsactl "
+
+# We omit alsaconf, because
+# a) this is a bash script
+# b) it creates config files not suitable for OE-based distros
+
+FILES_${PN} = ""
+FILES_alsa-utils-aplay       = "${bindir}/aplay ${bindir}/arecord"
+FILES_alsa-utils-amixer      = "${bindir}/amixer"
+FILES_alsa-utils-alsamixer   = "${bindir}/alsamixer"
+FILES_alsa-utils-speakertest = "${bindir}/speaker-test ${datadir}/sounds/alsa/ ${datadir}/alsa/"
+FILES_alsa-utils-midi        = "${bindir}/aplaymidi ${bindir}/arecordmidi ${bindir}/amidi"
+FILES_alsa-utils-aconnect    = "${bindir}/aconnect"
+FILES_alsa-utils-aseqnet     = "${bindir}/aseqnet"
+FILES_alsa-utils-iecset      = "${bindir}/iecset"
+FILES_alsa-utils-alsactl     = "${sbindir}/alsactl"
+FILES_alsa-utils-aseqdump    = "${bindir}/aseqdump"
+FILES_alsa-utils-alsaconf    = "${sbindir}/alsaconf"
+
+DESCRIPTION_alsa-utils-aplay        = "play (and record) sound files via ALSA"
+DESCRIPTION_alsa-utils-amixer       = "command-line based control for ALSA mixer and settings"
+DESCRIPTION_alsa-utils-alsamixer    = "ncurses based control for ALSA mixer and settings"
+DESCRIPTION_alsa-utils-speakertest  = "ALSA surround speaker test utility"
+DESCRIPTION_alsa-utils-midi         = "miscalleanous MIDI utilities for ALSA"
+DESCRIPTION_alsa-utils-aconnect     = "ALSA sequencer connection manager"
+DESCRIPTION_alsa-utils-aseqnet      = "network client/server on ALSA sequencer"
+DESCRIPTION_alsa-utils-alsactl      = "saves/restores ALSA-settings in /etc/asound.state"
+DESCRIPTION_alsa-utils-alsaconf     = "a bash script that creates ALSA configuration files"
+
+ALLOW_EMPTY_alsa-utils = "1"
+
+SRC_URI[md5sum] = "cb0cf46029ac9549cf3a31bff6a4f4e1"
+SRC_URI[sha256sum] = "b7d05e915e25f8540ad151c6dd558cf0fc1e9bb0ee23052d531c983666a1f7b0"
diff --git a/recipes/alsa/files/configure_1.0.23.diff b/recipes/alsa/files/configure_1.0.23.diff
new file mode 100644
index 0000000..356a6b6
--- /dev/null
+++ b/recipes/alsa/files/configure_1.0.23.diff
@@ -0,0 +1,128 @@
+--- a/configure.in.orig	2010-06-28 17:58:46.000000000 +0200
++++ b/configure.in	2010-06-28 18:00:36.000000000 +0200
+@@ -1,6 +1,6 @@
+ dnl Process this file with autoconf to produce a configure script.
+ AC_PREREQ(2.59)
+-AC_INIT(aplay/aplay.c)
++AC_INIT(aplay/aplay.c)
+ AC_PREFIX_DEFAULT(/usr)
+ AM_INIT_AUTOMAKE(alsa-utils, 1.0.23)
+ 
+@@ -105,32 +105,23 @@
+     [  --with-curses libname   Specify the curses library to use (default=auto)],
+     curseslib="$withval",
+     curseslib="auto")
+-  CURSESLIBDIR=""
+-  NCURSESLIBSUFFIX=""
+-  CURSES_NLS="no"
+-  if test "$curseslib" = "ncursesw" -o \( "$curseslib" = "auto" -a "$USE_NLS" = "yes" \); then
++  if test "$curseslib" = "ncursesw"; then
+     AC_CHECK_PROG([ncursesw5_config], [ncursesw5-config], [yes])
+     if test "$ncursesw5_config" = "yes"; then
+       CURSESINC="<ncurses.h>"
+       CURSESLIB=`ncursesw5-config --libs`
+-      CURSESLIBDIR=`ncursesw5-config --libdir`
+       CURSES_CFLAGS=`ncursesw5-config --cflags`
+       curseslib="ncursesw"
+     else
+       AC_CHECK_LIB(ncursesw, initscr, 
+                  [ CURSESINC='<ncurses.h>'; CURSESLIB='-lncursesw'; curseslib="ncursesw"])
+     fi
+-    if test -n "$CURSESINC"; then
+-      NCURSESLIBSUFFIX="w"
+-      CURSES_NLS="yes"
+-    fi
+   fi
+   if test "$curseslib" = "ncurses" -o "$curseslib" = "auto"; then
+     AC_CHECK_PROG([ncurses5_config], [ncurses5-config], [yes])
+     if test "$ncurses5_config" = "yes"; then
+       CURSESINC="<ncurses.h>"
+       CURSESLIB=`ncurses5-config --libs`
+-      CURSESLIBDIR=`ncurses5-config --libdir`
+       CURSES_CFLAGS=`ncurses5-config --cflags`
+       curseslib="ncurses"
+     else
+@@ -145,83 +136,6 @@
+   if test -z "$CURSESINC"; then
+      AC_MSG_ERROR(this packages requires a curses library)
+   fi
+-
+-  AC_MSG_CHECKING([for curses library])
+-  AC_MSG_RESULT([$curseslib])
+-  AC_MSG_CHECKING([for curses header name])
+-  AC_MSG_RESULT([$CURSESINC])
+-  AC_MSG_CHECKING([for curses compiler flags])
+-  AC_MSG_RESULT([$CURSES_CFLAGS])
+-
+-  dnl CURSESLIBS might have the library path at the beginning.  If so, we cut it
+-  dnl off so that we can insert the other curses libraries before the ncurses
+-  dnl library but after the library path (which is later again prepended below).
+-  if test -n "$CURSESLIBDIR"; then
+-    if test "-L$CURSESLIBDIR " = "$(echo $CURSESLIB | cut -c-$((${#CURSESLIBDIR}+3)) )"; then
+-      CURSESLIB="$(echo $CURSESLIB | cut -c$((${#CURSESLIBDIR}+4))-)"
+-    fi
+-  fi
+-
+-  saved_CFLAGS="$CFLAGS"
+-  saved_LDFLAGS="$LDFLAGS"
+-  saved_LIBS="$LIBS"
+-  CFLAGS="$CFLAGS $CURSES_CFLAGS"
+-  if test -n "$CURSESLIBDIR"; then
+-    LDFLAGS="$LDFLAGS -L$CURSESLIBDIR"
+-  fi
+-  LIBS="$CURSESLIB $LIBS"
+-
+-  AC_TRY_LINK([#include <panel.h>], [set_escdelay(100);],[HAVE_CURSES_ESCDELAY="yes"])
+-  if test "$HAVE_CURSES_ESCDELAY" = "yes"; then
+-    AC_DEFINE([HAVE_CURSES_ESCDELAY], 1, [Have curses set_escdelay])
+-  fi
+-
+-  if test "$USE_NLS" = "yes"; then
+-    AC_MSG_CHECKING([for curses NLS support])
+-    dnl In theory, a single-byte curses works just fine in ISO 8859-* locales.
+-    dnl In practice, however, everybody uses UTF-8 nowadays, so we'd better
+-    dnl check for wide-character support.
+-    dnl For ncurses/ncursesw, CURSES_NLS was already set above.
+-    if test "$curseslib" = "curses"; then
+-      AC_TRY_LINK([
+-          #define _XOPEN_SOURCE 1
+-          #define _XOPEN_SOURCE_EXTENDED 1
+-          #include <curses.h>
+-        ], [
+-          cchar_t wc;
+-          setcchar(&wc, L"x", A_NORMAL, 0, 0);
+-        ],
+-        [CURSES_NLS="yes"])
+-    fi
+-    AC_MSG_RESULT([$CURSES_NLS])
+-    if test "$CURSES_NLS" = "yes"; then
+-      AC_DEFINE([ENABLE_NLS_IN_CURSES], [1],
+-                [Define if curses-based programs can show translated messages.])
+-    fi
+-  fi
+-
+-  AC_CHECK_HEADERS([panel.h menu.h form.h], [],
+-                   [AC_MSG_ERROR([required curses helper header not found])])
+-  AC_CHECK_LIB([panel$NCURSESLIBSUFFIX], [new_panel],
+-               [CURSESLIB="-lpanel$NCURSESLIBSUFFIX $CURSESLIB"],
+-               [AC_MSG_ERROR([panel$NCURSESLIBSUFFIX library not found])])
+-  AC_CHECK_LIB([menu$NCURSESLIBSUFFIX], [new_menu],
+-               [CURSESLIB="-lmenu$NCURSESLIBSUFFIX $CURSESLIB"],
+-               [AC_MSG_ERROR([menu$NCURSESLIBSUFFIX library not found])])
+-  AC_CHECK_LIB([form$NCURSESLIBSUFFIX], [new_form],
+-               [CURSESLIB="-lform$NCURSESLIBSUFFIX $CURSESLIB"],
+-               [AC_MSG_ERROR([form$NCURSESLIBSUFFIX library not found])])
+-
+-  CFLAGS="$saved_CFLAGS"
+-  LDFLAGS="$saved_LDFLAGS"
+-  LIBS="$saved_LIBS"
+-
+-  if test -n "$CURSESLIBDIR"; then
+-    CURSESLIB="-L$CURSESLIBDIR $CURSESLIB"
+-  fi
+-
+-  AC_MSG_CHECKING([for curses linker flags])
+-  AC_MSG_RESULT([$CURSESLIB])
+ fi
+ 
+ AC_SUBST(CURSESINC)
_______________________________________________
Openembedded-devel mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel

Reply via email to