Use thread local storage for thread index
[vpp.git] / src / vlib-api.am
1 # 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
14 lib_LTLIBRARIES += libvlibmemory.la libvlibmemoryclient.la \
15                    libvlibsocket.la
16
17 libvlibmemory_la_DEPENDENCIES = libvppinfra.la libsvm.la libvlib.la
18 libvlibmemory_la_LIBADD = $(libvlibmemory_la_DEPENDENCIES) -lpthread
19 libvlibmemory_la_SOURCES =                      \
20         vlibapi/api.h                           \
21         vlibapi/api_helper_macros.h             \
22         vlibapi/api_shared.c                    \
23         vlibapi/node_serialize.c                \
24         vlibmemory/api.h                        \
25         vlibmemory/memclnt.api                  \
26         vlibmemory/memory_shared.c              \
27         vlibmemory/memory_vlib.c                \
28         vlibmemory/unix_shared_memory_queue.c   \
29         vlibmemory/unix_shared_memory_queue.h   \
30         vlibmemory/vl_memory_api_h.h            \
31         vlibmemory/vl_memory_msg_enum.h
32
33 nobase_include_HEADERS += vlibapi/api.h vlibapi/api_helper_macros.h vlibapi/vat_helper_macros.h
34
35 libvlibmemoryclient_la_DEPENDENCIES = libvppinfra.la libsvm.la
36 libvlibmemoryclient_la_LIBADD = $(libvlibmemoryclient_la_DEPENDENCIES) -lpthread
37 libvlibmemoryclient_la_SOURCES =                \
38         vlibapi/api_helper_macros.h             \
39         vlibapi/api_shared.c                    \
40         vlibapi/node_unserialize.c              \
41         vlibmemory/api.h                        \
42         vlibmemory/memclnt.api                  \
43         vlibmemory/memory_client.c              \
44         vlibmemory/memory_shared.c              \
45         vlibmemory/unix_shared_memory_queue.c   \
46         vlibmemory/unix_shared_memory_queue.h   \
47         vlibmemory/vl_memory_api_h.h            \
48         vlibmemory/vl_memory_msg_enum.h
49
50 nobase_include_HEADERS +=                       \
51         vlibmemory/api.h                        \
52         vlibmemory/vl_memory_api_h.h            \
53         vlibmemory/vl_memory_msg_enum.h         \
54         vlibmemory/unix_shared_memory_queue.h   \
55         vlibmemory/memclnt.api.h
56
57 libvlibsocket_la_DEPENDENCIES = libvppinfra.la libvlib.la libvlibmemory.la
58 libvlibsocket_la_LIBADD = $(libvlibsocket_la_DEPENDENCIES)
59 libvlibsocket_la_SOURCES =                      \
60         vlibsocket/api.h                        \
61         vlibsocket/sockclnt.api                 \
62         vlibsocket/sockclnt_vlib.c              \
63         vlibsocket/socksvr_vlib.c               \
64         vlibsocket/vl_socket_api_h.h            \
65         vlibsocket/vl_socket_msg_enum.h
66
67 nobase_include_HEADERS +=                       \
68         vlibsocket/api.h                        \
69         vlibsocket/vl_socket_api_h.h            \
70         vlibsocket/vl_socket_msg_enum.h         \
71         vlibsocket/sockclnt.api.h
72
73 BUILT_SOURCES +=                                \
74         vlibsocket/sockclnt.api.h               \
75         vlibmemory/memclnt.api.h                \
76         vlibmemory/memclnt.api.json
77
78 API_FILES += vlibmemory/memclnt.api
79
80 # vi:syntax=automake