Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
  • N Nemo
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Graph
    • Compare
  • Issues 70
    • Issues 70
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 20
    • Merge requests 20
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • External wiki
    • External wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • NEMO WorkspaceNEMO Workspace
  • Nemo
  • Issues
  • #159
Closed
Open
Issue created Jan 19, 2023 by Simon Mueller@smuellerDeveloper

Management of multiple pre-processing keys by the build control script

Context

The current main version of the NEMO build control script makenemo only supports the setting, addition, and removal of a single pre-processor key via its def_key, add_key, and del_key options, respectively; if lists of keys are supplied as arguments, only the first element is used.

Analysis

A pre-processing key or key list is expected to be supplied as a single argument by scripts mk/Fdef_key.sh, mk/Fadd_key.sh, and mk/Fdel_key.sh. In makenemo, however, key lists expand into multiple arguments supplied to these scripts, and, as a result, only the first of the listed keys is processed.

Fix

Enclosing the pre-processing key list supplied to scripts mk/Fdef_key.sh, mk/Fadd_key.sh, and mk/Fdel_key.sh in double quotes,

--- a/makenemo
+++ b/makenemo
@@ -336,9 +336,9 @@ fi
 
 
 # CPP keys addition/removal
-[ -n "${list_add_key}" ] && ${COMPIL_DIR}/Fadd_keys.sh ${NEMO_TDIR}/${CUR_CONF} ${list_add_key}
-[ -n "${list_def_key}" ] && ${COMPIL_DIR}/Fdef_keys.sh ${NEMO_TDIR}/${CUR_CONF} ${list_def_key}
-[ -n "${list_del_key}" ] && ${COMPIL_DIR}/Fdel_keys.sh ${NEMO_TDIR}/${CUR_CONF} ${list_del_key}
+[ -n "${list_add_key}" ] && ${COMPIL_DIR}/Fadd_keys.sh ${NEMO_TDIR}/${CUR_CONF} "${list_add_key}"
+[ -n "${list_def_key}" ] && ${COMPIL_DIR}/Fdef_keys.sh ${NEMO_TDIR}/${CUR_CONF} "${list_def_key}"
+[ -n "${list_del_key}" ] && ${COMPIL_DIR}/Fdel_keys.sh ${NEMO_TDIR}/${CUR_CONF} "${list_del_key}"
 
 
 # CPP keys check

would ensure the whole key list is supplied as a single argument.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking