mesonbuild / mesonwrap

Meson wraps service and tools, please use https://github.com/mesonbuild/wrapdb for wraps issues
https://wrapdb.mesonbuild.com
Apache License 2.0
26 stars 7 forks source link

Wrapdb entrie that point to external git repos #135

Open nirbheek opened 4 years ago

nirbheek commented 4 years ago

We (CC: @tp-m @MathieuDuponchelle) maintain a bunch of meson ports of projects that don't seem to be interested in the ports in gstreamer. We haven't submitted them to wrapdb because it would double our maintenance burden.

Maybe we can have a way to add wrapdb entries that point to a tag in an external git repository? Would also be a good way to transition people from wrapdb to upstream if/when build files get merged upstream.

https://gitlab.freedesktop.org/gstreamer/meson-ports (actually we need to prune libsrtp from there and probably add opus)

jpakkane commented 4 years ago

Does the extra maintenance burden come from getting them on to wrapdb or the continued maintenance after that? One would think that once the wraps are there other people could contribute so it would reduce the burden. Or do you need them to be in some special format or with features that would not go well with wrapdb inclusion?

nirbheek commented 4 years ago

Multiple reasons:

  1. wrapdb can only contain meson build files, not changes to existing source files which are almost always needed to fix bugs when trying to make a 1-1 and cross-platform port (most wrapdb entries are partial/incomplete ports)

  2. We maintain two types of branches: (a) ff-only fixed branches on top of releases (b) constantly-rebased branches on top of the upstream master branch. This makes it easier to keep things up-to-date.

  3. Maintaining each branch is usually just git push, submission to wrapdb is a different set of steps which is extra work, especially when trying to bump to a new release

jpakkane commented 4 years ago

most wrapdb entries are partial/incomplete ports

This is true, but we really should try to do better here. In the optimal case upstream should be able to just take the wrapdb files, put them in their repo and be 95% done. It's a lot of work, though.

nirbheek commented 4 years ago

Yes, and sometimes even if you do the work, upstream is just not interested, or is hostile, or it takes them a long time to merge it. Usually takes months, and in that time if you can't even publish the port somewhere for usage, it's a complete non-starter.