CMake: cofigure failure (Windows)

Kornel Benko kornel at lyx.org
Mon Nov 16 20:34:39 UTC 2020


Am Mon, 16 Nov 2020 19:45:15 +0100
schrieb Yu Jin <yu_jin at lyx.org>:

> Am So., 15. Nov. 2020 um 22:47 Uhr schrieb Kornel Benko <kornel at lyx.org>:
> 
> > Am Sun, 15 Nov 2020 22:01:16 +0100
> > schrieb Yu Jin <yu_jin at lyx.org>:
> >
> > > Am So., 15. Nov. 2020 um 21:28 Uhr schrieb Kornel Benko <kornel at lyx.org
> > >:
> > >
> > > > Am Sun, 15 Nov 2020 20:16:49 +0100
> > > > schrieb Yu Jin <yu_jin at lyx.org>:
> > > >
> > > > > Am So., 15. Nov. 2020 um 20:15 Uhr schrieb Yu Jin <yu_jin at lyx.org>:
> > > > > > I agree with CMAKE_PREFIX_PATH. I think that GNUWIN32_DIR was a
> > good
> > > > way
> > > > > > of handling that (I assume it was that way), because the
> > dependencies
> > > > are
> > > > > > needed anyway to run LyX and/or build the installer and we offer
> > them
> > > > for
> > > > > > download. May I ask why it got removed?
> > > > > > I mean it actually makes sense to add path to Perl to the
> > pathprefix,
> > > > but
> > > > > > it is an individual setting if the Windows PATH variable does not
> > > > contain
> > > > > > it. So I would need to make that setting in CMake anyway, so why
> > not
> > > > just
> > > > > > point it directly to GNUWIN32_DIR instead of Perl?
> > > > > >
> > > > > Sorry, I meant "I agree with the CMAKE_PREFIX_PATH part".
> > > >
> > > > I don't understand. The GNUWIN32_DIR is set at CMakeLists.txt:9 (as it
> > was
> > > > before), I
> > > > didn't remove this setting.
> > > >
> > >
> > > Oh, I see. Well CMake used to give an error saying "GNUWIN32_DIR" not
> > found
> > > if it was not explicitly specified in the CMake GUI. Now it is completely
> > > missing in the GUI and setting it manually does not change anything. I
> > > meant to ask about this change.
> > > But I just compared 2.3.x with master real quick, I think this find Perl
> > > thing is new, am I right?
> >
> > No, it is not new, only at different place. See (in 2.3.x)
> > development/checkurls/CMakeLists.txt:8
> >
> > > Because I can't find anything related to Perl in
> > > 2.3.x. I guess we should fix it like we do with Python:
> > >
> > > if(GNUWIN32_DIR)
> > >    list(APPEND CMAKE_PROGRAM_PATH "${GNUWIN32_DIR}/Python" )
> > > endif()
> > >
> > > For that we would need to restore the thing where CMake asks about
> > > GNUWIN32_DIR, because now, even if I specify it manually, I guess it will
> > > be overwritten at line 9. I don't know exactly how it was before, but
> > this
> > > line does not exist 2.3.x.
> >
> > git blame gives the answer:
> > 78a361778f2 (Thibaut Cuvelier       2020-08-29 22:58:23 +0200    9)
> > set(GNUWIN32_DIR
> > D:/LyX/lyx-unstable/lyx-windows-deps-msvc2017)
> >
> 
> Ok then, I guess I can try to make a patch, I just don't understand one
> thing. In 2.3.x when I initially run configure, it gives me an error that
> the GNUWIN32_DIR is missing, but it displays all the other options in the
> CMake GUI too. In master (if I delete the line 9) currently it only
> displays just a few options (I attached 2 screenshots), so I would need to
> specify GNUWIN32_DIR and then hit configure, then I will get another error
> and only then I see the other options. i mean I need to hit configure 2
> times instead of 1. In master it used to be the way it is in 2.3.x too not
> long ago, but it is not anymore. It is just a QOL change, but I want to ask
> if it is possible to restore the old behavior.

The error message states that it comes from development/cmake/modules/FindGNUWIN32.cmake.
This is _our_ Windows-file, so you are free to modify it to your liking.
At the moment the search is
	$ENV{PROGRAMFILES},
	"C:/"
	"D:/"
	"E:/"
	"F:/"
	"G:/"
Add here
	"D:/LyX/lyx-unstable/lyx-windows-deps-msvc2017"

If I understood, this directory should contain "gnuwin32" and "win32libs".

The call to determine GNUWIN32 in development/cmake/modules/LyXPaths.cmake:61 states
"REQUIRED", so the stop is here if not found.

	"include(LyXPaths)"

In master it is called before the options,
while in branch it is called after the options specs.

	Kornel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 488 bytes
Desc: Digitale Signatur von OpenPGP
URL: <http://lists.lyx.org/pipermail/lyx-devel/attachments/20201116/37e92237/attachment.asc>


More information about the lyx-devel mailing list