Commit Graph

55 Commits

Author SHA1 Message Date
Jean-Marc Lasgouttes
d7e2ca377f Get rid of QPA_XCB define
Since the platform is selected at run time (e.g. xcb vs. Wayland), it
is not a good idea to decide at compile time what code is run. Another
example is on macOS, where having xcb libraries available will lead to
lauching the Xquartz whenever LyX is running.

With this patch, things are separated:
- the code is run when run-time platform is "xcb".
- the support code is compiled in when xcb header and libraries are
  available.

The cmake code is courtesy of Kornel Benko.

Fixes ticket #13086.

(cherry picked from commit 18c310a8cf)
(cherry picked from commit f1fddd86ef)
(cherry picked from commit 3bc4554e57)
(cherry picked from commit 8c14748e78)
2024-08-31 15:07:29 +02:00
Eugene Chornyi
e9d5fc0190 prevent Qt6 from defining UNICODE (Qt6.1.1 and upwards) 2021-06-19 10:48:49 +02:00
Kornel Benko
92a50fa273 Cmake build Qt6: Remove some redundant statements. 2021-03-24 11:42:39 +01:00
Kornel Benko
02a3705496 Amend 635a7d77: Allow compiling with Qt6 with cmake
Thanks Scott for checking.
TODO: Check compilation on Windows and Mac.
2021-03-22 16:19:10 +01:00
Eugene Chornyi
4dc33e52f8 Amend e501f2c4
put icons in cmake bin dir so that tex2lyx can also see them
2020-06-21 19:50:21 +02:00
Eugene Chornyi
e501f2c473 Assure that LyX and tex2lyx use src/lyxwinres.rc 2020-06-18 14:31:25 +02:00
Thibaut Cuvelier
a6b07608d8 Rename XHTMLStream to XMLStream, move it to another file, and prepare for DocBook adoption.
xml.cpp/h also merges functionalities from sgml.cpp/h.
2020-06-15 13:01:56 +02: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
7661462400 Cmake build: Only use the new lyxconvert on MAC 2017-10-03 22:12:23 +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
Richard Heck
00e4902ea3 Fix trailing whitespace in txt files. 2017-07-03 13:53:41 -04: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
ff0c95aba6 Cmake build: Prepare for hardening use of external programs 2016-11-22 16:51:44 +01:00
Kornel Benko
e78e58a7de Cmake build: Shuffle code around. 2016-09-12 11:04:14 +02:00
Kornel Benko
050d817605 Cmake build: Add qt-svg-lib to be linked with lyx if used QT4.
Probably due to commit 82808fe, there were undefined references
such as e.g. QSvgRenderer::~QSvgRenderer().
2016-09-11 15:34:58 +02:00
Kornel Benko
64b2989020 Cmake build with Qt4: Link lyx executable also to X11 library
With the commit cb0c881 we reference XSendEvent in X11-lib
if qt uses X11.
For QT5, this library is pulled by Qt5X11Extras, but
for QT4 we have to add it too.

Spotted by Scott Kostyshak.
2016-07-20 02:10:23 +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
Kornel Benko
9dd695b17a Cmake build: Correct some installation paths 2016-06-07 14:38:20 +02:00
Peter Kümmel
b46ea7fac0 integrate 3rdparty libs 2015-12-15 13:20:10 +01:00
Peter Kümmel
8028110578 qtmain also needed for Qt5 on Windows 2015-12-09 16:45:15 +01:00
Enrico Forestieri
1b0cbb6932 Fix building with cmake on cygwin.
Add required libraries for the link stage.
2014-12-26 17:00:23 +01:00
Kornel Benko
49efd1933a Cmake build: Move use of QT5 libraries to the end of linker command line.
To prevent the linker error if they were before some object file referencing
some symbol there.
2014-08-11 21:30:21 +02:00
Kornel Benko
5acc6b3791 Make it compilable under cmake again after the merge from str-metrics 2014-07-25 22:03:59 +02:00
Kornel Benko
3b14de740d Cmake build: Symplify use of linking optional libraries found via find_package 2014-06-12 19:02:29 +02:00
Peter Kümmel
080fca85a8 build with mingw on Windows and Linux 2014-06-07 08:06:13 +02:00
Benjamin Piwowarski
d863088986 Revert "Objective-C compililation support with cmake and C++11"
This reverts commit c2e67a41ce.
2014-04-22 09:36:17 +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
Benjamin Piwowarski
c2e67a41ce Objective-C compililation support with cmake and C++11
This fixes an issue whe compiling with C++11 flags on: The
objective-C clang compiler produces an error. This patch waits
avoid including specific C++ flags and uses LYX_CPP_SPECIFIC_FLAGS
to store the confliciting flags (for the moment, just C++11).
2014-04-21 11:51:04 -04:00
Kornel Benko
823ed6cf17 Remove ugly multiple definition hack (Georg)
Enable APPLE again for test_layouts (Missed in commit ...48d3518d6d)
2013-06-01 09:42:36 +02:00
Vincent van Ravesteijn
a3c864102a CMake: Remove libintl 2013-05-30 22:10:01 +02:00
Kornel Benko
6e992e3544 cmake:
1.) Do not include layout tests on MAC, since the
  linker-option which allows multiple definitions is
  no longer supported.
2.) Indenting made consistent
2013-05-15 11:28:04 +02:00
Vincent van Ravesteijn
0b9714f8df Revert "qt5: Fix use of zlib"
This reverts commits ba3332c6 and f96583e8.
2013-05-14 17:34:51 +02:00
Kornel Benko
f96583e8d2 Fix compilation 2013-05-14 16:23:24 +02:00
Kornel Benko
ebddec15de Add test for Layout::write() on cmake too
(For now runns only on unix platforms using gcc)
2013-05-14 11:17:50 +02:00
Vincent van Ravesteijn
6f8a74791b Adjust CMake for Qt5 2013-04-23 21:45:49 +02: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
81500fc99b Cmake build:
Move definitions of target ${_lyx} and ${_tex2lyx} to top-most directory,
to make them overall available
2012-12-14 12:23:17 +01:00
Kornel Benko
d91d6e3343 Cmake build:
Cleanup the use of path-variables
2012-11-02 13:33:22 +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
f7680c696d Cmake build:
Added dependencies to target `test'. Now all the needed executables
are recreated prior to running tests if not already existant.
2012-10-21 16:58:45 +02:00
Kornel Benko
419f32df91 Cmake build:
Creating LYX_DATE dynamically at configure-time caused unwanted recompilation
of the whole directories (src + src/tex2lyx) because all the relevant objects
were dependent of a common file (flags.make in case of "Unix makefiles") which changed
accordingly.
There is now a new include (lyx_date.h, with only one definition)

Nothing changes for automake, since in this case LYX_DATE is defined in config.h
2012-10-15 22:50:39 +02:00
Kornel Benko
3a5c0f66a0 Sorry, this line disappeared unintentionally in previous commit 2012-10-15 13:30:19 +02:00
Kornel Benko
24206e2c67 Cmake build:
Partially revert 75d63ad1f2
It caused recompiling everything at each commit.
Now use definition of LYX_DATE only when compiling version.cpp
2012-10-15 13:16:08 +02:00
Kornel Benko
20359572ed Patch from Benjamin Piwowarski
Just some comments on the patch:

- The executable name has to match the information in Info.plist (development/MacOSX/Info.plist.in and CMakeLists.txt).  The autoconf config/lyxinclude.m4 file has been modified to make it work with autotools.

- The process to build OS X bundle is to first add all the files to be included to the bundle when calling add_executable (src/CMakeLists.txt) and then by calling setting the source file property of each of these files (development/cmake/Install.cmake, l.14) so that the files are properly located into the bundle. This is also why Install.cmake has to be included two times in src/CMakeLists.txt (once to build the list of files, once to set the location of the list of files).

- in CMakeLists.txt there is a line
install(CODE "set(BU_CHMOD_BUNDLE_ITEMS 1)")
What it does is to fix the owner permissions within the bundle - this is necessary because some libraries are copied within the bundle and might be owned by root

- An empty qt.conf is included in the bundle so that QT does not try to link to other QT libraries (which will not be included in the bundle)

- In development/cmake/Install.cmake, some OS X specific files (*.sdef, qt.conf, *.icns) have to be included in the bundle

Benjamin
2012-10-13 09:53:20 +02:00
Kornel Benko
acddee2465 Cmake build: Define for 'DEVEL_VERSION' already done in development/cmake/config.h.cmake 2012-10-09 22:43:24 +02:00
Kornel Benko
f5daafc02b Added libmagic to cmake build. Should to be also adapted to windows
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40791 a592a061-630c-0410-9148-cb99ea01b6c8
2012-02-22 10:07:04 +00:00
Kornel Benko
3004722131 Add framework AppKit to cmake as in the automake case (MAC only)
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39798 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-03 16:49:06 +00:00
Peter Kümmel
ea7102624c cmake: add vld config and output file to project
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38814 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-22 14:36:17 +00:00
Peter Kümmel
282c245c20 cmake: also fixup on win32
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38794 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-20 22:26:46 +00:00
Peter Kümmel
4e922727e6 cmake: fix .dmg creation
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38780 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-17 21:53:05 +00:00