nat: ipfix logging separation & refactor
[vpp.git] / src / plugins / nat / CMakeLists.txt
1 # Copyright (c) 2018 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 set(CMAKE_VERBOSE_MAKEFILE ON)
15
16 add_vpp_library(nat
17   SOURCES
18   lib/ipfix_logging.c
19   lib/alloc.c
20
21   INSTALL_HEADERS
22   lib/ipfix_logging.h
23   lib/alloc.h
24 )
25
26 add_vpp_plugin(nat
27   SOURCES
28   nat.c
29   nat_api.c
30   in2out.c
31   in2out_ed.c
32   out2in.c
33   out2in_ed.c
34   nat_dpo.c
35   nat44_cli.c
36   nat44_handoff.c
37   nat44_hairpinning.c
38   nat44_classify.c
39   nat_affinity.c
40   nat_format.c
41   nat_syslog.c
42   nat_ha.c
43
44   MULTIARCH_SOURCES
45   in2out.c
46   in2out_ed.c
47   nat44_classify.c
48   nat44_hairpinning.c
49   nat44_handoff.c
50   out2in.c
51   out2in_ed.c
52
53   API_FILES
54   nat.api
55   nat_types.api
56
57   API_TEST_SOURCES
58   nat_test.c
59
60   INSTALL_HEADERS
61   nat_all_api_h.h
62   nat_msg_enum.h
63
64   LINK_LIBRARIES nat
65 )
66
67 add_vpp_plugin(dslite
68   SOURCES
69   nat_syslog.c
70   dslite/dslite_api.c
71   dslite/dslite_dpo.c
72   dslite/dslite.c
73   dslite/dslite_in2out.c
74   dslite/dslite_out2in.c
75   dslite/dslite_cli.c
76   dslite/dslite_ce_encap.c
77   dslite/dslite_ce_decap.c
78
79   MULTIARCH_SOURCES
80   dslite/dslite_ce_decap.c
81   dslite/dslite_ce_encap.c
82   dslite/dslite_in2out.c
83   dslite/dslite_out2in.c
84
85   API_FILES
86   dslite/dslite.api
87
88   LINK_LIBRARIES nat
89 )
90
91 add_vpp_plugin(nat66
92   SOURCES
93   nat_syslog.c
94   nat66/nat66.c
95   nat66/nat66_cli.c
96   nat66/nat66_api.c
97   nat66/nat66_in2out.c
98   nat66/nat66_out2in.c
99
100   MULTIARCH_SOURCES
101   nat66/nat66_in2out.c
102   nat66/nat66_out2in.c
103
104   API_FILES
105   nat66/nat66.api
106   nat_types.api
107
108   LINK_LIBRARIES nat
109 )
110
111 add_vpp_plugin(det44
112   SOURCES
113   det44/det44.c
114   det44/det44_cli.c
115   det44/det44_api.c
116   det44/det44_in2out.c
117   det44/det44_out2in.c
118
119   MULTIARCH_SOURCES
120   det44/det44_in2out.c
121   det44/det44_out2in.c
122
123   API_FILES
124   det44/det44.api
125   nat_types.api
126
127   LINK_LIBRARIES nat
128 )
129
130 add_vpp_plugin(nat64
131   SOURCES
132   nat_syslog.c
133   nat64/nat64.c
134   nat64/nat64_db.c
135   nat64/nat64_cli.c
136   nat64/nat64_api.c
137   nat64/nat64_in2out.c
138   nat64/nat64_out2in.c
139
140   MULTIARCH_SOURCES
141   nat64/nat64_in2out.c
142   nat64/nat64_out2in.c
143
144   API_FILES
145   nat64/nat64.api
146   nat_types.api
147
148   LINK_LIBRARIES nat
149 )