Commit Graph

566 Commits

Author SHA1 Message Date
Kornel Benko
046001e571 Make: improve detection of X11 with Qt 5
In collaboration with Scott Kostyshak:
With Qt 4 we could use Q_WS_X11, defined by FindQt4.cmake. In Qt 5,
there is no FindQt5.cmake. Instead we now define our own variable,
QT_USES_X11 by using class QX11Info available only on X11.
(http://qt-project.org/doc/qt-5/QX11Info.html)

The main consequence of this improved support is that now the keytests
can be run (ctest -R "keytest") when LyX is compiled with Qt 5.
Before, with Qt 5 we did not know if X11 was available, which is
needed by xvkbd, so the tests were not enabled. Note, however, that
many tests fail with Qt version 5.2.1 because there was a change in
the event handling mechanism in Qt that causes xvkbd to be unable to
pass capital letters (so case sensitive greps in the tests fail). This
needs to be investigated and reported.
2014-05-25 13:50:18 +02:00
Kornel Benko
371fdb8649 Cmake build: Show the found flag for use of c++11 features 2014-05-16 13:40:34 +02:00
Kornel Benko
f82883b097 Cmake build: Unify defines for spellchecker in config.h 2014-05-13 14:52:11 +02:00
Kornel Benko
77ee91ccfe Cmake build: Use find_package_handle_standard_args() consistently 2014-05-13 12:30:20 +02:00
Kornel Benko
2ebcf38493 Cmake build: Install lyx*.desktop and lyx*.svg files in appropriate locations for unix 2014-05-09 10:04:42 +02:00
Kornel Benko
aa7dbdef37 Cmake build: Add also reference to versioned lyx.svg to the resources file 2014-05-06 17:21:13 +02:00
Benjamin Piwowarski
4cb8a83dab Fix for clang detection in cmake 2014-04-24 17:18:56 +02:00
Benjamin Piwowarski
14de3aa49b CMake install and bundling improvements (esp. OS X)
This patch improves the cmake bundling process:
- reworked bundle handling for OS X: only when installing resources are copied, otherwise
only the smallest bundle is built
- on OS X, the utility programs (tex2lyx) are now installed in the right location
- it removes some unneeded BUNDLE DESTINATION
- it provides a basic support for QT plugins inclusion
- it properly builds a disk image on OS X (only the background image is missing)
- it fixes the library paths for all executables (not only LyX)
- Use the COPYING file for cmake install license
2014-04-21 11:51:04 -04:00
Kornel Benko
1bff751639 Cmake build: Assign package name dynamically
This enables to install different lyx-versions simultaneously via
the package manager.
2014-04-19 11:09:25 +02:00
Benjamin Piwowarski
26fad1b79c Fix typo in configFunctions.h (wrong define for the header) 2014-03-13 08:28:06 +01:00
Vincent van Ravesteijn
3f771c96d3 Fix EOLs 2014-03-10 21:04:25 +01:00
Vincent van Ravesteijn
eb219e1130 CMake: Regenerate deleted gmo files 2014-02-03 21:19:33 +01:00
Vincent van Ravesteijn
181e64c724 CMake: Put the docs projects in a subdirectory 2014-02-03 20:07:14 +01:00
Vincent van Ravesteijn
f63221aba4 CMake: Add target update-gmo
This target will update the gmo files if and only if the associated
po-file is modified. To determine whether a file is modified, 'git
status --porcelain' is used.

This follows up on commit 06782542.
2014-02-03 20:07:12 +01:00
Kornel Benko
499c5cfe57 Adapt cmake build to use c++11 features also for clang compiler 2013-12-15 11:41:28 +01:00
Scott Kostyshak
63deac73b3 Fix CMake install of examples/thesis
I should have done this in f5cf21d7.
2013-11-27 07:56:43 -05:00
Kornel Benko
805e51eff8 Implement file locking and apply to configure
Functions for file locking are added. They are used for ensuring that
for specified userdir only one LyX process runs configure.
2013-11-20 19:40:32 +01:00
Raphael Kubo da Costa
ca7214b410 Remove FreeBSD checks when defining USE_WCHAR_T.
The problems the comments in the build systems refer to seem to have been
fixed for years. [1] says the checks in libstdc++ have been improved, and
all supported FreeBSD versions enable wchar_t support unconditionally in
libstdc++. Additionally, this needlessly impacts FreeBSD when libc++ is used
instead of libstdc++.

[1] http://gcc.gnu.org/onlinedocs/libstdc++/faq.html#faq.freebsd_wchar
2013-10-18 03:07:30 +02:00
Kornel Benko
075d903941 Prevent build of <lang>.gmo in case of error.
Given erroneous <lang>.po file, this yields to error on first call
to make. Nonetheless a new <lang>.gmo file is created. The following
calls to make do not get an error.
This patch prevents the <lang>.gmo creation on error.

Problem spotted by Scott.
2013-09-10 08:00:29 +02:00
Kornel Benko
f2553ebf6c Cmake build tests: Threadsafety and test-labeling
The tests are now more robust if ctest uses '-j' (number of threads) parameter.
a.) keytests are running in sequence and in one thread only, no other thread running
b.) tex2lyx tests are locking in respect to each other
c.) Test gets one or more labels, so that we can select
        ctest -L url
  to run tests labeled url
d.) New macro settestlabel() to add labels to a test
2013-09-07 09:25:02 +02:00
Kornel Benko
0a779e9543 Cmake build: Move default for man-pages to /usr/local/man
and at the same time make it configurable.
Until now it was hard wired to a subdirectory of installed lyx.
2013-09-06 14:56:31 +02:00
Kornel Benko
f697e50fd3 Cmake build: remove warnings with newer cmake
Omit using empty defines in find_path() and find_library()
2013-08-23 00:02:56 +02:00
Kornel Benko
e1a442509d Cmake build: install moved springer files
The spriger directory moved from templates to examples,
but the installation of them was forgotten.
2013-08-11 21:22:00 +02:00
Kornel Benko
b810c5744f cmake: Make really sure, also the first po-file will be
processed, if it is not "ALL"
We cannot overwrite tha params given to a macro. Instead
use an own variable.
2013-06-02 17:52:40 +02:00
Vincent van Ravesteijn
90610dbc0d CMake: Make sure the first po file is also processed 2013-06-02 15:32:33 +02:00
Vincent van Ravesteijn
a3c864102a CMake: Remove libintl 2013-05-30 22:10:01 +02:00
Vincent van Ravesteijn
4738ba0f1a qt5: Fix use of zlib using config.h 2013-05-14 17:34:53 +02:00
Vincent van Ravesteijn
1ede4a51d3 CPack: Do not use CPACK_SET_DESTDIR on Windows 2013-04-25 21:18:41 +02:00
Vincent van Ravesteijn
925c35f22e Fix CMake on Windows 2013-04-25 20:18:46 +02:00
Vincent van Ravesteijn
6f8a74791b Adjust CMake for Qt5 2013-04-23 21:45:49 +02:00
Vincent van Ravesteijn
09c2e58373 Extend and use qt4_wrap_ui 2013-04-23 21:45:39 +02:00
Kornel Benko
9af4d0fa8c Cmake build: Unfortunatelly, there are some cmake versions
which have not error-free version of FindQt4.cmake.
We have to stick with our own (and old) module.
2013-03-20 20:51:50 +01:00
Kornel Benko
7dbd777146 cmake build: Add check for required QT-version 4.5.0 or higher
Since our own module does not respect the version parameter,
while the cmake provided does, also remove our FindQt4.cmake
2013-03-20 11:39:45 +01:00
Kornel Benko
0ea6654228 Cmake build: Creating a define for a header file found
need now only changes in the list of header files in ConfigureChecks.cmake.
2013-02-12 19:01:16 +01:00
Kornel Benko
88101bae75 C&P error. Sorry 2013-02-12 17:46:35 +01:00
Kornel Benko
ae04b1a18e Cmake build: Correct the previous commit.
We have to apply configure_file() twice, therefor the new file.
2013-02-12 17:40:32 +01:00
Kornel Benko
5970aff01a Cmake build: If checking for new function, say xyzzy, we want
have a definition '#define HAVE_XYZZY 1'.
Now, it is sufficient to add xyzzy to list of functions in ConfigureChecks.cmake'
2013-02-12 17:22:07 +01:00
Kornel Benko
36c5c7b9c5 Cmake build: 1.) Sort function checcking alphabetically
2.) add definition HAVE_UNSETENV to header
2013-02-12 15:27:39 +01:00
Jean-Marc Lasgouttes
81d863fd41 Fix bug #8537: LyX creates the environment variable LC_ALL
The current code is not able to unset an environment variable, only to set it to an empty value. This patch refactors a bit the Message class and uses a new EnvChanger helper class that allows to change temporarily an environment variable and that is able to unset variables if needed.

The patch also adds new functions hasEnv and unsetEnv in environment.cpp.

Open issues:
 * there may be systems where unsetenv is not available and putenv("name=") does not do the right thing;
 * unsetenv may lead to leaks on some platforms.
 * when using unsetenv, we may need to remove strings from the internal map that setEnv uses.
2013-02-12 12:14:06 +01:00
Uwe Stöhr
409f384e21 cmake/build.bat: update build script for installations 2013-01-13 20:16:06 +01:00
Kornel Benko
ab1be44b92 Cmake build: Add .tex files to the list of doc-files.
(This adds "SpecialParagraphShape.tex", which is needed by
Additional.lyx)
2013-01-13 15:31:23 +01:00
Kornel Benko
03abfd4c7d C&P error 2013-01-09 16:40:54 +01:00
Kornel Benko
46e51018d5 Cmake build: Correct creation of lyx_date.h because of
not defined behaviour cmake command copy_if_different
in case, the destination is not present
2013-01-09 16:31:45 +01:00
Vincent van Ravesteijn
0cd8c03d17 CMake: Put projects into subdirs
This patch puts all projects into subfolders (at least for MSVS). In this
way, there is a better overview (especially if the number of test projects
will be increasing).
2012-12-15 11:02:06 +01:00
Kornel Benko
d91d6e3343 Cmake build:
Cleanup the use of path-variables
2012-11-02 13:33:22 +01:00
Kornel Benko
7ede020a02 Cmake build:
1.) Cleanup the use of path-variables
2.) New directory for cmake-scripts which can be called
    at build-time
2012-11-02 13:25:04 +01:00
Kornel Benko
854b168d17 Cmake build:
Correct dependencies for version-info also at build-time
(not only at configure time)
2012-11-01 13:00:19 +01:00
Kornel Benko
78492b276d Cmake build:
Use message(FATAL_ERROR ...) to indicate failed call to a cmake-script
(like "exit -1;" in sh)
2012-10-31 10:33:02 +01:00
Kornel Benko
1b65a03c13 Cmake build: cleanup 2012-10-25 11:19:09 +02:00
Kornel Benko
d1ca207e94 Cmake build:
Next try to create Resources.qrc on the fly.
This time using a cmake-script instead of trying to rebuild the cache
2012-10-25 10:45:28 +02:00