Commit Graph

216 Commits

Author SHA1 Message Date
Kornel Benko
3a29ba795d Cmake build: Select use of interprocedural optimization
New cmake-option to explicit select/deselect the IPO
2019-12-17 13:59:52 +01:00
Kornel Benko
8181c88c28 Cmake build: Copy & paste error 2019-11-29 14:47:27 +01:00
Kornel Benko
5e436ce9e5 Cmake build: Consider for cmake versions <= 3.12 while searching for python
This partially reverts d17dfe6f
2019-11-28 21:51:47 +01:00
Kornel Benko
d17dfe6fb2 Cmake build: Replace use of deprecated module PythonInterp
Use find_package(Pytnon2 ..) and find_package(Python3 ...) instead

Patch from Patrick (pdvisschere@edpnet.be)
2019-11-28 15:09:11 +01:00
Kornel Benko
c9c86b4966 Cmake build: Remove warnings about deprecated policy CMP0069
Deprecated since cmake version 3.16
(Now explicitly enable/disable interprocedural optimization
if supported and not debugging)
2019-11-09 16:56:16 +01:00
Kornel Benko
e4d30dd7f6 Cmake build: Disable interprocedural optimization if debugging 2019-07-30 15:19:56 +02:00
Kornel Benko
e69a6661a5 Cmake build: Remove overwritten option 2019-07-13 23:56:38 +02:00
Jean-Marc Lasgouttes
1f90cd3b3f Make build: amend 6f2cd26103 (allow more compilers)
Allow gcc 4.7 and 4.8, but use boost regex

Allow visual studio 2015.
2019-06-29 16:48:06 +02:00
Kornel Benko
2a37ad9cce Cmake build: Amend e485102e, For python 3 require at least 3.5 2019-06-28 09:54:38 +02:00
Kornel Benko
6f2cd26103 Cmake build:Amend 44bbd0b0 and 22f59925
44bbd0b0: Get full version of gcc
22f59925: Remove support for gcc 4.6

Also Remove support for msvc without STD_REGEX
2019-06-13 09:18:40 +02:00
Kornel Benko
79d84fad0e Cmake build: Remove debug message 2019-06-12 19:31:46 +02:00
Kornel Benko
43c9ce2d90 Amend 03eadb1a, cmake-parsing of AC_INIT line changed 2019-06-12 19:27:58 +02:00
Kornel Benko
7d021a938c Cmake build: Use interprocedural optimization if possible
With gnu compilers this adds -flto and -fno-fat-lto-objects
to compiler and linker flags.
2019-04-22 18:53:49 +02:00
Kornel Benko
016c7d6260 Amend 4028eefe: Make callstack printing useful and optional
Added the option to cmake too
2019-02-26 09:50:58 +01:00
Kornel Benko
5e287500bf Cmake build: Fix some warnings with cmake3.13
Wrong set() syntax
2019-02-05 12:27:15 +01:00
Scott Kostyshak
e9384cb8d0 Amend 23041f53: remove extra parenthesis 2018-10-27 19:16:36 -04:00
Kornel Benko
23041f53ea Amend 4459603, MSVC versions >= 1915 allow std::regex 2018-10-27 20:51:57 +02:00
Kornel Benko
4459603b61 Allow std::regex for MSVC10 2018-10-25 10:14:49 +02:00
Richard Kimberly Heck
1ae013f816 Try to make Windows use a versioned directory for the user dir.
(cherry picked from commit 802fd7932b713ee80bf384facd45f45a5ac22de4)
(cherry picked from commit 4478451ea1)
2018-09-30 13:49:30 -04:00
Stephan Witt
1bf4d7b0fc Extend Clang compiler detection to cover Apple CLang
CMake 3.0 and above recognize that Apple Clang is a different compiler than upstream Clang and so it gets a different CMAKE_CXX_COMPILER_ID.
2018-06-12 22:43:03 +02:00
Kornel Benko
6343452a73 Cmake build: Disable possible warn about not known policy 2018-06-10 11:40:12 +02:00
Kornel Benko
72a2f92239 Cmake build: Simplify use of qt5 modules
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}
2018-06-09 23:59:47 +02:00
Kornel Benko
d6b21e20e2 Cmake build: Adapt to compile with qt5.11
Since qt5_use_modules() is removed from QT5 (as spotted
by Jürgen Spitzmüller), we had to create own version
of this macro.
2018-06-09 16:52:15 +02:00
Kornel Benko
08afacc239 Cmake build: Adapt use of some variables
1.) Rename LYX_PATCH_VERSION to LYX_RELEASE_VERSION.
  This matches the use in automake.
2.) Don't display LYX_DATE at configure time.
  This value is evaluated later at build time
2018-06-03 09:16:55 +02:00
Kornel Benko
933502f991 Cmake mingw build: Get rid of a cmake warning regarding policy CMP0020
For explanation see the output of 'cmake --help-policy CMP0020'
2018-05-14 17:29:45 +02:00
Kornel Benko
aed458f007 Cmake tests: New test for the outliner with beamer
Test idea from Pavel Šanda
Move insets down and up, then compare with expected latex output.
2018-01-14 13:47:27 +01:00
Kornel Benko
03b6ee9f06 Cmake build: Added handling for lyxrc.dist for Apple and Unix
Also added include path for magic.h, as found out by Joel Kulesza
2018-01-03 15:04:21 +01:00
Scott Kostyshak
c9817a4fb5 ctests: run URL tests at beginning
The URL tests can take a long time to complete. By running them at
the beginning, time can be saved when running the ctests in
parallel.

This saves around 10 minutes for me.
2017-12-24 01:02:12 -05:00
Kornel Benko
3b9705da19 Cmake build: Add option to use native file dialog also for linux 2017-11-26 18:50:53 +01:00
Uwe Stöhr
081a9035cf Win installer: big file cleanup
- update the file list in Makefile.am
- don't try to build it via CMake because this requires more than CMakeLists.txt. If it should nevertheless be built via CMake the .cmake files need to be rewritten from scratch
- remove unused and outdated files
- update  an SVG file
2017-11-20 21:05:16 +01:00
Kornel Benko
847c68960a Cmake build: Needed variable for creation of debian package
The variable CPACK_DEBIAN_PACKAGE_RELEASE has to be in the form
of "^[A-Za-z0-9.+~]+$". We will use the abbreviated commit revision for now.
Without this change cmake 3.10 emits error.
2017-10-07 10:47:17 +02:00
Kornel Benko
c2eb1a1a72 Add suffixed lyxconvert to cmake build.
This should amend f93ec4a, but is not tested on apple
2017-10-02 02:00:47 +02:00
Kornel Benko
82246b5109 Cmake build: Unconditionally create many install targets
Previously one needed to use '-D_LYX_INSTALL=ON' to be able to install
some targets. This change only creates rules to make installation possible for
the underlying toolset.

The setting is still needed to create the rules for manuals, lokalizations and
win32 install scripts.
2017-09-25 10:29:40 +02:00
Kornel Benko
854d7e1619 Windows only: A try to compile with LYX_CONSOLE again
The use of the value "FORCE" was wrong anyway, since LYX_CONSOLE
is of type "BOOL".
2017-08-18 12:07:03 +02:00
Kornel Benko
b5c2e02ebd Cmake build: Amend 2fe59ad, Ignore boost settings if we are using std-regex
Even in std-regex case we still need some includes from boost.
Therefore we also need an appropriate include path set.
2017-07-28 11:35:50 +02:00
Kornel Benko
2fe59adbc8 Cmake build: Ignore boost settings if we are using std-regex
External/included boost is only used for the component regex
2017-07-27 23:29:29 +02:00
Kornel Benko
0f881e202e Cmake build: Remove unnecessary duplication of c++ flags
Apparently cmake concatenates CMAKE_CXX_FLAGS to the Release and Debug flags
Also eliminated the mix of '-std=c++*' and '-std=gnu++*' flags
2017-07-27 13:33:17 +02:00
Jean-Marc Lasgouttes
9fe8190364 Make "devel mode" configurable at run time
Traditionally LyX behaves differently when the directive DEVEL_VERSION
is defined at compile time. This covers
* more detailed description of current position in status bar
* the help files are open in read/write mode
* more detailed debug output in the View Source panel

This patch introduces the new function devel-mode-toggle that allows
to use devel mode in stable releases, and vice versa.

The information is saved in the session file. The default is to
disable devel mode.

Remove all traces of DEVEL_VERSION in autoconf and cmake
2017-07-24 22:00:44 +02:00
Kornel Benko
ba0492faee Cmake build: Try to figure out at configure time which qt version to use
Selecting -DLYX_USE_QT=AUTO (which is the default now) will try
to figure out which QT-version to use.

The qt4 version will be used if it is installed and the installed qt5-version is <= 5.6
Otherwise use qt5 if it is installed.
2017-05-02 14:12:41 +02:00
Kornel Benko
0935f94f0d Cmake build: Correct suffixing on non-gcc-compilers
If the value LYX_PROGRAM_SUFFIX is not handled, we have to use
LYX_PACKAGE_SUFFIX.
The naming 'PACKAGE' in our sources is misleading, as it is used
for the name of the debian/rpm packages as well.
2017-05-02 08:16:00 +02:00
Kornel Benko
d74c43e7a3 Cmake build: Remove use of policies which will be deprecated in near future
In order to prevent unpleasant surprises later.
(Cmake 3.8 already emits now warnings here.)
2017-04-30 18:12:13 +02:00
Kornel Benko
0f3b1539e8 Cmake build: Prefer using pyton3 over python2 2017-04-24 17:48:59 +02:00
Kornel Benko
fb79d6ed4f Cmake build: Enable std_regex over boost_regex again 2017-04-24 17:47:39 +02:00
Kornel Benko
5d4db9dcf5 Cmake build: Set cache variables correctly
In case of LYX_EXTERNAL_MYTHES==AUTO, the setting never made it into cache.
2017-03-25 12:43:53 +01:00
Kornel Benko
5d3d26b024 Cmake build: Adapt handling of mytheslib to automek behaviour
The added cmake-parameter is:
  -DLYX_EXTERNAL_MYTHES=<value>
where <value> is one of
  AUTO	(Default) Search first on system for mythes (lib and include)
  ON	Use installed only (errors if not installed)
  OFF	Compile the provided source in 3rdparty
2017-03-07 14:27:08 +01:00
Kornel Benko
15babdc0f1 Amend 0e50ad8 'move mythes sources to 3rdparty' for cmake build. 2017-03-06 19:31:23 +01:00
Kornel Benko
e78e58a7de Cmake build: Shuffle code around. 2016-09-12 11:04:14 +02:00
Kornel Benko
4f1095cdbc Cmake build: Specify the correct value of 'PACKAGE' define in config.h
This was wrong in case where no program suffix was allowed
Spotted by Scott.
2016-08-03 12:09:04 +02:00
Kornel Benko
7eea0b6fa8 Cmake build: Added code to compile with QT5.7
QT5.7 cmake config files explicitly instruct cmake to use `-std=gnu++11`.
This is not the same as is found by our FindCXX11Compiler.cmake,
which leads to compilation errors.
Here we overrule the setting.

Thanks to helpfull hand from Brad King <brad.king@kitware.com>
2016-07-15 10:37:18 +02:00
Scott Kostyshak
2b6f822bad Add CMake flag for keytests and disable by default
The keytests were previously enabled by default if the necessary
dependencies were found. They require a GUI and mouse so can
sometimes be annoying. Further, they are not currently reliable.
They are thus now disabled by default.
2016-07-13 04:52:46 -04:00