Difference between revisions of "Building old versions"
(Reformat table so there is only one commit per row.) |
(Fix a bad date order. Use the right commit for the AdoptOpenJDK patch.) |
||
Line 48: | Line 48: | ||
| [https://github.com/apache/openoffice/commit/00503fad63e905b0ef1d175bb9780a358bc27263 00503fad63e905b0ef1d175bb9780a358bc27263] | | [https://github.com/apache/openoffice/commit/00503fad63e905b0ef1d175bb9780a358bc27263 00503fad63e905b0ef1d175bb9780a358bc27263] | ||
| *nix: fix linking with system Python 3 | | *nix: fix linking with system Python 3 | ||
+ | |- | ||
+ | | 2019-11-05 | ||
+ | | [https://github.com/apache/openoffice/commit/f120c164ea44222b65c3fd8c31dc63804109d6a4 f120c164ea44222b65c3fd8c31dc63804109d6a4] | ||
+ | | All: remove unused basebmp code that breaks with newer compilers. | ||
|- | |- | ||
| 2019-07-27 | | 2019-07-27 | ||
Line 54: | Line 58: | ||
|- | |- | ||
| 2019-07-27 | | 2019-07-27 | ||
− | | [https://github.com/apache/openoffice/commit/ | + | | [https://github.com/apache/openoffice/commit/2bf1cfb0fb5470896af21c2c584f53f556e1551b 2bf1cfb0fb5470896af21c2c584f53f556e1551b] |
| All: detection of AdoptOpenJDK's JRE. | | All: detection of AdoptOpenJDK's JRE. | ||
− | |||
− | |||
− | |||
− | |||
|- | |- | ||
| 2018-04-28 | | 2018-04-28 |
Revision as of 09:20, 27 December 2023
Introduction
It can be useful to build an old version of Apache OpenOffice, for example in order to regression test a bug in the latest version.
However, over time, patches get committed to allow building on newer build environments (newer operating systems, newer settings, newer libraries (as old ones may be unavailable), etc). Thus old AOO versions may be unable to build with the latest operating systems and latest libraries. Instead of the long and difficult process of setting up an old build environment, we can backport certain patches that added the features we need, and still build older versions on newer build environments.
How to
From the base directory of trunk/, for each patch that is newer than the version you are building and that you need, run this in REVERSE ORDER of the order given below, (ie. bottom to top, which is oldest to newest):
git show <commit> | patch -p1
(eg. git show 9fbe0120861764e7e644476857de32c44186c400 | patch -p1)
If a patch doesn't apply, you have to make the equivalent code changes yourself.
Date | Git commit | Feature provided |
---|---|---|
2023-01-20 | 8ef8ad062493ab86aa92fbefc05347f372e8d25c | *nix: get Boost building with Clang and -std=gnu++98. |
2022-08-22 | f884850fece86ece56c7194bb1e746641f77c0a0 | *nix: Use functions and types compatible with both OpenSSL 1.0.x and 1.1.x. |
2022-04-03 | f134535553051695dfbb71310003ab610fda2c83 | *nix: Use the python-X.Y-embed package on system Python >= 3.8 |
2020-10-05 | 9b7130f9b6bdb7e9969615395186cb3b328a259d | bison: define YYDEBUG so the yytname table can be found. |
2020-05-19 | 7f3d5d1d1e5d0e51092276ddff205b8a31aab26f | All: fix issue with GNU make 4.3 |
2020-01-25 | 00503fad63e905b0ef1d175bb9780a358bc27263 | *nix: fix linking with system Python 3 |
2019-11-05 | f120c164ea44222b65c3fd8c31dc63804109d6a4 | All: remove unused basebmp code that breaks with newer compilers. |
2019-07-27 | 9fbe0120861764e7e644476857de32c44186c400 | *nix: detection of Java > 1.8 |
2019-07-27 | 2bf1cfb0fb5470896af21c2c584f53f556e1551b | All: detection of AdoptOpenJDK's JRE. |
2018-04-28 | 787e11305af165407f2c520f206d71868383ca89 | *nix: fix potential memory alignment issues on X86_64. (A critical patch, but impossibly difficult to apply...) |
2018-04-21 | e3393df0b128281faf562e0d0704b7b031c09194 | *nix: target the gnu++98 C++ standard. |
2018-03-05 | d496b0995fb8aa8b6c60a683761ad01f8d0d32d6 | All: fix building lucene with Java 1.9 |
2018-03-04 | 16cc2feaee8ae594780687837b53b2d50018df78 | Windows: support building on Windows using Cygwin64. |
2018-03-04 | d72465840bb64335098446c0558b486b239519f7 | Windows: support building on Windows using Cygwin64. |
2018-03-03 | a77ce2d13c887a68f707e5b1c8c737146e59d1bf | Windows: allow oowintool to auto-detect Java 1.9 |
2017-11-17 | adb6f5d8a37c5b86304c6f182c17e5b29dcc384a | Windows: allow oowintool to auto-detect 32 bit VC++ on Cygwin64. |
2017-11-09 | 668ddc0174366a152e11e62b3e5599a8fb50bcb2 | Windows: allow oowintool to auto-detect Java 1.8 |
2017-01-23 | 98cd5c2a79e60996e7eea8a9ab5e47291e77d858 | *nix: remove unused header from hunspell. |
2017-01-21 | 59dbe8f652bdb9e1e5ecc11bebb8c62d23220ad8 | All: Clang 4 fix. |
2017-01-21 | 3fc1b11aed153658eed562e0563c5d002e06f83a | All: nullptr -> NULL. |
2017-01-20 | eec91efcfca2e12afd64039b8aa0f158a3d65ed7 | All: Clang 4 issues. |
2016-06-16 | a4e19be7f6f6069ba569aa50c7f757af9e497d27 | FreeBSD: avoid ambiguity with libc++ round(). |
2016-02-11 | 910dbabb8417f5fbef278baca67290f523163a45 | #i126840# - Windows/MSVC build often fails in main/icu |
2016-01-28 | e6348c9c91b938030ad5813dd009755d8b4b9444 | All: fix ordered comparison between pointer and zero. NOTE: Only a portion of this patch matters, use: git show e6348c9c91b938030ad5813dd009755d8b4b9444 main/sal/qa/rtl/digest/rtl_digest.cxx | patch -p1 |
2015-10-25 | 94125ed6f90993f06f9ee4e1d88bf2ce57e20a2f | *BSD: call unzip with just -u, instead of -o and -u which breaks the build. |
2015-09-13 | cfc83b6cba931dcb75a6f071ffbe6124a7b88561 | Rename configure.in to configure.ac (so other patches to configure.ac can apply). |
2015-08-29 | 2ed47956e3ec22116d5164494008afeac3f699a1 | #i126258# Fix build on systems using a recent version of GNU Patch. |
2015-08-24 | c86fe57eac59462145a2c4dcd104fb897de9196f | Java: fix errors building Javadocs with Java >= 8. |
2015-08-24 | cf2d5436d922671aec77ed61f7d162f74469e479 | Java: fix errors building Javadocs with Java >= 8. |
2015-08-23 | 7523a2c4cc93fa7a641641e68fe0d835e7794463 | Java: fix errors building Javadocs with Java >= 8. |
2015-08-23 | e0f9f944356994beb91659a64d94cb4522cea965 | Java: fix errors building Javadocs with Java >= 8. |
2015-08-23 | 2f57578e8e7e0ab07c12c28c88d12852edcc3a46 | Java: fix errors building Javadocs with Java >= 8. |
2015-08-05 | c25219e083f121aac3c966a458945c1c37d22f15 | FreeBSD: better GCC/Clang support |
2015-07-08 | 8510b05eb89ad86b6e9c283c055d80fe56e487bc | FreeBSD: system jpeg build fix. |
2015-07-08 | 5293ed5b27484fdcc6a4809ad82037db7a242152 | NSS build fixes. |
2015-03-26 | 908225ed13eb08c341ec6cf0751aeed39dfd31a8 | FreeBSD: build structure changes |
2015-03-26 | cddbce83059662dad08c06a4f7b247d7fbbbaa9d | Move operator to the public section. This solves visibility issues with modern gcc. |
2015-03-26 | 2e13fcb7adefbaae2598357d64e73f9b87cf8872 | FreeBSD: x86-64 UNO bridge for FreeBSD >= 10. |
2015-03-26 | baf6650df975f89e86ba1b26917c66286ee87ab0 | FreeBSD: x86 UNO bridge for FreeBSD >= 10. |
2014-11-28 | 66d4592e8cc7c8c33fc626074f9efcda13634c2c | Enable NSS modules also on OS/2 port. NOTE: needed for later patches, not just on OS/2. |
2014-07-16 | ae90bea2f185550431df42a0216fdab56af1838e | FreeBSD: Fix the regression in 892b8f20ca40cc85f427d5bbef706b21ecd460e6. |
2014-05-15 | ae5c9b6c8d5cd9fec60d7f0cd4cd2b1d775bcb49 | All: remove custom allocator support in stlport-replacement headers |
2014-05-15 | 5766e80935d60fd1804ed950d1972ff5e88fda76 | All: fix default arguments in friend declarations |
2014-05-15 | 22076bf181e8f43a1d012a1c50cab412d09ed2b0 | All: remove obsoleted sal-module-internal custom STL allocator |
2014-04-30 | 892b8f20ca40cc85f427d5bbef706b21ecd460e6 | FreeBSD: fix build with gcc on FreeBSD-i386. |
2014-03-24 | f0339755da5abc74646151d092c4739dd9e5ee54 | Java: related change to version upgrades code, logging |
2014-03-24 | bcff05d666ac35a4ddc41f4176bdf0038fd9cb02 | Java: upgrade to the first version of commons-lang that compile on modern Java. |
2014-03-24 | 47d3be6bd7cbd0f5aa101006532916676c4ceede | Java: upgrade to the first version of commons-codec that compile on modern Java. |
2014-03-24 | 21f06b298926b5eac098ed9c306560dd458d3a1e | Java: upgrade to the first version of commons-logging that compile on modern Java. |
2014-03-24 | 60db4cd41876498d413568ed5a829ba6386245f9 | Java: upgrade to the first version of commons-logging that compile on modern Java. |
2014-03-07 | 2fb14843010286ad9430e029e940242d039c9bf4 | All: obsolete and remove the emulation of hash_map's data_type typedef |
Other
Prefer internal dependencies, as transitive dependencies on system dependencies are difficult to get working, eg. old serf's use of new system OpenSSL would need serf patched.
Some old versions put the include path for system headers ahead of the include path to project headers, which can break the build if a dependency is installed system-wide but we want to use a local copy. For example, vcl wants boost, but if you have system boost installed yet are using internal boost, it will try including the system boost headers and break. The easiest way to fix this is to uninstall or hide/rename the system dependency so it's hidden to the build, forcing only the internal version to be used.