a3a9a8d6ed4ecaa6fa06f75dbb5f3154dfb8ae8f
[vpp.git] / src / examples / sample-plugin / Makefile.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 AUTOMAKE_OPTIONS = foreign subdir-objects
15
16 AM_CFLAGS = -Wall -I${top_srcdir} -I${top_builddir}
17 AM_LDFLAGS = -module -shared -avoid-version
18 AM_LIBTOOLFLAGS = --quiet
19 SUFFIXES = .api.h .api .api.json
20 API_FILES =
21 BUILT_SOURCES =
22 vppplugins_LTLIBRARIES =
23 vppapitestplugins_LTLIBRARIES =
24 noinst_HEADERS =
25 nobase_apiinclude_HEADERS =
26 ACLOCAL_AMFLAGS = -I m4
27
28 vppapitestpluginsdir = ${libdir}/vpp_api_test_plugins
29 vpppluginsdir = ${libdir}/vpp_plugins
30
31 include sample.am
32
33 %.api.h: %.api
34         mkdir -p `dirname $@` ; \
35         $(CC) $(CPPFLAGS) -E -P -C -x c $^ \
36         | vppapigen --input - --output $@ --show-name $@
37
38 %.api.json: %.api
39         @echo "  JSON APIGEN  " $@ ;                            \
40         mkdir -p `dirname $@` ;                                 \
41         $(CC) $(CPPFLAGS) -E -P -C -x c $^                      \
42         | vppapigen --input - --json $@
43
44 apidir = $(prefix)/api/plugins
45 apiincludedir = ${includedir}/vpp_plugins
46
47 api_DATA = \
48         $(patsubst %.api,%.api.json,$(API_FILES))
49
50 BUILT_SOURCES += \
51         $(patsubst %.api,%.api.h,$(API_FILES))
52
53
54 # Remove *.la files
55 install-data-hook:
56         @(cd $(vpppluginsdir) && $(RM) $(vppplugins_LTLIBRARIES))
57         @(cd $(vppapitestpluginsdir) && $(RM) $(vppapitestplugins_LTLIBRARIES))
58
59 CLEANFILES = $(BUILT_SOURCES)