Flavio Leitner <[email protected]> writes:

> On Wed, 15 Nov 2017 02:20:16 -0500
> Aaron Conole <[email protected]> wrote:
>
>> Flavio Leitner <[email protected]> writes:
>> 
>> > Instead of listing all the dependencies, use the RPM group
>> > 'Development Tools' and the builddep tool to find specific
>> > ones.
>> >
>> > Signed-off-by: Flavio Leitner <[email protected]>
>> > ---
>> >  Documentation/intro/install/fedora.rst | 54
>> > +++++++++++++++++++++++-----------
>> >  Documentation/intro/install/rhel.rst   | 34 +++++++++++++++------
>> >  2 files changed, 62 insertions(+), 26 deletions(-)
>> >
>> > diff --git a/Documentation/intro/install/fedora.rst
>> > b/Documentation/intro/install/fedora.rst
>> > index 3119bd9aa..70cebfb16 100644
>> > --- a/Documentation/intro/install/fedora.rst
>> > +++ b/Documentation/intro/install/fedora.rst
>> > @@ -36,23 +36,43 @@ RHEL 7.x and its derivatives, including CentOS 7.x
>> > and Scientific Linux 7.x.
>> >  Build Requirements
>> >  ------------------
>> >  
>> > -To build packages for a Fedora Linux host, you will need the
>> > packages described
>> > -in the :doc:`general`. Specific packages (by package name) include:
>> > -
>> > -- rpm-build
>> > -- autoconf automake libtool
>> > -- systemd-units openssl openssl-devel
>> > -- python2-devel python3-devel
>> > -- python2 python2-twisted python2-zope-interface python2-six 
>> > python2-sphinx
>> > -- desktop-file-utils
>> > -- groff graphviz
>> > -- procps-ng
>> > -- checkpolicy selinux-policy-devel
>> > -
>> > -And (optionally):
>> > -
>> > -- libcap-ng libcap-ng-devel
>> > -- dpdk-devel
>> > +You will need to install all required packages to build the RPMs.
>> > +Newer distributions use ``dnf`` but if it's not available, then use
>> > +``yum`` instructions.
>> > +
>> > +The command below will install RPM tools and generic build dependencies.
>> > +And (optionally) include these packages: libcap-ng
>> > libcap-ng-devel dpdk-devel.
>> > +
>> > +DNF:
>> > +::
>> > +
>> > +    $ dnf install @'Development Tools' rpm-build dnf-plugins-core
>> > +
>> > +YUM:
>> > +::
>> > +
>> > +    $ yum install @'Development Tools' rpm-build yum-utils
>> > +
>> > +Then it is necessary to install Open vSwitch specific build dependencies.
>> > +The dependencies are listed in the SPEC file, but first it is necessary
>> > +to replace the VERSION tag to be a valid SPEC.
>> > +
>> > +The command below will create a temporary SPEC file:
>> > +::
>> > +    $ sed -e 's/@VERSION@/0.0.1/' rhel/openvswitch-fedora.spec.in \
>> > +      > /tmp/ovs.spec
>> > +
>> > +And to install specific dependencies, use the corresponding tool below.  
>> 
>> Is there any reason we can't `make rhel/openvswitch-fedora.spec` for
>> this?  I think ./boot && ./configure would work with Development Tools
>> installed, and then the only thing left is let the make system create
>> just that file?
>
> It doesn't work due to missing dependencies, like libssl-devel.
>
> I thought about having the minimum set of dependencies listed
> in the documentation and then do:
> $ ./boot
> $ ./configure
> $ make rpm
>
> which would prep the spec and run builddep and then run rpmbuild,
> but then we are back to maintain the list of packages in the doc
> and it is not that different from the steps in this patch and it
> requires root.
>
> And the other option is to provide a rhel/ script to do what this
> patch is explaining to do, but obviously it would require root too.

Right.  Well, I'm okay with either approach: the tmp file as documented
or a script.  If you decide to change it, no problems.  Otherwise:

Acked-by: Aaron Conole <[email protected]>

> fbl
>  
>> > +DNF:
>> > +::
>> > +    $ dnf builddep /tmp/ovs.spec
>> > +
>> > +YUM:
>> > +::
>> > +    $ yum-builddep /tmp/ovs.spec
>> > +
>> > +Once that is completed, remove the file ``/tmp/ovs.spec``.
>> >  
>> >  Bootstraping
>> >  ------------
>> > diff --git a/Documentation/intro/install/rhel.rst
>> > b/Documentation/intro/install/rhel.rst
>> > index 0ef6f55a3..184089e89 100644
>> > --- a/Documentation/intro/install/rhel.rst
>> > +++ b/Documentation/intro/install/rhel.rst
>> > @@ -70,17 +70,33 @@ directory is ``/usr/src/redhat/SOURCES``. On RHEL
>> > 6, the default ``_topdir`` is
>> >  Build Requirements
>> >  ------------------
>> >  
>> > -To compile the RPMs, you will need to install the packages described in 
>> > the
>> > -:doc:`general` along with some additional packages. These can be
>> > installed with
>> > -the below command::
>> > +You will need to install all required packages to build the RPMs.
>> > +The command below will install RPM tools and generic build dependencies:
>> > +::
>> > +    $ yum install @'Development Tools' rpm-build yum-utils
>> >  
>> > - $ yum install gcc make python-devel openssl-devel kernel-devel
>> > graphviz \
>> > -        kernel-debug-devel autoconf automake rpm-build redhat-rpm-config \
>> > -        libtool checkpolicy selinux-policy-devel python-sphinx
>> > +Then it is necessary to install Open vSwitch specific build dependencies.
>> > +The dependencies are listed in the SPEC file, but first it is necessary
>> > +to replace the VERSION tag to be a valid SPEC.
>> >  
>> > -.. note::
>> > - If python-sphinx package is not available in your version of
>> > RHEL, you can
>> > -  install it via pip with 'pip install sphinx'.
>> > +The command below will create a temporary SPEC file:
>> > +::
>> > +    $ sed -e 's/@VERSION@/0.0.1/' rhel/openvswitch.spec.in > /tmp/ovs.spec
>> > +
>> > +And to install specific dependencies, use yum-builddep tool:
>> > +::
>> > +    $ yum-builddep /tmp/ovs.spec
>> > +
>> > +Once that is completed, remove the file ``/tmp/ovs.spec``.
>> > +
>> > +If python-sphinx package is not available in your version of RHEL, you can
>> > +install it via pip with 'pip install sphinx'.
>> > +
>> > +Open vSwitch requires python 2.7 or newer which is not available in older
>> > +distributions. In the case of RHEL 6.x and its derivatives, one option is
>> > +to install python34 and python34-six from `EPEL`_.
>> > +
>> > +.. _EPEL: https://fedoraproject.org/wiki/EPEL
>> >  
>> >  .. _rhel-bootstrapping:  
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to