Test repository to check push and ssh key
Find a file
Jan Holesovsky a3e649c338 git-review: Use the hostname instead of alias.
Change-Id: Ibbcb29b411bf413bf110c7d734ff8dc2763b2708
Reviewed-on: https://gerrit.libreoffice.org/72351
Tested-by: Jenkins
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
2019-05-15 15:13:47 +02:00
.git-hooks Remove unhelpful "Check for whitespace in front of *'s" from .git-hooks 2019-02-13 10:24:26 +01:00
accessibility regenerate PCH headers 2019-05-12 23:46:14 +02:00
android update references about selective debuginfo in android/README 2019-04-17 19:15:22 +02:00
animations clang-tidy modernize-avoid-c-arrays in animations 2019-04-06 18:55:10 +02:00
apple_remote Fix typo 2019-04-11 08:54:41 +02:00
avmedia fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
basctl fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
basegfx Revert "drawinglayer: avoid AA for hairline polygons built from ... 2019-05-14 19:47:32 +02:00
basic Fix typo 2019-05-15 07:07:07 +02:00
bean an uno -> a uno 2019-05-10 14:50:59 +02:00
bin gla11y: whitelist GtkTreeViewColumn as not needing labelling 2019-05-13 16:06:50 +02:00
binaryurp Some uses of C++17 class template argument deduction 2019-02-19 17:39:16 +01:00
bridges an uno -> a uno 2019-05-10 14:50:59 +02:00
canvas fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
chart2 Fix typo 2019-05-15 07:05:54 +02:00
cli_ure fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
codemaker tdf#120703 PVS: Silence V522 warnings 2019-04-14 14:14:36 +02:00
comphelper Resolves: tdf#120423 dispatch against the correct Frame 2019-05-14 17:11:56 +02:00
compilerplugins an uno -> a uno 2019-05-10 14:50:59 +02:00
config_host build: support disabling poppler 2019-03-07 11:43:25 +01:00
configmgr configmgr: workaround GCC9 -Werror=sign-compare in static_assert 2019-05-13 14:36:47 +02:00
connectivity tdf#43157 Clean up OSL_VERIFY (replace with SAL_WARN) 2019-05-14 10:24:47 +02:00
cppcanvas Fix emfplus.cxx cppcanvas/qa 2019-05-13 22:48:33 +02:00
cppu tdf#120703 PVS: V581 ifs with identical conditions 2019-04-27 20:59:34 +02:00
cppuhelper regenerate PCH headers 2019-05-12 23:46:14 +02:00
cpputools fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
cui Resolves: tdf#120423 dispatch against the correct Frame 2019-05-14 17:11:56 +02:00
dbaccess Fix typo 2019-05-15 09:19:45 +02:00
desktop lok: test show/hide status of a window 2019-05-14 17:54:24 +02:00
dictionaries@547d7a6839 Update git submodules 2019-05-06 19:39:22 +02:00
distro-configs There is no --disable-ext-mariadb-connector option any longer 2019-02-25 15:42:35 +02:00
drawinglayer Fix typo 2019-05-15 07:07:43 +02:00
dtrans Don't use resettable/clearable guard where plain guard is enough 2019-04-07 17:53:04 +02:00
editeng tdf#90297 use field colors for math's edit engine 2019-05-14 03:23:20 +02:00
embeddedobj fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
embedserv clang-tidy: Fix suspicious catches of WIP unhandled-self-assignment check 2019-04-10 01:06:19 +02:00
emfio regenerate PCH headers 2019-05-12 23:46:14 +02:00
eventattacher tdf#120703 PVS: remove redundant static casts 2019-02-12 09:04:54 +01:00
extensions fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
external Compile also the palette_neon_intrinsics file for ARM 2019-05-06 12:37:34 +03:00
extras tdf#125010 No compression to mimetype in all embded files 2019-05-14 20:42:01 +02:00
filter Fix typo 2019-05-13 17:25:29 +02:00
forms fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
formula remove unused RefEdit/RefButton 2019-05-11 20:31:04 +02:00
fpicker an uno -> a uno 2019-05-10 14:50:59 +02:00
framework tdf#83722: Restrict the condition only to File > New 2019-05-15 12:33:09 +02:00
helpcompiler std::string has a std::hash specialisation since C++11 2019-04-07 11:50:43 +02:00
helpcontent2@e401921d24 Update git submodules 2019-05-15 10:35:08 +02:00
hwpfilter regenerate PCH headers for the 4 new levels 2019-05-09 11:02:03 +02:00
i18nlangtag Resolves: tdf#123948 add English (Zambia) [en-ZM] to language list 2019-05-04 10:30:22 +02:00
i18npool Related: tdf#123948 add English (Zambia) [en-ZM] locale data 2019-05-04 10:30:33 +02:00
i18nutil loplugin:indentation in helpcompiler..io 2019-02-09 17:07:29 +01:00
icon-themes KJ: Yet another update 2019-05-12 00:30:21 +02:00
idl loplugin:unusedfields look for classes where we can make all the.. 2019-02-27 07:34:52 +01:00
idlc loplugin:cstylecast 2019-02-28 09:30:52 +01:00
include tdf#42949 Fix IWYU warnings in unotools/* 2019-05-15 09:19:00 +02:00
instsetoo_native tdf#122302: Set status message when installing KB2999226 2018-12-24 09:25:12 +01:00
io implement std::hash for css::uno::Reference and rtl::Reference 2019-04-30 08:43:04 +02:00
ios an uno -> a uno 2019-05-10 14:50:59 +02:00
javaunohelper an uno -> a uno 2019-05-10 14:50:59 +02:00
jurt an uno -> a uno 2019-05-10 14:50:59 +02:00
jvmaccess tdf#42949 Fix IWYU warnings in jvmfwk/ & jvmaccess/ 2019-04-26 14:54:54 +02:00
jvmfwk osl/diagnose.h and diagnostics.h are used when OSL_DEBUG_LEVEL >= 2 2019-04-27 08:57:59 +02:00
l10ntools Related: tdf#82184 correct wrong or obsoleted LCIDs for MSI 2019-04-29 19:40:02 +02:00
librelogo LibreLogo: fix RANGE with a single function argument 2019-04-25 20:21:16 +02:00
libreofficekit unipoll: add a --unipoll parameter to gtktiledviewer. 2019-05-10 22:16:42 +02:00
lingucomponent The iOS sv_SE dictionary surely works for sv_FI, too 2019-04-24 16:37:54 +03:00
linguistic improve loplugin simplifyconstruct 2019-04-15 08:37:54 +02:00
lotuswordpro regenerate PCH headers for the 4 new levels 2019-05-09 11:02:03 +02:00
m4 Fix typos 2017-12-14 01:32:22 +01:00
nlpsolver nlpsolver: This is considered internal code 2019-05-13 09:14:44 +02:00
o3tl o3tl::make_unique -> std::make_unique in include/ & o3tl/ 2019-02-20 12:59:28 +01:00
odk an uno -> a uno 2019-05-10 14:50:59 +02:00
offapi an uno -> a uno 2019-05-10 14:50:59 +02:00
officecfg SmartArt: regenerate diagram command 2019-05-14 16:02:26 +02:00
onlineupdate Cut down on -pthread/-lpthread proliferation 2019-04-25 21:27:43 +02:00
oovbaapi Add XWordBasic.FileSaveAs() and implement 2019-04-19 16:06:40 +02:00
oox SmartArt: regenerate diagram command 2019-05-14 16:02:26 +02:00
opencl test in a separate helper process if OpenCL crashes (tdf#112252) 2019-04-29 10:40:12 +02:00
osx Rename Mac OS X to official name macOS in comments and documentation 2018-11-29 14:08:26 +01:00
package regenerate PCH headers 2019-05-12 23:46:14 +02:00
postprocess Use sort on finds to improve deterministic build 2019-04-08 12:01:16 +02:00
pyuno an uno -> a uno 2019-05-10 14:50:59 +02:00
qadevOOo Fix typo 2019-05-13 20:30:43 +02:00
readlicense_oo update credits 2019-04-25 15:09:06 +02:00
registry optimise find/insert pattern 2019-04-19 13:19:31 +02:00
remotebridges New loplugin:external 2018-09-17 09:05:38 +02:00
reportbuilder an uno -> a uno 2019-05-10 14:50:59 +02:00
reportdesign fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
ridljar Fix typo 2018-07-08 10:01:48 +02:00
sal regenerate PCH headers 2019-05-12 23:46:14 +02:00
salhelper tdf#42949 Fix IWYU warnings in salhelper/ 2019-01-09 08:41:50 +01:00
sax Use hasElements to check Sequence emptiness in sax..sdext 2019-05-12 14:18:12 +02:00
sc tdf#114245 : Let both ScDocument::CopyToDocument()... 2019-05-15 13:42:22 +02:00
scaddins re-land "new loplugin typedefparam"" 2019-03-05 12:12:26 +01:00
sccomp o3tl::make_unique -> std::make_unique in include/ & o3tl/ 2019-02-20 12:59:28 +01:00
schema tdf#123557 PPTX: Export timenode condition targets. 2019-02-27 11:11:32 +01:00
scp2 tdf#116431 Make the string "LibreOffice (Safe Mode)" translatable 2019-05-15 12:38:30 +02:00
scripting fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
sd Add unit test for pptx import, crop to shape 2019-05-15 09:10:40 +02:00
sdext Presentation minimizer: Handle also presentation.GraphicObjectShape URL 2019-05-14 22:06:11 +02:00
setup_native tdf#119044 setup_native: let -core depend on -ooofonts 2019-05-07 13:08:56 +02:00
sfx2 tdf#42949 Fix IWYU warnings in unotools/* 2019-05-15 09:19:00 +02:00
shell Reimplement IObjectSafety from aggregate object into ancestor 2019-05-15 11:19:54 +02:00
slideshow fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
smoketest Cut down on -pthread/-lpthread proliferation 2019-04-25 21:27:43 +02:00
solenv SmartArt: regenerate diagram command 2019-05-14 16:02:26 +02:00
soltools Fix conditional around closing #pragma GCC diagnostic pop 2019-04-29 14:27:56 +02:00
sot regenerate PCH headers for the 4 new levels 2019-05-09 11:02:03 +02:00
starmath SM constify SmElement 2019-05-15 11:51:41 +02:00
stoc Use hasElements to check Sequence emptiness in sfx2..svx 2019-05-03 10:08:31 +02:00
store loplugin:sequentialassign in starmath..svl 2019-04-14 08:29:08 +02:00
svgio regenerate PCH headers for the 4 new levels 2019-05-09 11:02:03 +02:00
svl tdf#125215 Assertion when closing Database/Advanced Settings 2019-05-13 15:18:22 +02:00
svtools handle empty tools::Rectangle in svtoools 2019-05-13 08:15:32 +02:00
svx drop some unneeded includes 2019-05-13 13:57:14 +02:00
sw tdf#118699 DOCX import: don't add numbering 2019-05-15 08:18:17 +02:00
swext Help files: http -> https 2018-11-15 04:50:23 +01:00
sysui an uno -> a uno 2019-05-10 14:50:59 +02:00
test fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
testtools Use hasElements to check Sequence emptiness in [t-u]* 2019-05-02 13:37:13 +02:00
toolkit fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
tools Switch everyone to stricter GetColorError 2019-05-14 03:20:50 +02:00
translations@acd9333176 Update git submodules 2019-05-13 15:55:43 +02:00
ucb tdf#124962: Reduce risk of g_main_loop_run from within gio MountOperation 2019-05-09 13:14:00 +02:00
ucbhelper Use hasElements to check Sequence emptiness in [t-u]* 2019-05-02 13:37:13 +02:00
udkapi an uno -> a uno 2019-05-10 14:50:59 +02:00
uitest Fix one more get_url_for_data_file 2019-04-10 18:16:41 +02:00
UnoControls Simplify Sequence iterations in UnoControls 2019-05-09 08:48:32 +02:00
unodevtools an uno -> a uno 2019-05-10 14:50:59 +02:00
unoidl tdf#42949 Add filter file to unoidl/ 2019-04-27 17:46:09 +02:00
unoil Use https instead of http 2018-04-16 15:57:08 +02:00
unotest an is used before a vowel sound 2019-05-10 10:01:13 +02:00
unotools tdf#42949 Fix IWYU warnings in unotools/* 2019-05-15 09:19:00 +02:00
unoxml fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
ure remove more rtl::OUString and OString prefixes 2018-10-24 14:43:34 +02:00
uui an is used before a vowel sound 2019-05-10 10:01:13 +02:00
vbahelper fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
vcl Resolves: tdf#125266 hang on selecting read online help 2019-05-14 18:32:05 +02:00
winaccessibility an uno -> a uno 2019-05-10 14:50:59 +02:00
wizards Access2Base - Error handling extended 2019-04-26 15:22:22 +02:00
writerfilter fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
writerperfect fix wrong SET/QUERY flags passed to uno::Reference 2019-05-13 08:15:27 +02:00
xmerge Fix typo 2019-05-04 03:36:40 +02:00
xmlhelp improve loplugin simplifyconstruct 2019-04-15 08:37:54 +02:00
xmloff tdf#107592 Impress PPS save to ODP slow 2019-05-13 13:23:00 +02:00
xmlreader tdf#42949 Fix IWYU warnings in xmlreader/ 2019-02-04 10:07:20 +01:00
xmlscript Simplify Sequence iterations in xmlscript, xmlsecurity 2019-05-09 18:21:59 +02:00
xmlsecurity xmlsecurity: make DocumentSignatureManager members private 2019-05-15 09:04:41 +02:00
.buckconfig Add build toolchain to upload LibreOffice API to Maven Central 2015-12-03 23:32:11 +00:00
.buckversion Add build toolchain to upload LibreOffice API to Maven Central 2015-12-03 23:32:11 +00:00
.clang-format Retrofit "KeepEmptyLinesAtTheStartOfBlocks: false" into .clang-format 2017-11-08 15:35:18 +01:00
.editorconfig We have some Objective-C source files, too 2017-12-01 12:59:43 +02:00
.gitattributes Ignore schema files for src tarball generation 2016-08-30 23:59:15 +00:00
.gitignore No more need to generate lo.xcent from lo.xcent.in 2018-12-18 09:37:00 +01:00
.gitmodules uset https:// instead of git:// for submodules 2018-12-20 19:52:51 +01:00
.gitreview git-review: Use the hostname instead of alias. 2019-05-15 15:13:47 +02:00
autogen.sh autogen.sh: add --help description about the --with-distro switch 2019-03-26 09:13:50 +01:00
BUCK Add build toolchain to upload LibreOffice API to Maven Central 2015-12-03 23:32:11 +00:00
config.guess Update config.{guess,sub} 2019-05-13 10:07:05 +02:00
config.sub Update config.{guess,sub} 2019-05-13 10:07:05 +02:00
config_host.mk.in if ccache is enabled, by default also enable CCACHE_DEPEND 2019-05-09 11:03:15 +02:00
config_host_lang.mk.in gbuild: allow to react on change in configured langs 2015-03-25 17:52:20 +01:00
configure.ac bump product version to 6.3.0.0.alpha1+ 2019-05-13 16:21:51 +02:00
COPYING Licencing files 2011-01-11 21:49:39 +00:00
COPYING.LGPL Licencing files 2011-01-11 21:49:39 +00:00
COPYING.MPL Targetted text updates, with seasonable changes before l10n freeze. 2013-12-13 17:00:07 +00:00
download.lst Related: tdf#124942 upgrade epoxy to 1.5.3 2019-05-03 16:50:23 +02:00
g ./g: don't exit early on ./g checkout -f 2018-07-02 23:51:08 +02:00
install-sh update install-sh to the automake-1.11 version 2012-02-26 13:39:54 -05:00
leak-suppress.txt migrate to boost::gettext 2017-07-21 08:20:50 +01:00
Library_merged.mk gbuild: Remove MSVC 2013 legacy code 2017-04-21 18:18:44 +02:00
lo.xcent No more need to generate lo.xcent from lo.xcent.in 2018-12-18 09:37:00 +01:00
logerrit Fix typo 2019-03-05 07:13:49 +01:00
Makefile.fetch cURL: follow redirects 2019-02-25 13:18:14 +01:00
Makefile.gbuild updater: workaround cygwin python bug around command line arguments 2017-08-05 05:31:06 +02:00
Makefile.in That bin directory should no longer be there 2019-04-25 17:02:41 +02:00
README.cross Rename Mac OS X to official name macOS in comments and documentation 2018-11-29 14:08:26 +01:00
README.md Bump (Linux) GCC baseline to 7.0.0 2018-12-06 23:00:56 +01:00
README.Solaris remove use of Archive::Zip 2016-06-04 08:09:56 +02:00
Repository.mk test in a separate helper process if OpenCL crashes (tdf#112252) 2019-04-29 10:40:12 +02:00
RepositoryExternal.mk build: support disabling poppler 2019-03-07 11:43:25 +01:00
RepositoryFixes.mk Rename Mac OS X to official name macOS in comments and documentation 2018-11-29 14:08:26 +01:00
RepositoryModule_build.mk migrate to boost::gettext 2017-07-21 08:20:50 +01:00
RepositoryModule_host.mk Moving mysqlc into connectivity as a library 2018-08-24 17:19:51 +02:00
sanitize-ubsan-blacklist file for ci-based ubsan build 2015-10-31 01:32:18 -05:00
setup.cfg pep8 -> pycodestyle 2018-10-16 14:29:06 +02:00
TEMPLATE.SOURCECODE.HEADER Add fill-column: 100 to the Emacs mode line 2016-11-08 14:59:30 +02:00

LibreOffice

Coverity Scan Build Status CII Best Practices

LibreOffice is an integrated office suite based on copyleft licenses and compatible with most document formats and standards. Libreoffice is backed by The Document Foundation, which represents a large independent community of enterprises, developers and other volunteers moved by the common goal of bringing to the market the best software for personal productivity. LibreOffice is open source, and free to download, use and distribute.

A quick overview of the LibreOffice code structure.

Overview

You can develop for LibreOffice in one of two ways, one recommended and one much less so. First the somewhat less recommended way: it is possible to use the SDK to develop an extension, for which you can read the API docs here and here. This re-uses the (extremely generic) UNO APIs that are also used by macro scripting in StarBasic.

The best way to add a generally useful feature to LibreOffice is to work on the code base however. Overall this way makes it easier to compile and build your code, it avoids any arbitrary limitations of our scripting APIs, and in general is far more simple and intuitive - if you are a reasonably able C++ programmer.

The build chain and runtime baselines

These are the current minimal operating system and compiler versions to run and compile LibreOffice, also used by the TDF builds:

  • Windows:
    • Runtime: Windows 7
    • Build: Cygwin + Visual Studio 2017
  • macOS:
    • Runtime: 10.10
    • Build: 10.13.2 + Xcode 9.3
  • Linux:
    • Runtime: RHEL 6 or CentOS 6
    • Build: either GCC 7.0.0; or Clang 5.0.2 with libstdc++ 7.3.0
  • iOS (only for LibreOfficeKit):
    • Runtime: 11.4 (only support for newer i devices == 64 bit)
    • Build: Xcode 9.3 and iPhone SDK 11.4

If you want to use Clang with the LibreOffice compiler plugins, the minimal version of Clang is 5.0.2. Since Xcode doesn't provide the compiler plugin headers, you have to compile your own Clang to use them on macOS.

You can find the TDF configure switches in the distro-configs/ directory.

To setup your initial build environment on Windows and macOS, we provide the LibreOffice Development Environment (LODE) scripts.

For more information see the build instructions for your platform in the TDF wiki.

The important bits of code

Each module should have a README file inside it which has some degree of documentation for that module; patches are most welcome to improve those. We have those turned into a web page here:

https://docs.libreoffice.org/

However, there are two hundred modules, many of them of only peripheral interest for a specialist audience. So - where is the good stuff, the code that is most useful. Here is a quick overview of the most important ones:

Module Description
sal/ this provides a simple System Abstraction Layer
tools/ this provides basic internal types: 'Rectangle', 'Color' etc.
vcl/ this is the widget toolkit library and one rendering abstraction
framework UNO framework, responsible for building toolbars, menus, status bars, and the chrome around the document using widgets from VCL, and XML descriptions from /uiconfig/ files
sfx2/ legacy core framework used by Writer/Calc/Draw: document model / load/save / signals for actions etc.
svx/ drawing model related helper code, including much of Draw/Impress

Then applications

Module Description
desktop/ this is where the 'main' for the application lives, init / bootstrap. the name dates back to an ancient StarOffice that also drew a desktop
sw/ Writer
sc/ Calc
sd/ Draw / Impress

There are several other libraries that are helpful from a graphical perspective:

Module Description
basegfx/ algorithms and data-types for graphics as used in the canvas
canvas/ new (UNO) canvas rendering model with various backends
cppcanvas/ C++ helper classes for using the UNO canvas
drawinglayer/ View code to render drawable objects and break them down into primitives we can render more easily.

Rules for #include directives (C/C++)

Use the "..." form if and only if the included file is found next to the including file. Otherwise, use the <...> form. (For further details, see the mail Re: C[++]: Normalizing include syntax ("" vs <>).)

The UNO API include files should consistently use double quotes, for the benefit of external users of this API.

loplugin:includeform (compilerplugins/clang/includeform.cxx) enforces these rules.

Finding out more

Beyond this, you can read the README files, send us patches, ask on the mailing list libreoffice@lists.freedesktop.org (no subscription required) or poke people on IRC #libreoffice-dev on irc.freenode.net - we're a friendly and generally helpful mob. We know the code can be hard to get into at first, and so there are no silly questions.