-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathConfig.in
131 lines (100 loc) · 5.09 KB
/
Config.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
config BR2_PACKAGE_PYTHON_KIVY
bool "python-kivy"
default n
# According to official Kivy 2.1 documentation and from inspecting different
# build results the next are required:
select BR2_PACKAGE_HOST_PYTHON_CYTHON
select BR2_PACKAGE_PYTHON3
select BR2_PACKAGE_SDL2 # libsdl2-dev
select BR2_PACKAGE_SDL2_IMAGE # libsdl2-image-dev
select BR2_PACKAGE_SDL2_MIXER # libsdl2-mixer-dev
select BR2_PACKAGE_SDL2_TTF # libsdl2-ttf-dev
select BR2_PACKAGE_ZLIB # zlib1g-dev
select BR2_PACKAGE_MTDEV # Multi-touch devices to use for input
select BR2_PACKAGE_LIBPNG
select BR2_PACKAGE_PYTHON_DOCUTILS
select BR2_PACKAGE_PYTHON_PYGMENTS
# The next requirements according to the Kivy 2.1 documentation, have not
# been identified, but seem to be included somehow:
# libportmidi-dev
# libswscale-dev
# libavformat-dev
# libavcodec-dev
# TODO: Determine why are the next packages required in some cases
select BR2_PACKAGE_UTIL_LINUX # Required by LIBUUID
select BR2_PACKAGE_UTIL_LINUX_LIBUUID # Required by PANGO dependency on fontconfig-2.13.1
select BR2_PACKAGE_PANGO # Some Kivy builds report missing this. Pango is a library for laying out and rendering of text, with an emphasis on internationalization
help
A software library for rapid development of
hardware-accelerated multitouch applications.
http://kivy.org
CGL: standard C interface for OpenGL
https://kivy.org/doc/stable/api-kivy.graphics.cgl.html
Notice:
This is a work in progress. Any help is greatly appreciated.
https://github.com/MrMauro/buildroot_external_kivy/tree/main/package/python-kivy
Those references are among the sources used to build this:
https://github.com/foozmeat/hotline/tree/master/buildroot/hotline-external/package/python-kivy
http://lists.busybox.net/pipermail/buildroot/2019-June/253526.html
https://forums.raspberrypi.com/viewtopic.php?t=307052
https://forums.raspberrypi.com/viewtopic.php?t=242588
if BR2_PACKAGE_PYTHON_KIVY
config BR2_PACKAGE_PYTHON_KIVY_GSTREAMER
bool "GStreamer"
default n
select BR2_PACKAGE_GSTREAMER1 # libgstreamer1.0 gstreamer Optional by Kivy 2.1 for audio, video
select BR2_PACKAGE_GST1_PLUGINS_BASE # gstreamer1.0-plugins-base Optional by Kivy 2.1 for audio, video
select BR2_PACKAGE_GST1_PLUGINS_BASE_INSTALL_TOOLS # Install the gst-discoverer, gst-device-monitor and gst-play tools.
select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA # ALSA plugin library, mandatory for audio playback
select BR2_PACKAGE_GST1_PLUGINS_GOOD # gstreamer1.0-plugins-good Optional by Kivy 2.1 for audio, video
select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUTODETECT # Plugin contains auto-detection plugins for video/audio in and outputs
help
Audio and video support.
config BR2_PACKAGE_PYTHON_KIVY_RPI
bool "Raspberry Pi"
default n
select BR2_PACKAGE_RPI_USERLAND # Provides graphics hardware
select BR2_PACKAGE_SDL2_OPENGLES # OpenGLES support
help
Select this for Raspberry Pi targets (Tested for Pi2).
Window provider will be sdl2
GL backend will be sdl2/gl
The RPI_USERLAND package will be selected.
TODO:
Provide a way to select window provider and GL backend according to:
https://kivy.org/doc/stable/installation/installation-rpi.html
config BR2_PACKAGE_PYTHON_KIVY_GLES_MESA_X11
bool "OpenGLES, Mesa, X11"
default n
select BR2_PACKAGE_SDL2_OPENGL # Option?
select BR2_PACKAGE_SDL2_OPENGLES # OpenGLES support
select BR2_PACKAGE_MESA3D
select BR2_PACKAGE_MESA3D_OPENGL_ES
select BR2_PACKAGE_MESA3D_OPENGL_EGL
select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SWRAST # Required, otherwise Kivy at runtime reports: libGL error: MESA-LOADER: failed to open swrast
select BR2_PACKAGE_SDL2_X11 # Required, otherwise Kivy won't compile reporting error: ...has no member named ‘x11’
select BR2_PACKAGE_MESA3D_OPENGL_GLX
select BR2_PACKAGE_XORG7
select BR2_PACKAGE_XLIB_LIBXRENDER
select BR2_PACKAGE_XSERVER_XORG_SERVER
select BR2_PACKAGE_XAPP_XINIT
select BR2_PACKAGE_XAPP_TWM
select BR2_PACKAGE_XDRIVER_XF86_INPUT_KEYBOARD if !BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
select BR2_PACKAGE_XDRIVER_XF86_INPUT_MOUSE if !BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
select BR2_PACKAGE_XDRIVER_XF86_VIDEO_INTEL if !BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
select BR2_PACKAGE_XDRIVER_XF86_VIDEO_VESA if !BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE
select BR2_PACKAGE_XTERM
help
Additional Mesa and X11 drivers are not installed.
To enable X11 KDrive (instead of the default Modular), select
manually BR2_PACKAGE_XSERVER_XORG_SERVER_KDRIVE=y
Window provider for Kivy will be X11.
GL backend for Kivy will be sdl2.
config BR2_PACKAGE_PYTHON_KIVY_EXAMPLES
bool "Kivy examples"
default n
help
Enable this to keep Kivy examples.
If selected those wil be located at /usr/share/kivy-examples on the
target.
endif