Skip to contentSkip to conversation

bitbake.conf: Add default FILESYSTEM_PERMS_TABLES

PATCH In review Mark Hatle 2 participants 3 messages Sep 13, 2017 – Sep 14, 2017

lore
Share & tools
lore

Mark Hatle

author
#0 lore raw

PATCH v2 1/1 bitbake.conf: Add default FILESYSTEM_PERMS_TABLES

If FILESYSTEM_PERMS_TABLES was not defined, the default was selected by the packages.bbclass. This made it difficult for a recipe or layer to 'append' to the default.

Copy the default into the bitbake.conf, allowing future _append and += style actions.

Default was remove from package.bbclass. If a value is not set, only the built-in per fixes will be used.

---
 meta/classes/package.bbclass | 4 +---
 meta/conf/bitbake.conf       | 8 ++++++++
 2 files changed, 9 insertions(+), 3 deletions(-)
meta/classes/package.bbclass +1 -3
index 7a62181..2053d46 100644
@@ -737,9 +737,7 @@ python fixup_perms () {
     def get_fs_perms_list(d):
         str = ""
         bbpath = d.getVar('BBPATH')
-        fs_perms_tables = d.getVar('FILESYSTEM_PERMS_TABLES')
-        if not fs_perms_tables:
-            fs_perms_tables = 'files/fs-perms.txt' if oe.types.boolean(d.getVar('VOLATILE_LOG_DIR', True)) else 'files/fs-perms-persistent-log.txt'
+        fs_perms_tables = d.getVar('FILESYSTEM_PERMS_TABLES') or ""
         for conf_file in fs_perms_tables.split():
             str += " %s" % bb.utils.which(bbpath, conf_file)
         return str
meta/conf/bitbake.conf +8 -0
index 444c53f..8fb596e 100644
@@ -330,6 +330,14 @@ FILE_DIRNAME = "${@os.path.dirname(d.getVar('FILE', False))}"
 # This default was only used for checking
 FILESEXTRAPATHS ?= "__default:"
 
+# The default list of fs-perms files to process.  If the list is empty only
+# the builtin definitions will be used.  Builtin definitions included:
+#  base_prefix, prefix, exec_prefix, base_bindir, base_sbindir, base_libdir,
+#  datadir, sysconfdir, servicedir, sharedstatedir, localstatedir, infodir,
+#  mandir, docdir, bindir, sbindir, libexecdir, libdir, includedir and
+#  oldincludedir
+FILESYSTEM_PERMS_TABLES ?= "${@'files/fs-perms.txt' if oe.types.boolean(d.getVar('VOLATILE_LOG_DIR', True)) else 'files/fs-perms-persistent-log.txt'}"
+
 ##################################################################
 # General work and output directories for the build system.
 ##################################################################
Signature · 1 line
1.8.3.1
author
#1 lore raw
Quoted 9 lines · Mark Hatle

If FILESYSTEM_PERMS_TABLES was not defined, the default was selected by the packages.bbclass. This made it difficult for a recipe or layer to 'append' to the default.

Copy the default into the bitbake.conf, allowing future _append and += style actions.

Default was remove from package.bbclass. If a value is not set, only the built-in per fixes will be used.

per should have been 'perms' above. I can send a v3 if needed.

--Mark

Quoted 41 lines
---
 meta/classes/package.bbclass | 4 +---
 meta/conf/bitbake.conf       | 8 ++++++++
 2 files changed, 9 insertions(+), 3 deletions(-)
meta/classes/package.bbclass +1 -3
index 7a62181..2053d46 100644
@@ -737,9 +737,7 @@ python fixup_perms () {
     def get_fs_perms_list(d):
         str = ""
         bbpath = d.getVar('BBPATH')
-        fs_perms_tables = d.getVar('FILESYSTEM_PERMS_TABLES')
-        if not fs_perms_tables:
-            fs_perms_tables = 'files/fs-perms.txt' if oe.types.boolean(d.getVar('VOLATILE_LOG_DIR', True)) else 'files/fs-perms-persistent-log.txt'
+        fs_perms_tables = d.getVar('FILESYSTEM_PERMS_TABLES') or ""
         for conf_file in fs_perms_tables.split():
             str += " %s" % bb.utils.which(bbpath, conf_file)
         return str
meta/conf/bitbake.conf +8 -0
index 444c53f..8fb596e 100644
@@ -330,6 +330,14 @@ FILE_DIRNAME = "${@os.path.dirname(d.getVar('FILE', False))}"
 # This default was only used for checking
 FILESEXTRAPATHS ?= "__default:"
 
+# The default list of fs-perms files to process.  If the list is empty only
+# the builtin definitions will be used.  Builtin definitions included:
+#  base_prefix, prefix, exec_prefix, base_bindir, base_sbindir, base_libdir,
+#  datadir, sysconfdir, servicedir, sharedstatedir, localstatedir, infodir,
+#  mandir, docdir, bindir, sbindir, libexecdir, libdir, includedir and
+#  oldincludedir
+FILESYSTEM_PERMS_TABLES ?= "${@'files/fs-perms.txt' if oe.types.boolean(d.getVar('VOLATILE_LOG_DIR', True)) else 'files/fs-perms-persistent-log.txt'}"
+
 ##################################################################
 # General work and output directories for the build system.
 ##################################################################
#2 lore raw
Quoted 7 lines · Mark Hatle
Quoted 1 line · Mark Hatle

If FILESYSTEM_PERMS_TABLES was not defined, the default was selected by

the

Quoted 1 line

packages.bbclass. This made it difficult for a recipe or layer to

'append'

Quoted 2 lines

to the default.

Quoted 8 lines
Quoted 1 line

Copy the default into the bitbake.conf, allowing future _append and +=

style

Quoted 4 lines

actions.

Default was remove from package.bbclass. If a value is not set, only the built-in per fixes will be used.

per should have been 'perms' above. I can send a v3 if needed.

Fixed up when merging.

Ross