Skip to content

Add new virtual-package infrastructure (branch yem/virtual-packages)

Yann E. MORIN buildroot 9 versions – New

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v5 Latest21 patches 0 repliesNew
  2. v420 patches 0 repliesSuperseded
  3. v2 posting 4/40 of 17 patches 0 repliesSuperseded
Earlier versions · 6
VersionPostedPatchesRepliesStatus
v3 posting 2/20 of 19 patches0 repliesSuperseded
v3 posting 1/219 patches0 repliesSuperseded
v2 posting 3/40 of 17 patches0 repliesSuperseded
v2 posting 2/40 of 17 patches0 repliesSuperseded
v2 posting 1/417 patches0 repliesSuperseded
v1 RFC0 of 10 patches0 repliesSuperseded

Changes in v5 from the cover letter

- 'select LEGACY' on old options
- rebased on-top master

Patches in v5 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/21package/libgles: rename the _HAS and _PROVIDES variablespackage/cairo/cairo.mk package/freescale-imx/gpu-viv-bin-mx6q/Config.in package/gstreamer1/gst1-plugins-bad/Config.in +14 more+32 -320 replies
2/21package/libegl: rename the _HAS and _PROVIDES variablespackage/freescale-imx/gpu-viv-bin-mx6q/Config.in package/gstreamer1/gst1-plugins-bad/Config.in package/mesa3d/Config.in +13 more+31 -310 replies
3/21package/libopenmax: rename the _HAS and _PROVIDES variablespackage/bellagio/Config.in package/gstreamer1/gst-omx/Config.in package/opengl/libopenmax/Config.in +2 more+11 -110 replies
4/21package/libopenvg: rename the _HAS and _PROVIDES variablespackage/cairo/cairo.mk package/opengl/libopenvg/Config.in package/opengl/libopenvg/libopenvg.mk +1 more+8 -80 replies
5/21package/luainterpreter: rename the _HAS and _PROVIDES variablespackage/Config.in package/lbase64/Config.in package/lpeg/Config.in +18 more+26 -260 replies
6/21package/lua: rename config optionsConfig.in.legacy package/lua/Config.in package/lua/lua.mk+31 -70 replies
7/21manual: add virtual package tutorialdocs/manual/adding-packages-virtual.txt docs/manual/adding-packages.txt+101 -00 replies
8/21packages: add infrastructure for virtual packagespackage/Makefile.in package/pkg-virtual.mk+67 -00 replies
9/21manual: update the virtual package section with the new infrastructuredocs/manual/adding-packages-virtual.txt+10 -160 replies
10/21manual: add notes about depending on a virtual packagedocs/manual/adding-packages-virtual.txt+49 -00 replies
11/21package/powervr: convert to the virtual-package infrastructurepackage/powervr/powervr.mk+1 -100 replies
12/21package/libgles: convert to the virtual-package infrastructurepackage/opengl/libgles/libgles.mk+1 -100 replies
13/21package/libegl: convert to the virtual-package infrastructurepackage/opengl/libegl/libegl.mk+1 -100 replies
14/21package/libopenmax: convert to the virtual-package infrastructurepackage/opengl/libopenmax/libopenmax.mk+1 -100 replies
15/21package/libopenvg: convert to the virtual-package infrastructurepackage/opengl/libopenvg/libopenvg.mk+1 -100 replies
16/21package/luainterpreter: convert to the virtual-package infrastructurepackage/luainterpreter/luainterpreter.mk+1 -100 replies
17/21package/jpeg: convert to the virtual-package infrastructurepackage/jpeg/Config.in package/jpeg/jpeg.mk+4 -110 replies
18/21package/cryptodev: convert to the virtual-package infrastructurepackage/cryptodev/Config.in package/cryptodev/cryptodev.mk+4 -110 replies
19/21package/udev: convert to the virtual-package infrastructurepackage/udev/udev.mk+1 -100 replies
20/21virtual-package: fake a version string for virtual packagespackage/pkg-virtual.mk+4 -00 replies
21/21FOO: tentative target and host virt packagespackage/Config.in package/foo-prov/Config.in package/foo-prov/foo-prov.mk +4 more+70 -00 replies

Reviews trailers per patch

18 of 21 patches have a Reviewed-by or Acked-by.

PatchSamuel MartinArnout VandecappelleEric Le Bihan
1/21R-b A-b
2/21R-b
3/21R-b A-b
4/21R-b A-b
5/21R-b
6/21R-b
7/21R-b A-b
8/21R-b
9/21R-b A-b A-b
10/21
11/21R-b
12/21R-b T-b
13/21R-b T-b
14/21R-b
15/21R-b
16/21R-b
17/21R-b
18/21R-b
19/21T-b
20/21R-b
21/21

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 3 reviewers.

Read the v5 thread

Cover letter [Buildroot] [PATCH 0/21 v5] 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 20.

- patch 21 is not to be applied. It contains only example virtual packages, to test the implementation.

Changes v4 -> v5:
- 'select LEGACY' on old options
- rebased on-top master

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.

The following changes since commit 1be95896dde41c668e1c884db704b0da2ea360c9:

Revert "flex: Version bump 2.5.39" (2014-04-05 15:21:36 +0200)

are available in the git repository at:

git://gitorious.org/buildroot/buildroot.git yem/virtual-packages

for you to fetch changes up to e747107039b46170ebe818191b860cc98e5b9932:

FOO: tentative target and host virt packages (2014-04-05 17:05:12 +0200)

----------------------------------------------------------------
Yann E. MORIN (20):
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
manual: add notes about depending on a virtual package 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                                 |  24 ++++
 docs/manual/adding-packages-virtual.txt          | 142 +++++++++++++++++++++++
 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/mesa3d/Config.in                         |   8 +-
 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 +-
 package/xbmc/Config.in                           |   4 +-
 64 files changed, 420 insertions(+), 188 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.  |
'------------------------------^-------^------------------^--------------------'