2014-01-13 11:17:55 -08:00
|
|
|
# Copyright (C) 2009, 2010, 2011, 2012, 2013, 2014 Nicira, Inc.
|
2009-06-15 15:11:30 -07:00
|
|
|
#
|
|
|
|
# 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.
|
|
|
|
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_LTLIBRARIES += lib/libopenvswitch.la
|
2009-07-08 13:19:16 -07:00
|
|
|
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libopenvswitch_la_LIBADD = $(SSL_LIBS)
|
2014-03-04 14:07:55 -08:00
|
|
|
|
|
|
|
if WIN32
|
|
|
|
lib_libopenvswitch_la_LIBADD += ${PTHREAD_LIBS}
|
|
|
|
endif
|
|
|
|
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libopenvswitch_la_LDFLAGS = -release $(VERSION)
|
|
|
|
|
|
|
|
lib_libopenvswitch_la_SOURCES = \
|
2009-09-24 15:02:36 -07:00
|
|
|
lib/aes128.c \
|
|
|
|
lib/aes128.h \
|
2013-07-10 11:40:28 -07:00
|
|
|
lib/async-append.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/backtrace.c \
|
|
|
|
lib/backtrace.h \
|
bfd: Implement Bidirectional Forwarding Detection.
Traditionally, Open vSwitch has used a variant of 802.1ag "CFM" for
interface liveness detection. This has served us well until now,
but has several serious drawbacks which have steadily become more
inconvenient. First, the 802.1ag standard does not implement
several useful features forcing us to (optionally) break
compatibility. Second, 802.1.ag is not particularly popular
outside of carrier grade networking equipment. Third, 802.1ag is
simply quite awkward.
In an effort to solve the aforementioned problems, this patch
implements BFD which is ubiquitous, well designed, straight
forward, and implements required features in a standard way. The
initial cut of the protocol focuses on getting the basics of the
specification correct, leaving performance optimizations, and
advanced features as future work. The protocol should be
considered experimental pending future testing.
Signed-off-by: Ethan Jackson <ethan@nicira.com>
2012-06-08 12:42:42 -07:00
|
|
|
lib/bfd.c \
|
|
|
|
lib/bfd.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/bitmap.c \
|
|
|
|
lib/bitmap.h \
|
2011-06-10 17:45:45 -07:00
|
|
|
lib/bundle.c \
|
|
|
|
lib/bundle.h \
|
2010-10-28 17:13:18 -07:00
|
|
|
lib/byte-order.h \
|
2009-10-28 11:06:31 -07:00
|
|
|
lib/byteq.c \
|
|
|
|
lib/byteq.h \
|
2010-11-15 16:20:01 -08:00
|
|
|
lib/cfm.c \
|
|
|
|
lib/cfm.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/classifier.c \
|
|
|
|
lib/classifier.h \
|
|
|
|
lib/command-line.c \
|
|
|
|
lib/command-line.h \
|
|
|
|
lib/compiler.h \
|
2013-12-13 03:33:46 +00:00
|
|
|
lib/connectivity.c \
|
|
|
|
lib/connectivity.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/coverage.c \
|
|
|
|
lib/coverage.h \
|
2013-08-22 20:24:42 +12:00
|
|
|
lib/crc32c.c \
|
|
|
|
lib/crc32c.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/csum.c \
|
|
|
|
lib/csum.h \
|
|
|
|
lib/daemon.h \
|
2011-03-15 09:46:39 -07:00
|
|
|
lib/dhcp.h \
|
2010-11-29 12:21:08 -08:00
|
|
|
lib/dummy.c \
|
|
|
|
lib/dummy.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/dhparams.h \
|
|
|
|
lib/dirs.h \
|
2009-06-19 14:09:39 -07:00
|
|
|
lib/dpif-netdev.c \
|
2009-06-17 14:35:35 -07:00
|
|
|
lib/dpif-provider.h \
|
|
|
|
lib/dpif.c \
|
|
|
|
lib/dpif.h \
|
2012-01-24 15:07:41 -08:00
|
|
|
lib/heap.c \
|
|
|
|
lib/heap.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/dynamic-string.c \
|
|
|
|
lib/dynamic-string.h \
|
2010-08-12 15:47:25 -07:00
|
|
|
lib/entropy.c \
|
|
|
|
lib/entropy.h \
|
2014-01-13 11:17:55 -08:00
|
|
|
lib/fat-rwlock.c \
|
|
|
|
lib/fat-rwlock.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/fatal-signal.c \
|
|
|
|
lib/fatal-signal.h \
|
|
|
|
lib/flow.c \
|
|
|
|
lib/flow.h \
|
2013-09-12 17:42:23 -07:00
|
|
|
lib/guarded-list.c \
|
|
|
|
lib/guarded-list.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/hash.c \
|
|
|
|
lib/hash.h \
|
2013-06-18 10:27:34 -07:00
|
|
|
lib/hindex.c \
|
|
|
|
lib/hindex.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/hmap.c \
|
|
|
|
lib/hmap.h \
|
2011-04-07 17:10:48 -07:00
|
|
|
lib/hmapx.c \
|
|
|
|
lib/hmapx.h \
|
hash: Replace primary hash functions by murmurhash.
murmurhash is faster than Jenkins and slightly higher quality, so switch to
it for hashing words.
The best timings I got for hashing for data lengths of the following
numbers of 32-bit words, in seconds per 1,000,000,000 hashes, were:
words murmurhash Jenkins hash
----- ---------- ------------
1 8.4 10.4
2 10.3 10.3
3 11.2 10.7
4 12.6 18.0
5 13.9 18.3
6 15.2 18.7
In other words, murmurhash outperforms Jenkins for all input lengths other
than exactly 3 32-bit words (12 bytes). (It's understandable that Jenkins
would have a best case at 12 bytes, because Jenkins works in 12-byte
chunks.) Even in the case where Jenkins is faster, it's only by 5%. On
average within this data set, murmurhash is 15% faster, and for 4-word
input it is 30% faster.
We retain Jenkins for flow_hash_symmetric_l4() and flow_hash_fields(),
which are cases where the hash value is exposed externally.
This commit appears to improve "ovs-benchmark rate" results slightly by
a few hundred connections per second (under 1%), when used with an NVP
controller.
Signed-off-by: Ben Pfaff <blp@nicira.com>
Acked-by: Ethan Jackson <ethan@nicira.com>
2013-01-16 16:14:42 -08:00
|
|
|
lib/jhash.c \
|
|
|
|
lib/jhash.h \
|
2009-11-04 14:55:53 -08:00
|
|
|
lib/json.c \
|
|
|
|
lib/json.h \
|
2009-10-26 15:04:05 -07:00
|
|
|
lib/jsonrpc.c \
|
|
|
|
lib/jsonrpc.h \
|
2011-02-28 14:48:06 -08:00
|
|
|
lib/lacp.c \
|
|
|
|
lib/lacp.h \
|
2013-07-15 12:20:23 -07:00
|
|
|
lib/latch.h \
|
2011-09-12 16:19:57 -07:00
|
|
|
lib/learn.c \
|
|
|
|
lib/learn.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/learning-switch.c \
|
|
|
|
lib/learning-switch.h \
|
|
|
|
lib/list.c \
|
|
|
|
lib/list.h \
|
2009-10-14 16:52:04 -07:00
|
|
|
lib/lockfile.c \
|
|
|
|
lib/lockfile.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/mac-learning.c \
|
|
|
|
lib/mac-learning.h \
|
2012-08-07 15:28:18 -07:00
|
|
|
lib/match.c \
|
|
|
|
lib/match.h \
|
2012-05-08 15:44:21 -07:00
|
|
|
lib/memory.c \
|
|
|
|
lib/memory.h \
|
2011-09-12 12:11:50 -07:00
|
|
|
lib/meta-flow.c \
|
|
|
|
lib/meta-flow.h \
|
2010-12-17 14:38:50 -08:00
|
|
|
lib/multipath.c \
|
|
|
|
lib/multipath.h \
|
2010-11-29 12:21:08 -08:00
|
|
|
lib/netdev-dummy.c \
|
2009-07-30 17:10:13 -07:00
|
|
|
lib/netdev-provider.h \
|
2013-01-25 13:30:40 -08:00
|
|
|
lib/netdev-vport.c \
|
|
|
|
lib/netdev-vport.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/netdev.c \
|
|
|
|
lib/netdev.h \
|
2011-12-19 14:18:00 -08:00
|
|
|
lib/netflow.h \
|
2010-12-10 09:51:03 -08:00
|
|
|
lib/netlink.c \
|
|
|
|
lib/netlink.h \
|
2010-11-09 17:00:59 -08:00
|
|
|
lib/nx-match.c \
|
|
|
|
lib/nx-match.h \
|
2013-05-29 15:06:38 +09:00
|
|
|
lib/odp-execute.c \
|
|
|
|
lib/odp-execute.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/odp-util.c \
|
|
|
|
lib/odp-util.h \
|
2012-07-03 22:17:14 -07:00
|
|
|
lib/ofp-actions.c \
|
|
|
|
lib/ofp-actions.h \
|
2011-01-12 13:42:50 -08:00
|
|
|
lib/ofp-errors.c \
|
|
|
|
lib/ofp-errors.h \
|
2012-07-19 23:23:17 -07:00
|
|
|
lib/ofp-msgs.c \
|
|
|
|
lib/ofp-msgs.h \
|
2010-07-28 15:14:28 -07:00
|
|
|
lib/ofp-parse.c \
|
|
|
|
lib/ofp-parse.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/ofp-print.c \
|
|
|
|
lib/ofp-print.h \
|
2010-05-27 13:14:05 -07:00
|
|
|
lib/ofp-util.c \
|
2011-08-17 11:01:17 -07:00
|
|
|
lib/ofp-util.def \
|
2010-05-27 13:14:05 -07:00
|
|
|
lib/ofp-util.h \
|
2012-11-27 10:12:26 -08:00
|
|
|
lib/ofp-version-opt.h \
|
|
|
|
lib/ofp-version-opt.c \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/ofpbuf.c \
|
|
|
|
lib/ofpbuf.h \
|
2013-06-28 15:54:40 -07:00
|
|
|
lib/ovs-atomic-c11.h \
|
2013-08-26 13:03:02 -07:00
|
|
|
lib/ovs-atomic-clang.h \
|
|
|
|
lib/ovs-atomic-flag-gcc4.7+.h \
|
2013-06-28 15:54:40 -07:00
|
|
|
lib/ovs-atomic-gcc4+.h \
|
|
|
|
lib/ovs-atomic-gcc4.7+.h \
|
ovs-atomic: Use raw types, not structs, when locks are required.
Until now, the GCC 4+ and pthreads implementations of atomics have used
struct wrappers for their atomic types. This had the advantage of allowing
a mutex to be wrapped in, in some cases, and of better type-checking by
preventing stray uses of atomic variables other than through one of the
atomic_*() functions or macros. However, the mutex meant that an
atomic_destroy() function-like macro needed to be used. The struct wrapper
also made it impossible to define new atomic types that were compatible
with each other without using a typedef. For example, one could not simply
define a macro like
#define ATOMIC(TYPE) struct { TYPE value; }
and then have two declarations like:
ATOMIC(void *) x;
ATOMIC(void *) y;
and do anything with these objects that require type-compatibility, even
"&x == &y", because the two structs are not compatible. One can do it
through a typedef:
typedef ATOMIC(void *) atomic_voidp;
atomic_voidp x, y;
but that is inconvenient, especially because of the need to invent a name
for the type.
This commit aims to ease the problem by getting rid of the wrapper structs
in the cases where the atomic library used them. It gets rid of the
mutexes, in the cases where they are still needed, by using a global
array of mutexes instead.
This commit also defines the ATOMIC macro described above and documents
its use in ovs-atomic.h.
Signed-off-by: Ben Pfaff <blp@nicira.com>
Acked-by: Andy Zhou <azhou@nicira.com>
2014-03-11 12:46:29 -07:00
|
|
|
lib/ovs-atomic-locked.c \
|
|
|
|
lib/ovs-atomic-locked.h \
|
2013-06-28 15:54:40 -07:00
|
|
|
lib/ovs-atomic-pthreads.h \
|
|
|
|
lib/ovs-atomic.h \
|
2013-06-24 11:05:10 -07:00
|
|
|
lib/ovs-thread.c \
|
|
|
|
lib/ovs-thread.h \
|
2009-11-04 15:11:44 -08:00
|
|
|
lib/ovsdb-data.c \
|
|
|
|
lib/ovsdb-data.h \
|
|
|
|
lib/ovsdb-error.c \
|
|
|
|
lib/ovsdb-error.h \
|
2009-12-02 11:26:15 -08:00
|
|
|
lib/ovsdb-idl-provider.h \
|
|
|
|
lib/ovsdb-idl.c \
|
|
|
|
lib/ovsdb-idl.h \
|
2009-11-04 15:11:44 -08:00
|
|
|
lib/ovsdb-parser.c \
|
|
|
|
lib/ovsdb-parser.h \
|
|
|
|
lib/ovsdb-types.c \
|
|
|
|
lib/ovsdb-types.h \
|
2009-09-15 15:22:17 -07:00
|
|
|
lib/packets.c \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/packets.h \
|
2013-03-15 02:19:31 -07:00
|
|
|
lib/pcap-file.c \
|
|
|
|
lib/pcap-file.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/poll-loop.c \
|
|
|
|
lib/poll-loop.h \
|
|
|
|
lib/process.c \
|
|
|
|
lib/process.h \
|
|
|
|
lib/random.c \
|
|
|
|
lib/random.h \
|
|
|
|
lib/rconn.c \
|
|
|
|
lib/rconn.h \
|
2009-11-10 15:30:49 -08:00
|
|
|
lib/reconnect.c \
|
|
|
|
lib/reconnect.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/sat-math.h \
|
2013-08-06 09:39:10 -07:00
|
|
|
lib/seq.c \
|
|
|
|
lib/seq.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/sha1.c \
|
|
|
|
lib/sha1.h \
|
|
|
|
lib/shash.c \
|
|
|
|
lib/shash.h \
|
2012-05-22 10:32:02 -07:00
|
|
|
lib/simap.c \
|
|
|
|
lib/simap.h \
|
2012-05-22 03:47:36 -07:00
|
|
|
lib/smap.c \
|
|
|
|
lib/smap.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/socket-util.c \
|
|
|
|
lib/socket-util.h \
|
2009-11-04 15:11:44 -08:00
|
|
|
lib/sort.c \
|
|
|
|
lib/sort.h \
|
2011-03-30 13:44:10 -07:00
|
|
|
lib/sset.c \
|
|
|
|
lib/sset.h \
|
2011-09-20 15:08:05 -07:00
|
|
|
lib/stp.c \
|
|
|
|
lib/stp.h \
|
2009-11-04 15:02:32 -08:00
|
|
|
lib/stream-fd.h \
|
|
|
|
lib/stream-provider.h \
|
2009-12-21 13:13:48 -08:00
|
|
|
lib/stream-ssl.h \
|
2009-11-04 15:02:32 -08:00
|
|
|
lib/stream-tcp.c \
|
|
|
|
lib/stream.c \
|
|
|
|
lib/stream.h \
|
2013-12-24 09:18:42 -08:00
|
|
|
lib/stdio.c \
|
2011-02-22 10:58:36 -08:00
|
|
|
lib/string.c \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/svec.c \
|
|
|
|
lib/svec.h \
|
2011-02-08 16:09:45 -08:00
|
|
|
lib/table.c \
|
|
|
|
lib/table.h \
|
2013-08-27 10:14:49 -07:00
|
|
|
lib/tag.c \
|
|
|
|
lib/tag.h \
|
2011-03-31 13:46:04 -07:00
|
|
|
lib/timer.c \
|
|
|
|
lib/timer.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/timeval.c \
|
|
|
|
lib/timeval.h \
|
2012-05-30 17:16:16 -07:00
|
|
|
lib/token-bucket.c \
|
|
|
|
lib/token-bucket.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/type-props.h \
|
2010-05-07 14:31:04 -07:00
|
|
|
lib/unaligned.h \
|
2009-11-04 14:55:53 -08:00
|
|
|
lib/unicode.c \
|
|
|
|
lib/unicode.h \
|
2009-12-07 16:24:03 -08:00
|
|
|
lib/unixctl.c \
|
|
|
|
lib/unixctl.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/util.c \
|
|
|
|
lib/util.h \
|
2009-12-07 16:24:03 -08:00
|
|
|
lib/uuid.c \
|
|
|
|
lib/uuid.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/valgrind.h \
|
|
|
|
lib/vconn-provider.h \
|
|
|
|
lib/vconn-stream.c \
|
|
|
|
lib/vconn.c \
|
|
|
|
lib/vconn.h \
|
2011-04-08 13:19:33 -07:00
|
|
|
lib/vlan-bitmap.c \
|
|
|
|
lib/vlan-bitmap.h \
|
2011-11-09 16:16:10 -08:00
|
|
|
lib/vlandev.c \
|
|
|
|
lib/vlandev.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/vlog.c \
|
2012-03-15 17:10:41 -07:00
|
|
|
lib/vlog.h \
|
|
|
|
lib/vswitch-idl.c \
|
2013-10-08 14:37:51 -07:00
|
|
|
lib/vswitch-idl.h \
|
|
|
|
lib/vtep-idl.c \
|
|
|
|
lib/vtep-idl.h
|
2014-01-27 08:52:57 -08:00
|
|
|
|
2014-01-09 16:26:12 -08:00
|
|
|
if WIN32
|
2014-01-27 08:52:57 -08:00
|
|
|
lib_libopenvswitch_la_SOURCES += \
|
2014-01-16 16:16:24 -08:00
|
|
|
lib/daemon-windows.c \
|
2014-01-27 08:52:57 -08:00
|
|
|
lib/getopt_long.c \
|
2014-03-06 12:55:53 -08:00
|
|
|
lib/getrusage-windows.c \
|
2014-02-24 11:12:25 -08:00
|
|
|
lib/latch-windows.c \
|
2014-03-12 10:44:51 -07:00
|
|
|
lib/route-table-stub.c \
|
2014-03-13 15:20:15 -07:00
|
|
|
lib/strsep.c \
|
2014-02-24 11:12:25 -08:00
|
|
|
lib/stream-fd-windows.c
|
2014-01-09 16:26:12 -08:00
|
|
|
else
|
2014-01-27 08:52:57 -08:00
|
|
|
lib_libopenvswitch_la_SOURCES += \
|
2014-01-16 16:16:24 -08:00
|
|
|
lib/daemon.c \
|
2014-02-24 11:12:25 -08:00
|
|
|
lib/latch-unix.c \
|
2014-02-26 08:45:58 -08:00
|
|
|
lib/signals.c \
|
|
|
|
lib/signals.h \
|
2014-02-24 11:12:25 -08:00
|
|
|
lib/stream-fd-unix.c \
|
2014-02-18 14:39:47 -08:00
|
|
|
lib/stream-unix.c
|
2014-01-09 16:26:12 -08:00
|
|
|
endif
|
|
|
|
|
2013-12-24 09:18:42 -08:00
|
|
|
EXTRA_DIST += \
|
|
|
|
lib/stdio.h.in \
|
|
|
|
lib/string.h.in
|
2012-03-15 17:10:41 -07:00
|
|
|
|
2013-12-13 18:54:28 +01:00
|
|
|
nodist_lib_libopenvswitch_la_SOURCES = \
|
2009-06-09 14:19:53 -07:00
|
|
|
lib/dirs.c
|
2013-12-13 18:54:28 +01:00
|
|
|
CLEANFILES += $(nodist_lib_libopenvswitch_la_SOURCES)
|
2009-07-08 13:19:16 -07:00
|
|
|
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_LTLIBRARIES += lib/libsflow.la
|
|
|
|
lib_libsflow_la_LDFLAGS = -release $(VERSION)
|
|
|
|
lib_libsflow_la_SOURCES = \
|
2009-11-20 09:45:26 -08:00
|
|
|
lib/sflow_api.h \
|
|
|
|
lib/sflow.h \
|
|
|
|
lib/sflow_agent.c \
|
|
|
|
lib/sflow_sampler.c \
|
|
|
|
lib/sflow_poller.c \
|
|
|
|
lib/sflow_receiver.c
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libsflow_la_CPPFLAGS = $(AM_CPPFLAGS)
|
|
|
|
lib_libsflow_la_CFLAGS = $(AM_CFLAGS)
|
2009-11-20 09:45:26 -08:00
|
|
|
if HAVE_WNO_UNUSED
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libsflow_la_CFLAGS += -Wno-unused
|
2009-11-20 09:45:26 -08:00
|
|
|
endif
|
2010-07-30 14:47:29 -07:00
|
|
|
if HAVE_WNO_UNUSED_PARAMETER
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libsflow_la_CFLAGS += -Wno-unused-parameter
|
2010-07-30 14:47:29 -07:00
|
|
|
endif
|
2009-11-20 09:45:26 -08:00
|
|
|
|
2014-01-23 15:35:22 -08:00
|
|
|
if LINUX
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libopenvswitch_la_SOURCES += \
|
2010-05-26 10:38:52 -07:00
|
|
|
lib/dpif-linux.c \
|
2010-12-29 14:20:16 -08:00
|
|
|
lib/dpif-linux.h \
|
2010-05-26 10:38:52 -07:00
|
|
|
lib/netdev-linux.c \
|
2011-04-28 11:13:53 -07:00
|
|
|
lib/netdev-linux.h \
|
2011-08-25 14:06:54 -07:00
|
|
|
lib/netlink-notifier.c \
|
|
|
|
lib/netlink-notifier.h \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/netlink-protocol.h \
|
2010-12-10 09:51:03 -08:00
|
|
|
lib/netlink-socket.c \
|
|
|
|
lib/netlink-socket.h \
|
2010-12-21 13:44:37 -08:00
|
|
|
lib/rtnetlink-link.c \
|
2010-12-21 16:26:21 -08:00
|
|
|
lib/rtnetlink-link.h \
|
2011-01-12 14:55:18 -08:00
|
|
|
lib/route-table.c \
|
|
|
|
lib/route-table.h
|
2009-07-08 13:19:16 -07:00
|
|
|
endif
|
|
|
|
|
2013-07-10 11:40:28 -07:00
|
|
|
if HAVE_POSIX_AIO
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libopenvswitch_la_SOURCES += lib/async-append-aio.c
|
2013-07-10 11:40:28 -07:00
|
|
|
else
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libopenvswitch_la_SOURCES += lib/async-append-null.c
|
2013-07-10 11:40:28 -07:00
|
|
|
endif
|
|
|
|
|
2012-10-05 13:24:21 -07:00
|
|
|
if ESX
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libopenvswitch_la_SOURCES += \
|
2012-10-05 13:24:21 -07:00
|
|
|
lib/route-table-stub.c
|
|
|
|
endif
|
|
|
|
|
2012-06-29 21:11:24 +00:00
|
|
|
if HAVE_IF_DL
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libopenvswitch_la_SOURCES += \
|
2012-07-25 22:51:05 +02:00
|
|
|
lib/netdev-bsd.c \
|
|
|
|
lib/rtbsd.c \
|
|
|
|
lib/rtbsd.h \
|
2012-06-29 21:11:24 +00:00
|
|
|
lib/route-table-bsd.c
|
|
|
|
endif
|
|
|
|
|
2009-07-08 13:19:16 -07:00
|
|
|
if HAVE_OPENSSL
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libopenvswitch_la_SOURCES += lib/stream-ssl.c
|
|
|
|
nodist_lib_libopenvswitch_la_SOURCES += lib/dhparams.c
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/dhparams.c: lib/dh1024.pem lib/dh2048.pem lib/dh4096.pem
|
|
|
|
(echo '#include "lib/dhparams.h"' && \
|
|
|
|
openssl dhparam -C -in $(srcdir)/lib/dh1024.pem -noout && \
|
|
|
|
openssl dhparam -C -in $(srcdir)/lib/dh2048.pem -noout && \
|
|
|
|
openssl dhparam -C -in $(srcdir)/lib/dh4096.pem -noout) \
|
|
|
|
| sed 's/\(get_dh[0-9]*\)()/\1(void)/' > lib/dhparams.c.tmp
|
|
|
|
mv lib/dhparams.c.tmp lib/dhparams.c
|
2011-05-10 09:17:37 -07:00
|
|
|
else
|
2013-12-13 18:54:28 +01:00
|
|
|
lib_libopenvswitch_la_SOURCES += lib/stream-nossl.c
|
2009-07-08 13:19:16 -07:00
|
|
|
endif
|
|
|
|
|
|
|
|
EXTRA_DIST += \
|
|
|
|
lib/dh1024.pem \
|
|
|
|
lib/dh2048.pem \
|
2010-11-29 12:28:26 -08:00
|
|
|
lib/dh4096.pem \
|
|
|
|
lib/dirs.c.in
|
2009-07-08 13:19:16 -07:00
|
|
|
|
2011-08-24 10:45:32 -07:00
|
|
|
MAN_FRAGMENTS += \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/common.man \
|
2009-11-06 15:35:10 -08:00
|
|
|
lib/common-syn.man \
|
2012-04-20 14:09:30 -07:00
|
|
|
lib/coverage-unixctl.man \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/daemon.man \
|
2009-11-06 15:35:10 -08:00
|
|
|
lib/daemon-syn.man \
|
2012-07-13 10:25:27 -07:00
|
|
|
lib/memory-unixctl.man \
|
2012-11-27 10:12:26 -08:00
|
|
|
lib/ofp-version.man \
|
2011-10-27 09:39:24 -07:00
|
|
|
lib/ovs.tmac \
|
2014-01-16 16:16:24 -08:00
|
|
|
lib/service.man \
|
|
|
|
lib/service-syn.man \
|
2009-12-21 13:10:55 -08:00
|
|
|
lib/ssl-bootstrap.man \
|
2009-12-21 13:13:48 -08:00
|
|
|
lib/ssl-bootstrap-syn.man \
|
2009-12-21 13:10:55 -08:00
|
|
|
lib/ssl-peer-ca-cert.man \
|
|
|
|
lib/ssl.man \
|
2009-12-21 13:13:48 -08:00
|
|
|
lib/ssl-syn.man \
|
2011-02-08 16:09:45 -08:00
|
|
|
lib/table.man \
|
2010-03-23 11:22:42 -07:00
|
|
|
lib/unixctl.man \
|
|
|
|
lib/unixctl-syn.man \
|
2009-12-21 13:10:55 -08:00
|
|
|
lib/vconn-active.man \
|
|
|
|
lib/vconn-passive.man \
|
2009-09-09 11:16:55 -07:00
|
|
|
lib/vlog-unixctl.man \
|
2009-11-06 15:35:10 -08:00
|
|
|
lib/vlog-syn.man \
|
2009-07-08 13:19:16 -07:00
|
|
|
lib/vlog.man
|
|
|
|
|
2012-03-15 17:10:41 -07:00
|
|
|
# vswitch IDL
|
|
|
|
OVSIDL_BUILT += \
|
2012-10-03 15:58:27 -07:00
|
|
|
$(srcdir)/lib/vswitch-idl.c \
|
|
|
|
$(srcdir)/lib/vswitch-idl.h \
|
2013-10-08 14:37:51 -07:00
|
|
|
$(srcdir)/lib/vswitch-idl.ovsidl \
|
|
|
|
$(srcdir)/lib/vtep-idl.c \
|
|
|
|
$(srcdir)/lib/vtep-idl.h \
|
|
|
|
$(srcdir)/lib/vtep-idl.ovsidl
|
2012-03-15 17:10:41 -07:00
|
|
|
|
2012-10-03 15:58:27 -07:00
|
|
|
EXTRA_DIST += $(srcdir)/lib/vswitch-idl.ann
|
2012-10-04 15:53:14 -07:00
|
|
|
VSWITCH_IDL_FILES = \
|
|
|
|
$(srcdir)/vswitchd/vswitch.ovsschema \
|
|
|
|
$(srcdir)/lib/vswitch-idl.ann
|
2012-10-03 15:58:27 -07:00
|
|
|
$(srcdir)/lib/vswitch-idl.ovsidl: $(VSWITCH_IDL_FILES)
|
2012-10-04 15:53:14 -07:00
|
|
|
$(OVSDB_IDLC) annotate $(VSWITCH_IDL_FILES) > $@.tmp
|
2012-03-15 17:10:41 -07:00
|
|
|
mv $@.tmp $@
|
|
|
|
|
2013-10-08 14:37:51 -07:00
|
|
|
EXTRA_DIST += $(srcdir)/lib/vtep-idl.ann
|
|
|
|
VTEP_IDL_FILES = \
|
|
|
|
$(srcdir)/vtep/vtep.ovsschema \
|
|
|
|
$(srcdir)/lib/vtep-idl.ann
|
|
|
|
$(srcdir)/lib/vtep-idl.ovsidl: $(VTEP_IDL_FILES)
|
|
|
|
$(OVSDB_IDLC) annotate $(VTEP_IDL_FILES) > $@.tmp
|
|
|
|
mv $@.tmp $@
|
|
|
|
|
2010-11-29 12:28:26 -08:00
|
|
|
lib/dirs.c: lib/dirs.c.in Makefile
|
|
|
|
($(ro_c) && sed < $(srcdir)/lib/dirs.c.in \
|
|
|
|
-e 's,[@]srcdir[@],$(srcdir),g' \
|
|
|
|
-e 's,[@]LOGDIR[@],"$(LOGDIR)",g' \
|
|
|
|
-e 's,[@]RUNDIR[@],"$(RUNDIR)",g' \
|
2012-07-27 15:52:21 -07:00
|
|
|
-e 's,[@]DBDIR[@],"$(DBDIR)",g' \
|
2010-11-29 12:28:26 -08:00
|
|
|
-e 's,[@]bindir[@],"$(bindir)",g' \
|
2011-07-08 17:03:17 -07:00
|
|
|
-e 's,[@]sysconfdir[@],"$(sysconfdir)",g' \
|
2010-11-29 12:28:26 -08:00
|
|
|
-e 's,[@]pkgdatadir[@],"$(pkgdatadir)",g') \
|
|
|
|
> lib/dirs.c.tmp
|
2009-07-08 13:19:16 -07:00
|
|
|
mv lib/dirs.c.tmp lib/dirs.c
|
|
|
|
|
2012-01-12 15:48:19 -08:00
|
|
|
$(srcdir)/lib/ofp-errors.inc: \
|
2013-06-24 13:49:40 -07:00
|
|
|
lib/ofp-errors.h include/openflow/openflow-common.h \
|
|
|
|
$(srcdir)/build-aux/extract-ofp-errors
|
2012-05-22 10:17:00 -07:00
|
|
|
$(run_python) $(srcdir)/build-aux/extract-ofp-errors \
|
2013-06-24 13:49:40 -07:00
|
|
|
$(srcdir)/lib/ofp-errors.h \
|
|
|
|
$(srcdir)/include/openflow/openflow-common.h > $@.tmp
|
|
|
|
mv $@.tmp $@
|
2012-04-19 12:54:16 -07:00
|
|
|
$(srcdir)/lib/ofp-errors.c: $(srcdir)/lib/ofp-errors.inc
|
2012-01-12 15:48:19 -08:00
|
|
|
EXTRA_DIST += build-aux/extract-ofp-errors lib/ofp-errors.inc
|
2011-01-12 13:42:50 -08:00
|
|
|
|
2012-07-19 23:23:17 -07:00
|
|
|
$(srcdir)/lib/ofp-msgs.inc: \
|
|
|
|
lib/ofp-msgs.h $(srcdir)/build-aux/extract-ofp-msgs
|
|
|
|
$(run_python) $(srcdir)/build-aux/extract-ofp-msgs \
|
|
|
|
$(srcdir)/lib/ofp-msgs.h $@ > $@.tmp && mv $@.tmp $@
|
|
|
|
$(srcdir)/lib/ofp-msgs.c: $(srcdir)/lib/ofp-msgs.inc
|
|
|
|
EXTRA_DIST += build-aux/extract-ofp-msgs lib/ofp-msgs.inc
|
|
|
|
|
2011-07-06 10:43:03 -07:00
|
|
|
INSTALL_DATA_LOCAL += lib-install-data-local
|
2010-08-25 10:26:40 -07:00
|
|
|
lib-install-data-local:
|
2009-07-08 13:19:16 -07:00
|
|
|
$(MKDIR_P) $(DESTDIR)$(RUNDIR)
|
|
|
|
$(MKDIR_P) $(DESTDIR)$(PKIDIR)
|
|
|
|
$(MKDIR_P) $(DESTDIR)$(LOGDIR)
|
2012-07-27 15:52:21 -07:00
|
|
|
$(MKDIR_P) $(DESTDIR)$(DBDIR)
|
2009-07-08 13:19:16 -07:00
|
|
|
|