Fixes and improvements to support Precompiled Headers
on Linux.
Change-Id: I8145c146b0dba56c7a4d0fdf9c330164b67ada53
Reviewed-on: https://gerrit.libreoffice.org/21307
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Ashod Nakashian <ashnakash@gmail.com>
A few icons are still left in the folder as these are used as fallback for tango.
See industrial/README for details.
Change-Id: Iaeb672609cd57bba5707cbafbfe295bfb8c5011d
Reviewed-on: https://gerrit.libreoffice.org/19149
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Tested-by: Adolfo Jayme Barrientos <fitojb@ubuntu.com>
Improved the isolation of windows headers.
Specifically, RGB macro is better handled now.
Change-Id: I0eeea16d0de9da3455810c80b0715f7b54ae8c3f
Reviewed-on: https://gerrit.libreoffice.org/20039
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Set up the toolchain to create sources and javadocs artifacts in
addition to JARs created during the build. Use Buck build tool for
that: [1]. This is a fork of Google's build tool Blaze, created by
Xooglers at Facebook. This build tool (like Blaze itself) uses
Python to write build files.
Add needed tools and build files to install LibreOffice API artifacts
to local Maven repository or deploy them to Maven Central.
To build all needed artifacts LibreOffice must be built regularly
with GNU make first. To build the rest of the API (sources and
javadocs):
$> buck build api
To replace version number with upcoming release version:
$> solenv/bin/version.py 5.1.0
To install the API to local Maven repository:
$> buck build api_install
To deploy the API to Maven Central:
$> buck build api_deploy
Detailed documentation is added to document the prerequisites and
the workflow to upload LibreOffice API to Maven Central.
* [1] https://buckbuild.com
Change-Id: Ibdd552a01110836703bc069abe829b9921491cac
Reviewed-on: https://gerrit.libreoffice.org/20343
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Catching the needed information and the state machine is split.
gbuild-to-ide only finds 27 of 93 exe, due to the state machine
sequence:
CXXOBJECTS for exe1
CXXOBJECTS for exe2
Recipe to execute for exe2
Recipe to execute for exe1
only identifies exe2 and leaves exe1 without a project.
Solution is to have an array of state one for all pending exe.
This patch only contains the split
Change-Id: I2539f10a9850d956a85b6993b26561b1970575df
Reviewed-on: https://gerrit.libreoffice.org/20254
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Björn Michaelsen <bjoern.michaelsen@canonical.com>
The defines we use to build are needed to correctly
parse the code, and find some types like OUString.
Change-Id: I3b3aaa51c4637beed113738503c8ab1a967c9149
This patch generated a setting file for per module. When imported the
eclipsesettingfile.xml, underlined include lines are clearing up.
Setting file includes included file paths for per module and provides
correct build. .project file generator deleted because eclipse
is creating .project file and overriding it.
This adds a new property to the parser that stores each module.
Change-Id: Ia10bb37c7c3fdb444a5b79ddf502b962e8ee5736
Signed-off-by: Gulsah Kose <gulsah.1004@gmail.com>
and improve the script a little
Change-Id: I2792ea4dd5df3a50736fbe209225c3f16fb86b84
Reviewed-on: https://gerrit.libreoffice.org/20033
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
Ported update_pch.sh to Python with improved performance
and features. The new script is invoked from the same
update_pch.sh which calls it for each library in
parallel, although it can be invoked directly.
The ported script (update_pch) updates all PCH files
in ~15 seconds where the old script took ~4500 seconds.
In addition, the new script supports 3-tiered headers
(system, module, and local) and is very flexible to
support other improvement. It has a per-library
optimal configuration settings that can be updated
using another new scripts (update_pch_autotune.sh)
which finds optimal per-PCH settings.
PCH files have been generated using the new scripts
which builds significantly faster (2-3x, depending
on module and configuration) and the intermediate
binaries are noticably smaller (by several GBs).
The new script stamps each generated PCH file with
the command that generated it to make it trivial
for users to update them, and also adds the command
to invoke another script (update_pch_bisect) that
helps find missing headers or conflicting headers
that may break the build after updating the PCH.
Finally update_pch has built-in unit-tests for
makefile parsing and other core functionality.
Change-Id: Ib933b50e50374d7e2e7e3e95ba8799b0cc8a27fa
Reviewed-on: https://gerrit.libreoffice.org/19965
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Add omitted APPDATA_SOURCE_DIR for *.appdata.xml files
Avoid gnu rmdir by using portable invocation
Change-Id: I15a507f3d181f27c86b5332d58a9d76b31eb2fd1
Reviewed-on: https://gerrit.libreoffice.org/18588
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
When running make vs2013-ide-integration on windows, the manifest
targets cause duplicate library/executable entries to be output in
the Visual Studio solution files, causing errors.
Change-Id: I6b0ce38a3ba84f7f54741e4974264e2c4c7b201a
Reviewed-on: https://gerrit.libreoffice.org/18719
Reviewed-by: Tor Lillqvist <tml@collabora.com>
Tested-by: Tor Lillqvist <tml@collabora.com>
It would require NSS which I just decided to skip. If/when we patch it
to support native iOS (and OS X?) crypto APIs, re-consider. Or
something.
Now the TiledLibreOffice iOS demo app builds again.
Change-Id: I2816a49bbdbde5a8f9d3b9fcdfff420bdca05ff8
These source files relied on pch to include
these missing headers (at least on Windows).
Also included the script used to find the
missing includes. The script is self-contained
and includes unittests. It detects superfluous
includes and required includes (which was used
to restore the includes in this patch).
Change-Id: I7ee09e5c712f42d5f6c3524898bc62dda78f5cc0
Reviewed-on: https://gerrit.libreoffice.org/18208
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
This reverts commit 93cd7b78c29c11ccc87c19c845c6617acb834630.
We need to generate project files for unnamed projects as they seem to
correspond to libraries. If that causes problems for the msvc
integration (which seems strange) then we need to handle these problems
in the MSVC generator and not in the parser.
It also includes:
Revert "Clean trailing whitespace"
This reverts commit 7d92b27aff3b4d1c59aef9866003f4d001c0fc25.
exedir has to be in the c:/foo form, instead of /cygdrive/c/foo,
otherwise a native wrapper set by LO_TRACE won't understand it.
With this, it's possible to use DrMemory on executables invoked by
bin/run.
Change-Id: I5332342fdbf7d9e4859360dd7fbd3d74c149b2dc
That project file handles 12 global build options :
6 about tests, 3 about clean, 2 about l10n, 1 default.
There is one run command to launch 'soffice'.
Note that QtCreator will add automatically run commands for each subproject.
Change-Id: I3650a9041654cbec7d51d8cbb7951a11ed49aad5
Reviewed-on: https://gerrit.libreoffice.org/17458
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Samuel Mehrbrodt <s.mehrbrodt@gmail.com>