external-toolchain-csl: handle packaging of gdbserver based on PREFERRED_PROVIDER
authorDenys Dmytriyenko <denys@ti.com>
Thu, 3 Mar 2011 18:27:26 +0000 (13:27 -0500)
committerDenys Dmytriyenko <denys@ti.com>
Thu, 3 Mar 2011 18:27:26 +0000 (13:27 -0500)
Allow packaging independent copy of specific version of gdbserver with
external-toolchain-csl by setting PREFERRED_PROVIDER. E.g. for GPLv2
gdbserver, add these lines to your distro/local.conf:

PREFERRED_PROVIDER_gdbserver = "gdbserver"
PREFERRED_VERSION_gdbserver = "6.6"

Thanks to Ben Gardiner for providing valuable feedback.

Signed-off-by: Denys Dmytriyenko <denys@ti.com>
recipes/meta/external-toolchain-csl.bb

index e56b74f..619658e 100644 (file)
@@ -1,4 +1,4 @@
-PR = "r9"
+PR = "r10"
 
 INHIBIT_DEFAULT_DEPS = "1"
 
@@ -23,7 +23,7 @@ PROVIDES = "\
        virtual/libiconv \
        glibc-thread-db \
        ${@base_conditional('PREFERRED_PROVIDER_linux-libc-headers', 'external-toolchain-csl', 'linux-libc-headers', '', d)} \
-       gdbserver \
+       ${@base_conditional('PREFERRED_PROVIDER_gdbserver', 'external-toolchain-csl', 'gdbserver', '', d)} \
 "
 
 DEPENDS = "${@base_conditional('PREFERRED_PROVIDER_linux-libc-headers', 'external-toolchain-csl', '', 'linux-libc-headers', d)}"
@@ -39,6 +39,7 @@ PACKAGES = "\
        libstdc++ \
        libstdc++-dev \
        ${@base_conditional('PREFERRED_PROVIDER_linux-libc-headers', 'external-toolchain-csl', 'linux-libc-headers', '', d)} \
+       ${@base_conditional('PREFERRED_PROVIDER_gdbserver', 'external-toolchain-csl', 'gdbserver', '', d)} \
        glibc-dbg \
        glibc \
        catchsegv \
@@ -46,7 +47,6 @@ PACKAGES = "\
        nscd \
        ldd \
        localedef \
-       gdbserver \
        glibc-utils \
        glibc-dev \
        glibc-locale \
@@ -176,10 +176,10 @@ CSL_VER_MAIN := "${@csl_get_main_version(d)}"
 CSL_VER_GCC := "${@csl_get_gcc_version(d)}"
 CSL_VER_LIBC := "${@csl_get_libc_version(d)}"
 CSL_VER_KERNEL := "${@csl_get_kernel_version(d)}"
+CSL_VER_GDBSERVER := "${@csl_get_gdb_version(d)}"
 CSL_LIC_LIBC := "LGPLv2.1+"
 CSL_LIC_RLE := "${@["GPLv3 with GCC RLE", "GPLv2 with GCC RLE"][csl_get_main_version(d) <= "2007q3-51"]}"
-CSL_VER_GDBSERVER := "${@csl_get_gdb_version(d)}"
-CSL_LIC_GDBSERVER := "${@["GNU GPL version 2", "GNU GPL version 3 or later"][csl_get_gdb_version(d) >= "6.7.1"]}"
+CSL_LIC_GDBSERVER := "${@["GPLv2+", "GPLv3+"][csl_get_gdb_version(d) >= "6.7.1"]}"
 
 PKGV = "${CSL_VER_MAIN}"
 PKGV_libgcc = "${CSL_VER_GCC}"
@@ -231,6 +231,7 @@ do_install() {
        cp -a ${TOOLCHAIN_PATH}/${TARGET_SYS}/libc/usr/* ${D}/usr
        ${@base_conditional('PREFERRED_PROVIDER_linux-libc-headers', 'external-toolchain-csl', '', 'rm -rf ${D}/usr/include/linux', d)}
        cp -a ${TOOLCHAIN_PATH}/${TARGET_SYS}/include/* ${D}/usr/include
+       ${@base_conditional('PREFERRED_PROVIDER_gdbserver', 'external-toolchain-csl', '', 'rm -rf ${D}/usr/bin/gdbserver', d)}
 
        rm -rf ${D}${sysconfdir}/rpc
        rm -rf ${D}${datadir}/zoneinfo