blob: 5bc00e7479b90b0831fb648fb533f06627d80517 [file] [log] [blame]
Ed Warnickecb9cada2015-12-08 15:45:58 -07001# Copyright (c) 2015 Cisco and/or its affiliates.
2# Licensed under the Apache License, Version 2.0 (the "License");
3# you may not use this file except in compliance with the License.
4# You may obtain a copy of the License at:
5#
6# http://www.apache.org/licenses/LICENSE-2.0
7#
8# Unless required by applicable law or agreed to in writing, software
9# distributed under the License is distributed on an "AS IS" BASIS,
10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11# See the License for the specific language governing permissions and
12# limitations under the License.
13
14AUTOMAKE_OPTIONS = foreign subdir-objects
15
16AM_CFLAGS = -Wall
17
18lib_LTLIBRARIES = libvlibapi.la libvlibmemory.la libvlibmemoryclient.la \
19 libvlibsocket.la
20
21libvlibapi_la_SOURCES = \
22 vlibapi/api.h \
Dave Barachb44e9bc2016-02-19 09:06:23 -050023 vlibapi/api_shared.c \
24 vlibapi/node_serialize.c
Ed Warnickecb9cada2015-12-08 15:45:58 -070025
26nobase_include_HEADERS = vlibapi/api.h
27
28libvlibmemory_la_SOURCES = \
29 vlibmemory/api.h \
30 vlibmemory/memclnt.api \
31 vlibmemory/memory_shared.c \
32 vlibmemory/memory_vlib.c \
33 vlibmemory/vl_memory_api_h.h \
34 vlibmemory/vl_memory_msg_enum.h \
35 vlibmemory/unix_shared_memory_queue.c \
36 vlibmemory/unix_shared_memory_queue.h
37
38libvlibmemoryclient_la_SOURCES = \
39 vlibmemory/api.h \
40 vlibmemory/memclnt.api \
41 vlibmemory/memory_shared.c \
42 vlibmemory/memory_client.c \
43 vlibmemory/vl_memory_api_h.h \
44 vlibmemory/vl_memory_msg_enum.h \
45 vlibmemory/unix_shared_memory_queue.c \
46 vlibmemory/unix_shared_memory_queue.h
47
48nobase_include_HEADERS += \
49 vlibmemory/api.h \
50 vlibmemory/vl_memory_api_h.h \
51 vlibmemory/vl_memory_msg_enum.h \
52 vlibmemory/unix_shared_memory_queue.h \
53 vlibmemory/memclnt.api.h
54
55libvlibsocket_la_SOURCES = \
56 vlibsocket/api.h \
57 vlibsocket/sockclnt.api \
58 vlibsocket/sockclnt_vlib.c \
59 vlibsocket/socksvr_vlib.c \
60 vlibsocket/vl_socket_api_h.h \
61 vlibsocket/vl_socket_msg_enum.h
62
63nobase_include_HEADERS += \
64 vlibsocket/api.h \
65 vlibsocket/vl_socket_api_h.h \
66 vlibsocket/vl_socket_msg_enum.h \
67 vlibsocket/sockclnt.api.h
68
Ed Warnickecb9cada2015-12-08 15:45:58 -070069BUILT_SOURCES = vlibsocket/sockclnt.api.h vlibmemory/memclnt.api.h
70
71SUFFIXES = .api.h .api
72
73%.api.h: %.api
74 @echo " APIGEN " $@ ; \
Jean-Mickael Guerin433688d2016-03-02 22:34:50 +010075 mkdir -p `dirname $@` ; \
Ed Warnickecb9cada2015-12-08 15:45:58 -070076 $(CC) $(CPPFLAGS) -E -P -C -x c $^ \
77 | vppapigen --input - --output $@ --show-name $@
Ole Troan5f9dcff2016-08-01 04:59:13 +020078
79# install the API definition, so we can produce java bindings, etc.
80apidir = $(prefix)/vlibmemory
81api_DATA = vlibmemory/memclnt.api