Add new virtual-package infrastructure (branch yem/virtual-packages)
Subsystems (2)
v4 cover Add new virtual-package infrastructure (branch yem/virtual-packages)
From: "Yann E. MORIN" <[email protected]>
Hello All!
Here is a quick series implementing a new infrastructure for virtual packages.
Basically, all a virtual package has to do in its .mk is:
$(eval $(virtual-package))
There is no need to:
- define the dependency against the provider,
- define _SOURCE="" (empty)
But it requires the config options for the virtual package be named after the package, eg.:
package | Selector option | Provider option
--------+------------------------+-----------------------------
libegl | BR2_PACKAGE_HAS_LIBEGL | BR2_PACKAGE_PROVIDES_LIBEGL
jpeg | BR2_PACKAGE_HAS_JPEG | BR2_PACKAGE_PROVIDES_JPEG
So the series:
- starts with renaming some config options in the current virtual packages
- then introduces the new virtual-package infra and the associated documentation in the manual
- and finally converts the virtual packages over to the new infra.
Special thanks to ?ric for his initial work on the manual, which prompted the idea for this new infra! That's partly for this that I kept his initial change to the manual almost unmolested.
Notes:
- the version string is strange. This does not work:
$(2)_VERSION = virtual
so I had to come up with the solution in patch 16.
- patch 20 is not to be applied. It contains only example virtual packages, to test the implementation.
Changes v3 -> v4:
- do not rename libegl and libgles (Thomas P)
- typo (Jerzy)
- convert udev over to the new infra
Changes v2 -> v3:
- rename libegl and libgles: s/^/opengl-/ (Thomas P)
- add host variant, for the upcoming lua stuff (Fran?ois)
- add fake version string (Thomas DS)
Changes v1 -> v2:
- include ?ric's virtual package tutorial to the manual (?ric)
- split the renaimg of config options from the actual conversion to the virtual-package infra
- rebase on top of master after post-release merge
- add host-virtual-package (will be needed by a pending lua-related series by Fran?ois)
Regards,
Yann E. MORIN.
PS. Testing a mail-header to instruct Patchwork not to consider this an actual pull-request: X-Patchwork-Hint: ignore. Sorry if there's a miss... :-/
The following changes since commit ca4e9a78732bcacddd0c91ab35ee39a60ff040aa:
jack2: fix missing alsa-lib feature dependency (2014-03-10 13:13:03 +0100)
are available in the git repository at:
git://gitorious.org/buildroot/buildroot.git yem/virtual-packages
for you to fetch changes up to 62d961284dab1896ecfc03bea98461a637642029:
FOO: tentative target and host virt packages (2014-03-10 18:15:13 +0100)
----------------------------------------------------------------
Yann E. MORIN (19):
package/libgles: rename the _HAS and _PROVIDES variables package/libegl: rename the _HAS and _PROVIDES variables package/libopenmax: rename the _HAS and _PROVIDES variables package/libopenvg: rename the _HAS and _PROVIDES variables package/luainterpreter: rename the _HAS and _PROVIDES variables package/lua: rename config options
packages: add infrastructure for virtual packages
manual: update the virtual package section with the new infrastructure package/powervr: convert to the virtual-package infrastructure package/libgles: convert to the virtual-package infrastructure package/libegl: convert to the virtual-package infrastructure package/libopenmax: convert to the virtual-package infrastructure package/libopenvg: convert to the virtual-package infrastructure package/luainterpreter: convert to the virtual-package infrastructure package/jpeg: convert to the virtual-package infrastructure package/cryptodev: convert to the virtual-package infrastructure package/udev: convert to the virtual-package infrastructure
virtual-package: fake a version string for virtual packages
FOO: tentative target and host virt packages
eric.le.bihan.dev at free.fr (1):
manual: add virtual package tutorial
Config.in.legacy | 21 ++++++ docs/manual/adding-packages-virtual.txt | 93 ++++++++++++++++++++++++ docs/manual/adding-packages.txt | 2 + package/Config.in | 6 +- package/Makefile.in | 1 + package/bellagio/Config.in | 4 +- package/cairo/cairo.mk | 4 +- package/cryptodev/Config.in | 3 + package/cryptodev/cryptodev.mk | 12 +-- package/foo-prov/Config.in | 15 ++++ package/foo-prov/foo-prov.mk | 13 ++++ package/foo-user/Config.in | 7 ++ package/foo-user/foo-user.mk | 16 ++++ package/foo-virt/Config.in | 13 ++++ package/foo-virt/foo-virt.mk | 2 + package/freescale-imx/gpu-viv-bin-mx6q/Config.in | 8 +- package/gstreamer1/gst-omx/Config.in | 4 +- package/gstreamer1/gst1-plugins-bad/Config.in | 2 +- package/jpeg/Config.in | 3 + package/jpeg/jpeg.mk | 12 +-- package/lbase64/Config.in | 2 +- package/lpeg/Config.in | 2 +- package/lpty/Config.in | 2 +- package/lrandom/Config.in | 2 +- package/lsqlite3/Config.in | 2 +- package/lua-cjson/Config.in | 2 +- package/lua-ev/Config.in | 2 +- package/lua-msgpack-native/Config.in | 2 +- package/lua/Config.in | 14 ++-- package/lua/lua.mk | 4 +- package/luaexpat/Config.in | 2 +- package/luafilesystem/Config.in | 2 +- package/luainterpreter/Config.in | 6 +- package/luainterpreter/luainterpreter.mk | 11 +-- package/luajit/Config.in | 4 +- package/luaposix/Config.in | 2 +- package/luasec/Config.in | 2 +- package/luasocket/Config.in | 2 +- package/luasql-sqlite3/Config.in | 2 +- package/lzlib/Config.in | 2 +- package/opengl/libegl/Config.in | 6 +- package/opengl/libegl/libegl.mk | 11 +-- package/opengl/libgles/Config.in | 6 +- package/opengl/libgles/libgles.mk | 11 +-- package/opengl/libopenmax/Config.in | 6 +- package/opengl/libopenmax/libopenmax.mk | 11 +-- package/opengl/libopenvg/Config.in | 6 +- package/opengl/libopenvg/libopenvg.mk | 11 +-- package/pkg-virtual.mk | 70 ++++++++++++++++++ package/powervr/powervr.mk | 11 +-- package/qt/Config.in | 4 +- package/qt5/qt5base/Config.in | 6 +- package/qt5/qt5declarative/Config.in | 6 +- package/qt5/qt5graphicaleffects/Config.in | 6 +- package/qt5/qt5multimedia/Config.in | 6 +- package/qt5/qt5quick1/Config.in | 6 +- package/qt5/qt5quickcontrols/Config.in | 6 +- package/rings/Config.in | 2 +- package/rpi-userland/Config.in | 16 ++-- package/sunxi-mali/Config.in | 8 +- package/ti-gfx/Config.in | 8 +- package/udev/udev.mk | 11 +-- 62 files changed, 362 insertions(+), 182 deletions(-) create mode 100644 docs/manual/adding-packages-virtual.txt create mode 100644 package/foo-prov/Config.in create mode 100644 package/foo-prov/foo-prov.mk create mode 100644 package/foo-user/Config.in create mode 100644 package/foo-user/foo-user.mk create mode 100644 package/foo-virt/Config.in create mode 100644 package/foo-virt/foo-virt.mk create mode 100644 package/pkg-virtual.mk
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH v4 1/20 package/libgles: rename the _HAS and _PROVIDES variables
From: "Yann E. MORIN" <[email protected]>
The basic rule for a package is to have its options named after the package name. There is no reason this should not also be the case for virtual packages.
Besides, this will allow us to switch libgles to use the soon-to-be-introduced virtual-package infrastructure.
--- package/cairo/cairo.mk | 2 +- package/freescale-imx/gpu-viv-bin-mx6q/Config.in | 4 ++-- package/gstreamer1/gst1-plugins-bad/Config.in | 2 +- package/opengl/libgles/Config.in | 6 +++--- package/opengl/libgles/libgles.mk | 4 ++-- package/qt/Config.in | 2 +- package/qt5/qt5base/Config.in | 4 ++-- package/qt5/qt5declarative/Config.in | 4 ++-- package/qt5/qt5graphicaleffects/Config.in | 4 ++-- package/qt5/qt5multimedia/Config.in | 4 ++-- package/qt5/qt5quick1/Config.in | 4 ++-- package/qt5/qt5quickcontrols/Config.in | 4 ++-- package/rpi-userland/Config.in | 4 ++-- package/sunxi-mali/Config.in | 4 ++-- package/ti-gfx/Config.in | 4 ++-- 15 files changed, 28 insertions(+), 28 deletions(-)
package/cairo/cairo.mk +1 -1
@@ -54,7 +54,7 @@ else CAIRO_CONF_OPT += --disable-directfb endif -ifeq ($(BR2_PACKAGE_HAS_OPENGL_ES),y) +ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) CAIRO_CONF_OPT += --enable-glesv2 CAIRO_DEPENDENCIES += libgles else
package/freescale-imx/gpu-viv-bin-mx6q/Config.in +2 -2
@@ -5,7 +5,7 @@ comment "gpu-viv-bin-mx6q needs an (e)glibc toolchain" config BR2_PACKAGE_GPU_VIV_BIN_MX6Q bool "gpu-viv-bin-mx6q" select BR2_PACKAGE_HAS_OPENGL_EGL - select BR2_PACKAGE_HAS_OPENGL_ES + select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7 depends on BR2_arm # Only relevant for i.MX6
@@ -27,7 +27,7 @@ if BR2_PACKAGE_GPU_VIV_BIN_MX6Q config BR2_PACKAGE_PROVIDES_OPENGL_EGL default "gpu-viv-bin-mx6q" -config BR2_PACKAGE_PROVIDES_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES default "gpu-viv-bin-mx6q" config BR2_PACKAGE_GPU_VIV_BIN_MX6Q_EXAMPLES
package/gstreamer1/gst1-plugins-bad/Config.in +1 -1
@@ -464,7 +464,7 @@ comment "rsvg plugin needs a toolchain w/ C++, wchar, threads" config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_EGLGLES bool "eglgles" - depends on BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_LIBGLES help EGL/GLES sink
package/opengl/libgles/Config.in +3 -3
@@ -1,6 +1,6 @@ -config BR2_PACKAGE_HAS_OPENGL_ES +config BR2_PACKAGE_HAS_LIBGLES bool -config BR2_PACKAGE_PROVIDES_OPENGL_ES - depends on BR2_PACKAGE_HAS_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES + depends on BR2_PACKAGE_HAS_LIBGLES string
package/opengl/libgles/libgles.mk +2 -2
@@ -5,9 +5,9 @@ ################################################################################ LIBGLES_SOURCE = -LIBGLES_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_OPENGL_ES)) +LIBGLES_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LIBGLES)) -ifeq ($(BR2_PACKAGE_HAS_OPENGL_ES),y) +ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) ifeq ($(LIBGLES_DEPENDENCIES),) $(error No libGLES implementation selected. Configuration error.) endif
package/qt/Config.in +1 -1
@@ -294,7 +294,7 @@ config BR2_PACKAGE_QT_PHONON_BACKEND config BR2_PACKAGE_QT_OPENGL_ES bool "OpenGL ES v2.x support" - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_HAS_OPENGL_EGL help Enable the OpenGL ES v2.x support.
package/qt5/qt5base/Config.in +2 -2
@@ -138,10 +138,10 @@ comment "X.org XCB backend available if X.org is enabled" config BR2_PACKAGE_QT5BASE_EGLFS bool "eglfs support" depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES comment "eglfs backend available if OpenGLES and EGL are enabled" - depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES + depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES config BR2_PACKAGE_QT5BASE_PRINTSUPPORT bool "print support module"
package/qt5/qt5declarative/Config.in +2 -2
@@ -5,7 +5,7 @@ config BR2_PACKAGE_QT5DECLARATIVE select BR2_PACKAGE_QT5BASE_GUI select BR2_PACKAGE_QT5BASE_EGLFS depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE help Qt is a cross-platform application and UI framework for
@@ -16,5 +16,5 @@ config BR2_PACKAGE_QT5DECLARATIVE http://qt-project.org comment "qt5declarative requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES) && \ + depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLE
package/qt5/qt5graphicaleffects/Config.in +2 -2
@@ -4,7 +4,7 @@ config BR2_PACKAGE_QT5GRAPHICALEFFECTS select BR2_PACKAGE_QT5DECLARATIVE depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES help Qt is a cross-platform application and UI framework for developers using C++.
@@ -14,5 +14,5 @@ config BR2_PACKAGE_QT5GRAPHICALEFFECTS http://qt-project.org comment "qt5graphicaleffects requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES) && \ + depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLE
package/qt5/qt5multimedia/Config.in +2 -2
@@ -3,7 +3,7 @@ config BR2_PACKAGE_QT5MULTIMEDIA select BR2_PACKAGE_QT5BASE select BR2_PACKAGE_QT5DECLARATIVE depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE help Qt is a cross-platform application and UI framework for
@@ -14,5 +14,5 @@ config BR2_PACKAGE_QT5MULTIMEDIA http://qt-project.org comment "qt5multimedia requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES) && \ + depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLE
package/qt5/qt5quick1/Config.in +2 -2
@@ -9,7 +9,7 @@ config BR2_PACKAGE_QT5QUICK1 # This module does not support static linking depends on !BR2_PREFER_STATIC_LIB depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE help Qt is a cross-platform application and UI framework for
@@ -21,5 +21,5 @@ config BR2_PACKAGE_QT5QUICK1 comment "qt5quick1 needs a toolchain w/ dynamic library and an OpenGL-capable backend" depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE - depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES || \ + depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES || \ BR2_PREFER_STATIC_LIB
package/qt5/qt5quickcontrols/Config.in +2 -2
@@ -5,7 +5,7 @@ config BR2_PACKAGE_QT5QUICKCONTROLS select BR2_PACKAGE_QT5DECLARATIVE depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES help Qt is a cross-platform application and UI framework for developers using C++.
@@ -15,5 +15,5 @@ config BR2_PACKAGE_QT5QUICKCONTROLS http://qt-project.org comment "qt5quickcontrols requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES) && \ + depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLE
package/rpi-userland/Config.in +2 -2
@@ -5,7 +5,7 @@ config BR2_PACKAGE_RPI_USERLAND depends on BR2_LARGEFILE depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_HAS_OPENGL_EGL - select BR2_PACKAGE_HAS_OPENGL_ES + select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_HAS_OPENVG select BR2_PACKAGE_HAS_OPENMAX help
@@ -22,7 +22,7 @@ if BR2_PACKAGE_RPI_USERLAND config BR2_PACKAGE_PROVIDES_OPENGL_EGL default "rpi-userland" -config BR2_PACKAGE_PROVIDES_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES default "rpi-userland" config BR2_PACKAGE_PROVIDES_OPENVG
package/sunxi-mali/Config.in +2 -2
@@ -1,7 +1,7 @@ config BR2_PACKAGE_SUNXI_MALI bool "sunxi-mali" select BR2_PACKAGE_HAS_OPENGL_EGL - select BR2_PACKAGE_HAS_OPENGL_ES + select BR2_PACKAGE_HAS_LIBGLES # The egl/gles mali libraries are provided as a git submodule of the # sunxi-mali repo and are downloaded by the sunxi-mali-prop package. select BR2_PACKAGE_SUNXI_MALI_PROP
@@ -21,7 +21,7 @@ if BR2_PACKAGE_SUNXI_MALI config BR2_PACKAGE_PROVIDES_OPENGL_EGL default "sunxi-mali" -config BR2_PACKAGE_PROVIDES_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES default "sunxi-mali" config BR2_PACKAGE_SUNXI_MALI_DBG
package/ti-gfx/Config.in +2 -2
@@ -1,7 +1,7 @@ config BR2_PACKAGE_TI_GFX bool "ti-gfx" select BR2_PACKAGE_HAS_OPENGL_EGL - select BR2_PACKAGE_HAS_OPENGL_ES + select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_HAS_POWERVR depends on BR2_LINUX_KERNEL && BR2_TOOLCHAIN_USES_GLIBC && BR2_arm help
@@ -14,7 +14,7 @@ if BR2_PACKAGE_TI_GFX config BR2_PACKAGE_PROVIDES_OPENGL_EGL default "ti-gfx" -config BR2_PACKAGE_PROVIDES_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES default "ti-gfx" config BR2_PACKAGE_PROVIDES_POWERVR
Signature · 1 line
1.8.3.2
PATCH 1/20 package/libgles: rename the _HAS and _PROVIDES variables
Quoted 9 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
The basic rule for a package is to have its options named after the package name. There is no reason this should not also be the case for virtual packages.
Besides, this will allow us to switch libgles to use the soon-to-be-introduced virtual-package infrastructure.
Quoted 7 lines
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Thomas De Schampheleire <[email protected]>Cc Mike Zick <[email protected]>Cc Samuel Martin <[email protected]>Reviewed-by Samuel Martin <[email protected]>
It no longer applies as is (well, it applies but it is not
correct anymore; it misses the new mesa3d and xbmc). Instead, the change should be done with:
git grep -l 'BR2_PACKAGE_\(HAS\|PROVIDES\)_OPENGL_ES' | xargs sed -i 's/BR2_PACKAGE_\(HAS\|PROVIDES\)_OPENGL_ES/BR2_PACKAGE_\1_LIBGLES/g'
Other than that it gets my ack.
Same for the next 4 patches: use the automated change
and it gets my ack.
Please apply soonish to avoid further changes.
Regards,
Arnout
Quoted 293 lines
--- package/cairo/cairo.mk | 2 +- package/freescale-imx/gpu-viv-bin-mx6q/Config.in | 4 ++-- package/gstreamer1/gst1-plugins-bad/Config.in | 2 +- package/opengl/libgles/Config.in | 6 +++--- package/opengl/libgles/libgles.mk | 4 ++-- package/qt/Config.in | 2 +- package/qt5/qt5base/Config.in | 4 ++-- package/qt5/qt5declarative/Config.in | 4 ++-- package/qt5/qt5graphicaleffects/Config.in | 4 ++-- package/qt5/qt5multimedia/Config.in | 4 ++-- package/qt5/qt5quick1/Config.in | 4 ++-- package/qt5/qt5quickcontrols/Config.in | 4 ++-- package/rpi-userland/Config.in | 4 ++-- package/sunxi-mali/Config.in | 4 ++-- package/ti-gfx/Config.in | 4 ++-- 15 files changed, 28 insertions(+), 28 deletions(-)package/cairo/cairo.mk +1
-1@@ -54,7 +54,7 @@ else CAIRO_CONF_OPT += --disable-directfb endif -ifeq ($(BR2_PACKAGE_HAS_OPENGL_ES),y) +ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) CAIRO_CONF_OPT += --enable-glesv2 CAIRO_DEPENDENCIES += libgles elsepackage/freescale-imx/gpu-viv-bin-mx6q/Config.in +2
-2@@ -5,7 +5,7 @@ comment "gpu-viv-bin-mx6q needs an (e)glibc toolchain" config BR2_PACKAGE_GPU_VIV_BIN_MX6Q bool "gpu-viv-bin-mx6q" select BR2_PACKAGE_HAS_OPENGL_EGL - select BR2_PACKAGE_HAS_OPENGL_ES + select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7 depends on BR2_arm # Only relevant for i.MX6@@ -27,7 +27,7 @@ if BR2_PACKAGE_GPU_VIV_BIN_MX6Q config BR2_PACKAGE_PROVIDES_OPENGL_EGL default "gpu-viv-bin-mx6q" -config BR2_PACKAGE_PROVIDES_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES default "gpu-viv-bin-mx6q" config BR2_PACKAGE_GPU_VIV_BIN_MX6Q_EXAMPLESpackage/gstreamer1/gst1-plugins-bad/Config.in +1
-1@@ -464,7 +464,7 @@ comment "rsvg plugin needs a toolchain w/ C++, wchar, threads" config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_EGLGLES bool "eglgles" - depends on BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_LIBGLES help EGL/GLES sinkpackage/opengl/libgles/Config.in +3
-3@@ -1,6 +1,6 @@ -config BR2_PACKAGE_HAS_OPENGL_ES +config BR2_PACKAGE_HAS_LIBGLES bool -config BR2_PACKAGE_PROVIDES_OPENGL_ES - depends on BR2_PACKAGE_HAS_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES + depends on BR2_PACKAGE_HAS_LIBGLES stringpackage/opengl/libgles/libgles.mk +2
-2@@ -5,9 +5,9 @@ ################################################################################ LIBGLES_SOURCE = -LIBGLES_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_OPENGL_ES)) +LIBGLES_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LIBGLES)) -ifeq ($(BR2_PACKAGE_HAS_OPENGL_ES),y) +ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) ifeq ($(LIBGLES_DEPENDENCIES),) $(error No libGLES implementation selected. Configuration error.) endifpackage/qt/Config.in +1
-1@@ -294,7 +294,7 @@ config BR2_PACKAGE_QT_PHONON_BACKEND config BR2_PACKAGE_QT_OPENGL_ES bool "OpenGL ES v2.x support" - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_HAS_OPENGL_EGL help Enable the OpenGL ES v2.x support.package/qt5/qt5base/Config.in +2
-2@@ -138,10 +138,10 @@ comment "X.org XCB backend available if X.org is enabled" config BR2_PACKAGE_QT5BASE_EGLFS bool "eglfs support" depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES comment "eglfs backend available if OpenGLES and EGL are enabled" - depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES + depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES config BR2_PACKAGE_QT5BASE_PRINTSUPPORT bool "print support module"package/qt5/qt5declarative/Config.in +2
-2@@ -5,7 +5,7 @@ config BR2_PACKAGE_QT5DECLARATIVE select BR2_PACKAGE_QT5BASE_GUI select BR2_PACKAGE_QT5BASE_EGLFS depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE help Qt is a cross-platform application and UI framework for@@ -16,5 +16,5 @@ config BR2_PACKAGE_QT5DECLARATIVE http://qt-project.org comment "qt5declarative requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES) && \ + depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLEpackage/qt5/qt5graphicaleffects/Config.in +2
-2@@ -4,7 +4,7 @@ config BR2_PACKAGE_QT5GRAPHICALEFFECTS select BR2_PACKAGE_QT5DECLARATIVE depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES help Qt is a cross-platform application and UI framework for developers using C++.@@ -14,5 +14,5 @@ config BR2_PACKAGE_QT5GRAPHICALEFFECTS http://qt-project.org comment "qt5graphicaleffects requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES) && \ + depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLEpackage/qt5/qt5multimedia/Config.in +2
-2@@ -3,7 +3,7 @@ config BR2_PACKAGE_QT5MULTIMEDIA select BR2_PACKAGE_QT5BASE select BR2_PACKAGE_QT5DECLARATIVE depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE help Qt is a cross-platform application and UI framework for@@ -14,5 +14,5 @@ config BR2_PACKAGE_QT5MULTIMEDIA http://qt-project.org comment "qt5multimedia requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES) && \ + depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLEpackage/qt5/qt5quick1/Config.in +2
-2@@ -9,7 +9,7 @@ config BR2_PACKAGE_QT5QUICK1 # This module does not support static linking depends on !BR2_PREFER_STATIC_LIB depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE help Qt is a cross-platform application and UI framework for@@ -21,5 +21,5 @@ config BR2_PACKAGE_QT5QUICK1 comment "qt5quick1 needs a toolchain w/ dynamic library and an OpenGL-capable backend" depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE - depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES || \ + depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES || \ BR2_PREFER_STATIC_LIBpackage/qt5/qt5quickcontrols/Config.in +2
-2@@ -5,7 +5,7 @@ config BR2_PACKAGE_QT5QUICKCONTROLS select BR2_PACKAGE_QT5DECLARATIVE depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE depends on BR2_PACKAGE_HAS_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_ES + depends on BR2_PACKAGE_HAS_LIBGLES help Qt is a cross-platform application and UI framework for developers using C++.@@ -15,5 +15,5 @@ config BR2_PACKAGE_QT5QUICKCONTROLS http://qt-project.org comment "qt5quickcontrols requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_OPENGL_ES) && \ + depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLEpackage/rpi-userland/Config.in +2
-2@@ -5,7 +5,7 @@ config BR2_PACKAGE_RPI_USERLAND depends on BR2_LARGEFILE depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_HAS_OPENGL_EGL - select BR2_PACKAGE_HAS_OPENGL_ES + select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_HAS_OPENVG select BR2_PACKAGE_HAS_OPENMAX help@@ -22,7 +22,7 @@ if BR2_PACKAGE_RPI_USERLAND config BR2_PACKAGE_PROVIDES_OPENGL_EGL default "rpi-userland" -config BR2_PACKAGE_PROVIDES_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES default "rpi-userland" config BR2_PACKAGE_PROVIDES_OPENVGpackage/sunxi-mali/Config.in +2
-2@@ -1,7 +1,7 @@ config BR2_PACKAGE_SUNXI_MALI bool "sunxi-mali" select BR2_PACKAGE_HAS_OPENGL_EGL - select BR2_PACKAGE_HAS_OPENGL_ES + select BR2_PACKAGE_HAS_LIBGLES # The egl/gles mali libraries are provided as a git submodule of the # sunxi-mali repo and are downloaded by the sunxi-mali-prop package. select BR2_PACKAGE_SUNXI_MALI_PROP@@ -21,7 +21,7 @@ if BR2_PACKAGE_SUNXI_MALI config BR2_PACKAGE_PROVIDES_OPENGL_EGL default "sunxi-mali" -config BR2_PACKAGE_PROVIDES_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES default "sunxi-mali" config BR2_PACKAGE_SUNXI_MALI_DBGpackage/ti-gfx/Config.in +2
-2@@ -1,7 +1,7 @@ config BR2_PACKAGE_TI_GFX bool "ti-gfx" select BR2_PACKAGE_HAS_OPENGL_EGL - select BR2_PACKAGE_HAS_OPENGL_ES + select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_HAS_POWERVR depends on BR2_LINUX_KERNEL && BR2_TOOLCHAIN_USES_GLIBC && BR2_arm help@@ -14,7 +14,7 @@ if BR2_PACKAGE_TI_GFX config BR2_PACKAGE_PROVIDES_OPENGL_EGL default "ti-gfx" -config BR2_PACKAGE_PROVIDES_OPENGL_ES +config BR2_PACKAGE_PROVIDES_LIBGLES default "ti-gfx" config BR2_PACKAGE_PROVIDES_POWERVR
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v4 1/20 package/libgles: rename the _HAS and _PROVIDES variables
Arnout, All,
On 2014-04-04 18:41 +0200, Arnout Vandecappelle spake thusly:
Quoted 18 lines · Yann E. MORIN
Quoted 9 lines
From: "Yann E. MORIN" <[email protected]>
The basic rule for a package is to have its options named after the package name. There is no reason this should not also be the case for virtual packages.
Besides, this will allow us to switch libgles to use the soon-to-be-introduced virtual-package infrastructure.
Quoted 7 lines
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Thomas De Schampheleire <[email protected]>Cc Mike Zick <[email protected]>Cc Samuel Martin <[email protected]>Reviewed-by Samuel Martin <[email protected]>
Quoted 5 lines
It no longer applies as is (well, it applies but it is not
correct anymore; it misses the new mesa3d and xbmc). Instead, the change should be done with:git grep -l 'BR2_PACKAGE_\(HAS\|PROVIDES\)_OPENGL_ES' | xargs sed -i 's/BR2_PACKAGE_\(HAS\|PROVIDES\)_OPENGL_ES/BR2_PACKAGE_\1_LIBGLES/g'
That's basically how I did generate those patches (IIRC).
I have anyway already rebased this on top of current master. I was waiting for things to settle down a bit before I re-submitted an updated series.
Quoted 1 line
Other than that it gets my ack.
Thanks. :-)
Quoted 4 lines
Same for the next 4 patches: use the automated change
and it gets my ack.Please apply soonish to avoid further changes.
Hehe! :-)
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH v4 2/20 package/libegl: rename the _HAS and _PROVIDES variables
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
The basic rule for a package is to have its options named after the package name. There is no reason this should not also be the case for virtual packages.
Besides, this will allow us to switch libegl to use the soon-to-be-introduced virtual-package infrastructure.
--- package/freescale-imx/gpu-viv-bin-mx6q/Config.in | 4 ++-- package/gstreamer1/gst1-plugins-bad/Config.in | 2 +- package/opengl/libegl/Config.in | 6 +++--- package/opengl/libegl/libegl.mk | 4 ++-- package/qt/Config.in | 2 +- package/qt5/qt5base/Config.in | 4 ++-- package/qt5/qt5declarative/Config.in | 4 ++-- package/qt5/qt5graphicaleffects/Config.in | 4 ++-- package/qt5/qt5multimedia/Config.in | 4 ++-- package/qt5/qt5quick1/Config.in | 4 ++-- package/qt5/qt5quickcontrols/Config.in | 4 ++-- package/rpi-userland/Config.in | 4 ++-- package/sunxi-mali/Config.in | 4 ++-- package/ti-gfx/Config.in | 4 ++-- 14 files changed, 27 insertions(+), 27 deletions(-)
package/freescale-imx/gpu-viv-bin-mx6q/Config.in +2 -2
@@ -4,7 +4,7 @@ comment "gpu-viv-bin-mx6q needs an (e)glibc toolchain" config BR2_PACKAGE_GPU_VIV_BIN_MX6Q bool "gpu-viv-bin-mx6q" - select BR2_PACKAGE_HAS_OPENGL_EGL + select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_XORG7 select BR2_PACKAGE_XLIB_LIBXEXT if BR2_PACKAGE_XORG7
@@ -24,7 +24,7 @@ config BR2_PACKAGE_GPU_VIV_BIN_MX6Q if BR2_PACKAGE_GPU_VIV_BIN_MX6Q -config BR2_PACKAGE_PROVIDES_OPENGL_EGL +config BR2_PACKAGE_PROVIDES_LIBEGL default "gpu-viv-bin-mx6q" config BR2_PACKAGE_PROVIDES_LIBGLES
package/gstreamer1/gst1-plugins-bad/Config.in +1 -1
@@ -464,7 +464,7 @@ comment "rsvg plugin needs a toolchain w/ C++, wchar, threads" config BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_EGLGLES bool "eglgles" - depends on BR2_PACKAGE_HAS_OPENGL_EGL && BR2_PACKAGE_HAS_LIBGLES + depends on BR2_PACKAGE_HAS_LIBEGL && BR2_PACKAGE_HAS_LIBGLES help EGL/GLES sink
package/opengl/libegl/Config.in +3 -3
@@ -1,6 +1,6 @@ -config BR2_PACKAGE_HAS_OPENGL_EGL +config BR2_PACKAGE_HAS_LIBEGL bool -config BR2_PACKAGE_PROVIDES_OPENGL_EGL - depends on BR2_PACKAGE_HAS_OPENGL_EGL +config BR2_PACKAGE_PROVIDES_LIBEGL + depends on BR2_PACKAGE_HAS_LIBEGL string
package/opengl/libegl/libegl.mk +2 -2
@@ -5,9 +5,9 @@ ################################################################################ LIBEGL_SOURCE = -LIBEGL_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_OPENGL_EGL)) +LIBEGL_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LIBEGL)) -ifeq ($(BR2_PACKAGE_HAS_OPENGL_EGL),y) +ifeq ($(BR2_PACKAGE_HAS_LIBEGL),y) ifeq ($(LIBEGL_DEPENDENCIES),) $(error No libEGL implementation selected. Configuration error.) endif
package/qt/Config.in +1 -1
@@ -295,7 +295,7 @@ config BR2_PACKAGE_QT_PHONON_BACKEND config BR2_PACKAGE_QT_OPENGL_ES bool "OpenGL ES v2.x support" depends on BR2_PACKAGE_HAS_LIBGLES - depends on BR2_PACKAGE_HAS_OPENGL_EGL + depends on BR2_PACKAGE_HAS_LIBEGL help Enable the OpenGL ES v2.x support.
package/qt5/qt5base/Config.in +2 -2
@@ -137,11 +137,11 @@ comment "X.org XCB backend available if X.org is enabled" config BR2_PACKAGE_QT5BASE_EGLFS bool "eglfs support" - depends on BR2_PACKAGE_HAS_OPENGL_EGL + depends on BR2_PACKAGE_HAS_LIBEGL depends on BR2_PACKAGE_HAS_LIBGLES comment "eglfs backend available if OpenGLES and EGL are enabled" - depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES + depends on !BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_HAS_LIBGLES config BR2_PACKAGE_QT5BASE_PRINTSUPPORT bool "print support module"
package/qt5/qt5declarative/Config.in +2 -2
@@ -4,7 +4,7 @@ config BR2_PACKAGE_QT5DECLARATIVE select BR2_PACKAGE_QT5BASE select BR2_PACKAGE_QT5BASE_GUI select BR2_PACKAGE_QT5BASE_EGLFS - depends on BR2_PACKAGE_HAS_OPENGL_EGL + depends on BR2_PACKAGE_HAS_LIBEGL depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE help
@@ -16,5 +16,5 @@ config BR2_PACKAGE_QT5DECLARATIVE http://qt-project.org comment "qt5declarative requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ + depends on (!BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLE
package/qt5/qt5graphicaleffects/Config.in +2 -2
@@ -3,7 +3,7 @@ config BR2_PACKAGE_QT5GRAPHICALEFFECTS select BR2_PACKAGE_QT5BASE select BR2_PACKAGE_QT5DECLARATIVE depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE - depends on BR2_PACKAGE_HAS_OPENGL_EGL + depends on BR2_PACKAGE_HAS_LIBEGL depends on BR2_PACKAGE_HAS_LIBGLES help Qt is a cross-platform application and UI framework for
@@ -14,5 +14,5 @@ config BR2_PACKAGE_QT5GRAPHICALEFFECTS http://qt-project.org comment "qt5graphicaleffects requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ + depends on (!BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLE
package/qt5/qt5multimedia/Config.in +2 -2
@@ -2,7 +2,7 @@ config BR2_PACKAGE_QT5MULTIMEDIA bool "qt5multimedia" select BR2_PACKAGE_QT5BASE select BR2_PACKAGE_QT5DECLARATIVE - depends on BR2_PACKAGE_HAS_OPENGL_EGL + depends on BR2_PACKAGE_HAS_LIBEGL depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE help
@@ -14,5 +14,5 @@ config BR2_PACKAGE_QT5MULTIMEDIA http://qt-project.org comment "qt5multimedia requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ + depends on (!BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLE
package/qt5/qt5quick1/Config.in +2 -2
@@ -8,7 +8,7 @@ config BR2_PACKAGE_QT5QUICK1 select BR2_PACKAGE_QT5DECLARATIVE # This module does not support static linking depends on !BR2_PREFER_STATIC_LIB - depends on BR2_PACKAGE_HAS_OPENGL_EGL + depends on BR2_PACKAGE_HAS_LIBEGL depends on BR2_PACKAGE_HAS_LIBGLES depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE help
@@ -21,5 +21,5 @@ config BR2_PACKAGE_QT5QUICK1 comment "qt5quick1 needs a toolchain w/ dynamic library and an OpenGL-capable backend" depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE - depends on !BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES || \ + depends on !BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_HAS_LIBGLES || \ BR2_PREFER_STATIC_LIB
package/qt5/qt5quickcontrols/Config.in +2 -2
@@ -4,7 +4,7 @@ config BR2_PACKAGE_QT5QUICKCONTROLS select BR2_PACKAGE_QT5BASE_NETWORK select BR2_PACKAGE_QT5DECLARATIVE depends on BR2_PACKAGE_QT5_JSCORE_AVAILABLE - depends on BR2_PACKAGE_HAS_OPENGL_EGL + depends on BR2_PACKAGE_HAS_LIBEGL depends on BR2_PACKAGE_HAS_LIBGLES help Qt is a cross-platform application and UI framework for
@@ -15,5 +15,5 @@ config BR2_PACKAGE_QT5QUICKCONTROLS http://qt-project.org comment "qt5quickcontrols requires an OpenGL-capable backend" - depends on (!BR2_PACKAGE_HAS_OPENGL_EGL || !BR2_PACKAGE_HAS_LIBGLES) && \ + depends on (!BR2_PACKAGE_HAS_LIBEGL || !BR2_PACKAGE_HAS_LIBGLES) && \ BR2_PACKAGE_QT5_JSCORE_AVAILABLE
package/rpi-userland/Config.in +2 -2
@@ -4,7 +4,7 @@ config BR2_PACKAGE_RPI_USERLAND depends on BR2_INSTALL_LIBSTDCPP depends on BR2_LARGEFILE depends on BR2_TOOLCHAIN_HAS_THREADS - select BR2_PACKAGE_HAS_OPENGL_EGL + select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_HAS_OPENVG select BR2_PACKAGE_HAS_OPENMAX
@@ -19,7 +19,7 @@ config BR2_PACKAGE_RPI_USERLAND if BR2_PACKAGE_RPI_USERLAND -config BR2_PACKAGE_PROVIDES_OPENGL_EGL +config BR2_PACKAGE_PROVIDES_LIBEGL default "rpi-userland" config BR2_PACKAGE_PROVIDES_LIBGLES
package/sunxi-mali/Config.in +2 -2
@@ -1,6 +1,6 @@ config BR2_PACKAGE_SUNXI_MALI bool "sunxi-mali" - select BR2_PACKAGE_HAS_OPENGL_EGL + select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES # The egl/gles mali libraries are provided as a git submodule of the # sunxi-mali repo and are downloaded by the sunxi-mali-prop package.
@@ -18,7 +18,7 @@ config BR2_PACKAGE_SUNXI_MALI if BR2_PACKAGE_SUNXI_MALI -config BR2_PACKAGE_PROVIDES_OPENGL_EGL +config BR2_PACKAGE_PROVIDES_LIBEGL default "sunxi-mali" config BR2_PACKAGE_PROVIDES_LIBGLES
package/ti-gfx/Config.in +2 -2
@@ -1,6 +1,6 @@ config BR2_PACKAGE_TI_GFX bool "ti-gfx" - select BR2_PACKAGE_HAS_OPENGL_EGL + select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_HAS_POWERVR depends on BR2_LINUX_KERNEL && BR2_TOOLCHAIN_USES_GLIBC && BR2_arm
@@ -11,7 +11,7 @@ config BR2_PACKAGE_TI_GFX if BR2_PACKAGE_TI_GFX -config BR2_PACKAGE_PROVIDES_OPENGL_EGL +config BR2_PACKAGE_PROVIDES_LIBEGL default "ti-gfx" config BR2_PACKAGE_PROVIDES_LIBGLES
Signature · 1 line
1.8.3.2
PATCH v4 3/20 package/libopenmax: rename the _HAS and _PROVIDES variables
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
The basic rule for a package is to have its options named after the package name. There is no reason this should not also be the case for virtual packages.
Besides, this will allow us to switch libopenmax to use the soon-to-be-introduced virtual-package infrastructure.
--- package/bellagio/Config.in | 4 ++-- package/gstreamer1/gst-omx/Config.in | 4 ++-- package/opengl/libopenmax/Config.in | 6 +++--- package/opengl/libopenmax/libopenmax.mk | 4 ++-- package/rpi-userland/Config.in | 4 ++-- 5 files changed, 11 insertions(+), 11 deletions(-)
package/bellagio/Config.in +2 -2
@@ -3,7 +3,7 @@ config BR2_PACKAGE_BELLAGIO depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_PREFER_STATIC_LIB - select BR2_PACKAGE_HAS_OPENMAX + select BR2_PACKAGE_HAS_LIBOPENMAX help Bellagio is an opensource implementation of the OpenMAX IL API.
@@ -19,7 +19,7 @@ config BR2_PACKAGE_BELLAGIO if BR2_PACKAGE_BELLAGIO -config BR2_PACKAGE_PROVIDES_OPENMAX +config BR2_PACKAGE_PROVIDES_LIBOPENMAX default "bellagio" endif
package/gstreamer1/gst-omx/Config.in +2 -2
@@ -1,6 +1,6 @@ config BR2_PACKAGE_GST_OMX bool "gst-omx" - depends on BR2_PACKAGE_HAS_OPENMAX + depends on BR2_PACKAGE_HAS_LIBOPENMAX select BR2_PACKAGE_GST1_PLUGINS_BASE help GStreamer plug-in to use OpenMAX API.
@@ -8,4 +8,4 @@ config BR2_PACKAGE_GST_OMX http://cgit.freedesktop.org/gstreamer/gst-omx comment "gst-omx requires a OpenMAX implementation" - depends on !BR2_PACKAGE_HAS_OPENMAX + depends on !BR2_PACKAGE_HAS_LIBOPENMAX
package/opengl/libopenmax/Config.in +3 -3
@@ -1,6 +1,6 @@ -config BR2_PACKAGE_HAS_OPENMAX +config BR2_PACKAGE_HAS_LIBOPENMAX bool -config BR2_PACKAGE_PROVIDES_OPENMAX - depends on BR2_PACKAGE_HAS_OPENMAX +config BR2_PACKAGE_PROVIDES_LIBOPENMAX + depends on BR2_PACKAGE_HAS_LIBOPENMAX string
package/opengl/libopenmax/libopenmax.mk +2 -2
@@ -5,9 +5,9 @@ ################################################################################ LIBOPENMAX_SOURCE = -LIBOPENMAX_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_OPENMAX)) +LIBOPENMAX_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LIBOPENMAX)) -ifeq ($(BR2_PACKAGE_HAS_OPENMAX),y) +ifeq ($(BR2_PACKAGE_HAS_LIBOPENMAX),y) ifeq ($(LIBOPENMAX_DEPENDENCIES),) $(error No libopenmax implementation selected. Configuration error.) endif
package/rpi-userland/Config.in +2 -2
@@ -7,7 +7,7 @@ config BR2_PACKAGE_RPI_USERLAND select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES select BR2_PACKAGE_HAS_OPENVG - select BR2_PACKAGE_HAS_OPENMAX + select BR2_PACKAGE_HAS_LIBOPENMAX help Raspberry Pi Userland contains the necessary library to use the VideoCore driver.
@@ -28,7 +28,7 @@ config BR2_PACKAGE_PROVIDES_LIBGLES config BR2_PACKAGE_PROVIDES_OPENVG default "rpi-userland" -config BR2_PACKAGE_PROVIDES_OPENMAX +config BR2_PACKAGE_PROVIDES_LIBOPENMAX default "rpi-userland" endif
Signature · 1 line
1.8.3.2
PATCH 3/20 package/libopenmax: rename the _HAS and _PROVIDES variables
Quoted 9 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
The basic rule for a package is to have its options named after the package name. There is no reason this should not also be the case for virtual packages.
Besides, this will allow us to switch libopenmax to use the soon-to-be-introduced virtual-package infrastructure.
Quoted 6 lines
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Thomas De Schampheleire <[email protected]>Cc Mike Zick <[email protected]>Reviewed-by Samuel Martin <[email protected]>
This one is still correct so
(but just to be safe, use automated conversion instead of applying the patch).
Regards,
Arnout
[snip]
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v4 4/20 package/libopenvg: rename the _HAS and _PROVIDES variables
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
The basic rule for a package is to have its options named after the package name. There is no reason this should not also be the case for virtual packages.
Besides, renaming the package will allow us to switch libopenvg to use the soon-to-be-introduced virtual-package infrastructure.
--- package/cairo/cairo.mk | 2 +- package/opengl/libopenvg/Config.in | 6 +++--- package/opengl/libopenvg/libopenvg.mk | 4 ++-- package/rpi-userland/Config.in | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-)
package/cairo/cairo.mk +1 -1
@@ -61,7 +61,7 @@ else CAIRO_CONF_OPT += --disable-glesv2 endif -ifeq ($(BR2_PACKAGE_HAS_OPENVG),y) +ifeq ($(BR2_PACKAGE_HAS_LIBOPENVG),y) CAIRO_CONF_OPT += --enable-vg CAIRO_DEPENDENCIES += libopenvg else
package/opengl/libopenvg/Config.in +3 -3
@@ -1,6 +1,6 @@ -config BR2_PACKAGE_HAS_OPENVG +config BR2_PACKAGE_HAS_LIBOPENVG bool -config BR2_PACKAGE_PROVIDES_OPENVG - depends on BR2_PACKAGE_HAS_OPENVG +config BR2_PACKAGE_PROVIDES_LIBOPENVG + depends on BR2_PACKAGE_HAS_LIBOPENVG string
package/opengl/libopenvg/libopenvg.mk +2 -2
@@ -5,9 +5,9 @@ ################################################################################ LIBOPENVG_SOURCE = -LIBOPENVG_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_OPENVG)) +LIBOPENVG_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LIBOPENVG)) -ifeq ($(BR2_PACKAGE_HAS_OPENVG),y) +ifeq ($(BR2_PACKAGE_HAS_LIBOPENVG),y) ifeq ($(LIBOPENVG_DEPENDENCIES),) $(error No libOpenVG implementation selected. Configuration error.) endif
package/rpi-userland/Config.in +2 -2
@@ -6,7 +6,7 @@ config BR2_PACKAGE_RPI_USERLAND depends on BR2_TOOLCHAIN_HAS_THREADS select BR2_PACKAGE_HAS_LIBEGL select BR2_PACKAGE_HAS_LIBGLES - select BR2_PACKAGE_HAS_OPENVG + select BR2_PACKAGE_HAS_LIBOPENVG select BR2_PACKAGE_HAS_LIBOPENMAX help Raspberry Pi Userland contains the necessary library to use the
@@ -25,7 +25,7 @@ config BR2_PACKAGE_PROVIDES_LIBEGL config BR2_PACKAGE_PROVIDES_LIBGLES default "rpi-userland" -config BR2_PACKAGE_PROVIDES_OPENVG +config BR2_PACKAGE_PROVIDES_LIBOPENVG default "rpi-userland" config BR2_PACKAGE_PROVIDES_LIBOPENMAX
Signature · 1 line
1.8.3.2
PATCH 4/20 package/libopenvg: rename the _HAS and _PROVIDES variables
Quoted 9 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
The basic rule for a package is to have its options named after the package name. There is no reason this should not also be the case for virtual packages.
Besides, renaming the package will allow us to switch libopenvg to use the soon-to-be-introduced virtual-package infrastructure.
Quoted 7 lines
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Thomas De Schampheleire <[email protected]>Cc Mike Zick <[email protected]>Reviewed-by Samuel Martin <[email protected]>Cc Jerzy Grzegorek <[email protected]>
Regards,
Arnout
[snip]
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v4 5/20 package/luainterpreter: rename the _HAS and _PROVIDES variables
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
The basic rule for a package is to have its options named after the package name. There is no reason this should not also be the case for virtual packages.
Besides, this will allow us to switch luainterpreter to use the soon-to-be-introduced virtual-package infrastructure.
--- package/Config.in | 2 +- package/lbase64/Config.in | 2 +- package/lpeg/Config.in | 2 +- package/lpty/Config.in | 2 +- package/lrandom/Config.in | 2 +- package/lsqlite3/Config.in | 2 +- package/lua-cjson/Config.in | 2 +- package/lua-ev/Config.in | 2 +- package/lua-msgpack-native/Config.in | 2 +- package/lua/Config.in | 4 ++-- package/luaexpat/Config.in | 2 +- package/luafilesystem/Config.in | 2 +- package/luainterpreter/Config.in | 6 +++--- package/luainterpreter/luainterpreter.mk | 4 ++-- package/luajit/Config.in | 4 ++-- package/luaposix/Config.in | 2 +- package/luasec/Config.in | 2 +- package/luasocket/Config.in | 2 +- package/luasql-sqlite3/Config.in | 2 +- package/lzlib/Config.in | 2 +- package/rings/Config.in | 2 +- 21 files changed, 26 insertions(+), 26 deletions(-)
package/Config.in +1 -1
@@ -367,7 +367,7 @@ source "package/jimtcl/Config.in" source "package/lua/Config.in" source "package/luainterpreter/Config.in" source "package/luajit/Config.in" -if BR2_PACKAGE_HAS_LUA_INTERPRETER && !BR2_PREFER_STATIC_LIB +if BR2_PACKAGE_HAS_LUAINTERPRETER && !BR2_PREFER_STATIC_LIB # lua modules are dynamically loaded, so not available on static builds menu "Lua libraries/modules" source "package/cgilua/Config.in"
package/lbase64/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LBASE64 bool "lbase64" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER depends on !BR2_PACKAGE_LUA_5_2 help A base64 library for Lua
package/lpeg/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LPEG bool "lpeg" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER help LPeg is a new pattern-matching library for Lua, based on Parsing Expression Grammars (PEGs).
package/lpty/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LPTY bool "lpty" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER help A simple facility for lua to control other programs via PTYs.
package/lrandom/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LRANDOM bool "lrandom" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER help A library for generating random numbers based on the Mersenne Twister
package/lsqlite3/Config.in +1 -1
@@ -1,7 +1,7 @@ config BR2_PACKAGE_LSQLITE3 bool "lsqlite3" select BR2_PACKAGE_SQLITE - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER help a thin Lua wrapper for the SQLite3 library.
package/lua-cjson/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LUA_CJSON bool "lua-cjson" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER help The Lua CJSON module provides JSON support for Lua. It features: - Fast, standards compliant encoding/parsing routines
package/lua-ev/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LUA_EV bool "lua-ev" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER select BR2_PACKAGE_LIBEV depends on !(BR2_avr32 || BR2_bfin) # libev help
package/lua-msgpack-native/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LUA_MSGPACK_NATIVE bool "lua-msgpack-native" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER depends on !BR2_PACKAGE_LUA_5_2 help This is a native, C language implementation of msgpack
package/lua/Config.in +2 -2
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LUA bool "lua" - select BR2_PACKAGE_HAS_LUA_INTERPRETER + select BR2_PACKAGE_HAS_LUAINTERPRETER help Lua is a powerful, fast, light-weight, embeddable scripting language.
@@ -8,7 +8,7 @@ config BR2_PACKAGE_LUA if BR2_PACKAGE_LUA -config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER +config BR2_PACKAGE_PROVIDES_LUAINTERPRETER default "lua" choice
package/luaexpat/Config.in +1 -1
@@ -1,7 +1,7 @@ config BR2_PACKAGE_LUAEXPAT bool "luaexpat" select BR2_PACKAGE_EXPAT - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER depends on !BR2_PACKAGE_LUA_5_2 help LuaExpat is a SAX XML parser based on the Expat library.
package/luafilesystem/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LUAFILESYSTEM bool "luafilesystem" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER help LuaFileSystem offers a portable way to access the underlying directory structure and file attributes.
package/luainterpreter/Config.in +3 -3
@@ -1,9 +1,9 @@ -config BR2_PACKAGE_HAS_LUA_INTERPRETER +config BR2_PACKAGE_HAS_LUAINTERPRETER bool -config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER +config BR2_PACKAGE_PROVIDES_LUAINTERPRETER string - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION string
package/luainterpreter/luainterpreter.mk +2 -2
@@ -5,11 +5,11 @@ ################################################################################ LUAINTERPRETER_SOURCE = -LUAINTERPRETER_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LUA_INTERPRETER)) +LUAINTERPRETER_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LUAINTERPRETER)) LUAINTERPRETER_ABIVER = $(call qstrip,$(BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION)) -ifeq ($(BR2_PACKAGE_HAS_LUA_INTERPRETER),y) +ifeq ($(BR2_PACKAGE_HAS_LUAINTERPRETER),y) ifeq ($(LUAINTERPRETER_DEPENDENCIES),) $(error No lua interpreter implementation selected. Configuration error.) endif
package/luajit/Config.in +2 -2
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LUAJIT bool "luajit" - select BR2_PACKAGE_HAS_LUA_INTERPRETER + select BR2_PACKAGE_HAS_LUAINTERPRETER # Luajit is only available for some target architectures, and # has some complexity wrt 32/64. See luajit.mk for details. depends on BR2_i386 || (BR2_x86_64 && BR2_HOSTARCH='x86_64') || BR2_powerpc || BR2_arm || BR2_armeb
@@ -14,7 +14,7 @@ config BR2_PACKAGE_LUAJIT if BR2_PACKAGE_LUAJIT -config BR2_PACKAGE_PROVIDES_LUA_INTERPRETER +config BR2_PACKAGE_PROVIDES_LUAINTERPRETER default "luajit" config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION
package/luaposix/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LUAPOSIX bool "luaposix" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER select BR2_PACKAGE_LUABITOP if BR2_PACKAGE_LUA_5_1 # LuaBitOp is already included in LuaJIT help
package/luasec/Config.in +1 -1
@@ -2,7 +2,7 @@ config BR2_PACKAGE_LUASEC bool "luasec" select BR2_PACKAGE_OPENSSL select BR2_PACKAGE_LUASOCKET - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER depends on !BR2_PACKAGE_LUA_5_2 help LuaSec is a binding for OpenSSL library to provide TLS/SSL
package/luasocket/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LUASOCKET bool "luasocket" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER help LuaSocket is the most comprehensive networking support library for the Lua language.
package/luasql-sqlite3/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_LUASQL_SQLITE3 bool "luasql-sqlite3" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER select BR2_PACKAGE_SQLITE help LuaSQL is a simple interface from Lua to a DBMS.
package/lzlib/Config.in +1 -1
@@ -1,7 +1,7 @@ config BR2_PACKAGE_LZLIB bool "lzlib" select BR2_PACKAGE_ZLIB - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER help This package provides a library to access zlib library functions and also to read/write gzip files using an
package/rings/Config.in +1 -1
@@ -1,6 +1,6 @@ config BR2_PACKAGE_RINGS bool "rings" - depends on BR2_PACKAGE_HAS_LUA_INTERPRETER + depends on BR2_PACKAGE_HAS_LUAINTERPRETER help Provides a way to create new Lua states from within Lua.
Signature · 1 line
1.8.3.2
PATCH v4 6/20 package/lua: rename config options
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
Package's options should be named after the package.
Lua is an interpreter, but the package is named 'lua'. So we want to name the config option with '_LUA_', not with '_LUA_INTERPRETER_'
Besides, naming them with '_LUA_INTERPRETER_' might be confusing, since there is a package named 'luainterpreter'.
Since the renamed options are part of a choice, we can't use the legacy options to select the new ones. So we instead instruct the user to go select the appropriate option in the choice.
--- Config.in.legacy | 21 +++++++++++++++++++++ package/lua/Config.in | 10 +++++----- package/lua/lua.mk | 4 ++-- 3 files changed, 28 insertions(+), 7 deletions(-)
Config.in.legacy +21 -0
@@ -101,6 +101,27 @@ endif ############################################################################### comment "Legacy options removed in 2014.05" +config BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE + bool "Lua command-line editing none has been renamed" + help + The BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE option has been + renamed to BR2_PACKAGE_LUA_EDITING_NONE. You will have to select + it in the corresponding choice. + +config BR2_PACKAGE_LUA_INTERPRETER_READLINE + bool "Lua command-line editing using readline has been renamed" + help + The BR2_PACKAGE_LUA_INTERPRETER_READLINE option has been + renamed to BR2_PACKAGE_LUA_READLINE. You will have to select + it in the corresponding choice. + +config BR2_PACKAGE_LUA_INTERPRETER_LINENOISE + bool "Lua command-line editing using linenoise has been renamed" + help + The BR2_PACKAGE_LUA_INTERPRETER_LINENOISE option has been + renamed to BR2_PACKAGE_LUA_LINENOISE. You will have to select + it in the corresponding choice. + config BR2_KERNEL_HEADERS_SNAP bool "Local Linux snapshot support removed" select BR2_LEGACY
package/lua/Config.in +5 -5
@@ -30,22 +30,22 @@ config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION default "5.2" if BR2_PACKAGE_LUA_5_2 choice - prompt "Lua Interpreter command-line editing" - default BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE + prompt "Lua command-line editing" + default BR2_PACKAGE_LUA_EDITING_NONE -config BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE +config BR2_PACKAGE_LUA_EDITING_NONE bool "none" help None. -config BR2_PACKAGE_LUA_INTERPRETER_READLINE +config BR2_PACKAGE_LUA_READLINE bool "readline support" select BR2_PACKAGE_READLINE select BR2_PACKAGE_NCURSES help Enables command-line editing in the Lua interpreter. -config BR2_PACKAGE_LUA_INTERPRETER_LINENOISE +config BR2_PACKAGE_LUA_LINENOISE bool "linenoise support" select BR2_PACKAGE_LINENOISE help
package/lua/lua.mk +2 -2
@@ -31,12 +31,12 @@ else LUA_MYLIBS += -ldl endif -ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y) +ifeq ($(BR2_PACKAGE_LUA_READLINE),y) LUA_DEPENDENCIES = readline ncurses LUA_MYLIBS += -lreadline -lhistory -lncurses LUA_CFLAGS += -DLUA_USE_READLINE else -ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_LINENOISE),y) +ifeq ($(BR2_PACKAGE_LUA_LINENOISE),y) LUA_DEPENDENCIES = linenoise LUA_MYLIBS += -llinenoise LUA_CFLAGS += -DLUA_USE_LINENOISE
Signature · 1 line
1.8.3.2
PATCH 6/20 package/lua: rename config options
Quoted 7 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
Package's options should be named after the package.
Lua is an interpreter, but the package is named 'lua'. So we want to name the config option with '_LUA_', not with '_LUA_INTERPRETER_'
Quoted 6 lines
Besides, naming them with '_LUA_INTERPRETER_' might be confusing, since there is a package named 'luainterpreter'.
Since the renamed options are part of a choice, we can't use the legacy options to select the new ones. So we instead instruct the user to go select the appropriate option in the choice.
Although you're right that the interpreter bit is redundant, it's only a
bit confusing with LUAINTERPRETER, so for me there's not really sufficient reason to make this change. Especially since there's no decent legacy handling.
Regards,
Arnout
Quoted 94 lines
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Francois Perrad <[email protected]>Reviewed-by Samuel Martin <[email protected]>--- Config.in.legacy | 21 +++++++++++++++++++++ package/lua/Config.in | 10 +++++----- package/lua/lua.mk | 4 ++-- 3 files changed, 28 insertions(+), 7 deletions(-)Config.in.legacy +21
-0@@ -101,6 +101,27 @@ endif ############################################################################### comment "Legacy options removed in 2014.05" +config BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE + bool "Lua command-line editing none has been renamed" + help + The BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE option has been + renamed to BR2_PACKAGE_LUA_EDITING_NONE. You will have to select + it in the corresponding choice. + +config BR2_PACKAGE_LUA_INTERPRETER_READLINE + bool "Lua command-line editing using readline has been renamed" + help + The BR2_PACKAGE_LUA_INTERPRETER_READLINE option has been + renamed to BR2_PACKAGE_LUA_READLINE. You will have to select + it in the corresponding choice. + +config BR2_PACKAGE_LUA_INTERPRETER_LINENOISE + bool "Lua command-line editing using linenoise has been renamed" + help + The BR2_PACKAGE_LUA_INTERPRETER_LINENOISE option has been + renamed to BR2_PACKAGE_LUA_LINENOISE. You will have to select + it in the corresponding choice. + config BR2_KERNEL_HEADERS_SNAP bool "Local Linux snapshot support removed" select BR2_LEGACYpackage/lua/Config.in +5
-5@@ -30,22 +30,22 @@ config BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION default "5.2" if BR2_PACKAGE_LUA_5_2 choice - prompt "Lua Interpreter command-line editing" - default BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE + prompt "Lua command-line editing" + default BR2_PACKAGE_LUA_EDITING_NONE -config BR2_PACKAGE_LUA_INTERPRETER_EDITING_NONE +config BR2_PACKAGE_LUA_EDITING_NONE bool "none" help None. -config BR2_PACKAGE_LUA_INTERPRETER_READLINE +config BR2_PACKAGE_LUA_READLINE bool "readline support" select BR2_PACKAGE_READLINE select BR2_PACKAGE_NCURSES help Enables command-line editing in the Lua interpreter. -config BR2_PACKAGE_LUA_INTERPRETER_LINENOISE +config BR2_PACKAGE_LUA_LINENOISE bool "linenoise support" select BR2_PACKAGE_LINENOISE helppackage/lua/lua.mk +2
-2@@ -31,12 +31,12 @@ else LUA_MYLIBS += -ldl endif -ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_READLINE),y) +ifeq ($(BR2_PACKAGE_LUA_READLINE),y) LUA_DEPENDENCIES = readline ncurses LUA_MYLIBS += -lreadline -lhistory -lncurses LUA_CFLAGS += -DLUA_USE_READLINE else -ifeq ($(BR2_PACKAGE_LUA_INTERPRETER_LINENOISE),y) +ifeq ($(BR2_PACKAGE_LUA_LINENOISE),y) LUA_DEPENDENCIES = linenoise LUA_MYLIBS += -llinenoise LUA_CFLAGS += -DLUA_USE_LINENOISE
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v4 7/20 manual: add virtual package tutorial
In reply to Yann E. MORINFrom: "[email protected]" <[email protected]>
The manual now features a new section with instructions about how to add a virtual package.
--- docs/manual/adding-packages-virtual.txt | 99 +++++++++++++++++++++++++++++++++ docs/manual/adding-packages.txt | 2 + 2 files changed, 101 insertions(+) create mode 100644 docs/manual/adding-packages-virtual.txt
docs/manual/adding-packages-virtual.txt new file +99 -0
@@ -0,0 +1,99 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[virtual-package-tutorial]] + +Virtual package tutorial +~~~~~~~~~~~~~~~~~~~~~~~~ + +In Buildroot, a virtual package is a package whose functionalities are +provided by one or more packages, referred to as 'providers'. The virtual +package management is an extensible mechanism allowing the user to choose +the provider used in the rootfs. + +For example, 'OpenGL ES' is an API for 2D and 3D graphics on embedded systems. +The implementation of this API is different for the 'Allwinner Tech Sunxi' and +the 'Texas Instruments OMAP35xx' plaftorms. So +libgles+ will be a virtual +package and +sunxi-mali+ and +ti-gfx+ will be the providers. + +In the following example, we will explain how to add a new virtual package +('something-virtual') and a provider for it ('some-provider'). + +First, let's create the virtual package. + +Virtual package's +Config.in+ file +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The +Config.in+ file of virtual package 'something-virtual' should contain: + +--------------------------- +01: config BR2_PACKAGE_HAS_SOMETHING_VIRTUAL +02: bool +03: +04: config BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL +05: depends on BR2_PACKAGE_HAS_SOMETHING_VIRTUAL +06: string +--------------------------- + +In this file, we declare two options, +BR2_PACKAGE_HAS_SOMETHING_VIRTUAL+ and ++BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL+, whose values will be used by the +providers. + +Virtual package's +*.mk+ file +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +The Makefile +package/something-virtual/something-virtual.mk+ should contain: + +--------------------------- +01: ################################################################################ +02: # +03: # something-virtual +04: # +05: ################################################################################ +06: +07: SOMETHING_VIRTUAL_SOURCE = +08: SOMETHING_VIRTUAL_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL)) +09: +10: ifeq ($(BR2_PACKAGE_HAS_SOMETHING_VIRTUAL),y) +11: ifeq ($(SOMETHING_VIRTUAL_DEPENDENCIES),) +12: $(error No something-virtual implementation selected. Configuration error.) +13: endif +14: endif +15: +16: $(eval $(generic-package)) +--------------------------- + +The Makefile is quite small as it will only check if a provider for the +virtual package has been selected. + +Provider's +Config.in+ file +^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +When adding a package as a provider, only the +Config.in+ file requires some +modifications. The +*.mk+ file should follow the Buildroot infrastructure with +no change at all. + +The +Config.in+ file of the package 'some-provider', which provides the +functionalities of 'something-virtual', should contain: + +--------------------------- +01: config BR2_PACKAGE_SOME_PROVIDER +02: bool "some-provider" +03: select BR2_PACKAGE_HAS_SOMETHING_VIRTUAL +04: help +05: This is a comment that explains what some-provider is. +06: +07: http://foosoftware.org/some-provider/ +08: +09: if BR2_PACKAGE_SOME_PROVIDER +10: config BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL +11: default "some-provider" +12: endif +--------------------------- + +On line 3, we select +BR2_PACKAGE_HAS_SOMETHING_VIRTUAL+, and on line 11, we +set the value of +BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL+ to the name of the +provider, but only if it is selected. + +Of course, do not forget to add the proper build and runtime dependencies for +this package!
docs/manual/adding-packages.txt +2 -0
@@ -24,6 +24,8 @@ include::adding-packages-luarocks.txt[] include::adding-packages-perl.txt[] +include::adding-packages-virtual.txt[] + include::adding-packages-hooks.txt[] include::adding-packages-gettext.txt[]
Signature · 1 line
1.8.3.2
PATCH 7/20 manual: add virtual package tutorial
Quoted 9 lines · Yann E. MORIN
From: "eric.le.bihan.dev at free.fr" <[email protected]>
The manual now features a new section with instructions about how to add a virtual package.
Signed-off-by Eric Le Bihan <[email protected]>[yann.morin.1998 at free.fr: move down statement about provider's .mk]Signed-off-by "Yann E. MORIN" <[email protected]>Reviewed-by Samuel Martin <[email protected]>
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v4 8/20 packages: add infrastructure for virtual packages
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
The virtual-package infrastructure allows to easily define a virtual package in a single line:
$ cat package/some-virtual-package/some-virtual-package.mk
$(eval $(virtual-package))And that's all. :-)
Thanks to ?ric for his work on the manual, that prompted the idea for this virtual-package infrastructure! ;-)
--- package/Makefile.in | 1 + package/pkg-virtual.mk | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 package/pkg-virtual.mk
package/Makefile.in +1 -0
@@ -362,4 +362,5 @@ include package/pkg-cmake.mk include package/pkg-luarocks.mk include package/pkg-perl.mk include package/pkg-python.mk +include package/pkg-virtual.mk include package/pkg-generic.mk
package/pkg-virtual.mk new file +66 -0
66 lines not on this page · raw message
Signature · 1 line
1.8.3.2
PATCH 8/20 packages: add infrastructure for virtual packages
Quoted 62 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
The virtual-package infrastructure allows to easily define a virtual package in a single line:
$ cat package/some-virtual-package/some-virtual-package.mk $(eval $(virtual-package))And that's all. :-)
Thanks to ?ric for his work on the manual, that prompted the idea for this virtual-package infrastructure! ;-)
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Thomas De Schampheleire <[email protected]>Cc Mike Zick <[email protected]>Reviewed-by Samuel Martin <[email protected]>--- package/Makefile.in | 1 + package/pkg-virtual.mk | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 package/pkg-virtual.mkpackage/Makefile.in +1
-0@@ -362,4 +362,5 @@ include package/pkg-cmake.mk include package/pkg-luarocks.mk include package/pkg-perl.mk include package/pkg-python.mk +include package/pkg-virtual.mk include package/pkg-generic.mkpackage/pkg-virtual.mk new file +21
-0@@ -0,0 +1,66 @@ +################################################################################ +# Virtual package infrastructure +# +# This file implements an infrastructure that eases development of +# package .mk files for virtual packages. It should be used for all +# virtual packages. +# +# See the Buildroot documentation for details on the usage of this +# infrastructure +# +# In terms of implementation, this virtual infrastructure requires +# the .mk file to only call the 'virtual-package' macro. +# +################################################################################ + + +################################################################################ +# inner-virtual-package -- defines the dependency rules of the virtual +# package against its provider. +# +# argument 1 is the lowercase package name
package/pkg-virtual.mk line 31
Quoted 10 lines
package/pkg-virtual.mk new file +10
-0+# argument 2 is the uppercase package name, including an HOST_ prefix +# for host packages +# argument 3 is the uppercase package name, without the HOST_ prefix +# for host packages +# argument 4 is the type (target or host) +################################################################################ + +# Note: putting this comment here rather than in the define block, otherwise +# make would try to expand the $(error ...) in the comment, which is not +# really what we want.
That could be avoided by $$-quoting it inside the comment as well :-)
package/pkg-virtual.mk line 38
Quoted 7 lines
package/pkg-virtual.mk new file +7
-0+# We need to use second-expansion for the $(error ...) call, below, +# so it is not evaluated now, but as part of the generated make code. + +define inner-virtual-package + +# Ensure the virtual package has an implementation defined. +ifeq ($(BR2_PACKAGE_HAS_$(2)),y)
Even though it is not strictly necessary (it will anyway be eval'ed
immediately after expansion), I think it's better to consistently use $$ everywhere (except for $(1) etc. of course). Currently it's not done consistently in package-generic but it would be better to make it consistent here.
package/pkg-virtual.mk line 40
Quoted 2 lines
package/pkg-virtual.mk new file +2
-0+ifeq ($(call qstrip,$(BR2_PACKAGE_PROVIDES_$(2))),) +$$(error No implementation selected for virtual package $(1). Configuration error)
I think "Configuration error" is a bit vague, but I can't think of
anything better.
Quoted 7 lines
package/pkg-virtual.mk new file +7
-0+endif +endif + +# A virtual package does not have any source associated +$(2)_SOURCE = + +# This must be repeated from inner-generic-package, otherwise we get an empty
package/pkg-virtual.mk line 57
Quoted 10 lines
package/pkg-virtual.mk new file +10
-0+# _DEPENDENCIES +$(2)_DEPENDENCIES ?= $(filter-out host-toolchain $(1),\ + $(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES)))) + +# Add dependency against the provider +$(2)_DEPENDENCIES += $(call qstrip,$(BR2_PACKAGE_PROVIDES_$(2))) + +# Call the generic package infrastructure to generate the necessary +# make targets +$(call inner-generic-package,$(1),$(2),$(3),$(4))
I don't really see the need to call inner-generic-package here. Isn't it
sufficient to do:
ifeq ($$(BR2_PACKAGE_HAS_$(2)),y)
ifeq ($$(call qstrip,$$(BR2_PACKAGE_PROVIDES_$(2))),) $$(error No implementation selected for virtual package $(1). Configuration error)
endif
endif
$(1): $$(call qstrip,$$(BR2_PACKAGE_PROVIDES_$(2))
We don't need all the rest of the package infrastructure, do we? We
don't need to download any sources, we don't need legal info for the virtual package, etc. etc. There's also no need to create stamp files
package/pkg-virtual.mk line 66
Quoted 9 lines
package/pkg-virtual.mk new file +9
-0+ +endef + +################################################################################ +# virtual-package -- the target generator macro for virtual packages +################################################################################ + +virtual-package = $(call inner-virtual-package,$(pkgname),$(call UPPERCASE,$(pkgname)),$(call UPPERCASE,$(pkgname)),target) +host-virtual-package = $(call inner-virtual-package,host-$(pkgname),$(call UPPERCASE,host-$(pkgname)),$(call UPPERCASE,$(pkgname)),host)
Note that with the simplification above, you only need the first two
arguments to the inner-virtual-package macro.
Regards,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v4 8/20 packages: add infrastructure for virtual packages
Arnout, all,
On 2014-04-04 22:10 +0200, Arnout Vandecappelle spake thusly:
Quoted 3 lines · Yann E. MORIN
Quoted 2 lines
The virtual-package infrastructure allows to easily define a virtual package in a single line:
[--SNIP--]
Quoted 5 lines
package/pkg-virtual.mk line 31
Quoted 3 lines
package/pkg-virtual.mk new file +3
-0+# Note: putting this comment here rather than in the define block, otherwise +# make would try to expand the $(error ...) in the comment, which is not +# really what we want.That could be avoided by $$-quoting it inside the comment as well :-)
I've tried, but that's just ugly...
Quoted 5 lines
Quoted 5 lines
package/pkg-virtual.mk new file +5
-0+# We need to use second-expansion for the $(error ...) call, below, +# so it is not evaluated now, but as part of the generated make code. + +define inner-virtual-package +
Quoted 8 lines
package/pkg-virtual.mk line 38
Quoted 2 lines
package/pkg-virtual.mk new file +2
-0+# Ensure the virtual package has an implementation defined. +ifeq ($(BR2_PACKAGE_HAS_$(2)),y)Even though it is not strictly necessary (it will anyway be eval'ed
immediately after expansion), I think it's better to consistently use $$ everywhere (except for $(1) etc. of course). Currently it's not done consistently in package-generic but it would be better to make it consistent here.
OK.
Quoted 5 lines
Quoted 2 lines
+ifeq ($(call qstrip,$(BR2_PACKAGE_PROVIDES_$(2))),)
+$$(error No implementation selected for virtual package $(1). Configuration error)I think "Configuration error" is a bit vague, but I can't think of
anything better.
Well, that's mostly a developper's message. The message is here to ensure the developper does not forget to set the _PROVIDES option.
When the configuration options are properly set, the user will never see that error message.
Quoted 28 lines
Quoted 7 lines
package/pkg-virtual.mk new file +7
-0+endif +endif + +# A virtual package does not have any source associated +$(2)_SOURCE = + +# This must be repeated from inner-generic-package, otherwise we get an emptypackage/pkg-virtual.mk line 57
Quoted 10 lines
package/pkg-virtual.mk new file +10
-0+# _DEPENDENCIES +$(2)_DEPENDENCIES ?= $(filter-out host-toolchain $(1),\ + $(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES)))) + +# Add dependency against the provider +$(2)_DEPENDENCIES += $(call qstrip,$(BR2_PACKAGE_PROVIDES_$(2))) + +# Call the generic package infrastructure to generate the necessary +# make targets +$(call inner-generic-package,$(1),$(2),$(3),$(4))I don't really see the need to call inner-generic-package here. Isn't it
sufficient to do:ifeq ($$(BR2_PACKAGE_HAS_$(2)),y)
ifeq ($$(call qstrip,$$(BR2_PACKAGE_PROVIDES_$(2))),) $$(error No implementation selected for virtual package $(1). Configuration error)
endif
endif
Quoted 5 lines
$(1): $$(call qstrip,$$(BR2_PACKAGE_PROVIDES_$(2))
We don't need all the rest of the package infrastructure, do we? We
don't need to download any sources, we don't need legal info for the virtual package, etc. etc. There's also no need to create stamp files
I do not want o duplicate the logic in generic-package. For example:
- with the now-possible parallel build, all packages must depend on
'toolchain', which I'd have to add here;
- clean-for-rebuild on a virtual package will eventually trigger a
rebuild of all packages that depend on it (IIUC);
- show-dpeends and graph-depends are interesting for virtual packages;
- I can already think of a case where I'd need to run a post-install hook for a virtual package.
Quoted 4 lines
Quoted 4 lines
package/pkg-virtual.mk new file +4
-0+ +endef + +################################################################################
Quoted 8 lines
package/pkg-virtual.mk line 66
Quoted 5 lines
package/pkg-virtual.mk new file +5
-0+# virtual-package -- the target generator macro for virtual packages +################################################################################ + +virtual-package = $(call inner-virtual-package,$(pkgname),$(call UPPERCASE,$(pkgname)),$(call UPPERCASE,$(pkgname)),target) +host-virtual-package = $(call inner-virtual-package,host-$(pkgname),$(call UPPERCASE,host-$(pkgname)),$(call UPPERCASE,$(pkgname)),host)Note that with the simplification above, you only need the first two
arguments to the inner-virtual-package macro.
Maybe, but I would prefer we keep the same arguments when calling inner functions, so all types of packages are handled the same. If we are to add (or remove) an argument in the future, it will be much easier to do.
Plus the reasons expresed above.
Regards,
Yann E. MORIN.
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------. | Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: | | +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ | | +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no | | http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. | '------------------------------^-------^------------------^--------------------'
PATCH 8/20 packages: add infrastructure for virtual packages
Quoted 6 lines · Yann E. MORIN
Arnout, all,
On 2014-04-04 22:10 +0200, Arnout Vandecappelle spake thusly:
Quoted 3 lines · Yann E. MORIN
Quoted 2 lines
The virtual-package infrastructure allows to easily define a virtual package in a single line:
Quoted 8 lines
[--SNIP--]
Quoted 5 lines
package/pkg-virtual.mk line 31
Quoted 3 lines
package/pkg-virtual.mk new file +3
-0+# Note: putting this comment here rather than in the define block, otherwise +# make would try to expand the $(error ...) in the comment, which is not +# really what we want.That could be avoided by $$-quoting it inside the comment as well :-)
I've tried, but that's just ugly...
Well, if $$ is used everywhere there is also no need for the comment :-)
Quoted 68 lines
Quoted 14 lines
package/pkg-virtual.mk line 38
Quoted 8 lines
package/pkg-virtual.mk new file +7
-0+# We need to use second-expansion for the $(error ...) call, below, +# so it is not evaluated now, but as part of the generated make code. + +define inner-virtual-package + +# Ensure the virtual package has an implementation defined. +ifeq ($(BR2_PACKAGE_HAS_$(2)),y)Even though it is not strictly necessary (it will anyway be eval'ed
immediately after expansion), I think it's better to consistently use $$ everywhere (except for $(1) etc. of course). Currently it's not done consistently in package-generic but it would be better to make it consistent here.OK.
Quoted 5 lines
Quoted 2 lines
+ifeq ($(call qstrip,$(BR2_PACKAGE_PROVIDES_$(2))),)
+$$(error No implementation selected for virtual package $(1). Configuration error)I think "Configuration error" is a bit vague, but I can't think of
anything better.Well, that's mostly a developper's message. The message is here to ensure the developper does not forget to set the
_PROVIDESoption.When the configuration options are properly set, the user will never see that error message.
Quoted 28 lines
Quoted 7 lines
package/pkg-virtual.mk new file +7
-0+endif +endif + +# A virtual package does not have any source associated +$(2)_SOURCE = + +# This must be repeated from inner-generic-package, otherwise we get an emptypackage/pkg-virtual.mk line 57
Quoted 10 lines
package/pkg-virtual.mk new file +10
-0+# _DEPENDENCIES +$(2)_DEPENDENCIES ?= $(filter-out host-toolchain $(1),\ + $(patsubst host-host-%,host-%,$(addprefix host-,$($(3)_DEPENDENCIES)))) + +# Add dependency against the provider +$(2)_DEPENDENCIES += $(call qstrip,$(BR2_PACKAGE_PROVIDES_$(2))) + +# Call the generic package infrastructure to generate the necessary +# make targets +$(call inner-generic-package,$(1),$(2),$(3),$(4))I don't really see the need to call inner-generic-package here. Isn't it
sufficient to do:ifeq ($$(BR2_PACKAGE_HAS_$(2)),y)
ifeq ($$(call qstrip,$$(BR2_PACKAGE_PROVIDES_$(2))),) $$(error No implementation selected for virtual package $(1). Configuration error)
endif
endifQuoted 5 lines
$(1): $$(call qstrip,$$(BR2_PACKAGE_PROVIDES_$(2))
We don't need all the rest of the package infrastructure, do we? We
don't need to download any sources, we don't need legal info for the virtual package, etc. etc. There's also no need to create stamp filesI do not want o duplicate the logic in generic-package. For example:
- with the now-possible parallel build, all packages must depend on
'toolchain', which I'd have to add here;
Quoted 7 lines
- clean-for-rebuild on a virtual package will eventually trigger a
rebuild of all packages that depend on it (IIUC);- show-dpeends and graph-depends are interesting for virtual packages;
- I can already think of a case where I'd need to run a post-install hook for a virtual package.
OK, good points, thanks.
Regards,
Arnout
Quoted 23 lines
Quoted 13 lines
package/pkg-virtual.mk line 66
Quoted 10 lines
package/pkg-virtual.mk new file +9
-0+ +endef + +################################################################################ +# virtual-package -- the target generator macro for virtual packages +################################################################################ + +virtual-package = $(call inner-virtual-package,$(pkgname),$(call UPPERCASE,$(pkgname)),$(call UPPERCASE,$(pkgname)),target) +host-virtual-package = $(call inner-virtual-package,host-$(pkgname),$(call UPPERCASE,host-$(pkgname)),$(call UPPERCASE,$(pkgname)),host)Note that with the simplification above, you only need the first two
arguments to the inner-virtual-package macro.Maybe, but I would prefer we keep the same arguments when calling inner functions, so all types of packages are handled the same. If we are to add (or remove) an argument in the future, it will be much easier to do.
Plus the reasons expresed above.
Regards,
Yann E. MORIN.
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v4 9/20 manual: update the virtual package section with the new infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
--- docs/manual/adding-packages-virtual.txt | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-)
docs/manual/adding-packages-virtual.txt +10 -16
@@ -1,10 +1,10 @@ // -*- mode:doc; -*- // vim: set syntax=asciidoc: -[[virtual-package-tutorial]] +Infrastructure for virtual packages +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Virtual package tutorial -~~~~~~~~~~~~~~~~~~~~~~~~ +[[virtual-package-tutorial]] In Buildroot, a virtual package is a package whose functionalities are provided by one or more packages, referred to as 'providers'. The virtual
@@ -16,6 +16,9 @@ The implementation of this API is different for the 'Allwinner Tech Sunxi' and the 'Texas Instruments OMAP35xx' plaftorms. So +libgles+ will be a virtual package and +sunxi-mali+ and +ti-gfx+ will be the providers. ++virtual-package+ tutorial +^^^^^^^^^^^^^^^^^^^^^^^^^^ + In the following example, we will explain how to add a new virtual package ('something-virtual') and a provider for it ('some-provider').
@@ -42,7 +45,7 @@ providers. Virtual package's +*.mk+ file ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -The Makefile +package/something-virtual/something-virtual.mk+ should contain: +The +.mk+ for the virtual package should just evaluate the +virtual-package+ macro: --------------------------- 01: ################################################################################
@@ -51,20 +54,11 @@ The Makefile +package/something-virtual/something-virtual.mk+ should contain: 04: # 05: ################################################################################ 06: -07: SOMETHING_VIRTUAL_SOURCE = -08: SOMETHING_VIRTUAL_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL)) -09: -10: ifeq ($(BR2_PACKAGE_HAS_SOMETHING_VIRTUAL),y) -11: ifeq ($(SOMETHING_VIRTUAL_DEPENDENCIES),) -12: $(error No something-virtual implementation selected. Configuration error.) -13: endif -14: endif -15: -16: $(eval $(generic-package)) +07: $(eval $(virtual-package)) --------------------------- -The Makefile is quite small as it will only check if a provider for the -virtual package has been selected. +The ability to have target and host packages is also available, with the ++host-virtual-package+ macro. Provider's +Config.in+ file ^^^^^^^^^^^^^^^^^^^^^^^^^^^
Signature · 1 line
1.8.3.2
PATCH 9/20 manual: update the virtual package section with the new infrastructure
Quoted 6 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Samuel Martin <[email protected]>Reviewed-by Samuel Martin <[email protected]>
PATCH 9/20 manual: update the virtual package section with the new infrastructure
In reply to Yann E. MORINQuoted 6 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Samuel Martin <[email protected]>Reviewed-by Samuel Martin <[email protected]>
Regards,
Arnout
Quoted 66 lines
--- docs/manual/adding-packages-virtual.txt | 26 ++++++++++---------------- 1 file changed, 10 insertions(+), 16 deletions(-)docs/manual/adding-packages-virtual.txt +10
-16@@ -1,10 +1,10 @@ // -*- mode:doc; -*- // vim: set syntax=asciidoc: -[[virtual-package-tutorial]] +Infrastructure for virtual packages +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Virtual package tutorial -~~~~~~~~~~~~~~~~~~~~~~~~ +[[virtual-package-tutorial]] In Buildroot, a virtual package is a package whose functionalities are provided by one or more packages, referred to as 'providers'. The virtual@@ -16,6 +16,9 @@ The implementation of this API is different for the 'Allwinner Tech Sunxi' and the 'Texas Instruments OMAP35xx' plaftorms. So +libgles+ will be a virtual package and +sunxi-mali+ and +ti-gfx+ will be the providers. ++virtual-package+ tutorial +^^^^^^^^^^^^^^^^^^^^^^^^^^ + In the following example, we will explain how to add a new virtual package ('something-virtual') and a provider for it ('some-provider').@@ -42,7 +45,7 @@ providers. Virtual package's +*.mk+ file ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -The Makefile +package/something-virtual/something-virtual.mk+ should contain: +The +.mk+ for the virtual package should just evaluate the +virtual-package+ macro: --------------------------- 01: ################################################################################@@ -51,20 +54,11 @@ The Makefile +package/something-virtual/something-virtual.mk+ should contain: 04: # 05: ################################################################################ 06: -07: SOMETHING_VIRTUAL_SOURCE = -08: SOMETHING_VIRTUAL_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_SOMETHING_VIRTUAL)) -09: -10: ifeq ($(BR2_PACKAGE_HAS_SOMETHING_VIRTUAL),y) -11: ifeq ($(SOMETHING_VIRTUAL_DEPENDENCIES),) -12: $(error No something-virtual implementation selected. Configuration error.) -13: endif -14: endif -15: -16: $(eval $(generic-package)) +07: $(eval $(virtual-package)) --------------------------- -The Makefile is quite small as it will only check if a provider for the -virtual package has been selected. +The ability to have target and host packages is also available, with the ++host-virtual-package+ macro. Provider's +Config.in+ file ^^^^^^^^^^^^^^^^^^^^^^^^^^^
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v4 10/20 package/powervr: convert to the virtual-package infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
--- package/powervr/powervr.mk | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-)
package/powervr/powervr.mk +1 -10
@@ -4,13 +4,4 @@ # ################################################################################ -POWERVR_SOURCE = -POWERVR_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_POWERVR)) - -ifeq ($(BR2_PACKAGE_HAS_POWERVR),y) -ifeq ($(POWERVR_DEPENDENCIES),) -$(error No PowerVR implementation selected. Configuration error.) -endif -endif - -$(eval $(generic-package)) +$(eval $(virtual-package))
Signature · 1 line
1.8.3.2
PATCH v4 11/20 package/libgles: convert to the virtual-package infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
--- package/opengl/libgles/libgles.mk | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-)
package/opengl/libgles/libgles.mk +1 -10
@@ -4,13 +4,4 @@ # ################################################################################ -LIBGLES_SOURCE = -LIBGLES_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LIBGLES)) - -ifeq ($(BR2_PACKAGE_HAS_LIBGLES),y) -ifeq ($(LIBGLES_DEPENDENCIES),) -$(error No libGLES implementation selected. Configuration error.) -endif -endif - -$(eval $(generic-package)) +$(eval $(virtual-package))
Signature · 1 line
1.8.3.2
PATCH 11/20 package/libgles: convert to the virtual-package infrastructure
Quoted 8 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Thomas De Schampheleire <[email protected]>Cc Mike Zick <[email protected]>Reviewed-by Samuel Martin <[email protected]>
I tested this patch by building an image for RaspberryPi with Qt5. I also tested that the error message about missing provider is displayed when using a corrupted defconfig file.
PATCH v4 12/20 package/libegl: convert to the virtual-package infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
--- package/opengl/libegl/libegl.mk | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-)
package/opengl/libegl/libegl.mk +1 -10
@@ -4,13 +4,4 @@ # ################################################################################ -LIBEGL_SOURCE = -LIBEGL_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LIBEGL)) - -ifeq ($(BR2_PACKAGE_HAS_LIBEGL),y) -ifeq ($(LIBEGL_DEPENDENCIES),) -$(error No libEGL implementation selected. Configuration error.) -endif -endif - -$(eval $(generic-package)) +$(eval $(virtual-package))
Signature · 1 line
1.8.3.2
PATCH 12/20 package/libegl: convert to the virtual-package infrastructure
Quoted 8 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Thomas De Schampheleire <[email protected]>Cc Mike Zick <[email protected]>Reviewed-by Samuel Martin <[email protected]>
I tested this patch by building an image for RaspberryPi with Qt5. As for libgles, I tested error message display with a corrupted defconfig file.
PATCH v4 13/20 package/libopenmax: convert to the virtual-package infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
--- package/opengl/libopenmax/libopenmax.mk | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-)
package/opengl/libopenmax/libopenmax.mk +1 -10
@@ -4,13 +4,4 @@ # ################################################################################ -LIBOPENMAX_SOURCE = -LIBOPENMAX_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LIBOPENMAX)) - -ifeq ($(BR2_PACKAGE_HAS_LIBOPENMAX),y) -ifeq ($(LIBOPENMAX_DEPENDENCIES),) -$(error No libopenmax implementation selected. Configuration error.) -endif -endif - -$(eval $(generic-package)) +$(eval $(virtual-package))
Signature · 1 line
1.8.3.2
PATCH v4 14/20 package/libopenvg: convert to the virtual-package infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
--- package/opengl/libopenvg/libopenvg.mk | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-)
package/opengl/libopenvg/libopenvg.mk +1 -10
@@ -4,13 +4,4 @@ # ################################################################################ -LIBOPENVG_SOURCE = -LIBOPENVG_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LIBOPENVG)) - -ifeq ($(BR2_PACKAGE_HAS_LIBOPENVG),y) -ifeq ($(LIBOPENVG_DEPENDENCIES),) -$(error No libOpenVG implementation selected. Configuration error.) -endif -endif - -$(eval $(generic-package)) +$(eval $(virtual-package))
Signature · 1 line
1.8.3.2
PATCH v4 15/20 package/luainterpreter: convert to the virtual-package infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
--- package/luainterpreter/luainterpreter.mk | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-)
package/luainterpreter/luainterpreter.mk +1 -10
@@ -4,15 +4,6 @@ # ################################################################################ -LUAINTERPRETER_SOURCE = -LUAINTERPRETER_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_LUAINTERPRETER)) - LUAINTERPRETER_ABIVER = $(call qstrip,$(BR2_PACKAGE_LUAINTERPRETER_ABI_VERSION)) -ifeq ($(BR2_PACKAGE_HAS_LUAINTERPRETER),y) -ifeq ($(LUAINTERPRETER_DEPENDENCIES),) -$(error No lua interpreter implementation selected. Configuration error.) -endif -endif - -$(eval $(generic-package)) +$(eval $(virtual-package))
Signature · 1 line
1.8.3.2
PATCH v4 16/20 package/jpeg: convert to the virtual-package infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
Since this package is implemented via a choice rather than the usual separate-package providers, we only need BR2_PACKAGE_HAS_JPEG to be always defined when the 'jpeg' package is selected.
--- package/jpeg/Config.in | 3 +++ package/jpeg/jpeg.mk | 12 +----------- 2 files changed, 4 insertions(+), 11 deletions(-)
package/jpeg/Config.in +3 -0
@@ -30,6 +30,9 @@ config BR2_PACKAGE_JPEG_TURBO endchoice +config BR2_PACKAGE_HAS_JPEG + def_bool y + config BR2_PACKAGE_PROVIDES_JPEG string default "libjpeg" if BR2_PACKAGE_LIBJPEG
package/jpeg/jpeg.mk +1 -11
@@ -4,14 +4,4 @@ # ################################################################################ -JPEG_SOURCE = -JPEG_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_JPEG)) - -ifeq ($(JPEG_DEPENDENCIES),) -define JPEG_CONFIGURE_CMDS - echo "No JPEG implementation defined. Configuration error" - exit 1 -endef -endif - -$(eval $(generic-package)) +$(eval $(virtual-package))
Signature · 1 line
1.8.3.2
PATCH v4 17/20 package/cryptodev: convert to the virtual-package infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
Since this package is implemented via a choice rather than the usual separate-package providers, we only need BR2_PACKAGE_HAS_CRYPTODEV to be always defined when the 'cryptodev' package is selected.
--- package/cryptodev/Config.in | 3 +++ package/cryptodev/cryptodev.mk | 12 +----------- 2 files changed, 4 insertions(+), 11 deletions(-)
package/cryptodev/Config.in +3 -0
@@ -37,6 +37,9 @@ config BR2_PACKAGE_OCF_LINUX endchoice +config BR2_PACKAGE_HAS_CRYPTODEV + def_bool y + config BR2_PACKAGE_PROVIDES_CRYPTODEV string default "cryptodev-linux" if BR2_PACKAGE_CRYPTODEV_LINUX
package/cryptodev/cryptodev.mk +1 -11
@@ -4,14 +4,4 @@ # ################################################################################ -CRYPTODEV_SOURCE = -CRYPTODEV_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_CRYPTODEV)) - -ifeq ($(CRYPTODEV_DEPENDENCIES),) -define CRYPTODEV_CONFIGURE_CMDS - echo "No CRYPTODEV implementation defined. Configuration error" - exit 1 -endef -endif - -$(eval $(generic-package)) +$(eval $(virtual-package))
Signature · 1 line
1.8.3.2
PATCH v4 18/20 package/udev: convert to the virtual-package infrastructure
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
--- package/udev/udev.mk | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-)
package/udev/udev.mk +1 -10
@@ -4,13 +4,4 @@ # ################################################################################ -UDEV_SOURCE = -UDEV_DEPENDENCIES = $(call qstrip,$(BR2_PACKAGE_PROVIDES_UDEV)) - -ifeq ($(BR2_PACKAGE_HAS_UDEV),y) -ifeq ($(UDEV_DEPENDENCIES),) -$(error No Udev implementation selected. Configuration error) -endif -endif - -$(eval $(generic-package)) +$(eval $(virtual-package))
Signature · 1 line
1.8.3.2
PATCH 18/20 package/udev: convert to the virtual-package infrastructure
Quoted 7 lines · Yann E. MORIN
From: "Yann E. MORIN" <[email protected]>
Signed-off-by "Yann E. MORIN" <[email protected]>Cc Eric Le Bihan <[email protected]>Cc Thomas Petazzoni <[email protected]>Cc Thomas De Schampheleire <[email protected]>Cc Mike Zick <[email protected]>
I tested this patch by building QEMU x86 images using eudev or systemd as providers.
PATCH v4 19/20 virtual-package: fake a version string for virtual packages
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
--- package/pkg-virtual.mk | 4 ++++ 1 file changed, 4 insertions(+)
package/pkg-virtual.mk +4 -0
@@ -44,6 +44,10 @@ endif # A virtual package does not have any source associated $(2)_SOURCE = +# Fake a version string, so it looks nicer in the build log +$(3)_VERSION = virtual +HOST_$(3)_VERSION = virtual + # This must be repeated from inner-generic-package, otherwise we get an empty # _DEPENDENCIES $(2)_DEPENDENCIES ?= $(filter-out host-toolchain $(1),\
Signature · 1 line
1.8.3.2
PATCH v4 20/20 FOO: tentative target and host virt packages
In reply to Yann E. MORINFrom: "Yann E. MORIN" <[email protected]>
NOT TO BE APPLIED. Just samples to test virtual packages.
NOT SOB by me
--- package/Config.in | 4 ++++ package/foo-prov/Config.in | 15 +++++++++++++++ package/foo-prov/foo-prov.mk | 13 +++++++++++++ package/foo-user/Config.in | 7 +++++++ package/foo-user/foo-user.mk | 16 ++++++++++++++++ package/foo-virt/Config.in | 13 +++++++++++++ package/foo-virt/foo-virt.mk | 2 ++ 7 files changed, 70 insertions(+) create mode 100644 package/foo-prov/Config.in create mode 100644 package/foo-prov/foo-prov.mk create mode 100644 package/foo-user/Config.in create mode 100644 package/foo-user/foo-user.mk create mode 100644 package/foo-virt/Config.in create mode 100644 package/foo-virt/foo-virt.mk
package/Config.in +4 -0
@@ -1,5 +1,9 @@ menu "Target packages" +source "package/foo-virt/Config.in" +source "package/foo-prov/Config.in" +source "package/foo-user/Config.in" + source "package/busybox/Config.in" menu "Audio and video applications"
package/foo-prov/Config.in new file +15 -0
@@ -0,0 +1,15 @@ +config BR2_PACKAGE_FOO_PROV + bool "foo-prov" + select BR2_PACKAGE_HAS_FOO_VIRT + +config BR2_PACKAGE_PROVIDES_FOO_VIRT + depends on BR2_PACKAGE_FOO_PROV + default "foo-prov" + +#config BR2_PACKAGE_HOST_FOO_PROV +# bool "host-foo-prov" +# select BR2_PACKAGE_HAS_HOST_FOO_VIRT +# +#config BR2_PACKAGE_PROVIDES_HOST_FOO_VIRT +# depends on BR2_PACKAGE_FOO_PROV +# default "host-foo-prov"
package/foo-prov/foo-prov.mk new file +13 -0
@@ -0,0 +1,13 @@ +FOO_PROV_VERSION = 1.1.2.3.5.8 +FOO_PROV_SOURCE = +HOST_FOO_PROV_SOURCE = + +define FOO_PROV_BUILD_CMDS + @echo FOO_PROV build cmd +endef +define HOST_FOO_PROV_BUILD_CMDS + @echo HOST_FOO_PROV build cmd +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package))
package/foo-user/Config.in new file +7 -0
@@ -0,0 +1,7 @@ +config BR2_PACKAGE_FOO_USER + bool "foo-user" + depends on BR2_PACKAGE_HAS_FOO_VIRT + +#config BR2_PACKAGE_HOST_FOO_USER +# bool "host-foo-user" +# depends on BR2_PACKAGE_HAS_HOST_FOO_VIRT
package/foo-user/foo-user.mk new file +16 -0
@@ -0,0 +1,16 @@ +FOO_USER_VERSION = 1.2.3 +FOO_USER_SOURCE = +HOST_FOO_USER_SOURCE = + +FOO_USER_DEPENDENCIES = foo-virt host-foo-user +define FOO_USER_BUILD_CMDS + @echo FOO_USER build cmd +endef + +HOST_FOO_USER_DEPENDENCIES = host-foo-virt +define HOST_FOO_USER_BUILD_CMDS + @echo HOST_FOO_USER build cmd +endef + +$(eval $(generic-package)) +$(eval $(host-generic-package))
package/foo-virt/Config.in new file +13 -0
@@ -0,0 +1,13 @@ +config BR2_PACKAGE_HAS_FOO_VIRT + bool + +config BR2_PACKAGE_PROVIDES_FOO_VIRT + depends on BR2_PACKAGE_HAS_FOO_VIRT + string + +#config BR2_PACKAGE_HAS_HOST_FOO_VIRT +# bool +# +#config BR2_PACKAGE_PROVIDES_HOST_FOO_VIRT +# depends on BR2_PACKAGE_HAS_HOST_FOO_VIRT +# string
package/foo-virt/foo-virt.mk new file +2 -0
@@ -0,0 +1,2 @@ +$(eval $(virtual-package)) +$(eval $(host-virtual-package))
Signature · 1 line
1.8.3.2