Commit Graph

323 Commits

Author SHA1 Message Date
Jean-Marc Lasgouttes
41405babc5 Cleanup support for std::regex with autotools
Do not link against system boost regex lib or build included boost regex when not needed.
2015-01-06 18:47:00 +01:00
Enrico Forestieri
dd2a8b616e Adjust autotools default configure options for Qt5.
* Disable concept-checks unless explicitly required (errors out with Qt5).
* Add -fPIC to CPPFLAGS for elf targets (required with Qt5).
2015-01-04 18:07:11 +01:00
Georg Baum
394e1bf99c Use std::regex if possible
It works with gcc >= 4.9.0 and clang (with libc++ or gcc libstdc++ from gcc
>= 4.9.0). The MSVC parg is missing, because I cannot test it, and the
autotools build still link against boost::regex even if it is not needed, but
I don't know how to fix that.
2014-12-28 18:08:18 +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
90b1f084bf Improve C++11 support
If we compile in C++11 mode, do not use the boost replacements for bind,
functional and shared_ptr. regex is excluded, since it misses match_partial, and
gcc does not provide a usable one in versions less than 4.9.0.
I also removed the #define for match_partial, since this is dangerous. Now you
get a compile error instead of subtle runtime differences.
2014-12-21 20:22:16 +01:00
Georg Baum
0842aa06e4 Do not use tr1 with libc++
clang defines __GNUC__ but libc++ does not have tr1, so we either need to use
boost, or std and compile in c++11 mode.
2014-12-21 18:22:33 +01:00
Jean-Marc Lasgouttes
0b09424017 Autotools: read git commit hash at compile time
Also do as cmake to avoid full recompilation when the hash changes.
2014-11-24 22:00:21 +01:00
Jean-Marc Lasgouttes
dc7ef3c81f Implement "callstack printing" checking for autotools
Contrary to cmake, we do not rely on platform/compiler check, but on the
availability of the reauired API.
2014-11-04 23:48:03 +01:00
Jean-Marc Lasgouttes
8ecb96c09a Add the git commit (if applicable) to LyX version
This only works for autotools right now, but adding that to cmake is trivial
2014-10-10 12:12:17 +02:00
Enrico Forestieri
4bdeae2733 Update autotools for building with Qt5.
The option --enable-qt5 allows configuring for Qt5. The default is Qt4.
Nothing special is done with respect to Qt4, apart from pulling in the
correct libraries. Indeed, other than the core and gui libraries, now
also the concurrent and widgets libraries are needed.
2014-07-19 03:34:28 +02:00
Enrico Forestieri
bc00159530 Fix compilation on Solaris after last boost upgrade. 2014-05-29 22:31:56 +02:00
Vincent van Ravesteijn
a25c946b31 boost: Turn off warning that signals are deprecated 2014-04-29 17:25:38 +02:00
Jean-Marc Lasgouttes
6c8a775c73 Use subdir-objects for automake 1.14 or newer
This option is going to be mandatory starting with automake 2.0.
LyX is able to use this since version 2.1, but it turns out that it is
badly implemented in versions of automake older than 1.14.

We rely on some (undocumented) symbol to detect automake 1.14 and
use the subdirs-objects option in this case.

For more details, see:
https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg181023.html

Making everything work with autotools required making a copy of two
files from support/tests. It seems that we should not point to source files
that are handled by another Makefile.am.
2014-04-21 11:52:00 -04:00
Vincent van Ravesteijn
f0f8157099 Start the 2.2 development cycle 2014-04-18 12:03:13 +02:00
Vincent van Ravesteijn
fde16219ca This is LyX 2.1.0. 2014-04-13 19:26:04 +02:00
Vincent van Ravesteijn
5d66e91de8 configure.ac: back to development version 2014-04-01 21:41:13 +02:00
Vincent van Ravesteijn
fd7c0c2993 This is LyX 2.1.0rc1 2014-03-24 18:54:57 +01:00
Vincent van Ravesteijn
e83606c98a Not yet rc1: Revert "This is LyX 2.1.0rc1"
This reverts commit c571866e7f.
2014-03-20 22:15:33 +01:00
Vincent van Ravesteijn
c571866e7f This is LyX 2.1.0rc1 2014-03-20 22:11:14 +01: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
Vincent van Ravesteijn
86205f4ba2 Back to development version 2013-11-13 21:54:37 +01:00
Vincent van Ravesteijn
86efb5938d This is lyx2.1.0beta2 2013-11-10 21:08:39 +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
Vincent van Ravesteijn
e117361638 Revert "This is lyx2.1.0beta2"
This was committed by accident.

This reverts commit c85ff678c3.
2013-10-12 02:41:44 +02:00
Vincent van Ravesteijn
c85ff678c3 This is lyx2.1.0beta2 2013-10-12 02:38:15 +02:00
Vincent van Ravesteijn
26df0977d1 Revert "Enable automake subdir-objects"
The reason for adding this option is to kill a warning with automake 1.14. However, the "make distclean" target does not work with the subdir-objects options for older versions of automake. To still allow older versions of automake, we remove this option and live with the warning when using automake 1.14.

This reverts commit 03343bd4e6.
2013-10-05 16:40:18 +02:00
Vincent van Ravesteijn
03343bd4e6 Enable automake subdir-objects 2013-09-29 15:26:25 +02:00
Jean-Marc Lasgouttes
56e2448546 Fix compilation on Solaris 11.1 (bug #8783)
Make sure that the configure script only checks features using the C++ compiler.

Also get rid of our last C files, since they are not compiled nor distributed anyway.
2013-09-09 11:02:14 +02:00
Juergen Spitzmueller
3698fde0d8 Revert part of 16cdf70d0c
Our source is not yet ready for subdir-objects (causes bad lyx/tex2lyx interferences). See http://marc.info/?l=lyx-devel&m=137673178123427&w=2 for details
2013-08-19 10:47:42 +02:00
Enrico Forestieri
b885b80bc0 Fix compiling on platforms lacking setenv
Using autotools, the availability of putenv is not checked, so
the macro HAVE_PUTENV is not defined and compiling stops with
the error "No environment-setting function has been defined."
Thus, also check for putenv.
2013-07-26 20:48:34 +02:00
Stephan Witt
16cdf70d0c enable automake version 1.14 2013-07-26 13:04:32 +02:00
Vincent van Ravesteijn
6386ed4812 Back to development 2013-07-13 23:54:07 +02:00
Vincent van Ravesteijn
290f3af862 This is LyX 2.1.0beta1 2013-07-13 23:13:12 +02:00
Richard Heck
34e3aa4ca2 Fix comment in configure.ac. This was causing a warning during
configuration.
2013-06-11 11:05:31 -04:00
Jean-Marc Lasgouttes
6b8d47a203 Add some more m4 macro files for gettext 2013-06-03 15:37:13 +02:00
Jean-Marc Lasgouttes
d7e2705228 Get rid of all traces of libintl.
This requires to re-add some tests in configure.ac.

Note that the code to generate a Makefile in po/ has been kept.
2013-05-30 22:10:01 +02:00
Jean-Marc Lasgouttes
3ef4db2ce4 Continue pre-spring cleaning of configure script
* build-type=profiling implies -fno-omit-frame-pointer in gcc. This allows sysprof to yield proper call trees
 * remove --enable-grpof option (the build type is enough)
 * remove --with-frontend option since we have only one frontend. Move stuff around and generally simplify the Qt detection code
 * do not check for bc anymore.
 * Update README.
2013-03-19 16:41:14 +01:00
Jean-Marc Lasgouttes
d9cbac2fd3 Small updates to the configure script
Remove some tests that are not needed. Put --enable and --with options together in help output.
2013-03-19 15:38:47 +01:00
Jean-Marc Lasgouttes
04a8db4af8 Get rid of LYX_ERROR in our configure file.
We use the standard AC_MSG_ERROR instead, which just stops the configure process where the problem happens.
2013-03-19 15:15:56 +01:00
Jean-Marc Lasgouttes
1d08d5232d Add a test to configure for minimal Qt version
* use AS_COMPARE_VERSION to check whether the Qt version is correct.
* upgrade minimal requirement for autoconf to version 2.60 (released in 2006!).
2013-03-19 12:59:38 +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
Scott Kostyshak
122d21184f Remove C Compiler information from -version output 2012-10-31 06:07:20 -04:00
Pavel Sanda
b589c86168 Change version identifier from svn to dev (already in branch). 2012-09-24 22:57:02 +02:00
Jean-Marc Lasgouttes
a86de5d3c0 Revert "Read list of translated languages from a file"
This reverts commit ed1515ef69.
2012-09-08 16:59:18 +02:00
Jean-Marc Lasgouttes
ed1515ef69 Read list of translated languages from a file
The previous scheme of loading all possible translations and checking whether the work
is a bit too much "brute force" and causes problems on Mac OS X (documents loaded
with the wrong language).

In the new scheme, autotools install a file lib/installed_translations that contains a list of installed languages (the .gmo files that got installed). This file is read
in Languages::readInstalledTranslations and allows to set the translated() property
of each language.
2012-07-19 00:21:28 +02:00
Georg Baum
26e5f1a8ec Use libmagic for file format detection if available.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40789 a592a061-630c-0410-9148-cb99ea01b6c8
2012-02-21 20:29:44 +00:00
Jean-Marc Lasgouttes
2bf021ee73 Improve support for distributing desktop files and icons
* add proper INSTALL_POSIX conditional for makefiles
* move all the code to Makefile.am
* rename lyx.desktop to lyx.desptop.in and add proper tags to allow handling of program_suffix.
* add code to install desktop entry and icons under the proper name.

I did not touch scons and cmake, I hope it was not necessary.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40531 a592a061-630c-0410-9148-cb99ea01b6c8
2011-12-20 13:11:03 +00:00
Enrico Forestieri
6781444835 Warn user that build will fail if bc is not installed.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39945 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-23 15:35:36 +00:00
Julien Rioux
7ddf5f3ba1 We nowadays require python >=2.4
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@39889 a592a061-630c-0410-9148-cb99ea01b6c8
2011-10-19 20:50:41 +00:00
Pavel Sanda
e265317839 Back to svn.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38565 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-01 23:05:21 +00:00