Commit Graph

727 Commits

Author SHA1 Message Date
Kornel Benko
acf8df28b3 Sort images file list also for cmake
This is not needed for recent cmake versions, but since we expect
also older cmake version be used, sort the list nevertheless.
See https://reproducible-builds.org/ for why this matters.

Amends b8e3615
2017-06-27 19:18:24 +02:00
Uwe Stöhr
50f0ae9ecd build5-2015.bat: fix a path 2017-05-13 19:19:18 +02:00
Uwe Stöhr
5120c25872 build5-2015.bat: fix build script for current CMake releases
- since CMake 3.5 the path to the cmake.exe is no longer by default written to Windows' PATH variable. Therefore this has to be done in the script.

- Windows path can contain spaces (CMake's default installation folder does) so we must use quotes around the paths

- set the CMAKE_PREFIX_PATH variable
2017-05-10 01:38:48 +02:00
Uwe Stöhr
18bdb38f30 build5-2015.bat: the option LYX_ENABLE_CXX11 is no longer available in CMake
- also use a boolean setting for LYX_CONSOLE, see bug #10658
2017-05-09 22:08:22 +02:00
Kornel Benko
0f798d6675 Cmake build: Allow numbers in lyx-suffix too
That way we can use '-DLYX_SUFFIX_VALUE=123.456'
2017-04-30 17:01:31 +02:00
Uwe Stöhr
d318a8a6f2 build5-2015-installer.bat: we use Qt 5.6.2 2017-04-25 01:43:23 +02:00
Juergen Spitzmueller
52019917f4 Split external_templates to individual *.xtemplate files
This makes it easier to add new templates or change existing ones
in the user directory.

Fixes: #3983

The CMake changes should be double-checked.
2017-03-26 15:32:01 +02: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
c6314fc7d0 Amend b5416928. Cmake configuration for QT5.8 2017-02-23 00:18:52 +01:00
Kornel Benko
7b57bea5d5 Cmake build: Missed to install citeengines dir in commit cf3f481 2017-01-13 17:18:25 +01:00
Kornel Benko
f4c3dc6668 Add the perl-mode-line for emacs to perl scripts 2016-12-03 11:39:28 +01:00
Kornel Benko
ff0c95aba6 Cmake build: Prepare for hardening use of external programs 2016-11-22 16:51:44 +01:00
Uwe Stöhr
10e90ad78c Win build: fix a typo 2016-10-16 14:33:18 +02:00
Kornel Benko
5e3ceee8d5 Cmake package: Correct description.
The new cmake 3.6 now also inserts correctly
this file into its control-file. But the syntax of the control-file
expects the description lines be indented by a space.
Also empty lines (only spaces) are not allowed.
2016-09-23 13:39:23 +02:00
Guillaume Munch
02b747396e Commands to select the posix variant for the mingw cross-compilation script
The win32 thread model of gcc does not support the <thread> and <mutex> headers
yet.
2016-08-12 21:46:26 +01:00
Kornel Benko
5f5c966b19 Cmake build: Ignore also files with extension .patch --
These files should not be installed.
2016-08-08 21:23:20 +02:00
Kornel Benko
2d49342ce3 Cmake build: Amend 41e409f8: Use std::call_once only if it is actually available 2016-08-07 11:32:53 +02:00
Kornel Benko
fa85bf9b59 Cmake build: Added check for pythons polib module
Idea stolen from http://public.kitware.com/pipermail/cmake/2011-January/041666.html
2016-07-24 11:20:08 +02:00
Kornel Benko
59ac7ce660 Cmake build: Add needed libraries if using QT5_Extras
Commit cb0c881 does this already for automake.
2016-07-11 19:08:11 +02:00
Uwe Stöhr
1f6e2c323e build4-2010.bat: remove outdated script
building with MSVC 2010 won't be possible with LyX 2.3
2016-07-11 02:12:36 +02:00
Kornel Benko
8a15df6d65 Amend cb0c881 2016-07-10 22:14:08 +02:00
Enrico Forestieri
cb0c881b02 Fix paste of selection to (unfocused) external applications
With both Qt4 and Qt5, when using a click-to-focus policy, the first
attempt to paste a selection by middle mouse in an external application
which has no focus may fail. It is not clear why this succeeds for some
applications and fails for others, but refreshing the timestamp of the
selection request cures the issue. The cmake part is by Kornel.

See also this thread:
http://thread.gmane.org/gmane.editors.lyx.devel/162491
2016-07-10 19:31:32 +02:00
Kornel Benko
396b55dd51 Cmake build: Mimic changes done in autoconf at f70dd65 2016-07-08 10:58:32 +02:00
Uwe Stöhr
edbc91a6f9 remove 2 outdated build scripts
LyX 2.3 cannot be compiled with MSVC 2010
2016-07-02 19:40:18 +02:00
Georg Baum
3c56e7c0eb Fix MSVC C++11 detection
The old version with empty flag did not enter the loop at all, so we have to
use a workaround. Thanks Uwe for testing.
2016-07-02 18:26:08 +02:00
Georg Baum
987dd84461 Do not use --std=c++14 for MSVC
MSVC does not need a special flag to specify the standard. Using --std=c++14
produces a warning, but compilation succeeds, so the old code did mistakenly
choose --std=c++14 for MSVC.
2016-07-02 12:42:04 +02:00
Georg Baum
e49d59dafc Fix std::regex detection for older gcc
Older gcc versions (e.g. the first one which has usable std::regex: gcc 4.9)
require the --std=c++11 flag to be set. Otherwise std::regex is not made
available. Therefore we need to keep the flag in the loop.
2016-07-02 12:39:08 +02:00
Uwe Stöhr
f1818679ce CMAKE: update path to Qt 5.6.1 2016-07-01 01:39:38 +02:00
Georg Baum
c7c9744368 Adjust dep path in build batches
Another location where paths are stored...
2016-06-19 13:15:50 +02:00
Georg Baum
c737f1cddf Remove InsetMathXYArrow
This was dead code that did never work, and most of it was boilerplate that
you can steel in 15 minutes from any existing math inset. Apart from that it
did contain a pointer to InsetXYMatrix which would create the same problems
we saw with the macros.
2016-06-16 20:39:32 +02:00
Georg Baum
f8990ef469 This is LyX 2.3 2016-06-16 20:20:59 +02:00
Kornel Benko
0eb0a3d94d Cmake dist: Expand the list of not distributed files. 2016-06-15 10:21:18 +02:00
Kornel Benko
2da1c956e4 Cmake build: Check for make_unique and PATH_MAX symbols added. 2016-06-12 19:56:31 +02:00
Kornel Benko
24a7dd45dc Cmake build: Determine availability of 'std::regex' if using clang compiler 2016-06-11 12:23:33 +02:00
Kornel Benko
f792837531 Cmake build: Finetune some destination data paths on UNIX 2016-06-10 13:40:38 +02:00
Georg Baum
2047ea5eb4 Replace Boost.Signals with Boost.Signals2
Boost.Signals is deprecated. This fixes bug #9943.
The only thing left to do is to rewrite (or get rid of) the boost -mt test
in config/lyxinclude.m4 not to use signals anymore.
2016-06-09 22:25:34 +02:00
Georg Baum
273c67d8aa Require a C++11 compiler
As discussed on the list. If no C++11 compiler is found configuration stops
with an error. There are now unneeded parts of boost, the will be removed in
a second commit.
2016-06-07 20:34:52 +02:00
Kornel Benko
9dd695b17a Cmake build: Correct some installation paths 2016-06-07 14:38:20 +02:00
Kornel Benko
06539caccb Cmake build: Refactor determination of destination paths. 2016-06-06 08:29:07 +02:00
Kornel Benko
b5c87f2963 Cmake build: Set new installation paths
For a suffixed version (with suffix 2.3) and installation dir (/usr/local)
the new paths are:
binary -> /usr/local/bin
system-lib -> /usr/local/share/lyx2.3
fonts -> /usr/local/fonts/truetype/lyx2.3
manuals -> /usr/local/man/man1
locales -> /usr/local/share/locale
tex -> /usr/local/texmf/tex/latex/lyx2.3
2016-06-05 22:59:13 +02:00
Kornel Benko
7c0eba4d75 Cmake build: Allow user defined suffix for program files 2016-06-05 16:26:59 +02:00
Kornel Benko
7a86fe3e0b Cmake: Allow test for X11 with QT5.6
Used for key-test tests.
2016-05-30 08:22:15 +02:00
Uwe Stöhr
978eea2173 CMake: add 2 build scripts to compile LyX with Qt 5 and MSVC 2015 2016-05-30 02:03:16 +02:00
Jean-Marc Lasgouttes
87d4ce0ff7 Remove boost/format support
Only ChkTex.cpp used it, whereas the rest of our code uses the simpler bformat.
2016-05-29 17:55:45 -04:00
Georg Baum
2d708bd7cf Simplify .po file generation
We can generate the file with the cirrect line endings directly instead of
calling a helper script to convert them.
2016-05-29 17:55:44 -04:00
Georg Baum
d5f2bad461 Mingw-w64 build fixes for long long
On mingw-w64, long long (64bit wide) is larger than long (32bit wide).
Therefore we need some more specializations for string, docstring,
otextstream and << overloaded ostream functions. The configuration code
is by me, the source code changes by Shankar Giri Venkita Giri (bug 10053).
2016-05-29 17:55:43 -04:00
Kornel Benko
882b7b01d0 Cmake install: Exclude some files from being installed
Files like CMakeLists.txt or *.lyx~ should not be part
of an installation.
2016-04-14 11:15:08 +02:00
Kornel Benko
13bf0f3275 Ammend 4aa88e9 2016-04-09 12:21:16 +02:00
Peter Kümmel
a0a472c16e msvc2015: always incude strfwd.h first, to prevent crashes of our
typedefed streams.
2016-04-02 11:03:17 +02:00
Kornel Benko
41447b1225 Cmake export tests: Label handling
In collaboration with Günter Milde:
1.) Allow char ':' be part of a ctest-label
2.) Eliminate redundant label naming and directory names
    (The testnames should not repeat the directory name)
2016-03-26 13:06:14 +01:00
Uwe Stöhr
869d34ddeb development/cmake/build5-2015-x64.bat: Windows build script for 64bit LyX and Qt 5.6 2016-03-08 00:31:10 +01:00
Kornel Benko
cc884dd044 Typo. 2016-02-15 21:00:35 +01:00
Kornel Benko
64446ab834 Preparing a helper script to creat md5sum of a file. 2016-02-15 15:24:33 +01:00
Kornel Benko
a413d667ca Set C++11 option defaulting to 'AUTO' as it is on autotools too.
Nothing changes for already cached values.
With fresh build-dir and in 'AUTO'-mode we try to determine if the c++ compiler
is able to use this feature.
2016-02-11 09:03:07 +01:00
Uwe Stöhr
deb8e48efa build5-2010.bat: simplify script
* This is a script for MSVC2010 so assume this is used
* Fix a typo
* Load the MSVC build environment
2016-01-28 00:07:43 +01:00
Uwe Stöhr
c5236c42b9 build5-2010.bat: use the same CMake parameters as in build5-2010-installer.bat 2016-01-26 01:57:15 +01:00
Peter Kümmel
44fd57e4b4 python now will be found, rmdir could fail 2016-01-22 12:47:23 +01:00
Peter Kümmel
0477e01d3e use Qt default path, don't touch source tree 2016-01-19 17:39:52 +01:00
Uwe Stöhr
41d5acdca3 Win build scripts: add a one-click script for installer builds
- also restore a build script for daily development work
- remove 2 outdated/unnecessary scripts
2016-01-19 02:21:06 +01:00
Peter Kümmel
e30b1d67fc rename build directory 2016-01-17 18:52:20 +01:00
Peter Kümmel
2f290a46d2 clean build with MSVC2010 2016-01-17 18:34:15 +01:00
Uwe Stöhr
1822d44c58 add 2 Windows build scripts for LyX 2.2
- build4-2010.bat: MSVC 2010 and Qt 4.8.7 (as backup)
- build5-2010.bat: MSVC 2010 and Qt 5.5.1

I tested both scripts thoroughly and the resulting LyX build is stable. Please feel free to modify them if something can be improved.
2016-01-14 00:39:32 +01:00
Peter Kümmel
6e3a4ecfe7 mingw.bat: circumvent critical python detection
LyX could be build with a double click on mingw.bat.
2016-01-13 15:46:44 +01:00
Peter Kümmel
275d5a66a5 use Qt 5.5.1 2016-01-13 13:12:25 +01:00
Peter Kümmel
407bb15bde add batch file for MinGW build on Windows 2016-01-12 20:10:51 +01:00
Peter Kümmel
ff8719497a also install cross compiled lyx 2016-01-06 14:24:22 +01:00
Peter Kümmel
f09202c69c fix broken xmingw script 2016-01-06 13:07:59 +01:00
Peter Kümmel
2a112d8a65 add script to cross-compile for Windows 2015-12-20 14:42:24 +01:00
Kornel Benko
4e9fe808d7 Cmake export tests: Correct some quirks
1.) Label lyx2lyx was handled wrong (removed '2')
2.) tests were named '_lyx2lyx' instead of only 'lyx2lyx'
2015-12-17 12:57:34 +01:00
Peter Kümmel
11f9c71d75 fix MinGW build on Windows 2015-12-15 13:20:11 +01:00
Peter Kümmel
7d2c054611 also build without gnuwin32 directory 2015-12-15 13:20:10 +01:00
Peter Kümmel
2ce5ca7fcc improve mingw runtime detection 2015-12-15 13:20:09 +01:00
Kornel Benko
afaf28964a Cmake build: Map '\origin unavailable' to appropriate value on install
For example for lib/doc.de/xyzzy.lyx the entry is changed to
	\origin /systemlyxdir/doc/de/
2015-12-13 16:08:27 +01:00
Kornel Benko
a9764cf191 Cmake build: Initialize some variables before use. 2015-12-09 15:37:58 +01:00
Uwe Stöhr
11e12c787a build5.bat: explicitly set QT5 2015-12-08 01:40:48 +01:00
Uwe Stöhr
01e0292028 build5.bat: a script to compile with Qt5 on Windows
This script shows how i compile. If we figured out every corner cases with it it should become the standard build script for Windows
2015-12-08 01:23:54 +01:00
Georg Baum
a15aafa2a1 Use std::regex automatically in C++11 mode
This is consistent with autotools. The only exception is MSVC, since we do not
know yet whether it works.
2015-12-06 20:04:21 +01:00
Kornel Benko
cf3156d22d Cmake export tests: Create concatenated labels in the form 'export:reverted:examples:chemgreek' 2015-12-02 22:18:43 +01:00
Kornel Benko
e39025797e Cmake export tests: Remove label 'reverted' from suspended tests.
LyXMacros.cmake: Overseen the macro 'setmarkedtestlabel()' which added it automatically
  if the test was to invert the test result.
ExportTests.cmake: Correct label handling
2015-12-02 13:28:16 +01:00
Uwe Stöhr
3fc47f2a5c build.bat: add -DLYX_ENABLE_EXPORT_TESTS=ON and add a note about Ninja 2015-12-02 00:42:40 +01:00
Georg Baum
0aa3e78f5c Explain how to use parallel compilation in MSVC 2015-12-01 20:55:05 +01:00
Kornel Benko
552ca45843 Cmake tests: macro setmarkedtestlabel() worked only by chance
We have to check the content of the variable.
2015-11-02 21:44:38 +01:00
Peter Kümmel
c39869cc61 Also cross compile with Qt5
Assume Ubuntu pathes for mingw.
2015-10-23 16:34:55 +02:00
Kornel Benko
8c3dbe19b6 Cmake build: Adapt use of c++11 for cygwin too.
Change done according to commit 864a4db26b
2015-09-09 14:45:55 +02:00
Kornel Benko
46d2344902 Cmake build: Adapt detection of C++11 mode to automake 2015-09-03 11:15:10 +02:00
Kornel Benko
a911b1cc65 Cmake build: Define LYX_USE_CXX11 iff using c++11 extensions after commit 329eae5605. 2015-05-20 12:07:41 +02:00
Kornel Benko
7fb1dfe61e Add debug output while handling debian package dependences
This is cmake build only
2015-05-14 21:19:59 +02:00
Georg Baum
51cc8aa9f6 Fix build with GNU libstdc++ C++11 ABI
The GNU libstdc++ that ships witch gcc 5 can be used with the same ABI as
older versions, or with a new ABI which is conformant to the C++11 standard.
LyX did not build if the latter was used:
https://kojipkgs.fedoraproject.org//work/tasks/1267/9651267/build.log

This is now fixed by detecting the ABI version and disabling the wrong forward
declarations. At the same time, STD_STRING_USES_COW is switched off for the
C++11 ABI version, because the std::basic_string implementation is now C++11
conformant. Since the GNU libstdc++ can also used by other compilers such as
clang, we must not test for the compiler version.
2015-05-08 21:12:42 +02:00
Kornel Benko
390b59011d Cmake build: Do not install .pdf icons created by export
Such files are polluting the lib/images directory if
exporting lyx-files containing lyx-info of type icon.
2015-04-01 17:26:13 +02:00
Kornel Benko
6787ec05f7 Cmake build: Add .svgz files to Resources.
It does not seam to make a difference.
Added because other icons are also included.
2015-03-17 20:46:02 +01:00
Kornel Benko
2008e0876f Cmake build: Remove deleted svg subdir from installation.
Also added missing images/math/oxygem icons to installation.
2015-03-14 16:15:35 +01:00
Kornel Benko
da46f6566a Preparation to support translations with python3
Thanks to José.
2015-03-11 20:54:28 +01:00
Enrico Forestieri
9126a99e97 Fix bug #9217: [Qt5] QWindowsMime class not available
The support for QWindowsMime has been reintroduced in Qt 5.4.0.
The class name has been changed to QWinMime but the interface
is exactly the same.
2014-12-26 16:53:31 +01:00
Georg Baum
6f34a8a640 Get rid of tr1 support
As discussed on the list. We don't need it anymore, either we have a modern
compiler that supports C++11, or we fall back to boost. I kept and adjusted
the regex #define, since we cannot use std regex completely yet.
2014-12-23 22:18:08 +01:00
Georg Baum
7796ad3a36 Improve llvm libc++ detection
The old detection did only work if CFLAGS contained -std=c++11, since ciso646
was only included for __cplusplus > 199711.
Thanks to Koernel for the cmake part.
2014-12-21 17:26:21 +01:00
Kornel Benko
98d063e9be Cmake build: Check for string COW by checking for library, not compiler
Changed according to automake behaviour, see 385f3e8abd
2014-12-19 12:32:14 +01:00
Kornel Benko
edf22ba723 Cmake build: Detect clang and adapt definition of STD_STRING_USES_COW. 2014-12-08 17:43:05 +01:00
Kornel Benko
07683c1f0d Cmake build: 'callstack printing' detection.
Instead of depending on compiler we try to check for working
API as is done now for automake build too.
2014-11-09 12:59:14 +01:00
Kornel Benko
81afd10fc7 Cmake build: Moved creation of variable LYX_GIT_COMMIT_HASH to development/cmake/scripts/LyXGetVersion.cmake.
1.) The only file which needs this define is src/version.cpp. Our use in config.h
resulted in recompiling most of our sources.
With this change, only version.cpp needs to be recompiled.

2.) Without reconfiguring, the old commit hash was still valid. Now the
detection of commit hash is done at compile time.
2014-10-24 16:58:54 +02:00