Cmake's foreach command includes forms
foreach(<loop_var> IN LISTS <lists>)
foreach(<loop_var> IN ITEMS <items>)
foreach(<loop_var> RANGE ...)
We get the lines to be parsed by
file(STRINGS "${filepath}" lines)
If in the parsed lyx-file there is a line
containing only the single word 'IN', or 'RANGE', then
the command
foreach(_l ${lines})
can create a syntax error (at least with cmake1.16)
In fact, in file pl_Additional.lyx:12913 happens to have
such a beast.
(cherry picked from commit 7b44280da4fc015a4a930c311cc6073cebacf738)
On Mac the inkscape binary is started by a wrapper script. This script changes the
working directory internally and fails to process files with relative path names.
The previous attempt to solve it was to pass the file names with absolute names
by prepending them with the $$p variable (representing the directory name of the files).
This broke the on screen conversion (used for SVGZ to PNG e.g. in the users guide)
because here the $$p variable is undefined.
Now the wrapper script of LyX which is used to locate the Inkscape.app bundle converts
the relative path names into absolute names and the $$p variable is removed from the
converter definitions for inkscape again.
(cherry picked from commit caa1dd2aeed97330e05c0e96ae7e5bb929b0866d)
Amend eec3d1eb,7568571a
We are trying to check if the resulting file after lyx2lyx
is compilable, we have to ensure that copying the original file
to the test directory does not mangle use_non_tex_fonts-entry.
(cherry picked from commit c9e62dec53aee97fff6dffcb6d8ef84331ba5c30)
Important if including data previously copied there.
Fixes test "export/doc/Additional_lyx22"
(cherry picked from commit 7568571a24e951df8f616a4e031be2b30857b2ed)
All that's changed here is just the file size due to some file optimization.
Fixes: #10626
(cherry picked from commit 186597b54683e99ae7adc9d0584801265224128e)
The main change here is that we need to delete LyX2.3.exe and
tex2lyx2.3.exe from the install directory, so they are not left
there (from previous, versioned installs).
The user can do this kind of thing if they wish, but we should not
do it on their behalf. (These commands were also run whether MiKTeX
or TeXLive was installed.)
These are not really right. Things are hardcoded that probably should
not be. These are marked (hopefully) with "# RKH" comments. Possibly
what's needed is another flag? Anyway, help welcome.
Since qt5_use_modules() is removed from QT5 (as spotted
by Jürgen Spitzmüller), we had to create own version
of this macro.
According to this page:
http://doc.qt.io/qt-5/cmake-manual.html
the way to replace use of qt5_use_modules() for module "_mod" and target "_target"
is to use
1.) cmake_minimum_required(VERSION 3.1.0)
2.) find_package(Qt5${_mod} CONFIG REQUIRED)
3.) target_link_libraries(${_target} Qt5::${_mod})
The last one sets all reguired libraries, compile flags and needed includes for the ${_target}
Disable possible warn about not known policy
Extend Clang compiler detection to cover Apple CLang
(cherry picked from commit d6b21e20e254c96d963c6ab4988ad635f8f4e44b)
(cherry picked from commit 72a2f922393f8029b658fffe3c5a2e3e2c81ac1d)
(cherry picked from commit 6343452a7397a5ac4b84af30d61c4d7fca5afbc1)
(cherry picked from commit cb08d4a879bf63222a4462308b614d3209607737)
(cherry picked from commit 1bf4d7b0fc2bc4c700e7cecc1e6e3c7faf4f03a5)