sbin_PROGRAMS += vswitchd/ovs-vswitchd
-man_MANS += \
- vswitchd/ovs-vswitchd.8 \
- vswitchd/ovs-brcompatd.8
+man_MANS += vswitchd/ovs-vswitchd.8
DISTCLEANFILES += \
- vswitchd/ovs-vswitchd.8 \
- vswitchd/ovs-brcompatd.8
+ vswitchd/ovs-vswitchd.8
vswitchd_ovs_vswitchd_SOURCES = \
vswitchd/bridge.c \
vswitchd/bridge.h \
- vswitchd/proc-net-compat.c \
- vswitchd/proc-net-compat.h \
vswitchd/ovs-vswitchd.c \
vswitchd/system-stats.c \
vswitchd/system-stats.h \
- vswitchd/vswitch-idl.c \
- vswitchd/vswitch-idl.h \
vswitchd/xenserver.c \
vswitchd/xenserver.h
vswitchd_ovs_vswitchd_LDADD = \
- ofproto/libofproto.a \
- lib/libsflow.a \
- lib/libopenvswitch.a \
- $(SSL_LIBS)
-EXTRA_DIST += \
- vswitchd/ovs-vswitchd.8.in \
- vswitchd/INTERNALS
-
-if HAVE_NETLINK
-sbin_PROGRAMS += vswitchd/ovs-brcompatd
-vswitchd_ovs_brcompatd_SOURCES = \
- vswitchd/ovs-brcompatd.c \
- vswitchd/vswitch-idl.c \
- vswitchd/vswitch-idl.h
-vswitchd_ovs_brcompatd_LDADD = lib/libopenvswitch.a $(SSL_LIBS)
-endif
-EXTRA_DIST += vswitchd/ovs-brcompatd.8.in
+ ofproto/libofproto.la \
+ lib/libsflow.la \
+ lib/libopenvswitch.la
+EXTRA_DIST += vswitchd/INTERNALS
+MAN_ROOTS += vswitchd/ovs-vswitchd.8.in
# vswitch schema and IDL
-OVSIDL_BUILT += \
- vswitchd/vswitch-idl.c \
- vswitchd/vswitch-idl.h \
- vswitchd/vswitch-idl.ovsidl
-VSWITCH_IDL_FILES = vswitchd/vswitch.ovsschema vswitchd/vswitch-idl.ann
-EXTRA_DIST += $(VSWITCH_IDL_FILES)
-vswitchd/vswitch-idl.ovsidl: $(VSWITCH_IDL_FILES)
- $(OVSDB_IDLC) -C $(srcdir) annotate $(VSWITCH_IDL_FILES) > $@.tmp
- mv $@.tmp $@
+EXTRA_DIST += vswitchd/vswitch.ovsschema
+pkgdata_DATA += vswitchd/vswitch.ovsschema
# vswitch E-R diagram
-if BUILD_ER_DIAGRAMS
-$(srcdir)/vswitchd/vswitch.pic: ovsdb/ovsdb-dot.in vswitchd/vswitch.ovsschema
- $(OVSDB_DOT) $(srcdir)/vswitchd/vswitch.ovsschema \
- | dot -T pic \
- | sed -e "/^'/d" \
- -e '/^box attrs0/d' \
- -e 's/linethick = 0;/linethick = 1;/' \
- > $@.tmp
- mv $@.tmp $@
-else
-$(srcdir)/vswitchd/vswitch.pic: ovsdb/ovsdb-dot.in vswitchd/vswitch.ovsschema
- touch $@
+#
+# If "python" or "dot" is not available, then we do not add graphical diagram
+# to the documentation.
+if HAVE_PYTHON
+if HAVE_DOT
+vswitchd/vswitch.gv: ovsdb/ovsdb-dot.in vswitchd/vswitch.ovsschema
+ $(OVSDB_DOT) --no-arrows $(srcdir)/vswitchd/vswitch.ovsschema > $@
+vswitchd/vswitch.pic: vswitchd/vswitch.gv ovsdb/dot2pic
+ (dot -T plain < vswitchd/vswitch.gv | $(srcdir)/ovsdb/dot2pic -f 3) > $@;
+VSWITCH_PIC = vswitchd/vswitch.pic
+VSWITCH_DOT_DIAGRAM_ARG = --er-diagram=$(VSWITCH_PIC)
+DISTCLEANFILES += vswitchd/vswitch.gv vswitchd/vswitch.pic
+endif
endif
-EXTRA_DIST += vswitchd/vswitch.pic
# vswitch schema documentation
EXTRA_DIST += vswitchd/vswitch.xml
-dist_man_MANS += vswitchd/ovs-vswitchd.conf.db.5
+DISTCLEANFILES += vswitchd/ovs-vswitchd.conf.db.5
+man_MANS += vswitchd/ovs-vswitchd.conf.db.5
vswitchd/ovs-vswitchd.conf.db.5: \
- ovsdb/ovsdb-doc.in vswitchd/vswitch.xml vswitchd/vswitch.ovsschema \
- $(srcdir)/vswitchd/vswitch.pic
+ ovsdb/ovsdb-doc vswitchd/vswitch.xml vswitchd/vswitch.ovsschema \
+ $(VSWITCH_PIC)
$(OVSDB_DOC) \
--title="ovs-vswitchd.conf.db" \
- --er-diagram=$(srcdir)/vswitchd/vswitch.pic \
+ $(VSWITCH_DOT_DIAGRAM_ARG) \
+ --version=$(VERSION) \
$(srcdir)/vswitchd/vswitch.ovsschema \
$(srcdir)/vswitchd/vswitch.xml > $@.tmp
mv $@.tmp $@
+
+# Version checking for vswitch.ovsschema.
+ALL_LOCAL += vswitchd/vswitch.ovsschema.stamp
+vswitchd/vswitch.ovsschema.stamp: vswitchd/vswitch.ovsschema
+ @sum=`sed '/cksum/d' $? | cksum`; \
+ expected=`sed -n 's/.*"cksum": "\(.*\)".*/\1/p' $?`; \
+ if test "X$$sum" = "X$$expected"; then \
+ touch $@; \
+ else \
+ ln=`sed -n '/"cksum":/=' $?`; \
+ echo >&2 "$?:$$ln: checksum \"$$sum\" does not match (you should probably update the version number and fix the checksum)"; \
+ exit 1; \
+ fi
+CLEANFILES += vswitchd/vswitch.ovsschema.stamp
+
+# Clean up generated files from older OVS versions. (This is important so that
+# #include "vswitch-idl.h" doesn't get the wrong copy.)
+CLEANFILES += vswitchd/vswitch-idl.c vswitchd/vswitch-idl.h