Mailing List Archive

Configure errors after 40c6bac0
Recent commit 40c6bac0 made a change to the
configure script that presumes that the compilation
will be running in a git checkout (rather than a tar
archive as provided via the project's website, or
a github archive retrieval, both of which do not
include the various git artifacts) and results in a
message during configure of the form:

fatal: not a git repository (or any of the parent directories): .git

It would appear to also result in a wrong check for
the minimum Qt version at some point in the future
for Qt6 checks(*).

Using git processing inside configure has come
up before, and has previously been rejected.

Is this a change in the project's position on that
approach?

Thanks.


(*) It would seem that the check for minimum
Qt version needs to be performed after determining
which Qt major Qt version is determined based
on which qmake is being used.
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Configure errors after 40c6bac0 [ In reply to ]
On Fri, 2021-04-23 at 14:09 +0000, Gary Buhrmaster wrote:
> Recent commit 40c6bac0 made a change to the
> configure script that presumes that the compilation
> will be running in a git checkout (rather than a tar
> archive as provided via the project's website, or
> a github archive retrieval, both of which do not
> include the various git artifacts) and results in a
> message during configure of the form:
>
>     fatal: not a git repository (or any of the parent directories):
> .git
>
> It would appear to also result in a wrong check for
> the minimum Qt version at some point in the future
> for Qt6 checks(*).

Would you really have a branch with qt6 in the name but intentionally
compile it against the qt5 libraries? ;-)

I can move that check later to after the script determines which qmake
it will use.

> Using git processing inside configure has come
> up before, and has previously been rejected.

I was unaware of this history, so it was a while ago.


> Is this a change in the project's position on that
> approach?

Not intentionally.

Do you have a better recommendation for a heuristic for deciding
whether to check for the existence of qmake-qt6? Unconditionally
checking for its existence at this point isn't an option. Once all the
remaining qt6 issues in the code are fixed it that can be done, but it
will be a while.

The simplest fix for me would be to revert the change and require users
to explicitly pass the '--qmake=<blah>' option to compile with qt6.

David


_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Configure errors after 40c6bac0 [ In reply to ]
On Fri, Apr 23, 2021 at 2:40 PM David Hampton via mythtv-dev
<mythtv-dev@mythtv.org> wrote:

>

Ultimately, I am just trying to understand
the project's path so I can plan accordingly.

> Would you really have a branch with qt6 in the name but intentionally
> compile it against the qt5 libraries? ;-)

While I believe that assigning branch
names special meaning inside a
projects source code is a substantially
sub-optimal approach, if the project is
going to move in that direction I would
claim that it is incumbent on the project
to document those magic names in the
development guidelines and maintain
that list.

> I can move that check later to after the script determines which qmake
> it will use.

Given that the project is apparently targeting
to support both Qt5 and Qt6 compilations
(at least for some time) that would seen to be
a necessary path forward since one can
override the qmake (and one wants to make
the correct check for the correct major version).

> > Using git processing inside configure has come
> > up before, and has previously been rejected.
>
> I was unaware of this history, so it was a while ago.

Yes, it was a long time ago, and perhaps that is
no longer the operational plan (things change),
which is why I asked.

> Do you have a better recommendation for a heuristic for deciding
> whether to check for the existence of qmake-qt6? Unconditionally
> checking for its existence at this point isn't an option.

Of *course* it is an option. And while I
would think that It would not be a good
choice for the (likely very) few that have
installed both qt5 and qt6 development
environments today (for the compilation
will fail until all the other fixes are complete),
it is an option, and would presumably
require people with both qt5 and qt6
development software installed to start
adding in an explicit qmake specification.

But in any case, the project can choose
as they wish, which is why I asked if
these are new requirements going
forward.

> The simplest fix for me would be to revert the change and require users
> to explicitly pass the '--qmake=<blah>' option to compile with qt6.

While that would address my original
comment, you would presumably still
want to move the Qt version check
after determining which qmake you are
using at some point in the future (as you
proposed above), since eventually you
will (likely) want to require some Qt 6.x
version for a Qt 6 build (and not just > 5.9).


Thanks.
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Configure errors after 40c6bac0 [ In reply to ]
On 23/04/2021 15:39, David Hampton via mythtv-dev wrote:

> On Fri, 2021-04-23 at 14:09 +0000, Gary Buhrmaster wrote:
> Using git processing inside configure has come
>> up before, and has previously been rejected.
> I was unaware of this history, so it was a while ago.
>

The configure script should not assume it is part of a git repo because
many users and packagers, including the Ubuntu PPA builder scripts,
create a source tar ball and build from that. We also provide  source
tar balls that don't contain any of the git stuff so they would also
fail to build.


Paul H.

_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org
Re: Configure errors after 40c6bac0 [ In reply to ]
On 24/04/2021 18:59, Paul Harrison wrote:
> On 23/04/2021 15:39, David Hampton via mythtv-dev wrote:
>
>> On Fri, 2021-04-23 at 14:09 +0000, Gary Buhrmaster wrote:
>> Using git processing inside configure has come
>>> up before, and has previously been rejected.
>> I was unaware of this history, so it was a while ago.
>>
>
> The configure script should not assume it is part of a git repo because
> many users and packagers, including the Ubuntu PPA builder scripts,
> create a source tar ball and build from that. We also provide  source
> tar balls that don't contain any of the git stuff so they would also
> fail to build.
>

And that ^^^ is the technical reason why :)

Regards
Stuart
_______________________________________________
mythtv-dev mailing list
mythtv-dev@mythtv.org
http://lists.mythtv.org/mailman/listinfo/mythtv-dev
http://wiki.mythtv.org/Mailing_List_etiquette
MythTV Forums: https://forum.mythtv.org