[ovs-dev] [PATCH v4 1/3] rhel: rename openvswitch kmod rhel6 spec file

Flavio Leitner fbl at sysclose.org
Thu Jul 12 23:54:26 UTC 2018


On Thu, Jul 12, 2018 at 04:25:22PM -0700, Martin Xu wrote:
> This patch only affects rhel6 spec file.
> 
> The rhel6 kmod spec file is renamed from openvswitch-kmod-rhel6.spec
> to kmod-openvswitch-rhel6.spec . This is to prepare for the next
> patches to support building multiple kernel versions in the main
> package. The rename makes the spec file consistent with the resulted
> kmod-openvswitch-<version>.rpm, which is the real package with
> kernel module files.
> 
> Signed-off-by: Martin Xu <martinxu9.ovs at gmail.com>
> Reviewed-by: Flavio Leitner <fbl at redhat.com>
> CC: Greg Rose <gvrose8192 at gmail.com>
> CC: Ben Pfaff <blp at ovn.org>
> CC: Aaron Conole <aconole at redhat.com>
> ---
> v1->v2: fix improperly generated patch
> v2->v3: split from one patch into three patches
> v3->v4: updated commit message
> 
>  Documentation/intro/install/rhel.rst |   7 +--
>  poc/playbook-centos-builder.yml      |   8 +--
>  rhel/.gitignore                      |   2 +-
>  rhel/automake.mk                     |   6 +-
>  rhel/kmod-openvswitch-rhel6.spec.in  | 103 +++++++++++++++++++++++++++++++++++
>  rhel/openvswitch-kmod-rhel6.spec.in  | 103 -----------------------------------
>  6 files changed, 114 insertions(+), 115 deletions(-)
>  create mode 100644 rhel/kmod-openvswitch-rhel6.spec.in
>  delete mode 100644 rhel/openvswitch-kmod-rhel6.spec.in

Git used 'renamed' in the previous series, but not this time.
Series look good to me, though I have not tested.
fbl


> 
> diff --git a/Documentation/intro/install/rhel.rst b/Documentation/intro/install/rhel.rst
> index f8b2606..6f062e8 100644
> --- a/Documentation/intro/install/rhel.rst
> +++ b/Documentation/intro/install/rhel.rst
> @@ -197,17 +197,16 @@ the unit tests, run::
>  Kernel Module
>  ~~~~~~~~~~~~~
>  
> -On RHEL 6, to build the Open vSwitch kernel module, copy
> -rhel/openvswitch-kmod.files into the RPM sources directory and run::
> +On RHEL 6, to build the Open vSwitch kernel module run::
>  
> -    $ rpmbuild -bb rhel/openvswitch-kmod-rhel6.spec
> +    $ rpmbuild -bb rhel/kmod-openvswitch-rhel6.spec
>  
>  You might have to specify a kernel version and/or variants, e.g.:
>  
>      $ rpmbuild -bb \
>          -D "kversion 2.6.32-131.6.1.el6.x86_64" \
>          -D "kflavors default debug kdump" \
> -        rhel/openvswitch-kmod-rhel6.spec
> +        rhel/kmod-openvswitch-rhel6.spec
>  
>  This produces an "kmod-openvswitch" RPM for each kernel variant, in this
>  example: "kmod-openvswitch", "kmod-openvswitch-debug", and
> diff --git a/poc/playbook-centos-builder.yml b/poc/playbook-centos-builder.yml
> index 71f1040..e902db7 100644
> --- a/poc/playbook-centos-builder.yml
> +++ b/poc/playbook-centos-builder.yml
> @@ -41,13 +41,13 @@
>          chdir: /git/ovs/rhel
>      with_items:
>        - openvswitch.spec
> -      - openvswitch-kmod-rhel6.spec
> +      - kmod-openvswitch-rhel6.spec
>  
>    - name: Install build dependencies specified from spec files
>      shell: echo "y" | yum-builddep /tmp/{{item}}
>      with_items:
>        - openvswitch.spec
> -      - openvswitch-kmod-rhel6.spec
> +      - kmod-openvswitch-rhel6.spec
>  
>    - name: Create rpm dev tree
>      command: rpmdev-setuptree
> @@ -81,7 +81,7 @@
>        line: "Release: {{ ansible_local.builder.release }}"
>      with_items:
>        - openvswitch.spec
> -      - openvswitch-kmod-rhel6.spec
> +      - kmod-openvswitch-rhel6.spec
>  
>    - name: Build Open vSwitch user space rpms
>      command: rpmbuild -bb --without check rhel/openvswitch.spec
> @@ -89,7 +89,7 @@
>          chdir: "{{SOURCE}}/openvswitch-{{version.stdout}}"
>  
>    - name: Build Open vSwitch kmod rpms (only for currently loaded kernel)
> -    command: rpmbuild -bb  --without check rhel/openvswitch-kmod-rhel6.spec
> +    command: rpmbuild -bb  --without check rhel/kmod-openvswitch-rhel6.spec
>      args:
>          chdir: "{{SOURCE}}/openvswitch-{{version.stdout}}"
>  
> diff --git a/rhel/.gitignore b/rhel/.gitignore
> index e584a1e..a9c047f 100644
> --- a/rhel/.gitignore
> +++ b/rhel/.gitignore
> @@ -1,6 +1,6 @@
>  openvswitch-dkms.spec
>  openvswitch-kmod-rhel5.spec
> -openvswitch-kmod-rhel6.spec
> +kmod-openvswitch-rhel6.spec
>  openvswitch-kmod-fedora.spec
>  openvswitch.spec
>  openvswitch-fedora.spec
> diff --git a/rhel/automake.mk b/rhel/automake.mk
> index 137ff4a..82a4508 100644
> --- a/rhel/automake.mk
> +++ b/rhel/automake.mk
> @@ -15,8 +15,8 @@ EXTRA_DIST += \
>  	rhel/etc_sysconfig_network-scripts_ifup-ovs \
>  	rhel/openvswitch-dkms.spec \
>  	rhel/openvswitch-dkms.spec.in \
> -	rhel/openvswitch-kmod-rhel6.spec \
> -	rhel/openvswitch-kmod-rhel6.spec.in \
> +	rhel/kmod-openvswitch-rhel6.spec \
> +	rhel/kmod-openvswitch-rhel6.spec.in \
>  	rhel/openvswitch-kmod.files \
>  	rhel/openvswitch-kmod-fedora.spec \
>  	rhel/openvswitch-kmod-fedora.spec.in \
> @@ -48,7 +48,7 @@ update_rhel_spec = \
>  $(srcdir)/rhel/openvswitch-dkms.spec: rhel/openvswitch-dkms.spec.in $(top_builddir)/config.status
>  	$(update_rhel_spec)
>  
> -$(srcdir)/rhel/openvswitch-kmod-rhel6.spec: rhel/openvswitch-kmod-rhel6.spec.in $(top_builddir)/config.status
> +$(srcdir)/rhel/kmod-openvswitch-rhel6.spec: rhel/kmod-openvswitch-rhel6.spec.in $(top_builddir)/config.status
>  	$(update_rhel_spec)
>  
>  $(srcdir)/rhel/openvswitch-kmod-fedora.spec: rhel/openvswitch-kmod-fedora.spec.in $(top_builddir)/config.status
> diff --git a/rhel/kmod-openvswitch-rhel6.spec.in b/rhel/kmod-openvswitch-rhel6.spec.in
> new file mode 100644
> index 0000000..daa3dad
> --- /dev/null
> +++ b/rhel/kmod-openvswitch-rhel6.spec.in
> @@ -0,0 +1,103 @@
> +# Spec file for Open vSwitch kernel modules on Red Hat Enterprise
> +# Linux 6.
> +
> +# Copyright (C) 2011, 2012 Nicira, Inc.
> +#
> +# Copying and distribution of this file, with or without modification,
> +# are permitted in any medium without royalty provided the copyright
> +# notice and this notice are preserved.  This file is offered as-is,
> +# without warranty of any kind.
> +
> +%define oname openvswitch
> +
> +Name:           %{oname}-kmod
> +Version:        @VERSION@
> +Release:        1%{?dist}
> +Summary:        Open vSwitch kernel module
> +
> +Group:          System/Kernel
> +License:        GPLv2
> +URL:            http://openvswitch.org/
> +Source0:        %{oname}-%{version}.tar.gz
> +Source1:        %{oname}-kmod.files
> +BuildRoot:      %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
> +BuildRequires:  %kernel_module_package_buildreqs
> +
> +# Without this we get an empty openvswitch-debuginfo package (whose name
> +# conflicts with the openvswitch-debuginfo package for OVS userspace).
> +%undefine _enable_debug_packages
> +
> +# Use -D 'kversion 2.6.32-131.6.1.el6.x86_64' to build package
> +# for specified kernel version.
> +%{?kversion:%define kernel_version %kversion}
> +
> +# Use -D 'kflavors default debug kdump' to build packages for
> +# specified kernel variants.
> +%{!?kflavors:%define kflavors default}
> +
> +%kernel_module_package -n %{oname} -f %{SOURCE1} %kflavors
> +
> +%description
> +Open vSwitch Linux kernel module.
> +
> +%prep
> +
> +%setup -n %{oname}-%{version}
> +
> +%build
> +for flavor in %flavors_to_build; do
> +        mkdir _$flavor
> +        (cd _$flavor && ../configure --with-linux="%{kernel_source $flavor}")
> +        %{__make} -C _$flavor/datapath/linux %{?_smp_mflags}
> +done
> +
> +%install
> +export INSTALL_MOD_PATH=$RPM_BUILD_ROOT
> +export INSTALL_MOD_DIR=extra/%{oname}
> +for flavor in %flavors_to_build ; do
> +         make -C %{kernel_source $flavor} modules_install \
> +                 M="`pwd`"/_$flavor/datapath/linux
> +
> +         # Cleanup unnecessary kernel-generated module dependency files.
> +         find $INSTALL_MOD_PATH/lib/modules -iname 'modules.*' -exec rm {} \;
> +done
> +install -d %{buildroot}%{_sysconfdir}/depmod.d/
> +for module in %{buildroot}/lib/modules/%{kernel_version}/$INSTALL_MOD_DIR/*.ko;
> +do
> +    modname="$(basename ${module})"
> +    echo "override ${modname%.ko} * extra/%{oname}" >> %{oname}.conf
> +    echo "override ${modname%.ko} * weak-updates/%{oname}" >> %{oname}.conf
> +done
> +install -m 644 %{oname}.conf %{buildroot}%{_sysconfdir}/depmod.d/
> +
> +%post
> +# Ensure that modprobe will find our modules.
> +for k in $(cd /lib/modules && /bin/ls); do
> +    [ -d "/lib/modules/$k/kernel/" ] && depmod -a "$k"
> +done
> +if [ -x "/sbin/weak-modules" ]; then
> +    for m in openvswitch vport-gre vport-stt vport-geneve \
> +             vport-lisp vport-vxlan; do
> +        echo "/lib/modules/%{kernel}/extra/$m.ko"
> +    done | /sbin/weak-modules --add-modules
> +fi
> +
> +%postun
> +for k in $(cd /lib/modules && /bin/ls); do
> +    [ -d "/lib/modules/$k/kernel/" ] && depmod -a "$k"
> +done
> +if [ "$1" = 0 ]; then  # Erase, not upgrade
> +    if [ -x "/sbin/weak-modules" ]; then
> +        for m in openvswitch vport-gre vport-stt vport-geneve \
> +                 vport-lisp vport-vxlan; do
> +        echo "/lib/modules/%{kernel}/extra/$m.ko"
> +    done | /sbin/weak-modules --remove-modules
> +    fi
> +fi
> +
> +%files
> +%defattr(644,root,root)
> +/etc/depmod.d/%{oname}.conf
> +
> +%clean
> +rm -rf $RPM_BUILD_ROOT
> diff --git a/rhel/openvswitch-kmod-rhel6.spec.in b/rhel/openvswitch-kmod-rhel6.spec.in
> deleted file mode 100644
> index daa3dad..0000000
> --- a/rhel/openvswitch-kmod-rhel6.spec.in
> +++ /dev/null
> @@ -1,103 +0,0 @@
> -# Spec file for Open vSwitch kernel modules on Red Hat Enterprise
> -# Linux 6.
> -
> -# Copyright (C) 2011, 2012 Nicira, Inc.
> -#
> -# Copying and distribution of this file, with or without modification,
> -# are permitted in any medium without royalty provided the copyright
> -# notice and this notice are preserved.  This file is offered as-is,
> -# without warranty of any kind.
> -
> -%define oname openvswitch
> -
> -Name:           %{oname}-kmod
> -Version:        @VERSION@
> -Release:        1%{?dist}
> -Summary:        Open vSwitch kernel module
> -
> -Group:          System/Kernel
> -License:        GPLv2
> -URL:            http://openvswitch.org/
> -Source0:        %{oname}-%{version}.tar.gz
> -Source1:        %{oname}-kmod.files
> -BuildRoot:      %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
> -BuildRequires:  %kernel_module_package_buildreqs
> -
> -# Without this we get an empty openvswitch-debuginfo package (whose name
> -# conflicts with the openvswitch-debuginfo package for OVS userspace).
> -%undefine _enable_debug_packages
> -
> -# Use -D 'kversion 2.6.32-131.6.1.el6.x86_64' to build package
> -# for specified kernel version.
> -%{?kversion:%define kernel_version %kversion}
> -
> -# Use -D 'kflavors default debug kdump' to build packages for
> -# specified kernel variants.
> -%{!?kflavors:%define kflavors default}
> -
> -%kernel_module_package -n %{oname} -f %{SOURCE1} %kflavors
> -
> -%description
> -Open vSwitch Linux kernel module.
> -
> -%prep
> -
> -%setup -n %{oname}-%{version}
> -
> -%build
> -for flavor in %flavors_to_build; do
> -        mkdir _$flavor
> -        (cd _$flavor && ../configure --with-linux="%{kernel_source $flavor}")
> -        %{__make} -C _$flavor/datapath/linux %{?_smp_mflags}
> -done
> -
> -%install
> -export INSTALL_MOD_PATH=$RPM_BUILD_ROOT
> -export INSTALL_MOD_DIR=extra/%{oname}
> -for flavor in %flavors_to_build ; do
> -         make -C %{kernel_source $flavor} modules_install \
> -                 M="`pwd`"/_$flavor/datapath/linux
> -
> -         # Cleanup unnecessary kernel-generated module dependency files.
> -         find $INSTALL_MOD_PATH/lib/modules -iname 'modules.*' -exec rm {} \;
> -done
> -install -d %{buildroot}%{_sysconfdir}/depmod.d/
> -for module in %{buildroot}/lib/modules/%{kernel_version}/$INSTALL_MOD_DIR/*.ko;
> -do
> -    modname="$(basename ${module})"
> -    echo "override ${modname%.ko} * extra/%{oname}" >> %{oname}.conf
> -    echo "override ${modname%.ko} * weak-updates/%{oname}" >> %{oname}.conf
> -done
> -install -m 644 %{oname}.conf %{buildroot}%{_sysconfdir}/depmod.d/
> -
> -%post
> -# Ensure that modprobe will find our modules.
> -for k in $(cd /lib/modules && /bin/ls); do
> -    [ -d "/lib/modules/$k/kernel/" ] && depmod -a "$k"
> -done
> -if [ -x "/sbin/weak-modules" ]; then
> -    for m in openvswitch vport-gre vport-stt vport-geneve \
> -             vport-lisp vport-vxlan; do
> -        echo "/lib/modules/%{kernel}/extra/$m.ko"
> -    done | /sbin/weak-modules --add-modules
> -fi
> -
> -%postun
> -for k in $(cd /lib/modules && /bin/ls); do
> -    [ -d "/lib/modules/$k/kernel/" ] && depmod -a "$k"
> -done
> -if [ "$1" = 0 ]; then  # Erase, not upgrade
> -    if [ -x "/sbin/weak-modules" ]; then
> -        for m in openvswitch vport-gre vport-stt vport-geneve \
> -                 vport-lisp vport-vxlan; do
> -        echo "/lib/modules/%{kernel}/extra/$m.ko"
> -    done | /sbin/weak-modules --remove-modules
> -    fi
> -fi
> -
> -%files
> -%defattr(644,root,root)
> -/etc/depmod.d/%{oname}.conf
> -
> -%clean
> -rm -rf $RPM_BUILD_ROOT
> -- 
> 1.8.3.1
> 
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev

-- 
Flavio



More information about the dev mailing list