Hi Hans, On Thu, Sep 08, 2022 at 10:41:21AM +0200, Hans Verkuil wrote: > On 29/08/2022 03:34, Laurent Pinchart wrote: > > Hello, > > > > This mail (and hopefully mail thread) aims to prepare for the Media > > Summit 2022 discussion about finalizing the conversion of v4l-utils to > > meson. > > > > The original port of v4l-utils to meson was done by Ariel D'Alessandro > > (big thanks for that !) and posted to the linux-media mailing list in > > April 2022 ([1]). Another RFC version followed ([2]), and the series > > then graduated to non-RFC ([3]) with new versions following ([4], [5] > > and [6]) until v5 ([7]) in May 2021. I believe it is time to decide if > > we want to move to a more modern build system or stay for the foreseable > > future in the past (this statement should indicate my opinion on the > > subject :-)). > > > > I maintain a branch with the meson integration that I keep rebasing on > > top of the v4l-utils master branch. You can find it at > > > > git://linuxtv.org/pinchartl/v4l-utils.git meson > > > > I have also just posted the latest version of the integration patches in > > a v6 ([8]). > > > > I have been using the meson integration for about 2 years now, and it > > has provided me with a much smoother experience than autoconf, both for > > native builds and cross builds. Long gone are the day where I had to > > fight autoconf and hack various Makefile.am to comment out pieces of the > > tree that would fail to compile properly and wouldn't want to get > > disabled through autoconf. These issues are most likely due to > > shortcomings in the autoconf usage in v4l-utils than problems with > > autoconf and automake themselves, but I quickly gave up on trying to fix > > that as meson just worked out of the box as intended. > > > > This being said, I won't pretend that the current implementation would > > work perfectly for everybody. I twould thus like to get feedback on how > > to move forward. > > > > 1. Is there a general agreement that replacing autoconf is a good idea, > > provided that any technical issue in the proposed meson implementation > > (if any) can be fixed ? Or would it require fighting ophidiophobia and > > other non-technical issues that would make it a lost battle from the > > start ? > > I did a quick check to see if it handles setting the date/build/sha > correctly for some of the utilities I maintain (i.e. v4l2/cec-compliance > needs to show the SHA of the commit it was built from), and that seems to > be OK. > > Given the fact that it is better at cross-compiling I have no objection > to switching over. > > It should be a complete switch, though. It's one or the other, not both. I agree, maintaining both would increase the maintenance burden and guarantee that bugs would creep in over time. > If we do this, then I think we should try and prevent adding new libs > or applications for a bit (one kernel cycle?) to make it easy to revert > if we run into unexpected problems. And also bump the version number > and ask Gregor to check that it builds fine for debian. I'm fine with that. Maintaining a meson branch on top of v4l-utils has been relatively low effort, there were occasional additions to v4l-utils, but they were easy to handle. I would think that reverting would be equally easy, if needed. I will also be there to help addressing any bug in the build system. > > 2. What are the technical issues that still need to be solved (if any) > > to replace autoconf with meson ? > > > > There's no need to wait for the media summit to start answering those > > questions, if we can resolve the issue before meeting face to face, > > we'll have more time to discuss other questions :-) > > > > [1] https://lore.kernel.org/linux-media/20200408195611.55421-1-ariel@xxxxxxxxxxxxxxxxxxxx > > [2] https://lore.kernel.org/linux-media/20200429151639.5003-1-ariel@xxxxxxxxxxxxxxxxxxxx > > [3] https://lore.kernel.org/linux-media/20200618133303.28676-1-ariel@xxxxxxxxxxxxxxxxxxxx > > [4] https://lore.kernel.org/linux-media/20200721151434.115651-1-ariel@xxxxxxxxxxxxxxxxxxxx > > [5] https://lore.kernel.org/linux-media/20200806155519.79748-1-ariel@xxxxxxxxxxxxxxxxxxxx > > [6] https://lore.kernel.org/linux-media/20210317172227.620584-1-ariel.dalessandro@xxxxxxxxxxxxx > > [7] https://lore.kernel.org/linux-media/20210512184946.102863-1-ariel.dalessandro@xxxxxxxxxxxxx > > [8] https://lore.kernel.org/linux-media/20220829013327.5791-1-laurent.pinchart@xxxxxxxxxxxxxxxx -- Regards, Laurent Pinchart