[meta-games,v2] neverball: Add neverball

Message ID 20211119220833.133927-1-marex@denx.de
State New
Headers show
Series [meta-games,v2] neverball: Add neverball | expand

Commit Message

Marek Vasut Nov. 19, 2021, 10:08 p.m. UTC
This is an interactive game with a rolling ball, useful for
testing whether point sprites work correctly in GPU drivers.

The user should install both neverball neverball-data packages.

Signed-off-by: Marek Vasut <marex@denx.de>
---
V2: Use cp -R --no-dereference --preserve=mode,links
---
 recipes-games/neverball/neverball-data_git.bb | 16 ++++++++++++
 recipes-games/neverball/neverball.inc         | 26 +++++++++++++++++++
 recipes-games/neverball/neverball_git.bb      | 16 ++++++++++++
 3 files changed, 58 insertions(+)
 create mode 100644 recipes-games/neverball/neverball-data_git.bb
 create mode 100644 recipes-games/neverball/neverball.inc
 create mode 100644 recipes-games/neverball/neverball_git.bb

Comments

Khem Raj Nov. 20, 2021, 1:12 a.m. UTC | #1
On 11/19/21 2:08 PM, Marek Vasut wrote:
> This is an interactive game with a rolling ball, useful for
> testing whether point sprites work correctly in GPU drivers.
> 
> The user should install both neverball neverball-data packages.
> 
> Signed-off-by: Marek Vasut <marex@denx.de>
> ---
> V2: Use cp -R --no-dereference --preserve=mode,links
> ---
>   recipes-games/neverball/neverball-data_git.bb | 16 ++++++++++++
>   recipes-games/neverball/neverball.inc         | 26 +++++++++++++++++++
>   recipes-games/neverball/neverball_git.bb      | 16 ++++++++++++

hmm, these recipes should belong to a layer, perhaps meta-oe or 
meta-multimedia

>   3 files changed, 58 insertions(+)
>   create mode 100644 recipes-games/neverball/neverball-data_git.bb
>   create mode 100644 recipes-games/neverball/neverball.inc
>   create mode 100644 recipes-games/neverball/neverball_git.bb
> 
> diff --git a/recipes-games/neverball/neverball-data_git.bb b/recipes-games/neverball/neverball-data_git.bb
> new file mode 100644
> index 0000000..b520f58
> --- /dev/null
> +++ b/recipes-games/neverball/neverball-data_git.bb
> @@ -0,0 +1,16 @@
> +require neverball.inc
> +
> +inherit allarch
> +
> +DEPENDS:append = " jpeg-native libpng-native libsdl2-native"
> +
> +do_compile() {
> +	oe_runmake CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS} -I${STAGING_INCDIR_NATIVE}/SDL2/" LDFLAGS="${BUILD_LDFLAGS} -lpng" mapc sols
> +}
> +
> +do_install() {
> +	install -d -m 755 ${D}${datadir}/neverball
> +	cp -R --no-dereference --preserve=mode,links ${B}/data ${D}${datadir}/neverball/
> +}
> +
> +FILES:${PN}:append = " ${datadir}/neverball"
> diff --git a/recipes-games/neverball/neverball.inc b/recipes-games/neverball/neverball.inc
> new file mode 100644
> index 0000000..1ef2ec4
> --- /dev/null
> +++ b/recipes-games/neverball/neverball.inc
> @@ -0,0 +1,26 @@
> +SUMMARY = "Tilt the floor to roll a ball through an obstacle course before time runs out. Neverball is part puzzle game, part action game, and entirely a test of skill."
> +SECTION = "graphics"
> +HOMEPAGE = "https://neverball.org/"
> +
> +LICENSE = "GPLv2+"
> +LIC_FILES_CHKSUM = "file://LICENSE.md;md5=200ddba3b50e856bfb681a2b13dfb523"
> +
> +SRC_URI = "git://github.com/Neverball/neverball.git;protocol=https"
> +SRCREV = "bb6a99b14b1f81d071efd54cc0effdc517704b95"
> +PV = "1.6.0+git${SRCPV}"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit pkgconfig
> +
> +EXTRA_OEMAKE:append = " \
> +	ENABLE_FETCH=0 \
> +	ENABLE_OPENGLES=1 \
> +	DATADIR=/usr/share/neverball/data \
> +	LOCALEDIR=/usr/share/neverball/locale \
> +	"
> +
> +do_configure:append() {
> +	sed -i "s@sdl2-config@pkg-config sdl2@" ${S}/Makefile
> +	sed -i "s@libpng-config@pkg-config libpng@" ${S}/Makefile
> +}
> diff --git a/recipes-games/neverball/neverball_git.bb b/recipes-games/neverball/neverball_git.bb
> new file mode 100644
> index 0000000..5e2c358
> --- /dev/null
> +++ b/recipes-games/neverball/neverball_git.bb
> @@ -0,0 +1,16 @@
> +require neverball.inc
> +
> +DEPENDS:append = " gettext-native virtual/libgles1 virtual/libintl libvorbis jpeg libpng libsdl2 libsdl2-ttf"
> +
> +do_compile() {
> +	oe_runmake neverball neverputt locales desktops
> +}
> +
> +do_install() {
> +	install -d -m 755 ${D}${bindir}
> +	install -m 755 ${B}/neverball ${D}/${bindir}/
> +	install -m 755 ${B}/neverputt ${D}/${bindir}/
> +
> +	install -d -m 755 ${D}${datadir}/neverball
> +	cp -R --no-dereference --preserve=mode,links ${B}/locale ${D}${datadir}/neverball/
> +}
> 
> 
> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#94072): https://lists.openembedded.org/g/openembedded-devel/message/94072
> Mute This Topic: https://lists.openembedded.org/mt/87183365/1997914
> Group Owner: openembedded-devel+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
Marko Lindqvist Nov. 20, 2021, 6:42 a.m. UTC | #2
On Sat, 20 Nov 2021 at 03:12, Khem Raj <raj.khem@gmail.com> wrote:
>
> On 11/19/21 2:08 PM, Marek Vasut wrote:
> > This is an interactive game with a rolling ball, useful for
> > testing whether point sprites work correctly in GPU drivers.
> >
> > The user should install both neverball neverball-data packages.
> >
> > Signed-off-by: Marek Vasut <marex@denx.de>
> > ---
> > V2: Use cp -R --no-dereference --preserve=mode,links
> > ---
> >   recipes-games/neverball/neverball-data_git.bb | 16 ++++++++++++
> >   recipes-games/neverball/neverball.inc         | 26 +++++++++++++++++++
> >   recipes-games/neverball/neverball_git.bb      | 16 ++++++++++++
>
> hmm, these recipes should belong to a layer, perhaps meta-oe or
> meta-multimedia

 I think this was meant for meta-games: https://github.com/cazfi/meta-games


 - ML
Marko Lindqvist Nov. 20, 2021, 6:53 a.m. UTC | #3
Branch parameter is missing:

WARNING: /work/openembedded/meta-games/recipes-games/neverball/neverball-data_git.bb:
URL: git://github.com/Neverball/neverball.git;protocol=https does not
set any branch parameter. The future default branch used by tools and
repositories is uncertain and we will therefore soon require this is
set in all git urls.




 - ML


 - ML
Khem Raj Nov. 20, 2021, 2:51 p.m. UTC | #4
On Fri, Nov 19, 2021 at 10:42 PM Marko Lindqvist <cazfi74@gmail.com> wrote:
>
> On Sat, 20 Nov 2021 at 03:12, Khem Raj <raj.khem@gmail.com> wrote:
> >
> > On 11/19/21 2:08 PM, Marek Vasut wrote:
> > > This is an interactive game with a rolling ball, useful for
> > > testing whether point sprites work correctly in GPU drivers.
> > >
> > > The user should install both neverball neverball-data packages.
> > >
> > > Signed-off-by: Marek Vasut <marex@denx.de>
> > > ---
> > > V2: Use cp -R --no-dereference --preserve=mode,links
> > > ---
> > >   recipes-games/neverball/neverball-data_git.bb | 16 ++++++++++++
> > >   recipes-games/neverball/neverball.inc         | 26 +++++++++++++++++++
> > >   recipes-games/neverball/neverball_git.bb      | 16 ++++++++++++
> >
> > hmm, these recipes should belong to a layer, perhaps meta-oe or
> > meta-multimedia
>
>  I think this was meant for meta-games: https://github.com/cazfi/meta-games

thanks, I missed that, I read meta-gnome :)

>
>
>  - ML

Patch

diff --git a/recipes-games/neverball/neverball-data_git.bb b/recipes-games/neverball/neverball-data_git.bb
new file mode 100644
index 0000000..b520f58
--- /dev/null
+++ b/recipes-games/neverball/neverball-data_git.bb
@@ -0,0 +1,16 @@ 
+require neverball.inc
+
+inherit allarch
+
+DEPENDS:append = " jpeg-native libpng-native libsdl2-native"
+
+do_compile() {
+	oe_runmake CC="${BUILD_CC}" CFLAGS="${BUILD_CFLAGS} -I${STAGING_INCDIR_NATIVE}/SDL2/" LDFLAGS="${BUILD_LDFLAGS} -lpng" mapc sols
+}
+
+do_install() {
+	install -d -m 755 ${D}${datadir}/neverball
+	cp -R --no-dereference --preserve=mode,links ${B}/data ${D}${datadir}/neverball/
+}
+
+FILES:${PN}:append = " ${datadir}/neverball"
diff --git a/recipes-games/neverball/neverball.inc b/recipes-games/neverball/neverball.inc
new file mode 100644
index 0000000..1ef2ec4
--- /dev/null
+++ b/recipes-games/neverball/neverball.inc
@@ -0,0 +1,26 @@ 
+SUMMARY = "Tilt the floor to roll a ball through an obstacle course before time runs out. Neverball is part puzzle game, part action game, and entirely a test of skill."
+SECTION = "graphics"
+HOMEPAGE = "https://neverball.org/"
+
+LICENSE = "GPLv2+"
+LIC_FILES_CHKSUM = "file://LICENSE.md;md5=200ddba3b50e856bfb681a2b13dfb523"
+
+SRC_URI = "git://github.com/Neverball/neverball.git;protocol=https"
+SRCREV = "bb6a99b14b1f81d071efd54cc0effdc517704b95"
+PV = "1.6.0+git${SRCPV}"
+
+S = "${WORKDIR}/git"
+
+inherit pkgconfig
+
+EXTRA_OEMAKE:append = " \
+	ENABLE_FETCH=0 \
+	ENABLE_OPENGLES=1 \
+	DATADIR=/usr/share/neverball/data \
+	LOCALEDIR=/usr/share/neverball/locale \
+	"
+
+do_configure:append() {
+	sed -i "s@sdl2-config@pkg-config sdl2@" ${S}/Makefile
+	sed -i "s@libpng-config@pkg-config libpng@" ${S}/Makefile
+}
diff --git a/recipes-games/neverball/neverball_git.bb b/recipes-games/neverball/neverball_git.bb
new file mode 100644
index 0000000..5e2c358
--- /dev/null
+++ b/recipes-games/neverball/neverball_git.bb
@@ -0,0 +1,16 @@ 
+require neverball.inc
+
+DEPENDS:append = " gettext-native virtual/libgles1 virtual/libintl libvorbis jpeg libpng libsdl2 libsdl2-ttf"
+
+do_compile() {
+	oe_runmake neverball neverputt locales desktops
+}
+
+do_install() {
+	install -d -m 755 ${D}${bindir}
+	install -m 755 ${B}/neverball ${D}/${bindir}/
+	install -m 755 ${B}/neverputt ${D}/${bindir}/
+
+	install -d -m 755 ${D}${datadir}/neverball
+	cp -R --no-dereference --preserve=mode,links ${B}/locale ${D}${datadir}/neverball/
+}