summaryrefslogtreecommitdiff
path: root/configure.ac
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge "master" into "ovn".Ben Pfaff2015-03-171-1/+2
|\ \ | |/ | | | | This will allow taking advantage of the new command-line infrastructure.
| * vtep: fix '--enable-shared' build and 'make distcheck'.Daniele Di Proietto2015-03-091-1/+2
| | | | | | | | | | | | | | | | Found by travis. Broken by commit 9d8215698 ('vtep: Move vtep IDL files into new "libvtep.la".') Signed-off-by: Daniele Di Proietto <diproiettod@vmware.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* | ovn: Add initial design documentation.Ben Pfaff2015-02-261-1/+2
|/ | | | | | | | | | | | | | | | This commit adds preliminary design documentation for Open Virtual Network, or OVN, a new OVS-based project to add support for virtual networking to OVS, initially with OpenStack integration. This initial design has been influenced by many people, including (in alphabetical order) Aaron Rosen, Chris Wright, Gurucharan Shetty, Jeremy Stribling, Justin Pettit, Ken Duda, Kevin Benton, Kyle Mestery, Madhu Venugopal, Martin Casado, Natasha Gude, Pankaj Thakkar, Russell Bryant, Teemu Koponen, and Thomas Graf. All blunders, however, are due to my own hubris. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Justin Pettit <jpettit@nicira.com>
* configure.ac: Enable 'tar-pax' by defaultStephen Finucane2015-01-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Automake defaults to the 'v7' legacy tar format in GNU tar, through passing of the '-o' parameter to GNU tar. Enabling this option results in errors for users with 32 bit UIDs: $ make dist ... tardir=openvswitch-2.3.90 && ${TAR-tar} chof - "$tardir" | GZIP=--best gzip -c >openvswitch-2.3.90.tar.gz tar: value 12345678 out of uid_t range 0..2097151 tar: Exiting with failure status due to previous errors make[1]: Leaving directory `/development/ovs' ... The 'tar-pax' format is a 2001 POSIX standard that allow longer file names and other niceties. Its use is a configuration option in Automake 1.9+. Enable this option. Signed-off-by: Stephen Finucane <stephen.finucane@intel.com> Reviewed-by: Mark D. Gray <mark.d.gray@intel.com> Cc: Panu Matilainen <pmatilai@laiskiainen.org> Signed-off-by: Ben Pfaff <blp@nicira.com>
* vagrant: switch to use out of tree buildAndy Zhou2015-01-081-1/+0
| | | | | | | | | | | | | | | | Vagrant shared folder, at least on the default virtual box, does not support the creation of the socket files. If one were to build OVS under /vagrant, 'make check' would not work. Out of tree builds can be used to work around this issue. See Install.md for instructions. Since out of tree builds requires a clean source tree, Vagrantfile can not be a generated file. This commit removes Vagrantfile.in, commit Vagrantfile instead. Signed-off-by: Andy Zhou <azhou@nicira.com> Acked-by: Thomas Graf <tgraf@noironetworks.com>
* vagrant: Provide basic VagrantfileThomas Graf2015-01-051-0/+1
| | | | | | | | | | | | | | | This is a basic Vagrantfile which compiles and provisions the local OVS source tree in a Fedora 20 VM. The Vagrantfile.in can be extended to support additional distributions. To use this Vagrantfile: 1. Install Vagrant plus a compatible hypervisor 2. Run configure to translate Vagrantfile.in to Vagrantfile 3. Run `vagrant up` to create & provision the VM 4. Run `vagrant ssh` to log into the VM Signed-off-by: Thomas Graf <tgraf@noironetworks.com> Acked-by: Kyle Mestery <mestery@mestery.com>
* lib: Add new header <openvswitch/version.h> to versioning infoThomas Graf2014-11-251-0/+1
| | | | | | | | | | | | | | Exposes the package version as string and the library versioning as numeric macro. OVS_LIB_VERSION may be used to check for a particular version of the interface. OVS_LIB_REVISION and OVS_LIB_AGE exist to map a set of installed headers to a particular shared library instance. Signed-off-by: Thomas Graf <tgraf@noironetworks.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* lib: Add support for pkgconfig for libsflow.Thomas Graf2014-11-131-0/+1
| | | | | | Signed-off-by: Thomas Graf <tgraf@noironetworks.com> Acked-by: Flavio Leitner <fbl@redhat.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* lib: Add support for pkgconfig for libovsdb.Thomas Graf2014-11-131-0/+1
| | | | | | Signed-off-by: Thomas Graf <tgraf@noironetworks.com> Acked-by: Flavio Leitner <fbl@redhat.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* lib: Add support for pkgconfig for libofproto.Thomas Graf2014-11-131-0/+1
| | | | | | Signed-off-by: Thomas Graf <tgraf@noironetworks.com> Acked-by: Flavio Leitner <fbl@redhat.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* lib: Add support for pkgconfig for libopenvswitch.Rob Adams2014-11-131-0/+1
| | | | | | | | | Add rule to generate pkgconfig .pc file from configure. Install pkg-config file to $(libdir)/pkgconfig Signed-off-by: Rob Adams <readams@readams.net> Acked-by: Flavio Leitner <fbl@redhat.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* Build: Add support for shared libraries and versioning.Scott Mann2014-11-111-1/+42
| | | | | | | | | | | | | | | | | These changes allow for the building of shared libraries by providing the --enable-shared option to configure. In particular, lib/libopenvwitch.so, lib/libsflow.so, ofproto/libofproto.so, and ovsdb/libovsdb.so will be built. Original behavior of building static remains the same. Additionally, versioning is introduced to each of the libraries objects paving the way for APIs to be built around them. A detailed comment outlining the rules for changing a version number is provided in configure.ac. Note that at this time, the version number is set to 1.0.0, no API is specified yet, and there are no requirements to maintain any sort of compatibility in any of the libraries. Signed-off-by: Scott Mann <smann@noironetworks.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* netdev-linux: Avoid depending on kernel definition of rtnl_link_stats64.Ben Pfaff2014-10-301-2/+0
| | | | | | | | | | We have to define our own with some kernel headers, so we might as well do it everywhere, especially since there seems to be a problem with detecting the presence of the definition with at least some kernels. Reported-by: Wang Sheng-Hui <shhuiw@gmail.com> Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Joe Stringer <joestringer@nicira.com>
* netdev-linux: Add support for 64-bit network device stats.Ben Pfaff2014-10-291-0/+2
| | | | | | Reported-by: Andrey Korolyov <andrey@xdel.ru> Tested-by: Andrey Korolyov <andrey@xdel.ru> Signed-off-by: Ben Pfaff <blp@nicira.com>
* configure: Disable strict aliasing.Ben Pfaff2014-10-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The C standard allows compilers to do type-based alias analysis, which means that the compiler is allowed to assume that pointers to objects of different types are pointers to different objects. For example, a compiler may assume that "uint16_t *a" and "uint32_t *b" point to different and nonoverlapping locations because the pointed-to types are different. This can lead to surprising "optimizations" with compilers that by default do this kind of analysis, which includes GCC and Clang. The one escape clause that the C standard gives us is that character types must be assumed to alias any other object. We've always tried to use this escape clause to avoid problems with type-based alias analysis in the past. I think that we should continue to try to do this in the future. It's hard to tell what compiler we might want to use in the future, and one never knows what kind of control that compiler allows over alias analysis. However, recently I helped another developer debug a nasty and confusing issue, which turned out to be the result of a surprising compiler optimization due to alias analysis. I've seen enough of these that I don't think it's worthwhile to risk more problems than we have to. Thus, this commit turns off type-based alias analysis in GCC and Clang. Linus Torvalds thinks that type-base alias analysis is not sane, at least as GCC implements it: https://lkml.org/lkml/2003/2/26/158 The GCC manual says that -Wstrict-aliasing is only effective without -fno-strict-aliasing, otherwise I'd keep -Wstrict-aliasing also. Indications are that MSVC doesn't do type-based alias analysis by default. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Jarno Rajahalme <jrajahalme@nicira.com>
* build: Respect CFLAGS and LDFLAGS passed to makeThomas Graf2014-09-111-0/+2
| | | | | | | | | | | | | | | configure cannot expect that the user will not pass additional CFLAGS and LDFLAGS at make time [0]. Use OVS_CFLAGS and OVS_LDFLAGS instead to collect compiler and linker flags and substitute in Makefile.am. This allows for: ./configure --with-dpdk=[...] make CFLAGS=-Wno-error=foo [0] http://www.gnu.org/software/automake/manual/html_node/Flag-Variables-Ordering.html Signed-off-by: Thomas Graf <tgraf@noironetworks.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* Add BUILD_MESSAGE() macroDaniele Di Proietto2014-08-291-0/+1
| | | | | | | | | | | This commit introduces the BUILD_MESSAGE() macro. It uses _Pragma("message"), with compilers that support that, to output a warning-like compile-time message without blocking the compilation. Used by next commit. Signed-off-by: Daniele Di Proietto <ddiproietto@vmware.com> Acked-by: Jarno Rajahalme <jrajahalme@nicira.com>
* Add build of ovsext.sln using MSBuildAlin Serdean2014-08-281-0/+1
| | | | | | | | | | | | | | | | | | | This commit adds to the automake build system the full build required by the forwarding extension solution. It will help a lot in the future CI to check the full build of the project. To configure the forwarding extension to be built one could use the following: ./configure CC=./build-aux/cccl LD="`which link`" LIBS="-lws2_32" \ --prefix="C:/openvswitch/usr" --localstatedir="C:/openvswitch/var" \ --sysconfdir="C:/openvswitch/etc" --with-pthread="C:/pthread" \ --with-vstudioddk="Win8.1 Release" Documentation will be updated in another patch. Signed-off-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com> Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Saurabh Shah <ssaurabh@vmware.com>
* configure: Don't check for malloc hooks that we no longer use.Ben Pfaff2014-07-221-1/+0
| | | | | | | | | Commit 825da1c6d1c7 (leak-checker: Remove because it cannot be made thread-safe.) removed the only uses of these hooks but neglected to remove the test for them. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Justin Pettit <jpettit@nicira.com>
* build: Allow building with autoconf 2.63Thomas Graf2014-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | Reduces the dependency on autoconf from 2.64 to 2.63 to ease building on older platforms. There is only a few macros missing and they can be provided easily. A handful of tests needed modification. The difference in quoting behaviour between 2.63 and later require the m4_define() to be manually unfolded. The Debian control file is left untouched on purpose. The decision whether to adjust the dependency is left to the respective maintainers. Tested with autoconf 2.63 and 2.69. Cc: Scott Mann <smann@noironetworks.com> Cc: Don Kehn <dkehn@noironetworks.com> Signed-off-by: Thomas Graf <tgraf@noironetworks.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* configure.ac: Check C99 compilerYAMAMOTO Takashi2014-05-291-1/+1
| | | | | | | | | | | | | | | | | | | | | This ends up to add -std=gnu99 and fixes the following compilation problem introduced by commit 08feeb75. ("lib/flow: Use C99 declaration in for statement.") libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -I ../include -I ../lib -I ./lib -Wstrict-prototypes -Wall -Wextra -Wno-sign-compare -Wpointer-arith -Wno-format-zero-length -Wswitch-enum -Wunused-parameter -Wstrict-aliasing -Wbad-function-cast -Wcast-align -Wmissing-prototypes -Wmissing-field-initializers -g -O2 -MT lib/classifier.lo -MD -MP -MF lib/.deps/classifier.Tpo -c ../lib/classifier.c -o lib/classifier.o ../lib/classifier.c: In function 'miniflow_and_mask_matches_flow': ../lib/classifier.c:1722:5: error: 'for' loop initial declarations are only allowed in C99 mode ../lib/classifier.c:1722:5: note: use option -std=c99 or -std=gnu99 to compile your code Makefile:3013: recipe for target 'lib/classifier.lo' failed % gcc --version gcc (NetBSD nb1 20120916) 4.5.4 Copyright (C) 2010 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp> Acked-by: Jarno Rajahalme <jrajahalme@nicira.com>
* CodingStyle: Allow C99 mixing of declarations and code.Jarno Rajahalme2014-05-281-1/+0
| | | | | | | | As even the MSVC 2013 now supports the C99 mixing of declarations and code, we can now allow them in OVS code. Signed-off-by: Jarno Rajahalme <jrajahalme@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
* Prepare for post-2.3.0 (2.3.90).Justin Pettit2014-05-151-1/+1
| | | | Signed-off-by: Justin Pettit <jpettit@nicira.com>
* Prepare for 2.3.0.Justin Pettit2014-05-151-1/+1
| | | | Signed-off-by: Justin Pettit <jpettit@nicira.com>
* util: Use posix_memalign for xmalloc_cacheline if availableYAMAMOTO Takashi2014-05-071-0/+1
| | | | | | | | | | | A malloc library is expected to provide a better implementation using the knowledge of its internal details. ax_func_posix_memalign.m4 was obtained from: http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_posix_memalign.m4 Acked-by: Ben Pfaff <blp@nicira.com> Signed-off-by: YAMAMOTO Takashi <yamamoto@valinux.co.jp>
* Prepare for post-2.2.0 (2.2.90).Justin Pettit2014-04-281-1/+1
| | | | Signed-off-by: Justin Pettit <jpettit@nicira.com>
* Prepare for 2.2.0.Justin Pettit2014-04-281-1/+1
| | | | Signed-off-by: Justin Pettit <jpettit@nicira.com>
* dpif-netdev: Add DPDK netdev.Pravin2014-03-211-0/+1
| | | | | | | | | | | | | | Following patch adds DPDK netdev-class to userspace datapath. Now OVS can use DPDK port for IO by just configuring DPDK port and then adding dpdk type port to userspace datapath. Refer to INSTALL.DPDK doc for further info. This is based a patch from Gerald Rogers. Signed-off-by: Gerald Rogers <gerald.rogers@intel.com> Signed-off-by: Pravin B Shelar <pshelar@nicira.com> Acked-by: Thomas Graf <tgraf@redhat.com>
* Makefile: Compile Linux-specific files based on __linux__ macro.Ben Pfaff2014-03-051-5/+1
| | | | | | | | | | | We want to conditionally compile several files based on whether we're building for a Linux host, so we need some Automake conditional for that. Previously this was based on whether Netlink is available and we're not on ESX (since ESX has Netlink but isn't Linux), but it's more straightforward to just test for Linux directly. CC: Luigi Rizzo <rizzo@iet.unipi.it> Signed-off-by: Ben Pfaff <blp@nicira.com>
* configure: Fix bug report email address.Ben Pfaff2014-02-191-1/+1
| | | | | | Reported-by: Arun Sharma <arun.sharma@calsoftinc.com> Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Joe Stringer <joestringer@nicira.com>
* configure: Enable silent rules.Ethan Jackson2014-01-221-0/+2
| | | | | | | | Configure has an option which supports quieter compilation. Signed-off-by: Ethan Jackson <ethan@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com> Acked-by: Joe Stringer <joestringer@nicira.com>
* ovsdbmonitor: Remove.Ben Pfaff2014-01-101-4/+1
| | | | | | | ovsdbmonitor was poorly maintained and not widely used. Acked-by: Flavio Leitner <fbl@redhat.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* configure: Make autoconf fail if libtool is not installed.Ben Pfaff2014-01-101-0/+2
| | | | | | | | | Otherwise users get an error later like: ./configure: line 5093: syntax error near unexpected token `disable-shared' ./configure: line 5093: `LT_INIT(disable-shared)' It's probably friendlier to make configuration fail earlier. Signed-off-by: Ben Pfaff <blp@nicira.com>
* stdio: New module, initially to provide working [v]snprintf() on Windows.Ben Pfaff2013-12-241-2/+2
| | | | | | | | This should transparently define snprintf() and vsnprintf() wrappers for use on Windows. CC: Saurabh Shah <ssaurabh@vmware.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* Prepare for post-2.1.0 (2.1.90).Justin Pettit2013-12-231-1/+1
| | | | | Signed-off-by: Justin Pettit <jpettit@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
* Prepare for 2.1.0.Justin Pettit2013-12-231-1/+1
| | | | | Signed-off-by: Justin Pettit <jpettit@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
* openvswitch: Use libtool and allow building shared libsHelmut Schaa2013-12-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | Currently openvswitch builds all libraries static only. However, libopenvswitch is linked into nearly all openvswitch executables making it hardly possible to run openvswitch on embedded devices (for example running OpenWrt). Convert openvswitch to use libtool for building its internal libs. This allows "--enable-shared" and "--enable-static" as configure arguments. Default is "--disable-shared" thus keeping the current behavior with the only change that static libs are installed by "make install". Since the openvswitch library interfaces are internal and thus not stable (yet) encode the openvswitch version into the library name: libopenvswitch-2.0.90.so Binary size is reduced to around 1/3 when using shared libs. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* string: Use workaround for #include_next when it is not available.Ben Pfaff2013-12-131-0/+3
| | | | Signed-off-by: Ben Pfaff <blp@nicira.com>
* Remove unused USE_LINKER_SECTIONS and OVS_LINK2_IFELSEHelmut Schaa2013-12-131-1/+0
| | | | | | | They are unused and can be removed. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* Add check for -latomicJames Page2013-12-051-0/+1
| | | | | | | | | | | | | | Later versions of gcc on some architectures push atomic functions out into a separate atomic library; add a check to see when this is required and add it to LIBS if need be. Specifically the problem was observed on GCC 4.8.2 on powerpc architecture for Ubuntu 14.04: https://launchpadlibrarian.net/155235096/buildlog_ubuntu-trusty-powerpc.openvswitch_2.0.0-0ubuntu1_FAILEDTOBUILD.txt.gz Signed-off-by: James Page <james.page@ubuntu.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* configure.ac: Identify when compiling on windows.Gurucharan Shetty2013-11-181-0/+1
| | | | | | | Presence of windows.h will set the WIN32 variable. Signed-off-by: Gurucharan Shetty <gshetty@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
* configure.ac: Make autoconf in Mingw happy.Gurucharan Shetty2013-11-181-6/+6
| | | | | | | | Autoconf version 2.68 in Mingw environment does not like the new lines in AC_CONFIG_FILES macro. Signed-off-by: Gurucharan Shetty <gshetty@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
* util: Allow set_subprogram_name() to take a printf() format string.Ben Pfaff2013-11-021-0/+1
| | | | | | | | | | | | | This will be convenient in an upcoming commit. I had to add -Wno-format-zero-length to suppress a GCC warning about a zero-length format string in this monitor_daemon() call: set_subprogram_name(""); I don't know what that warning is good for anyway, and I guess the Clang developers don't either because Clang didn't warn. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Ethan Jackson <ethan@nicira.com>
* configure: check for uuid python moduleAnsis Atteka2013-10-181-0/+1
| | | | | | | | | | | | | | | After introducing commit a5ae88ff8a276e86c842ac102145432662bf711a "ovsdb-doc: generate vswitch.[pic|gv] files only if dot tool is available" Open vSwitch did not build anymore on hosts that did not have uuid python module installed (for example, we still support XenServer that still uses old python 2.4 and hence does not have uuid). After this commit ./configure will check whether uuid module is present and, if it isn't, then it will add python/compat to the PYTHONPATH. Acked-By: Ben Pfaff <blp@nicira.com> Signed-Off-By: Ansis Atteka <aatteka@nicira.com> Issue: 20476
* configure: Remove call to OVS_CHECK_CACHE_TIME that does not exist.Ben Pfaff2013-09-051-1/+0
| | | | | | | | Commit 31ef9f5178 (timeval: Remove CACHE_TIME scheme.) removed the OVS_CHECK_CACHE_TIME macro but not the call to it, which leads to an error message when one runs configure. Signed-off-by: Ben Pfaff <blp@nicira.com>
* Prepare for post-2.0.0 (2.0.90).Justin Pettit2013-08-281-1/+1
| | | | Signed-off-by: Justin Pettit <jpettit@nicira.com>
* Prepare for 2.0.0.Justin Pettit2013-08-281-1/+1
| | | | | | We decided to call the next release 2.0 instead of 1.12. Signed-off-by: Justin Pettit <jpettit@nicira.com>
* configure: Distinguish glibc and NetBSD pthread_setname_np() variants.Ben Pfaff2013-08-011-2/+2
| | | | | | Reported-by: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp> Tested-by: YAMAMOTO Takashi <yamt@mwd.biglobe.ne.jp> Signed-off-by: Ben Pfaff <blp@nicira.com>
* configure: Add configure-time check for GCC 4.0+ atomic built-ins.Ben Pfaff2013-07-311-0/+1
| | | | | | | | | | We found out earlier that GCC sometimes produces an error only at link time for atomic built-ins that are not supported on a platform. This actually tries the link at configure time and should thus reliably detect whether the atomic built-ins are really supported. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Ethan Jackson <ethan@nicira.com>
* clang: Add annotations for thread safety check.Ethan Jackson2013-07-301-0/+1
| | | | | | | | | | This commit adds annotations for thread safety check. And the check can be conducted by using -Wthread-safety flag in clang. Co-authored-by: Alex Wang <alexw@nicira.com> Signed-off-by: Alex Wang <alexw@nicira.com> Signed-off-by: Ethan Jackson <ethan@nicira.com> Signed-off-by: Ben Pfaff <blp@nicira.com>