Use different names for qemu-user binary: 65/96565/1 tizen_4.0_base_not_used accepted/tizen/4.0/base/20170811.093141 submit/tizen_4.0_base/20170811.071500 submit/tizen_4.0_base/20170828.000000 tizen_4.0.IoT.p1_release tizen_4.0.IoT.p2_release tizen_4.0.m1_release tizen_4.0.m2_release
authorPavel Kopyl <p.kopyl@samsung.com>
Tue, 23 Aug 2016 13:42:07 +0000 (13:42 +0000)
committerpark <sk7.park@samsung.com>
Wed, 9 Nov 2016 10:06:47 +0000 (02:06 -0800)
1. qemu-linux-user-x86_64-cross for 64-bit.
2. qemu-linux-user-x86-cross for 32-bit.
Also keep binaries with old names.

Change-Id: Ib2487b82c57189942e0925427cb2144dc8817dec
Signed-off-by: Pavel Kopyl <p.kopyl@samsung.com>
Signed-off-by: Chan Lee <chan45.lee@samsung.com>
(cherry picked from commit 4f4fc9b2f8ac86e081b08fb48d77fa860626d148)

packaging/baselibs.conf

index 42cff28..26b479e 100644 (file)
@@ -1,6 +1,9 @@
 arch i586 targets armv7l:cross aarch64:cross
 arch i686 targets armv7l:cross aarch64:cross
 arch x86_64 targets armv7l:cross aarch64:cross
+arch i586 targets armv7l:x86-cross aarch64:x86-cross
+arch i686 targets armv7l:x86-cross aarch64:x86-cross
+arch x86_64 targets armv7l:x86_64-cross aarch64:x86_64-cross
 qemu-linux-user
   +/
 qemu-linux-user-debuginfo
@@ -27,3 +30,43 @@ targettype cross package qemu-linux-user
     post "setbinfmt 'arm' ':arm:M::\x7f\x45\x4c\x46\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm-binfmt:P' "
     post "setbinfmt 'armeb' ':armeb:M::\x7f\x45\x4c\x46\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-armeb-binfmt:P'"
     post "setbinfmt 'aarch64' ':aarch64:M::\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\xb7:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-aarch64-binfmt:P'"
+
+targettype x86_64-cross package qemu-linux-user
+ autoreqprov off
+    +/
+    post "function setbinfmt () {"
+    post "    local arch=$1"
+    post "    local fmt=$2"
+    post "    local comp_fmt=$(echo ${fmt} | sed -e 's/.*:://;s/:[^:]$//;s/\\x//g')"
+    post "    local curr_fmt=$(cat /proc/sys/fs/binfmt_misc/${arch} | sed -ne '/interpreter/{s/interpreter //;h};/magic/{s/magic //;H};/mask/{s/mask //;G;s/\([^\n]*\)\n\([^\n]*\)\n\([^\n]*\)/\3:\1:\2/p}')"
+    post "    if ( [ ! -e "/proc/sys/fs/binfmt_misc/${arch}" ] || [ "x${comp_fmt}" != "x${curr_fmt}" ] ); then"
+    post "        builtin echo -1 > "/proc/sys/fs/binfmt_misc/${arch}""
+    post "        builtin echo "${fmt}" > /proc/sys/fs/binfmt_misc/register"
+    post "    fi"
+    post "}"
+    post "[ ! -d /proc/sys/fs/binfmt_misc ] && ( /sbin/modprobe binfmt_misc )"
+    post "[ ! -f /proc/sys/fs/binfmt_misc/register ] && ( mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc )"
+    post "[ -e /proc/sys/fs/binfmt_misc/arm64 ] && ( builtin echo -1 > /proc/sys/fs/binfmt_misc/arm64 )"
+    post "setbinfmt 'arm' ':arm:M::\x7f\x45\x4c\x46\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm-binfmt:P' "
+    post "setbinfmt 'armeb' ':armeb:M::\x7f\x45\x4c\x46\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-armeb-binfmt:P'"
+    post "setbinfmt 'aarch64' ':aarch64:M::\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\xb7:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-aarch64-binfmt:P'"
+
+targettype x86-cross package qemu-linux-user
+ autoreqprov off
+    +/
+    post "function setbinfmt () {"
+    post "    local arch=$1"
+    post "    local fmt=$2"
+    post "    local comp_fmt=$(echo ${fmt} | sed -e 's/.*:://;s/:[^:]$//;s/\\x//g')"
+    post "    local curr_fmt=$(cat /proc/sys/fs/binfmt_misc/${arch} | sed -ne '/interpreter/{s/interpreter //;h};/magic/{s/magic //;H};/mask/{s/mask //;G;s/\([^\n]*\)\n\([^\n]*\)\n\([^\n]*\)/\3:\1:\2/p}')"
+    post "    if ( [ ! -e "/proc/sys/fs/binfmt_misc/${arch}" ] || [ "x${comp_fmt}" != "x${curr_fmt}" ] ); then"
+    post "        builtin echo -1 > "/proc/sys/fs/binfmt_misc/${arch}""
+    post "        builtin echo "${fmt}" > /proc/sys/fs/binfmt_misc/register"
+    post "    fi"
+    post "}"
+    post "[ ! -d /proc/sys/fs/binfmt_misc ] && ( /sbin/modprobe binfmt_misc )"
+    post "[ ! -f /proc/sys/fs/binfmt_misc/register ] && ( mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc )"
+    post "[ -e /proc/sys/fs/binfmt_misc/arm64 ] && ( builtin echo -1 > /proc/sys/fs/binfmt_misc/arm64 )"
+    post "setbinfmt 'arm' ':arm:M::\x7f\x45\x4c\x46\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-arm-binfmt:P' "
+    post "setbinfmt 'armeb' ':armeb:M::\x7f\x45\x4c\x46\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-armeb-binfmt:P'"
+    post "setbinfmt 'aarch64' ':aarch64:M::\x7f\x45\x4c\x46\x02\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\xb7:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff:/usr/bin/qemu-aarch64-binfmt:P'"