Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Yann E. MORIN" <yann.morin.1998@free.fr>
To: Bernd Kuhls <bernd@kuhls.net>
Cc: Julien Corjon <corjon.j@ecagroup.com>,
	Giulio Benetti <giulio.benetti@benettiengineering.com>,
	Mahyar Koshkouei <mahyar.koshkouei@gmail.com>,
	buildroot@buildroot.org
Subject: Re: [Buildroot] [PATCH 05/18] package/kodi: bump version to 21.0-Omega
Date: Sun, 7 Apr 2024 11:52:48 +0200	[thread overview]
Message-ID: <ZhJs8G5Uyf0Rs4ai@landeda> (raw)
In-Reply-To: <20240406073216.1054073-5-bernd@kuhls.net>

Berdn, All,

On 2024-04-06 09:32 +0200, Bernd Kuhls spake thusly:
> Added new dependency to libdisplay-info for gbm support:
> https://github.com/xbmc/xbmc/commit/ce9626479c1792210c7b7cc02c7dc4f819ace509
> 
> Added new required dependency to tinyxml2:
> https://github.com/xbmc/xbmc/commit/9e983ed0449aaf3007d8bfa3261056b120d84188

So, is the dependency to tinyxml still needed?

> Added new required dependency to libudfread: Since upstream commit
> https://github.com/xbmc/xbmc/commit/5f9b9cfa26f274e381e92d73cfa33fb55582436e
> kodi does not build anymore without libudfread.
> 
> Upstream removed the bundled groovy/apache commons binaries:
> https://github.com/xbmc/xbmc/commit/d6bc920e056baad7782f47b86cba85d1336bb134

Any reason why we can't make those additional host packages, e.g. like
add host-groovy, and then use the new -D options listed int hat commit,
to point kodi where they are installed in?

Also, I see you use sha256 hashes for those, but kodi uses sha512
hashes, so I think it would be better to use the same hashes as kodi, so
that we can check that indeed what we get is what kodi expects.

> - JsonSchemaBuilder fixes:
> 
> Upstream moved CMakeLists.txt to src/ subfolder:
> https://github.com/xbmc/xbmc/commit/7e87d98ca55c72fcbc9b8dadf2cb979a85732606
> 
> - TexturePacker fixes:
> 
> texturepacker now depends on c++17:
> https://github.com/xbmc/xbmc/commit/54bd6d7ab552a4ddc04d2595826457d8bfa864d5
> 
> Upstream moved CMakeLists.txt to src/ subfolder
> https://github.com/xbmc/xbmc/commit/e336a75f42d9c4efd3433f3fa6edd05309689deb
> 
> Due to this update we can remove all of our patches for texturepacker.
> 
> Set KODI_SOURCE_DIR variable to root directory of the source tarball,
> LibreELEC added something similar:
> https://github.com/LibreELEC/LibreELEC.tv/commit/70abdd27a22b22547060fcb00a2c70ea61721465

Stating "others do that as well" is not really a justification, although
it can hints that's the way to go.

In fact, the reason is simple: when building natively, outside of a meta
buildsystem like Buildroot, kodi builds its own tools as part of its
build process. TexturePacker needs cmake modules available from the top
of the Kopdi source tree, a source file in a sub-directory at the
top-level source tree, which itself needs includes from the same
sub-dir. The Kodi build process sets KODI_SOURCE_DIR so that
TexturePacker can fidn those files.

In Buildroot, as we cross-build, we build the tools explicitly, without
using the Kodi build process, and thus we must set that variable.

[--SNIP--]
> diff --git a/package/kodi/Config.in b/package/kodi/Config.in
> index 8ad9fdae78..885550a542 100644
> --- a/package/kodi/Config.in
> +++ b/package/kodi/Config.in
[--SNIP--]
> @@ -56,6 +57,7 @@ menuconfig BR2_PACKAGE_KODI
>  	depends on BR2_INSTALL_LIBSTDCPP
>  	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libass -> harfbuzz
>  	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # C++17
> +	depends on BR2_HOST_GCC_AT_LEAST_9 # C++17

It's not Kodi itself that needs host C++17, it's host-kodi-texturepacker
so the dependency needs to reflect that:

    depends on BR2_HOST_GCC_AT_LEAST_9  # host-kodi-texturepacker

(unless kodi itself needs it during its own build, of course, at which
point you'll need to expalin so in the commit log as well.)

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

  reply	other threads:[~2024-04-07  9:53 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-04-06  7:31 [Buildroot] [PATCH 01/18] package/freeswitch: fix build with ffmpeg 6.0 Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 02/18] package/ffmpeg: bump version to 6.1.1 Bernd Kuhls
2024-04-07  9:25   ` Yann E. MORIN
     [not found]   ` <ZhJmcptsEo41MP6G__17866.991232016$1712481939$gmane$org@landeda>
2024-04-07 10:42     ` Bernd Kuhls
2024-04-07 11:24       ` Yann E. MORIN
2024-04-07 11:32         ` Bernd Kuhls
2024-04-07 11:32           ` Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 03/18] package/ffmpeg: add optional support for libvpl Bernd Kuhls
2024-04-07  9:29   ` Yann E. MORIN
     [not found]   ` <ZhJnXDUGI80K38Np__8173.33832835487$1712482171$gmane$org@landeda>
2024-04-07 10:41     ` Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 04/18] package/bento4: bump version to 1.6.0-641-Omega Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 05/18] package/kodi: bump version to 21.0-Omega Bernd Kuhls
2024-04-07  9:52   ` Yann E. MORIN [this message]
     [not found]   ` <ZhJs8G5Uyf0Rs4ai__34546.5504725993$1712483606$gmane$org@landeda>
2024-04-07 11:29     ` Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 06/18] package/kodi-audiodecoder-*: mass version bump to Omega Bernd Kuhls
2024-04-07  9:57   ` Yann E. MORIN
     [not found]   ` <ZhJuDnF5x2UviN68__14164.349895303$1712483892$gmane$org@landeda>
2024-04-07 10:40     ` Bernd Kuhls
2024-04-07 11:19       ` Yann E. MORIN
2024-04-06  7:32 ` [Buildroot] [PATCH 07/18] package/kodi-audioencoder-*: " Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 08/18] package/kodi-imagedecoder-*: " Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 09/18] package/kodi-inputstream-adaptive: bump version to 21.4.4-Omega Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 10/18] package/kodi-inputstream-ffmpegdirect: bump version to 21.3.5-Omega Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 11/18] package/kodi-inputstream-rtmp: bump version to 21.1.0-Omega Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 12/18] package/kodi-peripheral-*: mass version bump to Omega Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 13/18] package/kodi-pvr-*: " Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 14/18] package/kodi-screensaver-*: " Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 15/18] package/kodi-skin-confluence: bump version Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 16/18] package/kodi-vfs-*: mass version bump to Omega Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 17/18] package/kodi-visualisation-*: " Bernd Kuhls
2024-04-06  7:32 ` [Buildroot] [PATCH 18/18] package/kodi: add optional support for pipewire Bernd Kuhls

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ZhJs8G5Uyf0Rs4ai@landeda \
    --to=yann.morin.1998@free.fr \
    --cc=bernd@kuhls.net \
    --cc=buildroot@buildroot.org \
    --cc=corjon.j@ecagroup.com \
    --cc=giulio.benetti@benettiengineering.com \
    --cc=mahyar.koshkouei@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox