sysklogd: fix build on musl
[buildroot-gz.git] / package / ola / ola.mk
blob93e84a6838af6ca5fcdf683cf75578a3010a2bf6
1 ################################################################################
3 # ola
5 ################################################################################
7 OLA_VERSION = 0.10.2
8 OLA_SOURCE = ola-$(OLA_VERSION).tar.gz
9 OLA_SITE = https://github.com/OpenLightingProject/ola/releases/download/$(OLA_VERSION)
10 OLA_LICENSE = LGPLv2.1+ (libola, libolacommon, Python bindings), GPLv2+ (libolaserver, olad, Python examples and tests)
11 OLA_LICENSE_FILES = LICENCE GPL LGPL
12 OLA_INSTALL_STAGING = YES
13 OLA_AUTORECONF = YES
15 # util-linux provides uuid lib
16 OLA_DEPENDENCIES = protobuf util-linux host-bison host-flex host-ola
18 OLA_CONF_OPTS = \
19 ac_cv_have_pymod_google_protobuf=yes \
20 --disable-gcov \
21 --disable-tcmalloc \
22 --disable-unittests \
23 --disable-root-check \
24 --disable-java-libs \
25 --disable-fatal-warnings \
26 --with-ola-protoc-plugin=$(HOST_DIR)/usr/bin/ola_protoc_plugin
28 HOST_OLA_DEPENDENCIES = host-util-linux host-protobuf
30 # When building the host part, disable as much as possible to speed up
31 # the configure step and avoid missing host dependencies.
32 HOST_OLA_CONF_OPTS = \
33 --disable-all-plugins \
34 --disable-slp \
35 --disable-osc \
36 --disable-uart \
37 --disable-libusb \
38 --disable-libftdi \
39 --disable-http \
40 --disable-examples \
41 --disable-unittests \
42 --disable-doxygen-html \
43 --disable-doxygen-doc \
44 --disable-fatal-warnings
46 # On the host side, we only need ola_protoc_plugin, so build and install this
47 # only.
48 HOST_OLA_MAKE_OPTS = protoc/ola_protoc_plugin
49 define HOST_OLA_INSTALL_CMDS
50 $(INSTALL) -D -m 0755 $(@D)/protoc/ola_protoc_plugin $(HOST_DIR)/usr/bin/ola_protoc_plugin
51 endef
53 # sets where to find python libs built for target and required by ola
54 OLA_CONF_ENV = PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages
55 OLA_MAKE_ENV = PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages
57 ## OLA Bindings and Interface selections
59 ifeq ($(BR2_PACKAGE_OLA_WEB),y)
60 OLA_CONF_OPTS += --enable-http
61 OLA_DEPENDENCIES += libmicrohttpd
62 else
63 OLA_CONF_OPTS += --disable-http
64 endif
66 ifeq ($(BR2_PACKAGE_OLA_SLP),y)
67 OLA_CONF_OPTS += --enable-slp
68 else
69 OLA_CONF_OPTS += --disable-slp
70 endif
72 ifeq ($(BR2_PACKAGE_OLA_PYTHON_BINDINGS),y)
73 OLA_CONF_OPTS += --enable-python-libs
74 OLA_DEPENDENCIES += python python-protobuf
75 else
76 OLA_CONF_OPTS += --disable-python-libs
77 endif
79 ## OLA Examples and Tests
81 ifeq ($(BR2_PACKAGE_OLA_EXAMPLES),y)
82 OLA_CONF_OPTS += --enable-examples
83 OLA_DEPENDENCIES += ncurses
84 else
85 OLA_CONF_OPTS += --disable-examples
86 endif
88 ifeq ($(BR2_PACKAGE_OLA_RDM_TESTS),y)
89 OLA_CONF_OPTS += --enable-rdm-tests
90 OLA_DEPENDENCIES += python-numpy
91 # needed as numpy builds some shared libraries and ola checks for
92 # numpy using a host python test program which fails with 'wrong ELF
93 # class'.
94 OLA_CONF_ENV = ac_cv_have_pymod_numpy=yes
95 else
96 OLA_CONF_OPTS += --disable-rdm-tests
97 endif
99 ## OLA Plugin selections
101 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_E131),y)
102 OLA_CONF_OPTS += --enable-e131
103 else
104 OLA_CONF_OPTS += --disable-e131
105 endif
107 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_ARTNET),y)
108 OLA_CONF_OPTS += --enable-artnet
109 else
110 OLA_CONF_OPTS += --disable-artnet
111 endif
113 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_OPENDMX),y)
114 OLA_CONF_OPTS += --enable-opendmx
115 else
116 OLA_CONF_OPTS += --disable-opendmx
117 endif
119 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_DUMMY),y)
120 OLA_CONF_OPTS += --enable-dummy
121 else
122 OLA_CONF_OPTS += --disable-dummy
123 endif
125 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_ESPNET),y)
126 OLA_CONF_OPTS += --enable-espnet
127 else
128 OLA_CONF_OPTS += --disable-espnet
129 endif
131 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_KINET),y)
132 OLA_CONF_OPTS += --enable-kinet
133 else
134 OLA_CONF_OPTS += --disable-kinet
135 endif
137 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_OSC),y)
138 OLA_CONF_OPTS += --enable-osc
139 OLA_DEPENDENCIES += liblo
140 else
141 OLA_CONF_OPTS += --disable-osc
142 endif
144 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_MILINT),y)
145 OLA_CONF_OPTS += --enable-milinst
146 else
147 OLA_CONF_OPTS += --disable-milinst
148 endif
150 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_PATHPORT),y)
151 OLA_CONF_OPTS += --enable-pathport
152 else
153 OLA_CONF_OPTS += --disable-pathport
154 endif
156 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_SANDNET),y)
157 OLA_CONF_OPTS += --enable-sandnet
158 else
159 OLA_CONF_OPTS += --disable-sandnet
160 endif
162 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_SHOWNET),y)
163 OLA_CONF_OPTS += --enable-shownet
164 else
165 OLA_CONF_OPTS += --disable-shownet
166 endif
168 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_STAGEPROFI),y)
169 OLA_CONF_OPTS += --enable-stageprofi --enable-libusb
170 else
171 OLA_CONF_OPTS += --disable-stageprofi
172 endif
174 ifeq ($(BR2_PACKAGE_OLA_PLUGIN_USBPRO),y)
175 OLA_CONF_OPTS += --enable-usbpro --enable-libusb
176 else
177 OLA_CONF_OPTS += --disable-usbpro
178 endif
180 $(eval $(autotools-package))
181 $(eval $(host-autotools-package))