dbd30cd5d8
DirectFB is written in C++, but can be linked to by a C library or program. When doing shared link, this is fine because the linker gets help from the DT_NEEDED flags and knows what libraries to pull in during the link. However, during a static link, the linker does not get such help. Properly fixing this would require that there is support in pkg-config and autotools to specify that the C++ runtime must be linked. Alas there is no sush support. The only option is to add -lstdc++ to the Libs.Private field in directfb.pc. But this is not upstreamable, because there are other C++ runtimes in the wild (e.g. -lc++ from llvm/clang). However, DirectFB in a static scenario is probably not a very common scenario. Disable DirectFB for static builds. Fixes: http://autobuild.buildroot.org/results/3d3/3d3036d40ddad71d872d910aae7a24975706d2e9/ http://autobuild.buildroot.org/results/d1c/d1c35a6003396942b584f2f2a5e8bf4ac2fbe370/ http://autobuild.buildroot.org/results/d45/d4504871bd47930e8363032d380cdfcc5bb8aee7/ [...] Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
170 lines
4.7 KiB
Plaintext
170 lines
4.7 KiB
Plaintext
config BR2_PACKAGE_DIRECTFB
|
|
bool "directfb"
|
|
depends on !BR2_STATIC_LIBS # static link issues
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL
|
|
depends on BR2_INSTALL_LIBSTDCPP
|
|
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_5
|
|
depends on !BR2_TOOLCHAIN_USES_MUSL # sigval_t issue
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4
|
|
select BR2_PACKAGE_FREETYPE
|
|
select BR2_PACKAGE_ZLIB
|
|
help
|
|
DirectFB (Direct Frame Buffer) is a set of graphics APIs implemented
|
|
on top of the Linux Frame Buffer (fbdev) abstraction layer. It is an
|
|
alternative to X11 with a smaller memory footprint that still has an
|
|
integrated windowing system. As of 4 October 2015, DirectFB's website
|
|
http://www.directfb.org/ is down. See alternative site listed below.
|
|
|
|
http://elinux.org/DirectFB
|
|
|
|
if BR2_PACKAGE_DIRECTFB
|
|
|
|
config BR2_PACKAGE_DIRECTFB_MULTI
|
|
bool "directfb multi application"
|
|
select BR2_PACKAGE_LINUX_FUSION
|
|
depends on BR2_USE_MMU # madvise()
|
|
depends on BR2_LINUX_KERNEL
|
|
help
|
|
Enable use of multiple concurrent DirectFB applications
|
|
|
|
comment "directfb multi application needs a Linux kernel to be built"
|
|
depends on !BR2_LINUX_KERNEL
|
|
|
|
config BR2_PACKAGE_DIRECTFB_DEBUG_SUPPORT
|
|
bool "directfb debugging support"
|
|
default y
|
|
help
|
|
Compile DirectFB with debugging support. It provides
|
|
functions to print debug information, for DirectFB as well as
|
|
external DirectFB drivers.
|
|
|
|
When disabled, DirectFB does not print any debug information.
|
|
The drivers will be installed to and loaded from
|
|
/usr/lib/directfb-<version>-pure instead of
|
|
/usr/lib/directfb-<version>.
|
|
|
|
config BR2_PACKAGE_DIRECTFB_DEBUG
|
|
bool "directfb debugging"
|
|
depends on BR2_PACKAGE_DIRECTFB_DEBUG_SUPPORT
|
|
help
|
|
Compile DirectFB with lots of debug output
|
|
|
|
config BR2_PACKAGE_DIRECTFB_TRACE
|
|
bool "directfb call trace support"
|
|
help
|
|
Enable call tracing for DirectFB applications
|
|
|
|
config BR2_PACKAGE_DIRECTFB_DIVINE
|
|
bool "divine"
|
|
help
|
|
Enable the DiVine feature (virtual input)
|
|
|
|
config BR2_PACKAGE_DIRECTFB_SAWMAN
|
|
bool "sawman"
|
|
help
|
|
Enable the SawMan feature (window manager)
|
|
|
|
config BR2_PACKAGE_DIRECTFB_ATI128
|
|
bool "compile ati128 graphics driver"
|
|
depends on BR2_i386 || BR2_x86_64
|
|
|
|
config BR2_PACKAGE_DIRECTFB_MATROX
|
|
bool "compile matrox graphics driver"
|
|
depends on BR2_i386 || BR2_x86_64
|
|
|
|
config BR2_PACKAGE_DIRECTFB_PXA3XX
|
|
bool "compile pxa3xx graphics driver"
|
|
depends on BR2_arm
|
|
help
|
|
The Marvell PXA3xx Processor Family is a system-on-chip based
|
|
on XScale® microarchitecture. This option enables the graphic
|
|
driver support for the PXA3xx processor family.
|
|
|
|
http://www.marvell.com/application-processors/pxa-family/
|
|
|
|
config BR2_PACKAGE_DIRECTFB_EP9X
|
|
bool "compile ep9x graphics driver"
|
|
depends on BR2_arm
|
|
help
|
|
Enable the graphic driver support for the EP93xx ARMv9 based
|
|
processors from Cirrus Logic.
|
|
|
|
http://cirrus.com/en/products/arm9.html
|
|
|
|
config BR2_PACKAGE_DIRECTFB_I830
|
|
bool "compile i830 graphics driver"
|
|
depends on BR2_i386 || BR2_x86_64
|
|
|
|
config BR2_PACKAGE_DIRECTFB_LINUXINPUT
|
|
bool "compile /dev/input/eventX input driver"
|
|
default y
|
|
|
|
config BR2_PACKAGE_DIRECTFB_KEYBOARD
|
|
bool "compile keyboard input driver"
|
|
default y
|
|
|
|
config BR2_PACKAGE_DIRECTFB_PS2MOUSE
|
|
bool "compile PS2 mouse input driver"
|
|
default y
|
|
|
|
config BR2_PACKAGE_DIRECTFB_SERIALMOUSE
|
|
bool "compile serial mouse input driver"
|
|
default y
|
|
|
|
config BR2_PACKAGE_DIRECTFB_TSLIB
|
|
bool "enable touchscreen support"
|
|
depends on !BR2_STATIC_LIBS # tslib
|
|
default y
|
|
select BR2_PACKAGE_TSLIB
|
|
|
|
comment "touchscreen support needs a toolchain w/ dynamic library"
|
|
depends on BR2_STATIC_LIBS
|
|
|
|
config BR2_PACKAGE_DIRECTFB_GIF
|
|
bool "enable GIF support"
|
|
default y
|
|
|
|
config BR2_PACKAGE_DIRECTFB_TIFF
|
|
bool "enable TIFF support"
|
|
select BR2_PACKAGE_TIFF
|
|
|
|
config BR2_PACKAGE_DIRECTFB_IMLIB2
|
|
bool "enable IMLIB2 support"
|
|
select BR2_PACKAGE_IMLIB2
|
|
depends on !BR2_STATIC_LIBS
|
|
|
|
comment "imlib2 support needs a toolchain w/ dynamic library"
|
|
depends on BR2_STATIC_LIBS
|
|
|
|
config BR2_PACKAGE_DIRECTFB_JPEG
|
|
bool "enable JPEG support"
|
|
default y
|
|
select BR2_PACKAGE_JPEG
|
|
|
|
config BR2_PACKAGE_DIRECTFB_PNG
|
|
bool "enable PNG support"
|
|
default y
|
|
select BR2_PACKAGE_LIBPNG
|
|
|
|
config BR2_PACKAGE_DIRECTFB_SVG
|
|
bool "enable SVG support"
|
|
default y
|
|
select BR2_PACKAGE_LIBSVG_CAIRO
|
|
|
|
config BR2_PACKAGE_DIRECTFB_DITHER_RGB16
|
|
bool "enable advanced dithering of RGB16 surfaces"
|
|
help
|
|
Enable dithering when loading images to RGB16 surfaces.
|
|
This increases the data section by 64 KBytes.
|
|
|
|
config BR2_PACKAGE_DIRECTFB_TESTS
|
|
bool "build directfb tests"
|
|
|
|
endif # BR2_PACKAGE_DIRECTFB
|
|
|
|
comment "directfb needs a glibc or uClibc toolchain w/ C++, NPTL, gcc >= 4.5, dynamic library"
|
|
depends on BR2_TOOLCHAIN_HAS_SYNC_4
|
|
depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_INSTALL_LIBSTDCPP || \
|
|
!BR2_TOOLCHAIN_GCC_AT_LEAST_4_5 || BR2_TOOLCHAIN_USES_MUSL || \
|
|
BR2_STATIC_LIBS
|