################################################################################ # # ola # ################################################################################ OLA_VERSION = 0.10.9 OLA_SITE = https://github.com/OpenLightingProject/ola/releases/download/$(OLA_VERSION) OLA_LICENSE = LGPL-2.1+ (libola, libolacommon, Python bindings), GPL-2.0+ (libolaserver, olad, Python examples and tests) OLA_LICENSE_FILES = COPYING GPL LGPL LICENCE OLA_INSTALL_STAGING = YES # Bundled Makefile.in don't link correctly, regenerate with recent automake OLA_AUTORECONF = YES # util-linux provides uuid lib OLA_DEPENDENCIES = protobuf util-linux host-bison host-flex host-ola OLA_CONF_OPTS = \ ac_cv_have_pymod_google_protobuf=yes \ --disable-fatal-warnings \ --disable-gcov \ --disable-ja-rule \ --disable-java-libs \ --disable-root-check \ --disable-tcmalloc \ --disable-unittests \ --with-ola-protoc-plugin=$(HOST_DIR)/bin/ola_protoc_plugin HOST_OLA_DEPENDENCIES = host-util-linux host-protobuf host-bison host-flex # When building the host part, disable as much as possible to speed up # the configure step and avoid missing host dependencies. HOST_OLA_CONF_OPTS = \ --disable-all-plugins \ --disable-osc \ --disable-uart \ --disable-libusb \ --disable-libftdi \ --disable-http \ --disable-examples \ --disable-unittests \ --disable-doxygen-html \ --disable-doxygen-doc \ --disable-fatal-warnings # On the host side, we only need ola_protoc_plugin, so build and install this # only. HOST_OLA_MAKE_OPTS = protoc/ola_protoc_plugin define HOST_OLA_INSTALL_CMDS $(INSTALL) -D -m 0755 $(@D)/protoc/ola_protoc_plugin $(HOST_DIR)/bin/ola_protoc_plugin endef # sets where to find python libs built for target and required by ola OLA_CONF_ENV = PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages OLA_MAKE_ENV = PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON3_VERSION_MAJOR)/site-packages ifeq ($(BR2_PACKAGE_LIBEXECINFO),y) OLA_DEPENDENCIES += libexecinfo OLA_CONF_ENV += LDFLAGS="$(TARGET_LDFLAGS) -lexecinfo" endif ## OLA Bindings and Interface selections ifeq ($(BR2_PACKAGE_OLA_WEB),y) OLA_CONF_OPTS += --enable-http OLA_DEPENDENCIES += libmicrohttpd else OLA_CONF_OPTS += --disable-http endif ifeq ($(BR2_PACKAGE_OLA_PYTHON_BINDINGS),y) OLA_CONF_OPTS += --enable-python-libs OLA_DEPENDENCIES += python3 python-protobuf else OLA_CONF_OPTS += --disable-python-libs endif ## OLA Examples and Tests ifeq ($(BR2_PACKAGE_OLA_EXAMPLES),y) OLA_CONF_OPTS += --enable-examples OLA_DEPENDENCIES += ncurses else OLA_CONF_OPTS += --disable-examples endif ifeq ($(BR2_PACKAGE_OLA_RDM_TESTS),y) OLA_CONF_OPTS += --enable-rdm-tests OLA_DEPENDENCIES += python-numpy # needed as numpy builds some shared libraries and ola checks for # numpy using a host python test program which fails with 'wrong ELF # class'. OLA_CONF_ENV += ac_cv_have_pymod_numpy=yes else OLA_CONF_OPTS += --disable-rdm-tests endif ## OLA Plugin selections ifeq ($(BR2_PACKAGE_OLA_PLUGIN_ARTNET),y) OLA_CONF_OPTS += --enable-artnet else OLA_CONF_OPTS += --disable-artnet endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_DUMMY),y) OLA_CONF_OPTS += --enable-dummy else OLA_CONF_OPTS += --disable-dummy endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_E131),y) OLA_CONF_OPTS += --enable-e131 else OLA_CONF_OPTS += --disable-e131 endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_ESPNET),y) OLA_CONF_OPTS += --enable-espnet else OLA_CONF_OPTS += --disable-espnet endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_FTDIDMX),y) OLA_CONF_OPTS += --enable-ftdidmx OLA_DEPENDENCIES += libftdi1 else OLA_CONF_OPTS += --disable-ftdidmx endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_GPIO),y) OLA_CONF_OPTS += --enable-gpio else OLA_CONF_OPTS += --disable-gpio endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_KARATE),y) OLA_CONF_OPTS += --enable-karate else OLA_CONF_OPTS += --disable-karate endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_KINET),y) OLA_CONF_OPTS += --enable-kinet else OLA_CONF_OPTS += --disable-kinet endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_MILINT),y) OLA_CONF_OPTS += --enable-milinst else OLA_CONF_OPTS += --disable-milinst endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_OPENDMX),y) OLA_CONF_OPTS += --enable-opendmx else OLA_CONF_OPTS += --disable-opendmx endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_OPENPIXELCONTROL),y) OLA_CONF_OPTS += --enable-openpixelcontrol else OLA_CONF_OPTS += --disable-openpixelcontrol endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_OSC),y) OLA_CONF_OPTS += --enable-osc OLA_DEPENDENCIES += liblo else OLA_CONF_OPTS += --disable-osc endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_PATHPORT),y) OLA_CONF_OPTS += --enable-pathport else OLA_CONF_OPTS += --disable-pathport endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_RENARD),y) OLA_CONF_OPTS += --enable-renard else OLA_CONF_OPTS += --disable-renard endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_SANDNET),y) OLA_CONF_OPTS += --enable-sandnet else OLA_CONF_OPTS += --disable-sandnet endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_SHOWNET),y) OLA_CONF_OPTS += --enable-shownet else OLA_CONF_OPTS += --disable-shownet endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_SPI),y) OLA_CONF_OPTS += --enable-spi else OLA_CONF_OPTS += --disable-spi endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_STAGEPROFI),y) OLA_CONF_OPTS += --enable-stageprofi --enable-libusb OLA_DEPENDENCIES += libusb else OLA_CONF_OPTS += --disable-stageprofi endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_UARTDMX),y) OLA_CONF_OPTS += --enable-uartdmx else OLA_CONF_OPTS += --disable-uartdmx endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_USBDMX),y) OLA_CONF_OPTS += --enable-usbdmx --enable-libusb OLA_DEPENDENCIES += libusb else OLA_CONF_OPTS += --disable-usbdmx endif ifeq ($(BR2_PACKAGE_OLA_PLUGIN_USBPRO),y) OLA_CONF_OPTS += --enable-usbpro --enable-libusb OLA_DEPENDENCIES += libusb else OLA_CONF_OPTS += --disable-usbpro endif $(eval $(autotools-package)) $(eval $(host-autotools-package))