1 # Copyright (C) 2009, 2010, 2011, 2012 Nicira, Inc.
3 # Copying and distribution of this file, with or without modification,
4 # are permitted in any medium without royalty provided the copyright
5 # notice and this notice are preserved. This file is offered as-is,
6 # without warranty of any kind.
8 noinst_LIBRARIES += lib/libopenvswitch.a
10 lib_libopenvswitch_a_SOURCES = \
50 lib/dynamic-string.c \
51 lib/dynamic-string.h \
74 lib/learning-switch.c \
75 lib/learning-switch.h \
93 lib/netdev-provider.h \
122 lib/ovsdb-idl-provider.h \
164 lib/stream-provider.h \
199 lib/vconn-provider.h \
214 nodist_lib_libopenvswitch_a_SOURCES = \
216 CLEANFILES += $(nodist_lib_libopenvswitch_a_SOURCES)
218 noinst_LIBRARIES += lib/libsflow.a
219 lib_libsflow_a_SOURCES = \
223 lib/sflow_sampler.c \
226 lib_libsflow_a_CFLAGS = $(AM_CFLAGS)
228 lib_libsflow_a_CFLAGS += -Wno-unused
230 if HAVE_WNO_UNUSED_PARAMETER
231 lib_libsflow_a_CFLAGS += -Wno-unused-parameter
235 lib_libopenvswitch_a_SOURCES += \
242 lib/netlink-notifier.c \
243 lib/netlink-notifier.h \
244 lib/netlink-protocol.h \
245 lib/netlink-socket.c \
246 lib/netlink-socket.h \
247 lib/rtnetlink-link.c \
248 lib/rtnetlink-link.h \
254 lib_libopenvswitch_a_SOURCES += \
255 lib/route-table-stub.c
259 lib_libopenvswitch_a_SOURCES += \
263 lib/route-table-bsd.c
267 lib_libopenvswitch_a_SOURCES += lib/stream-ssl.c
268 nodist_lib_libopenvswitch_a_SOURCES += lib/dhparams.c
269 lib/dhparams.c: lib/dh1024.pem lib/dh2048.pem lib/dh4096.pem
270 (echo '#include "lib/dhparams.h"' && \
271 openssl dhparam -C -in $(srcdir)/lib/dh1024.pem -noout && \
272 openssl dhparam -C -in $(srcdir)/lib/dh2048.pem -noout && \
273 openssl dhparam -C -in $(srcdir)/lib/dh4096.pem -noout) \
274 | sed 's/\(get_dh[0-9]*\)()/\1(void)/' > lib/dhparams.c.tmp
275 mv lib/dhparams.c.tmp lib/dhparams.c
277 lib_libopenvswitch_a_SOURCES += lib/stream-nossl.c
289 lib/coverage-unixctl.man \
292 lib/leak-checker.man \
293 lib/memory-unixctl.man \
295 lib/ssl-bootstrap.man \
296 lib/ssl-bootstrap-syn.man \
297 lib/ssl-peer-ca-cert.man \
300 lib/stress-unixctl.man \
303 lib/unixctl-syn.man \
304 lib/vconn-active.man \
305 lib/vconn-passive.man \
306 lib/vlog-unixctl.man \
312 $(srcdir)/lib/vswitch-idl.c \
313 $(srcdir)/lib/vswitch-idl.h \
314 $(srcdir)/lib/vswitch-idl.ovsidl
316 EXTRA_DIST += $(srcdir)/lib/vswitch-idl.ann
317 VSWITCH_IDL_FILES = \
318 $(srcdir)/vswitchd/vswitch.ovsschema \
319 $(srcdir)/lib/vswitch-idl.ann
320 $(srcdir)/lib/vswitch-idl.ovsidl: $(VSWITCH_IDL_FILES)
321 $(OVSDB_IDLC) annotate $(VSWITCH_IDL_FILES) > $@.tmp
324 lib/dirs.c: lib/dirs.c.in Makefile
325 ($(ro_c) && sed < $(srcdir)/lib/dirs.c.in \
326 -e 's,[@]srcdir[@],$(srcdir),g' \
327 -e 's,[@]LOGDIR[@],"$(LOGDIR)",g' \
328 -e 's,[@]RUNDIR[@],"$(RUNDIR)",g' \
329 -e 's,[@]DBDIR[@],"$(DBDIR)",g' \
330 -e 's,[@]bindir[@],"$(bindir)",g' \
331 -e 's,[@]sysconfdir[@],"$(sysconfdir)",g' \
332 -e 's,[@]pkgdatadir[@],"$(pkgdatadir)",g') \
334 mv lib/dirs.c.tmp lib/dirs.c
336 $(srcdir)/lib/ofp-errors.inc: \
337 lib/ofp-errors.h $(srcdir)/build-aux/extract-ofp-errors
338 $(run_python) $(srcdir)/build-aux/extract-ofp-errors \
339 $(srcdir)/lib/ofp-errors.h > $@.tmp && mv $@.tmp $@
340 $(srcdir)/lib/ofp-errors.c: $(srcdir)/lib/ofp-errors.inc
341 EXTRA_DIST += build-aux/extract-ofp-errors lib/ofp-errors.inc
343 $(srcdir)/lib/ofp-msgs.inc: \
344 lib/ofp-msgs.h $(srcdir)/build-aux/extract-ofp-msgs
345 $(run_python) $(srcdir)/build-aux/extract-ofp-msgs \
346 $(srcdir)/lib/ofp-msgs.h $@ > $@.tmp && mv $@.tmp $@
347 $(srcdir)/lib/ofp-msgs.c: $(srcdir)/lib/ofp-msgs.inc
348 EXTRA_DIST += build-aux/extract-ofp-msgs lib/ofp-msgs.inc
350 INSTALL_DATA_LOCAL += lib-install-data-local
351 lib-install-data-local:
352 $(MKDIR_P) $(DESTDIR)$(RUNDIR)
353 $(MKDIR_P) $(DESTDIR)$(PKIDIR)
354 $(MKDIR_P) $(DESTDIR)$(LOGDIR)
355 $(MKDIR_P) $(DESTDIR)$(DBDIR)
357 if !USE_LINKER_SECTIONS
358 # All distributed sources, with names adjust properly for referencing
361 `for file in $(DIST_SOURCES); do \
362 if test -f $$file; then \
365 echo $(VPATH)/$$file; \
369 lib/coverage.$(OBJEXT): lib/coverage.def
370 lib/coverage.def: $(DIST_SOURCES)
371 sed -n 's|^COVERAGE_DEFINE(\([_a-zA-Z0-9]\{1,\}\)).*$$|COVERAGE_COUNTER(\1)|p' $(all_sources) | LC_ALL=C sort -u > $@
372 CLEANFILES += lib/coverage.def
374 lib/stress.$(OBJEXT): lib/stress.def
375 lib/stress.def: $(DIST_SOURCES)
376 sed -n '/^STRESS_OPTION(/,/);$$/{s/);$$/)/;p}' $(all_sources) > $@
377 CLEANFILES += lib/stress.def
379 lib/vlog.$(OBJEXT): lib/vlog-modules.def
380 lib/vlog-modules.def: $(DIST_SOURCES)
381 sed -n 's|^VLOG_DEFINE_\(THIS_\)\{0,1\}MODULE(\([_a-zA-Z0-9]\{1,\}\)).*$$|VLOG_MODULE(\2)|p' $(all_sources) | LC_ALL=C sort -u > $@
382 CLEANFILES += lib/vlog-modules.def