diff mbox series

[ovs-dev,v3,2/2] python: set ovs.dirs variables with build system values

Message ID 20201027144518.712805-3-mark.d.gray@redhat.com
State Superseded
Headers show
Series Some fixes for OVS IPsec on Fedora | expand

Commit Message

Mark Gray Oct. 27, 2020, 2:45 p.m. UTC
ovs/dirs.py should be auto-generated using the template
ovs/dirs.py.template at build time. This will set the
ovs.dirs python variables with a value specified by the
environment or, if the environment variable is not set, from
the build system.

Signed-off-by: Mark Gray <mark.d.gray@redhat.com>
---
 lib/automake.mk       |  2 +-
 python/automake.mk    | 13 +++++++------
 python/ovs/.gitignore |  1 +
 python/ovs/dirs.py    | 31 -------------------------------
 4 files changed, 9 insertions(+), 38 deletions(-)
 delete mode 100644 python/ovs/dirs.py

Comments

Timothy Redaelli Nov. 9, 2020, 2:45 p.m. UTC | #1
On Tue, 27 Oct 2020 10:45:18 -0400
Mark Gray <mark.d.gray@redhat.com> wrote:

> ovs/dirs.py should be auto-generated using the template
> ovs/dirs.py.template at build time. This will set the
> ovs.dirs python variables with a value specified by the
> environment or, if the environment variable is not set, from
> the build system.
> 
> Signed-off-by: Mark Gray <mark.d.gray@redhat.com>
> ---
>  lib/automake.mk       |  2 +-
>  python/automake.mk    | 13 +++++++------
>  python/ovs/.gitignore |  1 +
>  python/ovs/dirs.py    | 31 -------------------------------
>  4 files changed, 9 insertions(+), 38 deletions(-)
>  delete mode 100644 python/ovs/dirs.py
> 
> diff --git a/lib/automake.mk b/lib/automake.mk
> index 380a672287ac..8eeb6c3f676c 100644
> --- a/lib/automake.mk
> +++ b/lib/automake.mk
> @@ -575,7 +575,7 @@ MAN_FRAGMENTS += \
>  OVSIDL_BUILT += lib/vswitch-idl.c lib/vswitch-idl.h lib/vswitch-idl.ovsidl
>  
>  EXTRA_DIST += lib/vswitch-idl.ann
> -lib/vswitch-idl.ovsidl: vswitchd/vswitch.ovsschema lib/vswitch-idl.ann
> +lib/vswitch-idl.ovsidl: vswitchd/vswitch.ovsschema lib/vswitch-idl.ann python/ovs/dirs.py
>  	$(AM_V_GEN)$(OVSDB_IDLC) annotate $(srcdir)/vswitchd/vswitch.ovsschema $(srcdir)/lib/vswitch-idl.ann > $@.tmp && mv $@.tmp $@
>  
>  lib/dirs.c: lib/dirs.c.in Makefile
> diff --git a/python/automake.mk b/python/automake.mk
> index 2f08c7701484..a88addf72326 100644
> --- a/python/automake.mk
> +++ b/python/automake.mk
> @@ -107,12 +107,13 @@ ALL_LOCAL += $(srcdir)/python/ovs/dirs.py
>  $(srcdir)/python/ovs/dirs.py: python/ovs/dirs.py.template
>  	$(AM_V_GEN)sed \
>  		-e '/^##/d' \
> -                -e 's,[@]pkgdatadir[@],/usr/local/share/openvswitch,g' \
> -                -e 's,[@]RUNDIR[@],/var/run,g' \
> -                -e 's,[@]LOGDIR[@],/usr/local/var/log,g' \
> -                -e 's,[@]bindir[@],/usr/local/bin,g' \
> -                -e 's,[@]sysconfdir[@],/usr/local/etc,g' \
> -                -e 's,[@]DBDIR[@],/usr/local/etc/openvswitch,g' \
> +                -e 's,[@]pkgdatadir[@],$(pkgdatadir),g' \
> +                -e 's,[@]RUNDIR[@],$(RUNDIR),g' \
> +                -e 's,[@]LOGDIR[@],$(LOGDIR),g' \
> +                -e 's,[@]bindir[@],$(bindir),g' \
> +                -e 's,[@]sysconfdir[@],$(sysconfdir),g' \
> +                -e 's,[@]DBDIR[@],$(sysconfdir),g' \

This should be $(sysconfdir)/openvswitch or DBDIR will be
/usr/local/etc instead of /usr/local/etc/openvswitch

>  		< $? > $@.tmp && \
>  	mv $@.tmp $@
>  EXTRA_DIST += python/ovs/dirs.py.template
> +CLEANFILES += python/ovs/dirs.py
> diff --git a/python/ovs/.gitignore b/python/ovs/.gitignore
> index 98527864664d..51030beca437 100644
> --- a/python/ovs/.gitignore
> +++ b/python/ovs/.gitignore
> @@ -1 +1,2 @@
>  version.py
> +dir.py
> diff --git a/python/ovs/dirs.py b/python/ovs/dirs.py
> deleted file mode 100644
> index c67aecbb46da..000000000000
> --- a/python/ovs/dirs.py
> +++ /dev/null
> @@ -1,31 +0,0 @@
> -# Licensed under the Apache License, Version 2.0 (the "License");
> -# you may not use this file except in compliance with the License.
> -# You may obtain a copy of the License at:
> -#
> -#     http://www.apache.org/licenses/LICENSE-2.0
> -#
> -# Unless required by applicable law or agreed to in writing, software
> -# distributed under the License is distributed on an "AS IS" BASIS,
> -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
> -# See the License for the specific language governing permissions and
> -# limitations under the License.
> -
> -# The @variables@ in this file are replaced by default directories for
> -# use in python/ovs/dirs.py in the source directory and replaced by the
> -# configured directories for use in the installed python/ovs/dirs.py.
> -#
> -import os
> -
> -# Note that the use of """ is to aid in dealing with paths with quotes in them.
> -PKGDATADIR = os.environ.get("OVS_PKGDATADIR", """/usr/local/share/openvswitch""")
> -RUNDIR = os.environ.get("OVS_RUNDIR", """/var/run""")
> -LOGDIR = os.environ.get("OVS_LOGDIR", """/usr/local/var/log""")
> -BINDIR = os.environ.get("OVS_BINDIR", """/usr/local/bin""")
> -
> -DBDIR = os.environ.get("OVS_DBDIR")
> -if not DBDIR:
> -    sysconfdir = os.environ.get("OVS_SYSCONFDIR")
> -    if sysconfdir:
> -        DBDIR = "%s/openvswitch" % sysconfdir
> -    else:
> -        DBDIR = """/usr/local/etc/openvswitch"""
Mark Gray Nov. 11, 2020, 9:26 a.m. UTC | #2
On 09/11/2020 14:45, Timothy Redaelli wrote:
> On Tue, 27 Oct 2020 10:45:18 -0400
> Mark Gray <mark.d.gray@redhat.com> wrote:

> 
> This should be $(sysconfdir)/openvswitch or DBDIR will be
> /usr/local/etc instead of /usr/local/etc/openvswitch
> 

Yes, thanks for the review. New revision can be found at

https://mail.openvswitch.org/pipermail/ovs-dev/2020-November/377254.html
diff mbox series

Patch

diff --git a/lib/automake.mk b/lib/automake.mk
index 380a672287ac..8eeb6c3f676c 100644
--- a/lib/automake.mk
+++ b/lib/automake.mk
@@ -575,7 +575,7 @@  MAN_FRAGMENTS += \
 OVSIDL_BUILT += lib/vswitch-idl.c lib/vswitch-idl.h lib/vswitch-idl.ovsidl
 
 EXTRA_DIST += lib/vswitch-idl.ann
-lib/vswitch-idl.ovsidl: vswitchd/vswitch.ovsschema lib/vswitch-idl.ann
+lib/vswitch-idl.ovsidl: vswitchd/vswitch.ovsschema lib/vswitch-idl.ann python/ovs/dirs.py
 	$(AM_V_GEN)$(OVSDB_IDLC) annotate $(srcdir)/vswitchd/vswitch.ovsschema $(srcdir)/lib/vswitch-idl.ann > $@.tmp && mv $@.tmp $@
 
 lib/dirs.c: lib/dirs.c.in Makefile
diff --git a/python/automake.mk b/python/automake.mk
index 2f08c7701484..a88addf72326 100644
--- a/python/automake.mk
+++ b/python/automake.mk
@@ -107,12 +107,13 @@  ALL_LOCAL += $(srcdir)/python/ovs/dirs.py
 $(srcdir)/python/ovs/dirs.py: python/ovs/dirs.py.template
 	$(AM_V_GEN)sed \
 		-e '/^##/d' \
-                -e 's,[@]pkgdatadir[@],/usr/local/share/openvswitch,g' \
-                -e 's,[@]RUNDIR[@],/var/run,g' \
-                -e 's,[@]LOGDIR[@],/usr/local/var/log,g' \
-                -e 's,[@]bindir[@],/usr/local/bin,g' \
-                -e 's,[@]sysconfdir[@],/usr/local/etc,g' \
-                -e 's,[@]DBDIR[@],/usr/local/etc/openvswitch,g' \
+                -e 's,[@]pkgdatadir[@],$(pkgdatadir),g' \
+                -e 's,[@]RUNDIR[@],$(RUNDIR),g' \
+                -e 's,[@]LOGDIR[@],$(LOGDIR),g' \
+                -e 's,[@]bindir[@],$(bindir),g' \
+                -e 's,[@]sysconfdir[@],$(sysconfdir),g' \
+                -e 's,[@]DBDIR[@],$(sysconfdir),g' \
 		< $? > $@.tmp && \
 	mv $@.tmp $@
 EXTRA_DIST += python/ovs/dirs.py.template
+CLEANFILES += python/ovs/dirs.py
diff --git a/python/ovs/.gitignore b/python/ovs/.gitignore
index 98527864664d..51030beca437 100644
--- a/python/ovs/.gitignore
+++ b/python/ovs/.gitignore
@@ -1 +1,2 @@ 
 version.py
+dir.py
diff --git a/python/ovs/dirs.py b/python/ovs/dirs.py
deleted file mode 100644
index c67aecbb46da..000000000000
--- a/python/ovs/dirs.py
+++ /dev/null
@@ -1,31 +0,0 @@ 
-# Licensed under the Apache License, Version 2.0 (the "License");
-# you may not use this file except in compliance with the License.
-# You may obtain a copy of the License at:
-#
-#     http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-# The @variables@ in this file are replaced by default directories for
-# use in python/ovs/dirs.py in the source directory and replaced by the
-# configured directories for use in the installed python/ovs/dirs.py.
-#
-import os
-
-# Note that the use of """ is to aid in dealing with paths with quotes in them.
-PKGDATADIR = os.environ.get("OVS_PKGDATADIR", """/usr/local/share/openvswitch""")
-RUNDIR = os.environ.get("OVS_RUNDIR", """/var/run""")
-LOGDIR = os.environ.get("OVS_LOGDIR", """/usr/local/var/log""")
-BINDIR = os.environ.get("OVS_BINDIR", """/usr/local/bin""")
-
-DBDIR = os.environ.get("OVS_DBDIR")
-if not DBDIR:
-    sysconfdir = os.environ.get("OVS_SYSCONFDIR")
-    if sysconfdir:
-        DBDIR = "%s/openvswitch" % sysconfdir
-    else:
-        DBDIR = """/usr/local/etc/openvswitch"""