236dc1015c
Signed-off-by: Francois Perrad <francois.perrad@gadz.org> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
152 lines
3.8 KiB
Makefile
152 lines
3.8 KiB
Makefile
################################################################################
|
|
#
|
|
# mosquitto
|
|
#
|
|
################################################################################
|
|
|
|
MOSQUITTO_VERSION = 2.0.18
|
|
MOSQUITTO_SITE = https://mosquitto.org/files/source
|
|
MOSQUITTO_LICENSE = EPL-2.0 or EDLv1.0
|
|
MOSQUITTO_LICENSE_FILES = LICENSE.txt epl-v20 edl-v10
|
|
MOSQUITTO_CPE_ID_VENDOR = eclipse
|
|
MOSQUITTO_INSTALL_STAGING = YES
|
|
|
|
MOSQUITTO_MAKE_OPTS = \
|
|
CLIENT_STATIC_LDADD="$(MOSQUITTO_STATIC_LIBS)" \
|
|
UNAME=Linux \
|
|
STRIP=true \
|
|
prefix=/usr \
|
|
WITH_WRAP=no \
|
|
WITH_DOCS=no
|
|
|
|
ifeq ($(BR2_SHARED_LIBS),y)
|
|
MOSQUITTO_MAKE_OPTS += WITH_STATIC_LIBRARIES=no
|
|
else
|
|
MOSQUITTO_MAKE_OPTS += WITH_STATIC_LIBRARIES=yes
|
|
endif
|
|
|
|
ifeq ($(BR2_STATIC_LIBS),y)
|
|
MOSQUITTO_MAKE_OPTS += WITH_SHARED_LIBRARIES=no
|
|
else
|
|
MOSQUITTO_MAKE_OPTS += WITH_SHARED_LIBRARIES=yes
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
|
|
MOSQUITTO_MAKE_OPTS += WITH_SYSTEMD=yes
|
|
MOSQUITTO_DEPENDENCIES += systemd
|
|
endif
|
|
|
|
# adns uses getaddrinfo_a
|
|
ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),y)
|
|
MOSQUITTO_MAKE_OPTS += WITH_ADNS=yes
|
|
else
|
|
MOSQUITTO_MAKE_OPTS += WITH_ADNS=no
|
|
endif
|
|
|
|
# threaded API uses pthread_setname_np
|
|
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS_NPTL),y)
|
|
MOSQUITTO_MAKE_OPTS += WITH_THREADING=yes
|
|
else
|
|
MOSQUITTO_MAKE_OPTS += WITH_THREADING=no
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_OPENSSL),y)
|
|
MOSQUITTO_DEPENDENCIES += host-pkgconf openssl
|
|
MOSQUITTO_MAKE_OPTS += WITH_TLS=yes
|
|
MOSQUITTO_STATIC_LIBS += `$(PKG_CONFIG_HOST_BINARY) --libs openssl`
|
|
else
|
|
MOSQUITTO_MAKE_OPTS += WITH_TLS=no
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_CJSON),y)
|
|
MOSQUITTO_DEPENDENCIES += cjson
|
|
MOSQUITTO_MAKE_OPTS += WITH_CJSON=yes
|
|
MOSQUITTO_STATIC_LIBS += -lcjson
|
|
else
|
|
MOSQUITTO_MAKE_OPTS += WITH_CJSON=no
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_C_ARES),y)
|
|
MOSQUITTO_DEPENDENCIES += c-ares
|
|
MOSQUITTO_MAKE_OPTS += WITH_SRV=yes
|
|
else
|
|
MOSQUITTO_MAKE_OPTS += WITH_SRV=no
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBWEBSOCKETS),y)
|
|
MOSQUITTO_DEPENDENCIES += libwebsockets
|
|
MOSQUITTO_MAKE_OPTS += WITH_WEBSOCKETS=yes
|
|
else
|
|
MOSQUITTO_MAKE_OPTS += WITH_WEBSOCKETS=no
|
|
endif
|
|
|
|
# C++ support is only used to create a wrapper library
|
|
ifneq ($(BR2_INSTALL_LIBSTDCPP),y)
|
|
define MOSQUITTO_DISABLE_CPP
|
|
$(SED) '/-C cpp/d' $(@D)/lib/Makefile
|
|
endef
|
|
|
|
MOSQUITTO_POST_PATCH_HOOKS += MOSQUITTO_DISABLE_CPP
|
|
endif
|
|
|
|
MOSQUITTO_MAKE_DIRS = lib client
|
|
ifeq ($(BR2_PACKAGE_MOSQUITTO_BROKER),y)
|
|
MOSQUITTO_MAKE_DIRS += src
|
|
endif
|
|
|
|
define MOSQUITTO_BUILD_CMDS
|
|
$(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) DIRS="$(MOSQUITTO_MAKE_DIRS)" \
|
|
$(MOSQUITTO_MAKE_OPTS)
|
|
endef
|
|
|
|
define MOSQUITTO_INSTALL_STAGING_CMDS
|
|
$(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) DIRS="$(MOSQUITTO_MAKE_DIRS)" \
|
|
$(MOSQUITTO_MAKE_OPTS) DESTDIR=$(STAGING_DIR) install
|
|
endef
|
|
|
|
define MOSQUITTO_INSTALL_TARGET_CMDS
|
|
$(MAKE) -C $(@D) $(TARGET_CONFIGURE_OPTS) DIRS="$(MOSQUITTO_MAKE_DIRS)" \
|
|
$(MOSQUITTO_MAKE_OPTS) DESTDIR=$(TARGET_DIR) install
|
|
rm -f $(TARGET_DIR)/etc/mosquitto/*.example
|
|
$(INSTALL) -D -m 0644 $(@D)/mosquitto.conf \
|
|
$(TARGET_DIR)/etc/mosquitto/mosquitto.conf
|
|
endef
|
|
|
|
ifeq ($(BR2_PACKAGE_MOSQUITTO_BROKER),y)
|
|
define MOSQUITTO_INSTALL_INIT_SYSV
|
|
$(INSTALL) -D -m 0755 package/mosquitto/S50mosquitto \
|
|
$(TARGET_DIR)/etc/init.d/S50mosquitto
|
|
endef
|
|
|
|
define MOSQUITTO_INSTALL_INIT_SYSTEMD
|
|
$(INSTALL) -D -m 644 $(@D)/service/systemd/mosquitto.service.notify \
|
|
$(TARGET_DIR)/usr/lib/systemd/system/mosquitto.service
|
|
endef
|
|
|
|
define MOSQUITTO_USERS
|
|
mosquitto -1 mosquitto -1 * - - - Mosquitto user
|
|
endef
|
|
endif
|
|
|
|
HOST_MOSQUITTO_DEPENDENCIES = host-pkgconf host-openssl
|
|
|
|
HOST_MOSQUITTO_MAKE_OPTS = \
|
|
$(HOST_CONFIGURE_OPTS) \
|
|
UNAME=Linux \
|
|
STRIP=true \
|
|
prefix=$(HOST_DIR) \
|
|
WITH_WRAP=no \
|
|
WITH_DOCS=no \
|
|
WITH_TLS=yes
|
|
|
|
define HOST_MOSQUITTO_BUILD_CMDS
|
|
$(MAKE) -C $(@D)/apps/mosquitto_passwd $(HOST_MOSQUITTO_MAKE_OPTS)
|
|
endef
|
|
|
|
define HOST_MOSQUITTO_INSTALL_CMDS
|
|
$(MAKE) -C $(@D)/apps/mosquitto_passwd $(HOST_MOSQUITTO_MAKE_OPTS) install
|
|
endef
|
|
|
|
$(eval $(generic-package))
|
|
$(eval $(host-generic-package))
|