Commit Graph

288 Commits

Author SHA1 Message Date
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
Stephan Witt
b73c6462d6 simplify XCODE_VERSION check 2013-12-31 15:49:19 +01:00
Stephan Witt
130ad13dee avoid CMAKE_XCODE_ATTRIBUTE_GCC_VERSION assignment for Xcode 5.0+
it is not needed anymore and the current assignment is wrong in this case
2013-12-31 10:24:27 +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
Kornel Benko
99c92de8aa CMake: allow compile-time C++ flags to be set
For developper only, therefore the variable is set to advanced.

Ideas from: Scott Kostyshak + Vincent van Ravensteijn
2013-12-05 12:00:02 +01:00
Kornel Benko
7033b15793 Cmake build. Use 2.0.0 git-tag to receive the number of commits.
This number is only used for created package name.
2013-11-30 19:53:30 +01:00
Scott Kostyshak
374cf6a39f CMake: allow compile-time C++ flags to be set
For example, one could run CMake as follows:
  cmake -DLYX_CXX_FLAGS_EXTRA="-Werror"

Thanks to Kornel.
2013-11-30 13:08:21 -05:00
Scott Kostyshak
9edb2c5ec9 Whitespace correction 2013-11-30 13:08:21 -05:00
Kornel Benko
95c4d7caf9 Cmake build tests: Make the tests for valid urls available to public
These tests already proved being valuable.
2013-09-06 15:03:47 +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
788e2b1ac8 Cmake build tests: Unify use of userdir
While some test runns lyx-exe, we need userdir be
different from default. All relevant tests should use the same directory.
2013-08-25 11:41:10 +02:00
Kornel Benko
22d52f5f08 cmake: Use provided gmo-files if platform lacks python or gettext tools.
Running lyx from the build-directory now searches for the gmo-files
first in the build dir and then in source dir
2013-06-02 11:38:27 +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
900cbcd2ad qt5: Treat wchar_t as a builtin type
Qt5 is compiled treating wchar_t as a builtin type, while Qt4 did not. So,
we have to do the same.
2013-05-14 14:23:58 +02:00
Vincent van Ravesteijn
6f8a74791b Adjust CMake for Qt5 2013-04-23 21:45:49 +02: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
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
Scott Kostyshak
14d388e0db Add a space in CMake flag description 2013-01-30 06:53:00 -05:00
Kornel Benko
28f5fcd56b Cmake build: Enable to install also a debug version 2013-01-26 11:29:48 +01:00
Kornel Benko
f456260562 Cmake build:
New target: git-archive. It uses the archive comman of git to create
the complete source package.
This Target is only available if
        1.) there is a git command on this host
        2.) the lyx-source is under git control
2012-12-18 10:49:21 +01:00
Vincent van Ravesteijn
1b3871b302 Add custom target to run tests
This target can depend on the individual test projects and this makes sure
that the test projects are build before running the tests.
2012-12-17 22:26:14 +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
Stephan Witt
471fdcd9d0 revert change 1dcb70a 2012-12-14 16:26:18 +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
Stephan Witt
1dcb70a12f guard autotests with X11 window system check result 2012-12-13 20:54:13 +01:00
Kornel Benko
57b04ac7f4 Cmake build: First try to use autotests.
Many test are not running, but if changed the '-dbg xxx' to '-dbg any'
then all of sudden they pass ...
(The buffered output of lyx is often disrupted too early with 'kill -9',
so the expected data are not available for the appropriate test)
2012-12-11 15:17:04 +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
28ebc59517 Cmake build:
Add option LYX_ENABLE_CXX11 to enable C++11 mode for gnu CXX compiler
2012-10-24 11:36:54 +02: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
ed5dfa9cd7 Cmake tests:
Add tests the cmake-way. Now there is only _one_ target `test'
2012-10-21 12:05:50 +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
794e306c2e Cmake build:
Use ISO 8601 format for LYX_DATE, this makes it translated
2012-10-15 17:53:17 +02:00
Kornel Benko
75d63ad1f2 Cmake build: Use the timestamp of last commit (iff possible)
while idetifying the lyx-version.
2012-10-14 21:55:42 +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
0c76f9c430 Cmake build: No header files in po-dir, so no need to include in cc commands 2012-10-05 12:27:15 +02:00
Kornel Benko
b1a409be97 Make package name be platform dependent 2012-09-21 15:09:46 +02:00
Kornel Benko
6913a0c5f2 Use package name 'LyX' on Mac OS, 'lyx' otherwise 2012-09-21 12:48:30 +02:00
Kornel Benko
6fa12b0971 Adapt tex2lyx roundtrip to cmake build.
Use build tree only.
2012-07-30 09:30:16 +02:00
Kornel Benko
88cb217361 Make the version as part of package name of
cmake build be configurable.
Use -DLYX_LOCALVERSIONING=ON (default = OFF)
The package name will then be
	lyx-2.1.0-xxxxgit-yyyy.zzz
where xxxx == version number (similar to svn)
      yyyy == your OS (e.g. Linux)
      zzz  == package extension (e.g. deb, rpm, tar.gz etc)

otherwise the string '-xxxxgit' will not be used.
2012-03-15 13:15:16 +01: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
5966bee90f Patch from Benjamin Piwowarski <benjamin@bpiwowar.net>
set the compiler to gcc for Xcode (based on Xcode version)


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40393 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-06 11:36:50 +00:00
Peter Kümmel
81701e1dc8 cmake: make it possible to overwrite default settings
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40382 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-05 20:09:50 +00:00
Peter Kümmel
24dbc20e7d cmake: update msvc dep name
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40381 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-05 19:37:44 +00:00
Peter Kümmel
4789d59cfd cmake: download dep file from lyx project
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40164 a592a061-630c-0410-9148-cb99ea01b6c8
2011-11-10 19:00:41 +00:00
Peter Kümmel
e69f62f7b7 cmake: fix buggy profile option handling
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39494 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-19 18:04:41 +00:00
Peter Kümmel
cdab8e94a2 cmake dependency download: aussie is down, use sourceforge because githup only supports https which is not supported by cmake
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39453 a592a061-630c-0410-9148-cb99ea01b6c8
2011-08-09 22:09:35 +00:00
Peter Kümmel
0a051ef369 cmake: don't overwrite profiling option
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39000 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-11 08:54:27 +00:00
Kornel Benko
cd861f10c5 Use decimal representation of QT_VERSION for moc-run in cmake build to match the qglobal.h computation
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38997 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-08 23:00:28 +00:00
Kornel Benko
20d3484075 Compile fix for Qt 4.5 and earlier.
Update for cmake build.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38996 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-08 20:22:27 +00:00
Peter Kümmel
d75e87b250 cmake: debug is default, show on terminal
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38951 a592a061-630c-0410-9148-cb99ea01b6c8
2011-06-05 10:37:12 +00:00
Kornel Benko
090daa2642 Omit warning on systems where dpkg-architecture does not have variable DEB_HOST_MULTIARCH
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38872 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-28 08:30:44 +00:00
Kornel Benko
f2e437f6b8 Prepare cmake-build for debian multiarch implementation
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38830 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-24 06:58:40 +00:00
Peter Kümmel
82741b94a0 cmake: integrate vld
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38811 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-22 11:38:10 +00:00
Kornel Benko
b0716b0f13 Cpack variables and package creation transfered to LyxPackaging.cmake
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38808 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-22 09:33:53 +00:00
Kornel Benko
4fb3e19aa7 Hold cpack-variables together
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38807 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-22 08:38:31 +00:00
Peter Kümmel
1924463981 cmake: update TODO list, move svnrvison code, remove duplicated code
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38806 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-22 08:18:54 +00:00
Kornel Benko
9190519e98 1.) Run in place feature: If everything fails, try with source path
2.) Read the PATCH_VERSION from configure.ac too
3.) Ident-text in script


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38804 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-21 13:48:45 +00:00
Peter Kümmel
8759fb5f7f cmake: better cmake messages, don't overwrite CPacks default
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38802 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-21 12:17:05 +00:00
Peter Kümmel
a6a612b325 cmake: also support binary releases on Linux
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38797 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-21 10:29:41 +00:00
Peter Kümmel
a80188fec4 cmake: generate ready-to-use nsis files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38796 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-21 09:50:41 +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
Kornel Benko
cf52bab933 Remove the need for perl if creating doc
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38791 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-20 06:40:04 +00:00
Kornel Benko
b5828f9df4 Gracefuly omit doc creation if no perl detected
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38787 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-19 07:44:04 +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
Kornel Benko
d636936877 Added doxygen target if found doxygen executable
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38775 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-16 10:51:33 +00:00
Peter Kümmel
445713eae8 cmake: fix option listing
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38766 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-15 13:37:18 +00:00
Peter Kümmel
41a0adcb47 cmake: build a .dmg file on Mac, looks not as nice as the official installer but it runs
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38765 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-15 13:21:18 +00:00
Peter Kümmel
85733c6f6e cmake: more logs for intl support
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38750 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-14 09:22:35 +00:00
Peter Kümmel
3090fee4e0 cmake: cleanup, merge two patches
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38748 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-14 07:41:05 +00:00
Peter Kümmel
b3cffb0fc0 cmake: LIBINTL_LIBRARIES could be empty
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38732 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-12 21:55:24 +00:00
Peter Kümmel
9906953921 cmake on mac: precompiled libintl comes from ports, then also use iconv from ports, this is necessary to fix linker errors and removes the cmake warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38731 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-12 21:48:11 +00:00
Peter Kümmel
6a953f81ad cmake on mac: build with external libintl, find gettext, build merged
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38729 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-12 21:11:35 +00:00
Peter Kümmel
e6ad9489cf cmake: we already test on gettext
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38716 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-12 04:22:14 +00:00
Peter Kümmel
842f0d3d44 cmake: -Dhelp=1 lists all options
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38696 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-10 20:25:31 +00:00
Peter Kümmel
45ac3ef7d0 cmake: improve readability
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38694 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-10 18:34:39 +00:00
Peter Kümmel
05881b8ff5 cmake: better developer defaults enable NLS, build debug
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38693 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-10 18:30:43 +00:00
Peter Kümmel
ce4cdf2258 cmake: enable in-source CMakeLists.txt files
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38692 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-10 18:04:49 +00:00
Peter Kümmel
8102ae514f cmake: restore history
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38690 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-10 17:21:45 +00:00
Peter Kümmel
80b12deb54 cmake: restore history
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38689 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-10 17:21:15 +00:00
Peter Kümmel
aa35a7033f cmake: restore history
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38688 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-10 17:16:49 +00:00
Peter Kümmel
3219d4c142 cmake: small msvc fix
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38679 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-09 22:31:13 +00:00
Kornel Benko
de46406e8d Moved development/cmake/CMakeLists.txt into top level
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38678 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-09 21:54:31 +00:00
Peter Kümmel
7dd0314c72 cmake: remove 2.8 warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38609 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-07 11:34:20 +00:00
Kornel Benko
d096463859 New cmake build from top source dir
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38608 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-07 10:38:22 +00:00