summaryrefslogtreecommitdiff
path: root/Makefile.am
Commit message (Collapse)AuthorAgeFilesLines
* Makefile: Add build-time check for files with initial tabs.Ben Pfaff2018-06-111-0/+15
| | | | | | | This should make it harder to reintroduce inappropriate indentation. Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Justin Pettit <jpettit@ovn.org>
* Makefile.am: Distribute poc/playbook-fedora-builder.yml.Ben Pfaff2018-04-251-0/+1
| | | | | | | | | This fixes a broken build. CC: Ansis Atteka <aatteka@ovn.org> Fixes: 3a2ceb01c81b ("poc: Automate building of Fedora rpm packages") Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Ansis Atteka <aatteka@ovn.org>
* Edit Open vSwitch license info so that GitHub recognizes it.Andrea Kao2018-04-161-0/+1
| | | | | | | | | | | | | | | | | | | GitHub uses a library called Licensee to identify a project's license type. It shows this information in the status bar and via the API if it can unambiguously identify the license. This commit creates a LICENSE file that stores the full text of the Apache license. It also removes the COPYING file and transfers its contents to a new "License" section in the README. Collectively, these changes allow Licensee to successfully identify the license type of Open vSwitch's codebase as Apache. Submitted-at: https://github.com/openvswitch/ovs/pull/224 Signed-off-by: Andrea Kao <eirinikos@gmail.com> [blp@ovn.org removed references to COPYING and updated Makefile.am] Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Aaron Conole <aconole@redhat.com>
* ovsdb-server: Add support for a built-in _Server database.Ben Pfaff2018-03-241-8/+0
| | | | | | | | | | | | | | | | | | | | | The _Server database is valuable primarily because it provides database clients a way to find out the details of changes to databases, schemas, etc. in a granular, natural way. Until now, the only way that the server could notify clients about these kinds of changes was to close the session; when the client reconnects, it is expected to reassess the server's state. One way to provide this kind of granular information would be to add specific JSON-RPC requests to obtain notifications for different kinds of changes, but since ovsdb-server already provides granular and flexible notification support for databases, using a database for the purpose is convenient and avoids duplicating functionality. Initially this database only reports databases' names and schemas, but when clustering support is added in a later commit it will also report important aspects of clustering and cluster status. Thus, this database also reduces the need to add JSON-RPC calls to retrieve information about new features. Signed-off-by: Ben Pfaff <blp@ovn.org>
* datapath-windows: Support to selectively compile targetsShashank Ram2018-03-021-0/+15
| | | | | | | | | | | | | | | | | Adds support to selectively compile kernel driver for target versions. This is useful when environments to compile for all targets might not be available on the user's machine, or if the user wants to only compile some targets selectively. Also once appveyor has support to build Win10 targets, we will not pass the "--with-vstudiotargetver" to the configure script. Signed-off-by: Shashank Ram <rams@vmware.com> Acked-by: Anand Kumar <kumaranand@vmware.com> Acked-by: Alin Gabriel Serdean <aserdean@ovn.org> Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org>
* poc: Introduce Proof of Concepts (Package building)Ansis Atteka2018-02-121-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch sets up foundations for Proof of Concepts that simply materialize documentation into Ansible instructions executed in virtualized Vagrant environment. This Proof of Concept allows to easily build: 1. *.deb packages on Ubuntu 16.04; AND 2. *.rpm packages on CentOS 7.4. It also sets up DEB and RPM repository over HTTP that can be used to pull these openvswitch packages with apt-get or yum from another host. This particular Proof of Concept is intended to address following use-cases: 1. for new OVS users to see how debian and rpm packages are built; 2. for developers to easily check for packaging build regressions; 3. for developers to easily share their sandbox builds into QE setups (opposed to manually copying binaries); 4. for developers to add other Proof of Concepts that possibly may require full end-to-end integration with other thirdparty projects (e.g. DPI, libvirt, IPsec) and need Open vSwitch packages. Tested-by: Greg Rose <gvrose8192@gmail.com> Reviewed-by: Greg Rose <gvrose8192@gmail.com> Signed-off-by: Ansis Atteka <aatteka@ovn.org>
* datapath-windows: Specify platform arch during compilationShashank Ram2018-02-061-4/+5
| | | | | | | | Newer compilers expect the platorm architecture to be passed. Signed-off-by: Shashank Ram <rams@vmware.com> Acked-by: Alin Gabriel Serdean <aserdean@ovn.org> Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org>
* Makefile.am: Use correct path separator for WindowsShashank Ram2018-02-051-2/+2
| | | | | Signed-off-by: Shashank Ram <rams@vmware.com> Signed-off-by: Ben Pfaff <blp@ovn.org>
* flake8: Ignore bare except violationsAaron Conole2018-01-121-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Newer versions of flake8 (3.5.0, mccabe: 0.6.1, pycodestyle: 2.3.1, pyflakes: 1.6.0) add an error code for 'bare exception'. The OvS codebase does use bare exceptions in places, especially when the specific exception isn't important (ie: the program will be terminating, so the specific exception isn't important). Without this change, the following error messages appear: utilities/checkpatch.py:476:5: E722 do not use bare except' utilities/checkpatch.py:514:5: E722 do not use bare except' utilities/ovs-dev.py:189:5: E722 do not use bare except' utilities/ovs-dev.py:192:9: E722 do not use bare except' utilities/ovs-dev.py:197:5: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:360:13: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:434:5: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:470:13: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:609:9: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:679:5: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:712:13: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:744:9: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:751:9: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:825:5: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:1006:13: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:1041:13: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:1079:5: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:1202:5: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:1247:9: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:1257:13: E722 do not use bare except' utilities/bugtool/ovs-bugtool.in:1328:9: E722 do not use bare except' tests/test-daemon.py:60:5: E722 do not use bare except' tests/test-l7.py:23:1: E722 do not use bare except' tests/test-unixctl.py:96:5: E722 do not use bare except' xenserver/usr_share_openvswitch_scripts_ovs-xapi-sync:404:5: E722 do not use bare except' python/ovs/fcntl_win.py:39:9: E722 do not use bare except' python/ovs/poller.py:38:1: E722 do not use bare except' python/ovs/socket_util.py:151:13: E722 do not use bare except' python/ovs/stream.py:169:17: E722 do not use bare except' python/ovs/stream.py:578:17: E722 do not use bare except' python/ovs/timeval.py:51:1: E722 do not use bare except' python/ovstest/util.py:52:5: E722 do not use bare except' vtep/ovs-vtep:767:5: E722 do not use bare except' Signed-off-by: Aaron Conole <aconole@redhat.com> Signed-off-by: Ben Pfaff <blp@ovn.org>
* configure: New --enable-sparse option to enable sparse checking by default.Ben Pfaff2018-01-121-0/+4
| | | | | | | | | | | | Until now, "make" called sparse to do checking only if C=1 was passed on the command line. It was easy for developers to forget to specify that. This commit adds another option: specifying --enable-sparse on the configure command line enables sparse checking by default. (It can still be disabled with C=0.) Requested-by: Justin Pettit <jpettit@ovn.org> Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Justin Pettit <jpettit@ovn.org>
* Remove Perl dependency.Ben Pfaff2017-11-261-2/+0
| | | | | | | Nothing in the OVS tree uses Perl any longer, so remove the dependency. Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Aaron Conole <aconole@redhat.com>
* tests: Convert sodepends build tool from Perl to Python.Ben Pfaff2017-11-261-3/+3
| | | | | | | | Perl is unfashionable and Python is more widely available and understood, so this commit converts one of the OVS uses of Perl into Python. Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Aaron Conole <aconole@redhat.com>
* tests: Convert soexpand build tool from Perl to Python.Ben Pfaff2017-11-261-2/+2
| | | | | | | | Perl is unfashionable and Python is more widely available and understood, so this commit converts one of the OVS uses of Perl into Python. Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Aaron Conole <aconole@redhat.com>
* tests: Convert dpdkstrip utility from Perl to Python.Ben Pfaff2017-11-261-2/+2
| | | | | | | | Perl is unfashionable and Python is more widely available and understood, so this commit converts one of the OVS uses of Perl into Python. Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Aaron Conole <aconole@redhat.com>
* installer-windows: Add x64 installer build via command lineAlin Gabriel Serdean2017-11-141-0/+1
| | | | | | | | | | | | Add a new variable to know on which platform we are compiling. Make the msbuild command to be aware of the platform we want to build. Shorter the msbuild parameters from `property:`->`p:`. Change slashes to double slashes so msys does not get confused. Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org> Acked-by: Alin Balutoiu <abalutoiu@cloudbasesolutions.com>
* build-windows: Suppress output from MSBuildAlin Gabriel Serdean2017-11-141-4/+4
| | | | | | | | | Add `nologo` parameter to MSBuild to suppress the banner. This will make tidier log messages. Signed-off-by: Alin Gabriel Serdean <aserdean@ovn.org> Acked-by: Alin Balutoiu <abalutoiu@cloudbasesolutions.com>
* treewide: Get rid of "echo -n", and add a test to prevent regression.Ben Pfaff2017-10-301-0/+11
| | | | | | | | "echo -n" is not POSIX and has spotty support in shells. CC: Timothy Redaelli <tredaelli@redhat.com> CC: Flavio Leitner <fbl@sysclose.org> Signed-off-by: Ben Pfaff <blp@ovn.org>
* makefile: hook up dpdkstrip preprocessorAaron Conole2017-08-311-0/+4
| | | | | | | | | | | | | | | | When building the openvswitch-custom.te file, it is important to have the ability to filter out dpdk blocks depending on whether the system has been configured with dpdk or not. This allows using all the standard .in file blocks, as well as the dpdkstrip blocks, when constructing the selinux policy file. Additionally, this means any .in files which might want to change based on configuration to exclude blocks based on dpdk can do so. Acked-by: Flavio Leitner <fbl@sysclose.org> Acked-by: Ansis Atteka <aatteka@ovn.org> Signed-off-by: Aaron Conole <aconole@redhat.com> Tested-by: Jean Hsiao <jhsiao@redhat.com>
* dpdkstrip: add a preprocessor tool for stripping dpdk blocksaaron conole2017-08-081-0/+1
| | | | | | | | | | | | | | Normally, in C code, pre-processing macros can be used to enable/disable specific functionality based on switches passed to configure. This works for DPDK using the --with-dpdk flag, which sets the DPDK_NETDEV define to the appropriate value. However, not all files are processed with the C pre-processor. For those files which are not, this commit adds a new pre-processor tool for .in files to either include or exclude those stanzas as appropriate. Signed-off-by: Aaron Conole <aconole@redhat.com> Signed-off-by: Russell Bryant <russell@ovn.org>
* Automatically verify that OVS header files work OK in C++ also.Ben Pfaff2017-07-311-0/+1
| | | | | | | | | | This should help address a recurring problem. This change makes the OVS header files, when parsed by a C++ compiler, require C++11 or later. Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Russell Bryant <russell@ovn.org>
* ctags: include symbols with locking annotations.Flavio Leitner2017-07-131-0/+2
| | | | | | | | | | | | | | OVS uses extensively clang annotations for thread safety checks. The ctags tool can't parse them, so they are not included in the tag file. This patch improves the configure script to generate a list of identifiers from the header compiler.h to be ignored by ctags. Signed-off-by: Flavio Leitner <fbl@redhat.com> Signed-off-by: Ben Pfaff <blp@ovn.org> Reviewed-by: Aaron Conole <aconole@redhat.com>
* Makefiles: Fail build for flake8 only when configured with --enable-Werror.Ben Pfaff2017-07-071-1/+1
| | | | | | | | | | | | | | | | | | flake8 checking is useful. Until now, it always failed the build for any flake8 errors. This is too aggressive, for the same reason that always failing the build for any compiler warnings is too aggressive: compilers change over time and asynchronously from OVS itself. Thus, if we release some version of OVS today, even if it's flake8-clean today, it might not be flake8-clean tomorrow, even with the same settings. We don't want to have to track flake8 warnings on every release branch. Thus, this adopts the same policy for compiler warnings: always report them, but only fail the build if --enable-Werror was configured. Usually just developers use that configure option, and they're prepared to deal with the fallout. Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Russell Bryant <russell@ovn.org>
* Replace most uses of and references to "ifconfig" by "ip".Ben Pfaff2017-06-011-0/+14
| | | | | | | | | | | | | | | | | | | | | | It's becoming more common that OSes include "ip" but not "ifconfig", so it's best to avoid using the latter. This commit removes most references to "ifconfig" and replaces them by "ip". It also adds a build-time check to make it harder to introduce new uses of "ifconfig". There are important differences between "ifconfig" and "ip": - An "ifconfig" command that sets an IP address also brings the interface up, but a similar "ip addr add" command does not, so it is often necessary (or at least precautionary) to add an "ip link set <dev> up" command. - "ifconfig" can infer a netmask from an IP adddress, but "ip" always assumes /32 if none is given. - "ifconfig" with address 0.0.0.0 removes any configured IP address, but "ip addr add" does not, so "ifconfig <dev> 0.0.0.0" must be replaced by "ip addr del" or "ip addr flush". Signed-off-by: Ben Pfaff <blp@ovn.org>
* Makefile: Fix name of coding style guide.Ben Pfaff2017-03-301-1/+1
| | | | | Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Stephen Finucane <stephen@that.guru>
* Makefile: Drop vestiges of support for non-GNU Make.Ben Pfaff2017-03-081-6/+0
| | | | | | | | | Open vSwitch has documented a requirement for GNU Make for a long time, yet it had vestiges catering to other make implementations. This removes those. Signed-off-by: Ben Pfaff <blp@ovn.org> Acked-by: Russell Bryant <russell@ovn.org>
* Makefile: Break the build if .gitignore files are distributed.Ben Pfaff2017-03-071-1/+6
| | | | | | | | This would have found a .gitignore file recently added to the distribution. CC: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com> Signed-off-by: Ben Pfaff <blp@ovn.org> Reviewed-by: Markos Chandras <mchandras@suse.de>
* flake8: Fix build with flake8-import-order installed.Russell Bryant2017-03-071-1/+1
| | | | | | | | | OpenStack CI is currently failing due to some flake8 warnings emitted from the flake8-import-order plugin. Just ignore all of those warnings since they're just style things that aren't important. Signed-off-by: Russell Bryant <russell@ovn.org> Acked-by: Ben Pfaff <blp@ovn.org>
* Makefile.am: Suppress echoing of config-h-check.Timothy Redaelli2017-02-221-2/+2
| | | | | | Fixes: c458e4a372d1 ("Makefile.am: Avoid include/ depending on lib/.") Signed-off-by: Timothy Redaelli <tredaelli@redhat.com> Signed-off-by: Joe Stringer <joe@ovn.org>
* Makefile.am: Avoid include/ depending on lib/.Yi-Hung Wei2017-02-211-0/+7
| | | | | | | | | | Add a build check that public openvswitch header file should not include internal library. Suggested-by: Joe Stringer <joe@ovn.org> Suggested-by: Daniele Di Proietto <diproiettod@vmware.com> Signed-off-by: Yi-Hung Wei <yihung.wei@gmail.com> Signed-off-by: Joe Stringer <joe@ovn.org>
* xml2nroff: Port to python3.Joe Stringer2017-01-061-0/+1
| | | | | Signed-off-by: Joe Stringer <joe@ovn.org> Acked-by: Ben Pfaff <blp@ovn.org>
* make: Standardize indentationStephen Finucane2017-01-041-90/+94
| | | | | | | | If we're going to mix tabs and spaces, let's do it consistently. Signed-off-by: Stephen Finucane <stephen@that.guru> [blp@ovn.org reformatted the flake8-check commands] Signed-off-by: Ben Pfaff <blp@ovn.org>
* make: Validate documents on buildStephen Finucane2017-01-041-1/+1
| | | | | | | | | | | | | | | Build documentation as part of every build. This ensures any syntax errors are caught early. In addition, a 'check-docs' target is added to validates all external links. The nitpick ('-n') flag is added to ensure all possible warnings are raised. Signed-off-by: Stephen Finucane <stephen@that.guru> [blp@ovn.org folded in changes for --enable-silent-rules] Signed-off-by: Ben Pfaff <blp@ovn.org>
* build-windows: Propagate PACKAGE_VERSION to the driver filesAlin Serdean2016-12-211-4/+4
| | | | | | | | | | This patch propagates the automake value 'PACKAGE_VERSION' to the driver specific information files, overwriting the Visual Studio default value of Version, when building the driver via msys. Signed-off-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com> Acked-by: Sairam Venugopal <vsairam@vmware.com> Signed-off-by: Gurucharan Shetty <guru@ovn.org>
* doc: Remove documentation from distdoc targetStephen Finucane2016-12-121-6/+2
| | | | | | | | Basic Sphinx integration is now complete. Remove the documentation aspects of the 'dist-docs' target in favor of the htmldocs target. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Ben Pfaff <blp@ovn.org>
* doc: Populate 'faq' sectionStephen Finucane2016-12-121-1/+0
| | | | | | | | This is mostly the exact same contents, albeit broken up into multiple files. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Ben Pfaff <blp@ovn.org>
* doc: Move WHY-OVSStephen Finucane2016-12-121-2/+1
| | | | | | | | This is moved separately due to the sheer number of references to this file in the codebase. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Ben Pfaff <blp@ovn.org>
* doc: Populate 'topics' sectionStephen Finucane2016-12-121-4/+0
| | | | | | | | | | | There are many docs that don't need to kept at the top level, along with many more hidden in random folders. Move them all. This also allows us to add the '-W' flag to Sphinx, ensuring unindexed docs result in build failures. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Ben Pfaff <blp@ovn.org>
* doc: Further populate the 'howto' sectionStephen Finucane2016-12-121-2/+0
| | | | | | | | | There are a couple of references to these for various build systems. The website is going to be our "one true resource" for all docs, so simply remove these references. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Ben Pfaff <blp@ovn.org>
* doc: Populate 'install', 'howto' sectionsStephen Finucane2016-12-121-15/+0
| | | | | | | | | This is a dumb move of all 'INSTALL*' docs, with very little refactoring (mostly updating links and making the titles a little more consistent. Additional refactoring will be done in subsequent changes. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Ben Pfaff <blp@ovn.org>
* doc: Populate 'internals' sectionStephen Finucane2016-12-121-4/+0
| | | | | | | | | | This is mostly docs moved from the top-level directory and content scraped from the Open vSwitch website source [1]. [1] https://github.com/openvswitch/openvswitch.github.io/ Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Ben Pfaff <blp@ovn.org>
* build: fix rpm-fedora target breakageLance Richardson2016-11-301-0/+1
| | | | | | | | | | | | | | Since commit 3deca69b08f2 ("doc: Convert AUTHORS to rST"), the rpm-fedora target fails to build with: *** No rule to make target `AUTHORS.rst', needed by `debian/copyright'. Fix by adding AUTHORS.rst to the docs list to ensure that it is included in the dist archive. Fixes: 3deca69b08f2 ("doc: Convert AUTHORS to rST") Signed-off-by: Lance Richardson <lrichard@redhat.com> Signed-off-by: Ben Pfaff <blp@ovn.org>
* build: Add .mailmap to EXTRA_DIST.Russell Bryant2016-11-061-1/+2
| | | | Signed-off-by: Russell Bryant <russell@ovn.org>
* doc: Convert INSTALL.DPDK-ADVANCED to rSTStephen Finucane2016-11-031-1/+1
| | | | | Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Russell Bryant <russell@ovn.org>
* doc: Convert INSTALL.SELinux to rSTStephen Finucane2016-11-031-1/+1
| | | | | | | Refer to 'dnf' and not the deprecated 'yum'. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Russell Bryant <russell@ovn.org>
* doc: Convert INSTALL.RHEL to rSTStephen Finucane2016-11-031-1/+1
| | | | | Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Russell Bryant <russell@ovn.org>
* doc: Convert INSTALL.NetBSD to rSTStephen Finucane2016-11-031-1/+1
| | | | | Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Russell Bryant <russell@ovn.org>
* doc: Convert INSTALL.Libvirt to rSTStephen Finucane2016-11-031-1/+1
| | | | | Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Russell Bryant <russell@ovn.org>
* doc: Convert INSTALL.SSL to rSTStephen Finucane2016-11-031-1/+1
| | | | | Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Russell Bryant <russell@ovn.org>
* doc: Convert INSTALL.Fedora to rSTStephen Finucane2016-11-031-1/+1
| | | | | Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Russell Bryant <russell@ovn.org>
* doc: Convert DESIGN to rSTStephen Finucane2016-11-031-1/+1
| | | | | | | This is a top-level document, so plain old rST is preferred. Signed-off-by: Stephen Finucane <stephen@that.guru> Signed-off-by: Russell Bryant <russell@ovn.org>