On 3/1/19 4:08 PM, Thomas Monjalon wrote:
01/03/2019 21:24, Michael Santana Francisco:
On 3/1/19 12:51 PM, Thomas Monjalon wrote:
01/03/2019 18:43, Thomas Monjalon:
01/03/2019 18:08, Michael Santana:
+# Enable codespell by default. This can be overwritten from a config file.
+# You can also enable codespell by setting DPDK_CHECKPATCH_CODESPELL to a 
valid path
+# to a dictionary.txt file if your dictionary.txt is not in the default 
location.
This line length won't pass chekpatch ;)

Better to avoid "you" form in such comment.

+DPDK_CHECKPATCH_CODESPELL=enable
It will override the value if passed with an environment variable.
You should do the same as for DPDK_CHECKPATCH_LINE_LENGTH.
If I understood you correctly, you want to be able to set these
parameters via environment variables (and take precedence over any
variables set in any config file)
No :)
The scenario is to have no config file and use environment variables only.

The problem is right now that any environment variable is overwritten by
the variable being set in one of the config files
The only way I can think of doing this would be by saving the DPDK
variables (passed via environment) to a file or ironically temporary
variables (which themselves can also be overwritten, so that doesn't
really solve the problem) before being overwritten, and then restoring
said variables after the call to source.
This would add extra clutter in checkpatches, but it can be avoided by
doing it in load-devel-config instead.

So the bottom line is, environment variables take overall precedence,
then config files, and then default

Does this sound sane enough?
If anyone knows a better way to do this please share.
Look how DPDK_CHECKPATCH_LINE_LENGTH is handled.
The default value is used if DPDK_CHECKPATCH_LINE_LENGTH is not set,
neither by environment nor config file.

I think you can just do this after loading config file:

DPDK_CHECKPATCH_CODESPELL=${DPDK_CHECKPATCH_CODESPELL:-enable}
Oh! So it's much simpler than I thought. Yeah. I will remove what I have now and put in your line to go along with the length= line. Will also change the comment as I didn't remove the 'you' form in the last commit

or check for empty value in the test:

[ -z "$DPDK_CHECKPATCH_CODESPELL" -o "$DPDK_CHECKPATCH_CODESPELL" = enable ]


I am including in DPDK_CHECKPATCH_PATH, because might as well at this
point.
Empty DPDK_CHECKPATCH_PATH is already handled.

   # Load config options:
   # - DPDK_CHECKPATCH_PATH
   # - DPDK_CHECKPATCH_LINE_LENGTH
+# - DPDK_CHECKPATCH_CODESPELL
   . $(dirname $(readlink -e $0))/load-devel-config
VALIDATE_NEW_API=$(dirname $(readlink -e $0))/check-symbol-change.sh
@@ -13,6 +18,12 @@ length=${DPDK_CHECKPATCH_LINE_LENGTH:-80}
# override default Linux options
   options="--no-tree"
+if [ "$DPDK_CHECKPATCH_CODESPELL" == "enable" ]; then
This is a bashism.
Standard sh uses a simple =

No need for a v4, I can fix it.
Because of the required change for the env var case,
please do a v4.



Reply via email to