xref: /aosp_15_r20/external/ot-br-posix/src/mdns/CMakeLists.txt (revision 4a64e381480ef79f0532b2421e44e6ee336b8e0d)
1#
2#  Copyright (c) 2020, The OpenThread Authors.
3#  All rights reserved.
4#
5#  Redistribution and use in source and binary forms, with or without
6#  modification, are permitted provided that the following conditions are met:
7#  1. Redistributions of source code must retain the above copyright
8#     notice, this list of conditions and the following disclaimer.
9#  2. Redistributions in binary form must reproduce the above copyright
10#     notice, this list of conditions and the following disclaimer in the
11#     documentation and/or other materials provided with the distribution.
12#  3. Neither the name of the copyright holder nor the
13#     names of its contributors may be used to endorse or promote products
14#     derived from this software without specific prior written permission.
15#
16#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17#  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18#  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19#  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
20#  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
21#  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
22#  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
23#  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
24#  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
25#  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
26#  POSSIBILITY OF SUCH DAMAGE.
27#
28
29if(OTBR_MDNS STREQUAL "avahi")
30    add_library(otbr-mdns
31        mdns.cpp
32        mdns_avahi.cpp
33    )
34    target_compile_definitions(otbr-mdns PUBLIC
35        OTBR_ENABLE_MDNS_AVAHI=1
36    )
37    target_link_libraries(otbr-mdns
38        PUBLIC
39            otbr-common
40        PRIVATE
41            otbr-utils
42            avahi-client
43            avahi-common
44    )
45endif()
46
47if(OTBR_MDNS STREQUAL "mDNSResponder")
48    add_library(otbr-mdns
49        mdns.cpp
50        mdns_mdnssd.cpp
51    )
52    target_compile_definitions(otbr-mdns PUBLIC
53        OTBR_ENABLE_MDNS_MDNSSD=1
54    )
55    target_link_libraries(otbr-mdns
56        PUBLIC
57            otbr-common
58        PRIVATE
59            otbr-utils
60            dns_sd
61    )
62endif()
63