summaryrefslogtreecommitdiffstats
path: root/meta-agl/meta-agl-basesystem/classes/agl-basesystem-capability.bbclass
diff options
context:
space:
mode:
authorJan-Simon Moeller <jsmoeller@linuxfoundation.org>2020-04-16 20:16:57 +0200
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2020-04-16 20:16:57 +0200
commitaadeb8892bd10afe952fce02a8a6abd4fa9f0ea4 (patch)
treefaf81d36f775cb4d4e063ffb9c5acb96758f2a71 /meta-agl/meta-agl-basesystem/classes/agl-basesystem-capability.bbclass
parent2bad39b645c4166c3a32eb56cf8a2ba90ce5584b (diff)
Diff of the 8.0.2 code-drop against stock AGL 8.0.2sandbox/jsmoeller/diff_to_halibut_8.0.2
Signed-off-by: Jan-Simon Moeller <jsmoeller@linuxfoundation.org>
Diffstat (limited to 'meta-agl/meta-agl-basesystem/classes/agl-basesystem-capability.bbclass')
-rw-r--r--meta-agl/meta-agl-basesystem/classes/agl-basesystem-capability.bbclass32
1 files changed, 32 insertions, 0 deletions
diff --git a/meta-agl/meta-agl-basesystem/classes/agl-basesystem-capability.bbclass b/meta-agl/meta-agl-basesystem/classes/agl-basesystem-capability.bbclass
new file mode 100644
index 00000000..3170cc9c
--- /dev/null
+++ b/meta-agl/meta-agl-basesystem/classes/agl-basesystem-capability.bbclass
@@ -0,0 +1,32 @@
+pkg_postinst_ontarget_${PN}_append () {
+df / --exclude-type=nfs > /dev/null
+IS_EMMC_BOOT=$?
+
+if [ $IS_EMMC_BOOT -eq 0 ]; then
+ CAPVARS="${CAPABILITY}"
+ IFS=" "
+ for cap in $CAPVARS; do
+ capability=`echo $cap | cut -f 1 -d ":"`
+ file=`echo $cap | cut -f 2 -d ":"`
+ setcap $capability $D$file
+ done
+else
+ CAPVARS="${CAPABILITY}"
+ IFS=" "
+ for cap in $CAPVARS; do
+ capability=`echo $cap | cut -f 1 -d ":"`
+ file=`echo $cap | cut -f 2 -d ":"`
+ TCAP_NAME="/tmp/${file##*/}"
+ if [ ! -L ${file} ]; then
+ cp -a ${file} ${TCAP_NAME}
+ mv ${file} ${file}.org
+ ln -fs ${TCAP_NAME} ${file}
+ else
+ cp -a ${file}.org ${TCAP_NAME}
+ fi
+ setcap ${capability} ${TCAP_NAME}
+ done
+fi
+}
+#RDEPENDS_${PN} += "libcap-bin"
+PACKAGE_WRITE_DEPS = "libcap-native"