README 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240
  1. LibreOffice is a productivity suite that is compatible with other major
  2. office suites, and available on a variety of platforms. It is free
  3. software and therefore free to download, use and distribute.
  4. This script builds a Slackware package from the official source
  5. distributed by The Document Foundation.
  6. The provided swlodc.sh script can test if the auto detected dependency
  7. variables in the sSlackBuild are still sane compared to the current
  8. build environment.
  9. If the $JAVA_HOME environment variable is set according to the
  10. instructons at https://docs.slackware.com/howtos:software:java then
  11. java will be used. Otherwise LibreOffice will build without java.
  12. To build libreoffice without java even if $JAVA_HOME is set then use:
  13. JAVA="no" ./libreoffice.SlackBuild
  14. To disable building with all system libraries and use internal libaries
  15. provided by LibreOffice instead use:
  16. SYSTEM_LIBS="no" ./libreoffice.SlackBuild
  17. or to disable libaries not included in the Slackware main tree use:
  18. SBO_LIBS="no" ./libreoffice.SlackBuild
  19. LibreOffice uses several gb of space to compile, it is recommended to
  20. make sure the $TMP directory has enough space before proceeding. It can
  21. be set with:
  22. TMP="/tmp/SBO" ./libreoffice.SlackBuild
  23. If the additional source files are not downloaded then LibreOffice will
  24. download any sources it requires from the upstream LibreOffice server.
  25. This will require a network connection during the build process.
  26. LibreOffice can be installed to /opt/libreoffice instead of /usr with:
  27. OPT="yes" ./libreoffice.SlackBuild
  28. By default LibreOffice will compile with one job as compiling can be
  29. intensive on the cpu. To set the number of make jobs higher use:
  30. NUMBJOBS="2" ./libreoffice.SlackBuild
  31. LibreOffice will try compile with ccache if available, to effectively
  32. use it the cache size has to be at least 8 gb without debug symbols.
  33. With debug symbols around 32 gb of space will be required. To disable
  34. using the ccache use:
  35. CCACHE="no" ./libreoffice.SlackBuild
  36. To build the myspell dictionaries use:
  37. DICT="yes" ./libreoffice.SlackBuild
  38. To build the local help, HTML local help, or the HTML online help use:
  39. HELP="yes" ./libreoffice.SlackBuild
  40. or
  41. HELP="html" ./libreoffice.SlackBuild
  42. or
  43. HELP="online" ./libreoffice.SlackBuild
  44. LibreOffice will use en-US, to install additional languages use:
  45. LANGUAGES="es sv da ja sk" ./libreoffice.SlackBuild
  46. or
  47. LANGUAGES="all" ./libreoffice.SlackBuild
  48. The supported language codes can be found here:
  49. https://wiki.documentfoundation.org/Language_support_of_LibreOffice
  50. Possible themes are:
  51. breeze, breeze_dark, breeze_dark_svg, breeze_svg, colibre,
  52. colibre_svg, elementary, elementary_svg, karasa_jaga, karasa_jaga_svg,
  53. sifr, sifr_dark, sifr_dark_svg, sif_svg, sukapura, sukapura_svg
  54. Themes can be chosen with:
  55. THEME="breeze colibre" ./libreoffice.SlackBuild
  56. To disable building python3 support use:
  57. PYTHON="no" ./libreoffice.SlackBuild
  58. To disable building the gstreamer 1.0 avmedia backend use:
  59. GSTREAMER1="no" ./libreoffice.SlackBuild
  60. Openssl will be the default TLS/SSL and cryptographic implementation.
  61. Using openssl will not restrict usage of nss while choosing nss will
  62. restrict openssl. This does not apply to for depending libraries like
  63. "neon". To choose the TLS/SSL implementation use:
  64. TLS="openssl" ./libreoffice.SlackBuild
  65. or
  66. TLS="nss" ./libreoffice.SlackBuild
  67. The defualt webdav implementation will be neon and can be disabled with:
  68. NEON="no" ./libreoffice.SlackBuild
  69. Alternatively libreoffice can use serf or disable webdav with:
  70. WEB="serf" ./libreoffice.SlackBuild
  71. or
  72. WEB="no" ./libreoffice.Slackbuild
  73. To build the office development kit (ODK) use:
  74. ODK="yes" ./libreoffice.SlackBuild
  75. If the odk was built doxygen documentation can be enabled with:
  76. DOXYGEN="yes" ./libreoffice.SlackBuild
  77. To build with debug symbols use:
  78. DEBUG="yes" ./libreoffice.SlackBuild
  79. or
  80. DEBUG="dbg" ./libreoffice.SlackBuild
  81. or
  82. DEBUG="symbols" ./libreoffice.Slackbuild
  83. This will enable the debugging information or include debugging symbols
  84. while preserving optimizations. When using "deb" it will make the build
  85. ABI incompatible with builds not using "dbg". Build with debug support
  86. will take up a lot of space.
  87. To perform additional checks during building use:
  88. COMPILER="yes" ./libreoffice.SlackBuild
  89. This will be enabled automatically by using "dbg".
  90. To make SAL_INFO and SAL_WARN calls do something even in a
  91. non-debug build use:
  92. SAL="yes" ./libreoffice.SlackBuild
  93. To disable CVE tests from being executed use:
  94. CVE="no" ./libreoffice.SlackBuild
  95. To turn -werror warnings into errors use:
  96. WERROR="yes" ./libreoffice.SlackBuild
  97. To statically disable some runtime optimizations like rtl/alloc.h or the
  98. JVM JIT use:
  99. RUNTIME="no" ./libreoffice.SlackBuild
  100. Introspection can be enabled or disabled with:
  101. INTROSPECTION="no" ./libreoffice.SlackBuild
  102. or
  103. INTROSPECTION="auto" ./libreoffice.SlackBuild
  104. or
  105. INTROSPECTION="yes" ./libreoffice.SlackBuild
  106. Precompiled header support for C++ can be set:
  107. PCH="yes" ./libreoffice.SlackBuild
  108. or
  109. PCH="no" ./libreoffice.SlackBuild
  110. or
  111. PCH="system" ./libreoffice.SlackBuild
  112. or
  113. PCH="base" ./libreoffice.SlackBuild
  114. or
  115. PCH="normal" ./libreoffice.SlackBuild
  116. or
  117. PCH="full" ./libreoffice.SlackBuild
  118. By default this script will install a relatively default build with
  119. upstream settings. many optional flags can be set by passing variables
  120. to the script (VAR="yes/no" ./libreoffice.SlackBuild):
  121. AVAHI="yes" - requires avahi
  122. BREAKPAD="yes" - enable breakpad for crash reporting
  123. BUNDLE="yes" - bundle the MariaDB Connector/LibreOffice extension when
  124. using MariaDB/MYSQL system libraries
  125. CT2N="yes" - enable the ConvertTextToNumber extension
  126. EOT="yes" - enable support for Embedded OpenType fonts
  127. EPM="yes" - build epm
  128. FORMULA="yes" - enable formula logger for logging formula calculation
  129. flow in Calc
  130. FUZZERS="yes" - enable building libfuzzer targets for fuzz testing
  131. KDE5="yes" - use the Qt5/KF5 vclplug
  132. KDE5GTK3="yes" - use the Gtk3 vclplug with KDE5 file dialogs
  133. LANGUAGETOOL="yes" - enable the LanguageTool extension
  134. LTO="yes" - enable link-time for optimization for speed, slower
  135. compile (this may not work)
  136. MPL="yes" - only compile code which is MPL or more liberally licensed
  137. NLPSOLVER="yes" - enable the NLPSolver extension
  138. NUMBERTEXT="yes" - enable the Numbertext extension
  139. QT="yes" - enables the Qt5 vclplug
  140. SSL="yes" - Enable using OpenSSL as the implementation for rtl/cipher.h
  141. functionality, only when building without OPENSSL="no"
  142. VALGRIND="yes" - makes the Valgrind headers a hard requirement
  143. WIKI="yes" - enable the Wiki Publisher extension
  144. Disable features:
  145. CANVAS="no" - disables building the Cairo Canvas
  146. CRASHDUMP="no" - disabled building dump.ini and dump-file with
  147. BREAKPAD=yes
  148. CUPS="no" - disable building cups support
  149. COINMP="no" - disable building the CoinMP solver
  150. DBUS="no" - disable features that rely on dbus (Presentation mode and
  151. screensaver control)
  152. DCONF="no" - disable the dconf configuration backend (enabled by
  153. default where available)
  154. FIREBIRD="no" - disable buildin the Firebird-SDBC driver
  155. FONT="no" - do not include third-party fonts
  156. LARGEFILE="no" - omit support for large files
  157. LDAP="no" - disable LDAP support
  158. LIBNUMBER="no" disables the numbertext external library
  159. LOTUSWORDPRO="no" - disables building the Lotus Word Pro filter
  160. LPSOLVE="no" - disables building the lp solve solver
  161. LXML="no" - disables the python lxml
  162. GIO="no" - disables using the GIO support
  163. GTK3="no" - disable using the Gtk+ 3.0 vclplug
  164. GUI="no" - disable X11/Wayland support to reduce dependencies
  165. NEON="no" - disables neon and building of webdav binding
  166. OOENV="no" - disable ooenv for the instdir installation
  167. PDF="no" - disable building the PDF import feature
  168. PDFIUM="no" - disable building PDFium
  169. POPPLER="no" - disable building Poppler
  170. POSTGRESQL="no" - disable building the PostgreSQL-SDBC driver
  171. RANDR="no" - disable RandR support in the vcl project
  172. REPORT="no" - disable the Report Builder
  173. SDREMOTE="no" - disable the Impress remote control (i.e. the server
  174. component)
  175. SDRBLUETOOTH="no" - disables building the sdremote with bluetooth
  176. support, requires dbus
  177. SKIA="no" - Disable building Skia.
  178. XORG="no" - don't use the X Window System
  179. Experimental features, use only if you know what you are doing.
  180. AVMEDIA="no" - disables displaying and inserting AV media in documents
  181. CHART="yes" - executes chart XShape tests
  182. DATABASE="no" - disables various database connectivity
  183. EXTENSION="no" - disables all add-on extension functionality
  184. ICECREAM="yes" - use the icecream distributed compiling tool (requires
  185. icecream)
  186. LOADING="no" - disables any use of dynamic loading of code
  187. MERGELIB="yes" - enables linking of big, merged, library
  188. OPENSSL="no" - disables using libssl/libcrypto from OpenSSl, will use
  189. GNUTLS or NSS instead
  190. SCRIPT="no" - disables BASIC, Java and Python
  191. VLC="yes" - enable building with the VLC avmedia backend (requires
  192. vlc)
  193. Optional dependencies:
  194. CoinMP, cppunit, glm, libabw, libcdr, libcmis, libe-book, libeot,
  195. libepubgen, libetonyek, libexttextcat, libfreehand, liblangtag,
  196. libmspub, libmwaw, libnumbertext, liborcus, libpagemaker, libqxp,
  197. libstaroffice, libtommath, libwps, libzmf, lpsolve, lxml, mdds,
  198. mythes, postgresql, python3, QR-Code-generator, qt5, valgrind, ucpp
  199. Optional dependencies which are not available for Slackware yet:
  200. altlinuxhyph, apache-commons, beanshell, firebird, gpgmepp,
  201. hsqldb, jfreereport, xmlsec-nss