kumquat-buildroot/package/ola/Config.in
Yann E. MORIN 8d3e126e83 package/protobuf: needs dynamic libraries
Eventhough it should be theoretically possible to build protobuf in
static-only, configure.ac includes an m4 macro, ACX_PTHREAD defined in
m4/acx_pthread.m4, which forcibly checks for threads *with* shared libs,
and is completely broken for static-only (as it forces -shared whatever
the user selection), ending up with these configure results:

    checking for the pthreads library -lpthreads... no
    checking whether pthreads work without any flags... no
    checking whether pthreads work with -Kthread... no
    checking whether pthreads work with -kthread... no
    checking for the pthreads library -llthread... no
    checking whether pthreads work with -pthread... yes
    checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
    checking if more special flags are required for pthreads... no
    checking whether to check for GCC pthread/shared inconsistencies... yes
    checking whether -pthread is sufficient with -shared... no
    checking whether -lpthread fixes that... no
    checking whether -lc_r fixes that... no
    configure: WARNING: Impossible to determine how to use pthreads with shared libraries
    checking whether what we have so far is sufficient with -nostdlib... no
    checking whether -lpthread saves the day... no
    configure: WARNING: Impossible to determine how to use pthreads with shared libraries and -nostdlib

Fixing this macro is far from trivial; protobuf in a static-only
scenario is probably not too common. So, just disable protobuf for
static-only builds.

Fixes:
    http://autobuild.buildroot.org/results/3ef/3efb86c7e8ec2db5d953d634470cafae79bd34cf/
    http://autobuild.buildroot.org/results/96a/96ae1108fc3193df2a93a779057130b774379655/
    http://autobuild.buildroot.org/results/00c/00c29795980319d38823eec1301e9ebd860ebd2a/
    ...

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Nimai Mahajan <nimaim@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2015-08-18 21:41:12 +02:00

138 lines
3.0 KiB
Plaintext

comment "ola needs a toolchain w/ C++, threads, wchar, dynamic library"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \
|| !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64
config BR2_PACKAGE_OLA
bool "ola (open lighting architecture)"
select BR2_PACKAGE_PROTOBUF
select BR2_PACKAGE_UTIL_LINUX_LIBUUID
select BR2_PACKAGE_UTIL_LINUX
depends on BR2_INSTALL_LIBSTDCPP # protobuf
depends on !BR2_STATIC_LIBS # protobuf
depends on BR2_USE_WCHAR # util-linux
depends on BR2_TOOLCHAIN_HAS_THREADS
depends on BR2_arm || BR2_i386 || BR2_mipsel || BR2_x86_64 # protobuf
# protobuf -> host-protobuf
depends on BR2_HOSTARCH = "x86_64" || BR2_HOSTARCH = "x86"
help
Open Lighting Architecture provides applications
with a mechanism to send and receive DMX512 & RDM
commands using hardware devices and DMX over IP protocols.
http://www.opendmx.net/index.php/OLA
if BR2_PACKAGE_OLA
menu "bindings and interface"
config BR2_PACKAGE_OLA_WEB
bool "http interface"
select BR2_PACKAGE_LIBMICROHTTPD
help
Build OLA with browser interface.
config BR2_PACKAGE_OLA_PYTHON_BINDINGS
bool "python bindings"
depends on BR2_PACKAGE_PYTHON
select BR2_PACKAGE_PYTHON_PROTOBUF
help
Build OLA with support for the Python language.
config BR2_PACKAGE_OLA_SLP
bool "slp tools"
help
Build OLA with slp tools.
endmenu
menu "tests and examples"
config BR2_PACKAGE_OLA_EXAMPLES
bool "examples"
select BR2_PACKAGE_NCURSES
help
Build OLA examples.
config BR2_PACKAGE_OLA_RDM_TESTS
bool "rdm tests"
depends on BR2_PACKAGE_OLA_PYTHON_BINDINGS
help
Build OLA RDM tests.
endmenu
menu "plugin selections"
config BR2_PACKAGE_OLA_PLUGIN_E131
bool "acn E131"
help
Build ACN E131 plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_ARTNET
bool "artnet"
help
Build Artnet plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_OPENDMX
bool "DMX4Linux"
help
Build DMX4Linux plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_DUMMY
bool "dummy"
help
Build Dummy plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_ESPNET
bool "espnet"
help
Build EspNet plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_KINET
bool "kinet"
help
Build KiNet plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_MILINT
bool "Milford Instruments"
help
Build Milford Instruments 1-463 plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_OSC
bool "osc"
select BR2_PACKAGE_LIBLO
help
Build Open Sound Control plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_PATHPORT
bool "pathport"
help
Build Pathport plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_SANDNET
bool "sandnet"
help
Build SandNet plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_SHOWNET
bool "shownet"
help
Build ShowNet plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_STAGEPROFI
bool "stageprofi"
select BR2_PACKAGE_LIBUSB
help
Build StageProfi plugin for OLA.
config BR2_PACKAGE_OLA_PLUGIN_USBPRO
bool "usbpro"
select BR2_PACKAGE_LIBUSB
help
Build UsbPro plugin for OLA.
endmenu
endif