[oe-commits] Johan Hovold : wxwidgets: add 2.9.0 and clean up recipes

git version control git at git.openembedded.org
Wed Jan 20 19:17:42 UTC 2010


Module: openembedded.git
Branch: shr/unstable
Commit: 0eaeda31b9f8d286a8a58d787637b4c4d0516b2d
URL:    http://gitweb.openembedded.net/?p=openembedded.git&a=commit;h=0eaeda31b9f8d286a8a58d787637b4c4d0516b2d

Author: Johan Hovold <johan.hovold at lundinova.se>
Date:   Thu Dec 17 05:18:14 2009 +0000

wxwidgets: add 2.9.0 and clean up recipes

- Add wxwidget-2.9.0 include with derived rather than hardcoded lib and
   config script names (depends on debug and charset configure flags)
 - Use regular expression for LEAD_SONAME rather than hardcoded name.
 - Fix autoconf issue where configure could not find staging root.
 - Use INC_PR.

 - Add wxwidgets-2.9.0 (unicode)
 - Add wxwidgets-ansi-2.9.0 (non-unicode)
 - Add wxwidgets-opengl-2.9.0 (unicode, opengl)

Signed-off-by: Johan Hovold <johan.hovold at lundinova.se>
Signed-off-by: Marco Cavallini <m.cavallini at koansoftware.com>

---

 conf/checksums.ini                                 |    4 ++
 recipes/wxwidgets/wxwidgets-2.9.0.inc              |   44 ++++++++++++++++++++
 .../wxwidgets-2.9.0/configure-cross_root.patch     |   30 +++++++++++++
 recipes/wxwidgets/wxwidgets-ansi_2.9.0.bb          |    5 ++
 recipes/wxwidgets/wxwidgets-opengl_2.9.0.bb        |    7 +++
 recipes/wxwidgets/wxwidgets_2.9.0.bb               |    3 +
 6 files changed, 93 insertions(+), 0 deletions(-)

diff --git a/conf/checksums.ini b/conf/checksums.ini
index 8c81ddd..924bfcc 100644
--- a/conf/checksums.ini
+++ b/conf/checksums.ini
@@ -28230,6 +28230,10 @@ sha256=9b4096bb1e273914adf101182c27d457f46fcc44d1b3ea027bae3d34ace8c6f7
 md5=3ad40ea2b1728eefa94f60beb9951ff7
 sha256=9b4096bb1e273914adf101182c27d457f46fcc44d1b3ea027bae3d34ace8c6f7
 
+[http://downloads.sourceforge.net/wxwindows/wxWidgets-2.9.0.tar.bz2]
+md5=09058928eeb72853142c062bdec056ce
+sha256=8cf5c1dcf6357b2d27efd0c737b95baf1d2d1e88b5bf24560824b5eb6f2dc782
+
 [http://xorg.freedesktop.org/releases/individual/app/x11perf-1.4.1.tar.bz2]
 md5=fd06c8b8e3572a0e14af65a49e0dd7d1
 sha256=c81819618ec596fda55b950ef80f2ee02e5ce149ea99f1f741cedb459b4d3064
diff --git a/recipes/wxwidgets/wxwidgets-2.9.0.inc b/recipes/wxwidgets/wxwidgets-2.9.0.inc
new file mode 100644
index 0000000..cb6a971
--- /dev/null
+++ b/recipes/wxwidgets/wxwidgets-2.9.0.inc
@@ -0,0 +1,44 @@
+require wxwidgets.inc
+
+INC_PR = "r0"
+
+PROVIDES += "wxwidgets"
+
+TOOLKIT ?= "gtk2"
+UNICODE ?= "${@base_contains('EXTRA_OECONF', '--disable-unicode', 'ansi', 'unicode', d)}"
+DEBUG ?= "${@base_contains('EXTRA_OECONF', '--enable-debug', 'debug', 'release', d)}"
+RELEASE ?= "${@bb.data.getVar('PV',d,1).rsplit('.', 1)[0]}"
+
+WXCONFIG ?= "${TOOLKIT}-${UNICODE}-${DEBUG}-${RELEASE}"
+
+LEAD_SONAME = "libwx_.*_core-.*\.so"
+
+# Patch and regenerate configure script so that it finds staging root.
+FILESDIR = "${FILE_DIRNAME}/wxwidgets-${PV}"
+SRC_URI += "file://configure-cross_root.patch;patch=1"
+
+do_configure_prepend() {
+	./autogen.sh
+}
+
+do_stage() {
+	install -d ${STAGING_INCDIR}/wx-${RELEASE}/wx
+	cp -pR include/wx ${STAGING_INCDIR}/wx-${RELEASE}
+	cp -pR lib/libwx* ${STAGING_LIBDIR}
+	cp -pR lib/wx     ${STAGING_LIBDIR}
+	cp -pR build/bakefiles/wxpresets/presets ${STAGING_DATADIR}/bakefile
+	cp -p wxwin.m4                          ${STAGING_DATADIR}/aclocal
+	ln -sf ${STAGING_LIBDIR}/wx/config/${TARGET_PREFIX}${WXCONFIG} \
+		${STAGING_BINDIR_CROSS}/wx-config
+	sed -e s,'wxconfdir=".*"','wxconfigdir="${STAGING_LIBDIR}/wx/config"', \
+		-e s,'bindir=".*"','bindir="${STAGING_BINDIR}"', \
+		-e s,'libdir=".*"','libdir="${STAGING_LIBDIR}"', \
+		-e s,'includedir=".*"','includedir="${STAGING_INCDIR}"', \
+		-i ${STAGING_LIBDIR}/wx/config/${TARGET_PREFIX}${WXCONFIG}
+}
+
+do_install() {
+	oe_runmake 'DESTDIR=${D}' install
+	ln -sf  ${libdir}/wx/config/${TARGET_PREFIX}${WXCONFIG} \
+		${D}${bindir}/wx-config
+}
diff --git a/recipes/wxwidgets/wxwidgets-2.9.0/configure-cross_root.patch b/recipes/wxwidgets/wxwidgets-2.9.0/configure-cross_root.patch
new file mode 100644
index 0000000..e91a95c
--- /dev/null
+++ b/recipes/wxwidgets/wxwidgets-2.9.0/configure-cross_root.patch
@@ -0,0 +1,30 @@
+diff -pu a/configure.in b/configure.in
+--- a/configure.in	2009-12-04 11:02:26.000000000 +0100
++++ b/configure.in	2009-12-03 22:08:05.000000000 +0100
+@@ -2117,14 +2117,21 @@ if test "$build" != "$host" -a "$GCC" = 
+     dnl the linker. Stripping off the trailing '/bin/ld' gives us a candiate
+     dnl for a 'root' below which libraries and headers for the target system
+     dnl might be installed.
+-    if cross_root=`$CC -print-prog-name=ld 2>/dev/null`; then
++    m4_pattern_allow([^PKG_CONFIG_SYSROOT_DIR$])
++    if test ! -z "$PKG_CONFIG_SYSROOT_DIR"; then
++	    cross_root="$PKG_CONFIG_SYSROOT_DIR"
++    elif cross_root=`$CC -print-prog-name=ld 2>/dev/null`; then
+         cross_root=`dirname $cross_root`
+         cross_root=`dirname $cross_root`
++    else
++	cross_root=""
++    fi
+ 
+-        dnl substitute this candiate root for '^/usr' in the search lists,
+-        dnl strip out any that don't start '^/usr'.
+-        SEARCH_LIB=`for x in $SEARCH_LIB; do echo $x; done | sed -ne "s|^/usr|$cross_root|p"`
+-        SEARCH_INCLUDE=`for x in $SEARCH_INCLUDE; do echo $x; done | sed -ne "s|^/usr|$cross_root|p"`
++    if test ! -z "$cross_root"; then
++        dnl substitute this candiate root for '^/' in the search lists,
++        dnl strip out any that don't start '^/'.
++        SEARCH_LIB=`for x in $SEARCH_LIB; do echo $x; done | sed -ne "s|^/|$cross_root/|p"`
++        SEARCH_INCLUDE=`for x in $SEARCH_INCLUDE; do echo $x; done | sed -ne "s|^/|$cross_root/|p"`
+         SEARCH_INCLUDE="$SEARCH_INCLUDE $cross_root/include"
+ 
+         dnl also have pkg-config search for *.pc files under this 'root'
diff --git a/recipes/wxwidgets/wxwidgets-ansi_2.9.0.bb b/recipes/wxwidgets/wxwidgets-ansi_2.9.0.bb
new file mode 100644
index 0000000..aafbe5b
--- /dev/null
+++ b/recipes/wxwidgets/wxwidgets-ansi_2.9.0.bb
@@ -0,0 +1,5 @@
+require wxwidgets-${PV}.inc
+
+PR = "${INC_PR}.0"
+
+EXTRA_OECONF += "--disable-unicode"
diff --git a/recipes/wxwidgets/wxwidgets-opengl_2.9.0.bb b/recipes/wxwidgets/wxwidgets-opengl_2.9.0.bb
new file mode 100644
index 0000000..e85658c
--- /dev/null
+++ b/recipes/wxwidgets/wxwidgets-opengl_2.9.0.bb
@@ -0,0 +1,7 @@
+require wxwidgets-${PV}.inc
+
+DEPENDS += "virtual/libgl"
+
+PR = "${INC_PR}.0"
+
+EXTRA_OECONF += "--with-opengl"
diff --git a/recipes/wxwidgets/wxwidgets_2.9.0.bb b/recipes/wxwidgets/wxwidgets_2.9.0.bb
new file mode 100644
index 0000000..c23c969
--- /dev/null
+++ b/recipes/wxwidgets/wxwidgets_2.9.0.bb
@@ -0,0 +1,3 @@
+require wxwidgets-${PV}.inc
+
+PR = "${INC_PR}.0"





More information about the Openembedded-commits mailing list