Test repository to check push and ssh key
Find a file
Xisco Fauli 272577e68a tdf#111988 Bump OSX version in README
Change-Id: I41a5be165af21c197c4f9d4f40f0ff27c80a7168
Reviewed-on: https://gerrit.libreoffice.org/55061
Reviewed-by: Sophia Schröder <sophia.schroeder@libreoffice.org>
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
2018-05-30 19:28:30 +02:00
.git-hooks Restore .git-hooks/commit-msg accidentally removed earlier 2018-05-22 11:48:59 +02:00
accessibility Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
android android janitor... convert chained ifs to switch statement 2018-05-16 16:37:18 +02:00
animations
apple_remote
avmedia include guard should be at the end of the file 2018-05-24 20:46:18 +02:00
basctl loplugin:useuniqueptr in basctl::CheckBox 2018-05-28 08:45:55 +02:00
basegfx loplugin:passstuffbyref 2018-05-25 21:46:32 +02:00
basic Factor out AsyncQuitHandler to be usable elsewhere, too 2018-05-30 11:28:35 +02:00
bean Use https instead of http 2018-04-16 15:57:08 +02:00
bin find-unneeded-includes: Make the output user friendlier 2018-05-23 09:26:24 +02:00
binaryurp
bridges loplugin:stringconcat, loplugin:sallogareas (clang-cl) 2018-05-15 09:44:03 +02:00
canvas loplugin:unusedfields in avmedia..comphelper 2018-05-22 11:16:54 +02:00
chart2 weld SvxTransformTabDialog 2018-05-29 21:49:24 +02:00
cli_ure tdf#94265: use install directory on delay load failure 2018-04-09 09:06:46 +02:00
codemaker coverity#1019311 silence Unchecked return value 2018-01-26 13:01:47 +00:00
comphelper loplugin:unusedfields-in-constructor in various 2018-05-29 14:37:12 +02:00
compilerplugins loplugin:useuniqueptr in ODbTypeWizDialog 2018-05-28 13:54:42 +02:00
config_host rename config_extension_update.h.in to config_extensions.h.in 2018-05-23 11:44:57 +02:00
configmgr Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
connectivity tdf#117446: FB mig, (VAR)BINARY, fix memory management 2018-05-28 20:29:29 +02:00
cppcanvas loplugin:unusedfields-in-constructor in various 2018-05-29 14:37:12 +02:00
cppu Fix typos 2018-05-22 18:39:39 +02:00
cppuhelper loplugin:unusedfields-in-constructor in various 2018-05-29 14:37:12 +02:00
cpputools
cui Fix condition 2018-05-30 14:28:01 +02:00
dbaccess loplugin:useuniqueptr in OTableSubscriptionDialog 2018-05-29 09:58:26 +02:00
desktop tdf#96099 Remove some trivial typedef std::vector 2018-05-28 09:39:47 +02:00
dictionaries@6c85a19c88 Updated core 2018-05-29 22:11:07 +02:00
distro-configs remove Linux ("UNX") systray "Quickstarter" 2018-05-23 12:02:59 +02:00
drawinglayer forcepoint#41 null deref 2018-05-29 10:03:30 +02:00
dtrans Fix typos 2018-04-27 07:25:38 +02:00
editeng SID_FIELD appears to be in use 2018-05-25 21:47:10 +02:00
embeddedobj embeddedobj: document OCommon/DummyEmbeddedObject 2018-05-30 09:04:12 +02:00
embedserv Use for-range loops in embeddedobj, embedserv and formula 2018-03-17 18:30:39 +01:00
emfio make Bitmap/BitmapEx constructors explicit 2018-05-12 19:00:00 +02:00
eventattacher Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
extensions Fix typos in SAL_WARNs: The class is called CXTypeInfo, not CxTypeInfo 2018-05-30 15:35:23 +03:00
external Don't ever attempt to initialise a std::locale with a UTF-8 locale on Windows 2018-05-17 11:21:02 +02:00
extras add --enable-build-opensymbol option to build opens___.ttf from source 2018-05-29 15:33:05 +02:00
filter filter: fix build of embedded ole stream dumper 2018-05-29 03:05:50 +02:00
forms Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
formula tdf#116511: Drop questionable check for more keyboard input 2018-05-18 09:51:59 +02:00
fpicker Bitmap->BitmapEx in FixedBitmap 2018-05-30 08:40:05 +02:00
framework tdf#117872: Revert "tdf#115284: Unify LibreOffice and system full-screen..." 2018-05-30 13:50:15 +02:00
helpcompiler loplugin:useuniqueptr in StreamTable 2018-04-16 08:22:20 +02:00
helpcontent2@7fe5629285 Updated core 2018-05-27 00:23:10 +02:00
hwpfilter loplugin:redundantcast improvements for floating-integer conversions 2018-05-17 08:22:14 +02:00
i18nlangtag Remove presumably unused instsetoo_native/util/pack.lst 2018-05-24 21:01:17 +02:00
i18npool ... or not present 2018-05-24 21:27:18 +02:00
i18nutil loplugin:redundantfcast look for redundant copies in return statements 2018-03-12 07:37:24 +01:00
icon-themes tdf#117481 Karasa Jaga: Add dbaccess icons for base sidebar 2018-05-28 08:27:52 +02:00
idl loplugin:virtualdown in various 2018-03-30 12:55:56 +02:00
idlc fflush() followed by fclose() is redundant 2018-04-06 06:35:02 +02:00
include Add Caption property to ooo::vba::XApplicationBase 2018-05-30 19:26:24 +02:00
instsetoo_native Remove presumably unused instsetoo_native/util/pack.lst 2018-05-24 21:01:17 +02:00
io Use for-range loops in hwpfilter, i18n*, idl* and io 2018-03-18 11:33:16 +01:00
ios iOS, update source to xcode 9.3 swift 4.1 2018-04-02 12:28:12 +02:00
javaunohelper Use https instead of http 2018-04-16 15:57:08 +02:00
jurt Use https instead of http 2018-04-16 15:57:08 +02:00
jvmaccess Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
jvmfwk Keep strings alive again as necessary 2018-04-12 08:26:34 +02:00
l10ntools tdf#117729 add Frisian (fy) UI langauge 2018-05-23 13:41:53 +02:00
librelogo
libreofficekit libreofficekit: Run gla11y on gtv.ui 2018-05-24 11:09:56 +02:00
lingucomponent tdf#112442: Use list of available dictionaries, not available locales 2018-05-18 09:17:04 +02:00
linguistic Defer grammar checker thread creation until use. 2018-04-16 22:50:24 +02:00
lotuswordpro loplugin:unusedfields-in-constructor in various 2018-05-29 14:37:12 +02:00
m4
mysqlc Replace Galaxy icon theme by Colibre 2018-05-05 10:19:26 +02:00
nlpsolver Fix typos 2018-01-27 08:49:38 +01:00
o3tl New o3tl::temporary to simplify calls of std::modf 2018-05-17 21:03:12 +02:00
odk Fix typos 2018-05-27 10:12:35 +02:00
offapi Fix typos 2018-05-27 10:12:35 +02:00
officecfg tdf#116498 Use win metrics for 'DIN Light' font 2018-05-30 09:56:18 +02:00
onlineupdate updater: Tone down the geekiness in user-facing strings 2018-03-20 05:35:42 -06:00
oovbaapi Add Caption property to ooo::vba::XApplicationBase 2018-05-30 19:26:24 +02:00
oox loplugin:unusedfields-in-constructor in various 2018-05-29 14:37:12 +02:00
opencl convert a<b?a:b to std::min(a,b) 2018-01-15 07:26:17 +01:00
osx Add sal/osl/unx/file.cxx for debugging convenience 2018-05-21 17:14:44 +03:00
package Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
postprocess CustomTarget_registry.mk: add new $(SYSTEM_LIBNUMBERTEXT_DATA) to sed... 2018-05-06 11:48:05 +02:00
pyuno Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
qadevOOo Fix typos 2018-05-27 10:12:35 +02:00
readlicense_oo tdf#111988 Bump OSX version in README 2018-05-30 19:28:30 +02:00
registry loplugin:unusedfields in formula..registry 2018-05-17 11:59:28 +02:00
remotebridges
reportbuilder use the standard name pattern for a package 2018-04-15 13:49:53 +02:00
reportdesign loplugin:unusedfields-in-constructor in various 2018-05-29 14:37:12 +02:00
ridljar Use https instead of http 2018-04-16 15:57:08 +02:00
sal loplugin:unusedfields 2018-05-28 08:45:11 +02:00
salhelper salhelper: MSVC: pragma warning: make more specific, remove obsolete 2018-02-02 05:58:10 +01:00
sax Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
sc sc: Insert a space for consistency 2018-05-30 14:44:35 +02:00
scaddins New o3tl::temporary to simplify calls of std::modf 2018-05-17 21:03:12 +02:00
sccomp loplugin:redundantcast improvements for floating-integer conversions 2018-05-17 08:22:14 +02:00
schema
scp2 Add CLSID for Writer.Application and LocalServer32 for that 2018-05-30 14:29:00 +02:00
scripting Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
sd sd: allow ruler to respond to switching active cell faster. 2018-05-30 15:20:16 +02:00
sdext loplugin:unusedfields in sd 2018-05-17 08:40:22 +02:00
setup_native loplugin:nullptr (clang-cl) 2018-05-01 15:15:38 +02:00
sfx2 tdf#112034 , tdf#107266 label color on basis of persona and persona 2018-05-30 18:56:20 +02:00
shell Fix typos 2018-05-27 10:12:35 +02:00
slideshow Fix typo 2018-05-24 08:19:45 +02:00
smoketest Fix typos 2018-04-14 08:05:36 +02:00
solenv gbuild: avoid -Wunused-macros with clang and icecream 2018-05-30 12:18:39 +02:00
soltools Fix typos 2018-05-27 20:26:31 +02:00
sot Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
starmath weld SvxSwPosSizeTabPage 2018-05-29 10:07:40 +02:00
stoc We might need to handle form controls as properties for OLE clients after all 2018-05-30 10:13:04 +02:00
store loplugin:countusersofdefaultparams 2018-04-28 08:08:52 +02:00
svgio loplugin:useuniqueptr in pathTextBreakupHelper 2018-05-28 08:46:55 +02:00
svl Add unit test for tdf#117819 2018-05-30 16:22:06 +02:00
svtools forcepoint#43 endless update ole2 preview recursion 2018-05-29 17:34:01 +02:00
svx svx/sw: set ruby position correctly in the ruby dialog. 2018-05-30 15:03:33 +02:00
sw Revert "ww8export: Fix testTableKeep" 2018-05-30 13:41:10 +02:00
swext remove notice about cite.php 2018-03-24 14:05:45 +01:00
sysui revert accidentially committed part 2018-05-24 11:52:07 +02:00
test use BitmapEx in the screenshot stuff 2018-05-30 08:40:20 +02:00
testtools Use PYTHON_FOR_BUILD instead of calling python directly 2018-02-13 15:34:21 +01:00
toolkit Fix typos 2018-05-05 09:24:40 +02:00
tools demangle context type name in DBG_UNHANDLED_EXCEPTION 2018-05-26 15:51:07 +02:00
translations@ed31445a5c Updated core 2018-05-24 15:19:19 +02:00
ucb Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
ucbhelper loplugin:redundantfcast look for redundant copies in return statements 2018-03-12 07:37:24 +01:00
udkapi Fix typos 2018-04-17 15:15:10 +02:00
uitest Typos in change 53934 2018-05-09 19:59:35 +02:00
UnoControls Fix typos 2018-04-16 23:19:34 +02:00
unodevtools Fix typos 2018-03-15 20:09:53 +01:00
unoidl Typo in error message 2018-03-16 16:18:45 +01:00
unoil Use https instead of http 2018-04-16 15:57:08 +02:00
unotest Fix typos 2018-05-05 09:21:24 +02:00
unotools make CharClass also mutex-protect calls to its dependent class 2018-05-30 07:13:57 +02:00
unoxml Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
ure Remove std::bad_alloc -> css::uno::RuntimeException mappings 2018-04-09 21:25:18 +02:00
uui Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
vbahelper Add Caption property to ooo::vba::XApplicationBase 2018-05-30 19:26:24 +02:00
vcl tdf#112034 , tdf#107266 label color on basis of persona and persona 2018-05-30 18:56:20 +02:00
winaccessibility Fix typo 2018-04-13 15:41:09 +02:00
wizards Access2Base - FIX Sql errors when apostrophe in table names 2018-05-13 15:06:55 +02:00
writerfilter loplugin:unusedfields-in-constructor in various 2018-05-29 14:37:12 +02:00
writerperfect loplugin:unusedmethods 2018-05-28 08:44:58 +02:00
xmerge Fix typos 2018-04-16 23:19:34 +02:00
xmlhelp loplugin:unusedfields in tools..xmlhelp 2018-05-17 08:39:51 +02:00
xmloff Load ODF signature line signed images 2018-05-30 14:19:28 +02:00
xmlreader Silence -Werror=implicit-fallthrough= (upcoming GCC 8) 2018-01-23 14:17:03 +01:00
xmlscript Improve re-throwing of UNO exceptions 2018-05-25 21:46:49 +02:00
xmlsecurity Fix comments 2018-05-30 12:26:26 +02:00
.buckconfig
.buckversion
.clang-format
.editorconfig
.gitattributes
.gitignore Ignore Emacs lock files 2018-01-30 11:22:54 +01:00
.gitmodules
.gitreview
autogen.sh Don't set autogen.sh KEY=VALUE arguments as environment variables 2018-01-19 08:19:02 +01:00
BUCK
config.guess Update config.{guess,sub} 2018-01-20 20:48:41 +01:00
config.sub Update config.{guess,sub} 2018-01-20 20:48:41 +01:00
config_host.mk.in add --enable-build-opensymbol option to build opens___.ttf from source 2018-05-29 15:33:05 +02:00
config_host_lang.mk.in
configure.ac micro-optimization: do not check for ant if we don't need it 2018-05-29 15:33:17 +02:00
COPYING
COPYING.LGPL
COPYING.MPL
download.lst add --enable-build-opensymbol option to build opens___.ttf from source 2018-05-29 15:33:05 +02:00
g Revert "g: ignore submodule changes" 2018-03-12 20:38:49 +01:00
install-sh
leak-suppress.txt
Library_merged.mk
lo.xcent.in
logerrit
Makefile.fetch add --enable-build-opensymbol option to build opens___.ttf from source 2018-05-29 15:33:05 +02:00
Makefile.gbuild
Makefile.in Makefile: re-run configure when download.lst changes 2018-05-08 19:53:06 +02:00
README.cross
README.md iOS, bump versions 2018-04-01 18:21:29 +02:00
README.Solaris
Repository.mk libreofficekit: Run gla11y on gtv.ui 2018-05-24 11:09:56 +02:00
RepositoryExternal.mk Fix dependencies for CppunitTest_svl_qa_cppunit.mk 2018-05-17 16:30:20 +02:00
RepositoryFixes.mk Revert "Remove dead HSQLDB driver" 2018-04-12 09:09:37 +02:00
RepositoryModule_build.mk
RepositoryModule_host.mk
sanitize-ubsan-blacklist
TEMPLATE.SOURCECODE.HEADER

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 2015 Update 3
  • macOS:
    • Runtime: 10.9
    • Build: 10.12 + Xcode 8
  • Linux:
    • Runtime: RHEL 6 or CentOS 6
    • Build: GCC 4.8.1 or Clang
  • iOS (only for LibreOfficeKit):
    • Runtime: 11.3 (only support for newer i devices == 64 bit)
    • Build: Xcode 9.3 and iPhone SDK 11.3

At least Clang 3.4.2 is known to be too old to pass the configure.ac check "whether $CXX supports C++17, C++14, or C++11" in its current form (due to the #pragma GCC diagnostic ignored "-Wpragmas" that it does not understand).

If you want to use Clang with the LibreOffice compiler plugins, the minimal version of Clang is 3.8. 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.

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.