poco/cmake/FindBonjour.cmake
Aleksandar Fabijanic b41f211ece
2208 merge dnssd (#4479)
* Initial commit

* initial commit

* added README.md

* Update README.md

* Add top level CMakeLists like another project in POCO framework. see #1

* Add CMakeLists to Avahi and Bonjour. (see #1)

* Missing changing in top level CMakeLists correct. (see #1)

* Add samples CMakeLists. (see #1)

* Add temporary cmake find module for Avahi and Bonjour in cmake directory. (see #1)

* Add mandatory requirement diff for POCO framework to DNSSD cmake can be work correctly. (see #1)

* Update README.md

Add cmake build way.

* Update README.md

Minor change.

* Update README.md

Removed ambiguous sentence.

* Moved files

* Add cmake modules

* Add cmake modules

* Remove modules

* Correct linux cmake ci.

* Exclude DNSSD from macos, windows.

* Update CMakeLists.txt

* Remove unused gitignore

* Remove deprecated vs versions

* Add vs160 and vs170 for DNSSD

* Remove deprecated sln

* Revert bad changes

* Revert bad changes

* chore: remove vs90 sln files

* chore: remove vs90 x64 files

* Revert "chore: remove vs90 sln files"

This reverts commit 51d78f82f1.

* chore: add DNSSD to components

* chore(DNSSD): disable in CI, update copyright and doc

* fix(DNSSD): CMake on Apple platforms: fix finding library providing DNSSD.

* fix(DNSSD): Handle kDNSServiceFlagsNonBrowsable that was removed in 1096.0.2

* chore: naming and code modernize review comments

* enh(DNSSD): Define DNSSD_*_API for non-MSVC compilers.

---------

Co-authored-by: Günter Obiltschnig <guenter.obiltschnig@appinf.com>
Co-authored-by:  <soroosh@soroosh-pc.localdomain>
Co-authored-by: Seyyed Soroosh Hosseinalipour <soorosh_abi@hotmail.com>
Co-authored-by: Matej Kenda <matejken@gmail.com>
2024-04-03 22:38:56 +02:00

50 lines
1.2 KiB
CMake

# - Try to find Bonjour
# (See http://developer.apple.com/networking/bonjour/index.html)
# By default available on MacOS X.
# Check for libdns_sd
#
# BONJOUR_INCLUDE_DIR - where to find dns_sd.h, etc.
# BONJOUR_LIBRARIES - List of libraries when using ....
# BONJOUR_FOUND - True if Bonjour libraries found.
set(BONJOUR_FOUND FALSE)
set(BONJOUR_LIBRARIES)
message(STATUS "Checking whether Bonjour is supported")
# Bonjour is built-in on MacOS X / iOS (i.e. available in libSystem)
if(NOT APPLE)
IF (WIN32)
FIND_PATH(BONJOUR_INCLUDE_DIR dns_sd.h
PATHS $ENV{PROGRAMW6432}/Bonjour\ SDK/Include
)
FIND_LIBRARY(BONJOUR_LIBRARY
NAMES dnssd
PATHS $ENV{PROGRAMW6432}/Bonjour\ SDK/Lib/x64
)
ELSE(WIN32)
find_path(BONJOUR_INCLUDE_DIR dns_sd.h
PATHS /opt/dnssd/include /usr/include /usr/local/include
)
find_library(BONJOUR_LIBRARY
NAMES dns_sd
PATHS /opt/dnssd/lib /usr/lib /usr/local/lib
)
ENDIF(WIN32)
if(NOT BONJOUR_INCLUDE_DIR OR NOT BONJOUR_LIBRARY)
return()
else()
set(BONJOUR_LIBRARIES ${BONJOUR_LIBRARY} )
set(BONJOUR_FOUND TRUE)
endif()
else()
find_library(BONJOUR_LIBRARY CoreServices)
set(BONJOUR_FOUND TRUE)
endif()
mark_as_advanced( FORCE
BONJOUR_INCLUDE_DIR
BONJOUR_LIBRARY
)