浏览代码

gdb-external-cross-canadian: split out and use gdb-external.inc

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Serge Semin 6 年之前
父节点
当前提交
07461c6913
共有 2 个文件被更改,包括 21 次插入5 次删除
  1. 2 5
      recipes-external/gdb/gdb-external-cross-canadian.bb
  2. 19 0
      recipes-external/gdb/gdb-external.inc

+ 2 - 5
recipes-external/gdb/gdb-external-cross-canadian.bb

@@ -1,10 +1,7 @@
-require recipes-external/binutils/binutils-external.inc
+require recipes-external/gdb/gdb-external.inc
 inherit external-toolchain-cross-canadian
 
 FILES_${PN} = "\
-    ${bindir}/${EXTERNAL_TARGET_SYS}-gdb \
-    ${bindir}/${EXTERNAL_TARGET_SYS}-gdbserver \
-    ${bindir}/${EXTERNAL_TARGET_SYS}-gdbtiu \
-    ${bindir}/${EXTERNAL_TARGET_SYS}-gcore \
+    ${@' '.join('${bindir}/${EXTERNAL_TARGET_SYS}-' + i for i in '${gdb_binaries}'.split())} \
     ${exec_prefix}/${EXTERNAL_TARGET_SYS}/share/gdb \
 "

+ 19 - 0
recipes-external/gdb/gdb-external.inc

@@ -0,0 +1,19 @@
+SUMMARY = "GNU debugger"
+HOMEPAGE = "http://www.gnu.org/software/gdb/"
+SECTION = "devel"
+PV := "${@external_run(d, 'gdb', '-v').splitlines()[0].split()[-1]}"
+
+gdb_binaries = "gdb gdbserver gdbtiu gcore"
+
+def get_gdb_license(d):
+    output = external_run(d, 'gdb', '-v')
+    if output != 'UNKNOWN':
+        for line in output.splitlines():
+            if line.startswith('License '):
+                lic = line.split(':', 1)[0]
+                return lic.replace('License ', '')
+    else:
+        return output
+
+LICENSE := "${@get_gdb_license(d)}"
+LICENSE[vardepvalue] = "${LICENSE}"