Monocultures are bad [Was: Re: [PATCH] build: Extract trusted-firmware-a.mk]

Petr Štetiar ynezz at true.cz
Thu Oct 15 06:28:09 EDT 2020


Vladimir Vid <vladimir.vid at sartura.hr> [2020-10-12 19:23:37]:

Hi,

> I agree this was not the best solution but it works, and if you ask me I
> would prefer functionality on some platforms rather that none.

1. I've provided feedback, asked your for changes, I was ignored
2. It doesn't work for the project as I've pointed out
3. Either provide suitable upstream solution or keep it in your local tree

BTW why do you even ask for the review in the first place? Can't Luka just
simply push it directly? What's the difference here? Reviewer's time. We
could've spent that precious time on reviewing and merging other
contributions.

> We could always argue on that one. I don't personally use Mac, but from the
> build guide I found it seems that a support was always a nightmare:
> https://forum.archive.openwrt.org/viewtopic.php?id=34676;
> https://openwrt.org/docs/guide-developer/buildroot.exigence.macosx

It depends on your point of view. From my point of view it's not nightmare, I
find it quite useful and informative. All of our GNUisms and bashisms.

AFAIK Felix/nbd and Kevin/ldir (both core developers) are using macOS as their
daily drivers.  FYI ldir has even provided his macMini as GitLab runner for CI
purposes, there is an effort to have FreeBSD CI[1] and there are still some
people interested in the FreeBSD[2].

1. https://builds.sr.ht/~aparcar/job/235519
2. https://github.com/openwrt/openwrt/pull/3110

> If you check step 4 from the first link:
> 
> *Modifying Makefiles (e2fsprogs really doesn't like 64-bit Lion, and qemu
> refuses to compile)*

There is some misunderstanding here, we're talking about the main/core/master
repository.  Feeds (like the one in your example) might have different goals
and usually different set of rules as well.

> Does that mean we should also get rid of e2fsprogs and qemu as well because
> they don't play nice with MacOS?

I'm not the one to decide that, it's feed which has different maintainers,
goals and rules.

> Alternatively, I managed to find a way to get linaro working for both
> FreeBSD and MacOS (on the first Google page!) in a couple of minutes and it
> looks like a much less hassle than the core setup from the link above,
> so I wouldn't agree that it can't be done.

Good news, but I'm quite puzzled, why you didn't fixed it with that 1st page
solution when I asked you to do so?

> I agree with Andre's suggestions, we could simply mark the package broken
> for non-linux platforms since ATF build is optional anyway and it would not
> break anything.

I don't agree. This would simply become precedent which might others try to
follow and this would then turn into maintenance and support nightmare.

>From my point of view, OpenWrt project is not some random vendor tree, rather
opposite. So the contribution either fits into the project or it should stay
in the vendor tree until vendor has resources to upstream that stuff properly.

So I see following solutions:

 1. GNU/Linux host build system becomes mandatory (unlikely)
 2. The package gets fixed so everyone can use it (would be nice)
 3. The package gets removed from the tree

-- ynezz



More information about the openwrt-devel mailing list