kumquat-buildroot/package/ssdp-responder/ssdp-responder.mk
Joachim Wiberg 6d9fdc0984 package/ssdp-responder: new package
Small (35k), and stand-alone, SSDP responder with built-in web server
(on port 1901) for serving description.xml when Windows scans for any
network devices on the LAN.  Also includes ssdp-scan (31k), similar to
the mdns-scan tool, to probe for SSDP capable devices.

Although it does not use fork(), it still fails to build on noMMU: lots
of missing function declarations, and lots of multicast-related structs
definitions, causing warnings like:

    ssdp-scan.c:57:12: warning: implicit declaration of function ‘strdup’; did you mean ‘strcmp’? [-Wimplicit-function-declaration]
    ssdp-scan.c:57:10: warning: assignment to ‘char *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion]

and errors like:

    ssdp.c:357:17: error: storage size of ‘imr’ isn’t known
    struct ip_mreq imr;
                   ^~~

Finding the root cause why those get not defined in MMU on uClibc is
quite a head-scratching, so let's just disablessdp-responder for noMMU
architectures.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
[yann.morin.1998@free.fr: extend commit log to explain noMMU state]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2021-01-24 23:24:14 +01:00

32 lines
983 B
Makefile

################################################################################
#
# ssdp-responder
#
################################################################################
SSDP_RESPONDER_VERSION = 1.8
SSDP_RESPONDER_SITE = https://github.com/troglobit/ssdp-responder/releases/download/v$(SSDP_RESPONDER_VERSION)
SSDP_RESPONDER_LICENSE = ISC
SSDP_RESPONDER_LICENSE_FILES = LICENSE
SSDP_RESPONDER_CPE_ID_VENDOR = troglobit
SSDP_RESPONDER_DEPENDENCIES = host-pkgconf
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
SSDP_RESPONDER_DEPENDENCIES += systemd
SSDP_RESPONDER_CONF_OPTS += --with-systemd
else
SSDP_RESPONDER_CONF_OPTS += --without-systemd
endif
define SSDP_RESPONDER_INSTALL_INIT_SYSV
$(INSTALL) -D -m 0755 package/ssdp-responder/S50ssdpd \
$(TARGET_DIR)/etc/init.d/S50ssdpd
endef
define SSDP-RESPONDER_INSTALL_INIT_SYSTEMD
$(INSTALL) -D -m 644 $(@D)/ssdp-responder.service \
$(TARGET_DIR)/usr/lib/systemd/system/ssdp-responder.service
endef
$(eval $(autotools-package))