7cbfcb322c
Signed-off-by: Chris Lesiak <chris.lesiak@licor.com> Reviewed-by: Samuel Martin <s.martin49@gmail.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
237 lines
6.6 KiB
Makefile
237 lines
6.6 KiB
Makefile
################################################################################
|
|
#
|
|
# avahi
|
|
#
|
|
################################################################################
|
|
|
|
AVAHI_VERSION = 0.7
|
|
AVAHI_SITE = https://github.com/lathiat/avahi/releases/download/v$(AVAHI_VERSION)
|
|
AVAHI_LICENSE = LGPL-2.1+
|
|
AVAHI_LICENSE_FILES = LICENSE
|
|
AVAHI_INSTALL_STAGING = YES
|
|
|
|
AVAHI_CONF_ENV = \
|
|
ac_cv_func_strtod=yes \
|
|
ac_fsusage_space=yes \
|
|
fu_cv_sys_stat_statfs2_bsize=yes \
|
|
ac_cv_func_closedir_void=no \
|
|
ac_cv_func_getloadavg=no \
|
|
ac_cv_lib_util_getloadavg=no \
|
|
ac_cv_lib_getloadavg_getloadavg=no \
|
|
ac_cv_func_getgroups=yes \
|
|
ac_cv_func_getgroups_works=yes \
|
|
ac_cv_func_chown_works=yes \
|
|
ac_cv_have_decl_euidaccess=no \
|
|
ac_cv_func_euidaccess=no \
|
|
ac_cv_have_decl_strnlen=yes \
|
|
ac_cv_func_strnlen_working=yes \
|
|
ac_cv_func_lstat_dereferences_slashed_symlink=yes \
|
|
ac_cv_func_lstat_empty_string_bug=no \
|
|
ac_cv_func_stat_empty_string_bug=no \
|
|
vb_cv_func_rename_trailing_slash_bug=no \
|
|
ac_cv_have_decl_nanosleep=yes \
|
|
jm_cv_func_nanosleep_works=yes \
|
|
gl_cv_func_working_utimes=yes \
|
|
ac_cv_func_utime_null=yes \
|
|
ac_cv_have_decl_strerror_r=yes \
|
|
ac_cv_func_strerror_r_char_p=no \
|
|
jm_cv_func_svid_putenv=yes \
|
|
ac_cv_func_getcwd_null=yes \
|
|
ac_cv_func_getdelim=yes \
|
|
ac_cv_func_mkstemp=yes \
|
|
utils_cv_func_mkstemp_limitations=no \
|
|
utils_cv_func_mkdir_trailing_slash_bug=no \
|
|
jm_cv_func_gettimeofday_clobber=no \
|
|
am_cv_func_working_getline=yes \
|
|
gl_cv_func_working_readdir=yes \
|
|
jm_ac_cv_func_link_follows_symlink=no \
|
|
utils_cv_localtime_cache=no \
|
|
ac_cv_struct_st_mtim_nsec=no \
|
|
gl_cv_func_tzset_clobber=no \
|
|
gl_cv_func_getcwd_null=yes \
|
|
gl_cv_func_getcwd_path_max=yes \
|
|
ac_cv_func_fnmatch_gnu=yes \
|
|
am_getline_needs_run_time_check=no \
|
|
am_cv_func_working_getline=yes \
|
|
gl_cv_func_mkdir_trailing_slash_bug=no \
|
|
gl_cv_func_mkstemp_limitations=no \
|
|
ac_cv_func_working_mktime=yes \
|
|
jm_cv_func_working_re_compile_pattern=yes \
|
|
ac_use_included_regex=no \
|
|
avahi_cv_sys_cxx_works=yes \
|
|
DATADIRNAME=share
|
|
|
|
# Note: even if we have Gtk2 and Gtk3 support in Buildroot, we
|
|
# explicitly disable support for them, in order to avoid the following
|
|
# circular dependencies:
|
|
#
|
|
# avahi -> libglade -> libgtk2 -> cups -> avahi
|
|
# avahi -> libgtk3 -> cups -> avahi
|
|
#
|
|
# Since Gtk2 and Gtk3 in Avahi are only used for some example/demo
|
|
# programs, we decided to disable their support to solve the circular
|
|
# dependency.
|
|
AVAHI_CONF_OPTS = \
|
|
--disable-qt3 \
|
|
--disable-qt4 \
|
|
--disable-gtk \
|
|
--disable-gtk3 \
|
|
--disable-gdbm \
|
|
--disable-pygobject \
|
|
--disable-mono \
|
|
--disable-monodoc \
|
|
--disable-stack-protector \
|
|
--with-distro=none \
|
|
--disable-manpages \
|
|
$(if $(BR2_PACKAGE_AVAHI_AUTOIPD),--enable,--disable)-autoipd \
|
|
--with-avahi-user=avahi \
|
|
--with-avahi-group=avahi \
|
|
--with-autoipd-user=avahi \
|
|
--with-autoipd-group=avahi
|
|
|
|
AVAHI_DEPENDENCIES = \
|
|
host-intltool host-pkgconf \
|
|
$(TARGET_NLS_DEPENDENCIES)
|
|
|
|
AVAHI_CFLAGS = $(TARGET_CFLAGS)
|
|
|
|
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
|
|
AVAHI_CONF_OPTS += --with-systemdsystemunitdir=/usr/lib/systemd/system
|
|
else
|
|
AVAHI_CONF_OPTS += --with-systemdsystemunitdir=no
|
|
AVAHI_CFLAGS += -DDISABLE_SYSTEMD
|
|
endif
|
|
|
|
ifneq ($(BR2_PACKAGE_AVAHI_DAEMON)$(BR2_PACKAGE_AVAHI_AUTOIPD),)
|
|
AVAHI_DEPENDENCIES += libdaemon
|
|
else
|
|
AVAHI_CONF_OPTS += --disable-libdaemon
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBCAP),y)
|
|
AVAHI_DEPENDENCIES += libcap
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_AVAHI_DAEMON),y)
|
|
AVAHI_DEPENDENCIES += expat
|
|
AVAHI_CONF_OPTS += --with-xml=expat
|
|
else
|
|
AVAHI_CONF_OPTS += --with-xml=none
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY),y)
|
|
AVAHI_CONF_OPTS += --enable-compat-libdns_sd
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_DBUS),y)
|
|
AVAHI_DEPENDENCIES += dbus
|
|
AVAHI_CONF_OPTS += --with-dbus-sys=/usr/share/dbus-1/system.d
|
|
else
|
|
AVAHI_CONF_OPTS += --disable-dbus
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_LIBGLIB2),y)
|
|
AVAHI_DEPENDENCIES += libglib2
|
|
else
|
|
AVAHI_CONF_OPTS += --disable-glib --disable-gobject
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_PYTHON),y)
|
|
AVAHI_CONF_ENV += \
|
|
am_cv_pathless_PYTHON=python \
|
|
am_cv_path_PYTHON=$(PYTHON_TARGET_BINARY) \
|
|
am_cv_python_version=$(PYTHON_VERSION) \
|
|
am_cv_python_platform=linux2 \
|
|
am_cv_python_pythondir=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \
|
|
am_cv_python_pyexecdir=/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages \
|
|
py_cv_mod_socket_=yes
|
|
|
|
AVAHI_DEPENDENCIES += python
|
|
AVAHI_CONF_OPTS += --enable-python
|
|
else
|
|
AVAHI_CONF_OPTS += --disable-python
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_DBUS_PYTHON),y)
|
|
AVAHI_CONF_OPTS += --enable-python-dbus
|
|
AVAHI_CONF_ENV += py_cv_mod_dbus_=yes
|
|
AVAHI_DEPENDENCIES += dbus-python
|
|
else
|
|
AVAHI_CONF_OPTS += --disable-python-dbus
|
|
endif
|
|
|
|
AVAHI_CONF_ENV += CFLAGS="$(AVAHI_CFLAGS)"
|
|
|
|
AVAHI_MAKE_OPTS += LIBS=$(TARGET_NLS_LIBS)
|
|
|
|
define AVAHI_USERS
|
|
avahi -1 avahi -1 * - - -
|
|
endef
|
|
|
|
define AVAHI_REMOVE_INITSCRIPT
|
|
rm -rf $(TARGET_DIR)/etc/init.d/avahi-*
|
|
endef
|
|
|
|
AVAHI_POST_INSTALL_TARGET_HOOKS += AVAHI_REMOVE_INITSCRIPT
|
|
|
|
ifeq ($(BR2_PACKAGE_AVAHI_AUTOIPD),y)
|
|
define AVAHI_INSTALL_AUTOIPD
|
|
rm -f $(TARGET_DIR)/var/lib/avahi-autoipd
|
|
$(INSTALL) -d -m 0755 $(TARGET_DIR)/var/lib
|
|
ln -sf /tmp/avahi-autoipd $(TARGET_DIR)/var/lib/avahi-autoipd
|
|
endef
|
|
|
|
define AVAHI_INSTALL_AUTOIPD_INIT_SYSV
|
|
$(INSTALL) -D -m 0755 package/avahi/S05avahi-setup.sh $(TARGET_DIR)/etc/init.d/S05avahi-setup.sh
|
|
endef
|
|
|
|
AVAHI_POST_INSTALL_TARGET_HOOKS += AVAHI_INSTALL_AUTOIPD
|
|
endif
|
|
|
|
ifeq ($(BR2_PACKAGE_AVAHI_DAEMON),y)
|
|
|
|
ifeq ($(BR2_PACKAGE_SYSTEMD_SYSUSERS),y)
|
|
define AVAHI_INSTALL_SYSTEMD_SYSUSERS
|
|
$(INSTALL) -D -m 644 package/avahi/avahi_sysusers.conf \
|
|
$(TARGET_DIR)/usr/lib/sysusers.d/avahi.conf
|
|
endef
|
|
endif
|
|
|
|
define AVAHI_INSTALL_INIT_SYSTEMD
|
|
mkdir -p $(TARGET_DIR)/etc/systemd/system/multi-user.target.wants
|
|
|
|
ln -fs ../../../../usr/lib/systemd/system/avahi-daemon.service \
|
|
$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/avahi-daemon.service
|
|
|
|
ln -fs ../../../../usr/lib/systemd/system/avahi-dnsconfd.service \
|
|
$(TARGET_DIR)/etc/systemd/system/multi-user.target.wants/avahi-dnsconfd.service
|
|
|
|
$(INSTALL) -D -m 644 package/avahi/avahi_tmpfiles.conf \
|
|
$(TARGET_DIR)/usr/lib/tmpfiles.d/avahi.conf
|
|
|
|
$(AVAHI_INSTALL_SYSTEMD_SYSUSERS)
|
|
endef
|
|
|
|
define AVAHI_INSTALL_DAEMON_INIT_SYSV
|
|
$(INSTALL) -D -m 0755 package/avahi/S50avahi-daemon $(TARGET_DIR)/etc/init.d/S50avahi-daemon
|
|
endef
|
|
|
|
endif
|
|
|
|
define AVAHI_INSTALL_INIT_SYSV
|
|
$(AVAHI_INSTALL_AUTOIPD_INIT_SYSV)
|
|
$(AVAHI_INSTALL_DAEMON_INIT_SYSV)
|
|
endef
|
|
|
|
ifeq ($(BR2_PACKAGE_AVAHI_LIBDNSSD_COMPATIBILITY),y)
|
|
# applications expects to be able to #include <dns_sd.h>
|
|
define AVAHI_STAGING_INSTALL_LIBDNSSD_LINK
|
|
ln -sf avahi-compat-libdns_sd/dns_sd.h \
|
|
$(STAGING_DIR)/usr/include/dns_sd.h
|
|
endef
|
|
|
|
AVAHI_POST_INSTALL_STAGING_HOOKS += AVAHI_STAGING_INSTALL_LIBDNSSD_LINK
|
|
endif
|
|
|
|
$(eval $(autotools-package))
|