Building old versions
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)
or with SVN:
svn diff -c <version> | patch -p0
(eg. svn diff -c 1825798 | patch -p0)
Git commit | SVN revision | Feature provided |
---|---|---|
8ef8ad062493ab86aa92fbefc05347f372e8d25c | *nix: get Boost building with Clang and -std=gnu++98. | |
f884850fece86ece56c7194bb1e746641f77c0a0 | *nix: Use functions and types compatible with both OpenSSL 1.0.x and 1.1.x. | |
f134535553051695dfbb71310003ab610fda2c83 | *nix: Use the python-X.Y-embed package on system Python >= 3.8 | |
9b7130f9b6bdb7e9969615395186cb3b328a259d | bison: define YYDEBUG so the yytname table can be found. | |
7f3d5d1d1e5d0e51092276ddff205b8a31aab26f | All: fix issue with GNU make 4.3 | |
00503fad63e905b0ef1d175bb9780a358bc27263 | *nix: fix linking with system Python 3 | |
9fbe0120861764e7e644476857de32c44186c400 | 1863883 | *nix: detection of Java > 1.8 |
76c3a0c573cde39048d0726c858eb62004271068 | 1863875 | All: detection of AdoptOpenJDK's JRE. |
f120c164ea44222b65c3fd8c31dc63804109d6a4 | All: remove unused basebmp code that breaks with newer compilers. | |
787e11305af165407f2c520f206d71868383ca89 | *nix: fix potential memory alignment issues on X86_64. | |
e3393df0b128281faf562e0d0704b7b031c09194 | *nix: target the gnu++98 C++ standard. | |
d496b0995fb8aa8b6c60a683761ad01f8d0d32d6 | 1825849 | All: fix building lucene with Java 1.9 |
16cc2feaee8ae594780687837b53b2d50018df78 d72465840bb64335098446c0558b486b239519f7 |
1825802 1825798 |
Windows: support building on Windows using Cygwin64. |
a77ce2d13c887a68f707e5b1c8c737146e59d1bf | 1825763 | Windows: allow oowintool to auto-detect Java 1.9 |
adb6f5d8a37c5b86304c6f182c17e5b29dcc384a | 1815542 | Windows: allow oowintool to auto-detect 32 bit VC++ on Cygwin64. |
668ddc0174366a152e11e62b3e5599a8fb50bcb2 | 1814757 | Windows: allow oowintool to auto-detect Java 1.8 |
98cd5c2a79e60996e7eea8a9ab5e47291e77d858 | *nix: remove unused header from hunspell. | |
59dbe8f652bdb9e1e5ecc11bebb8c62d23220ad8 3fc1b11aed153658eed562e0563c5d002e06f83a eec91efcfca2e12afd64039b8aa0f158a3d65ed7 |
All: fix issues with ordered comparisons between pointers and zero. | |
a4e19be7f6f6069ba569aa50c7f757af9e497d27 | FreeBSD: avoid ambiguity with libc++ round(). | |
910dbabb8417f5fbef278baca67290f523163a45 | 1729921 | #i126840# - Windows/MSVC build often fails in main/icu |
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 | |
94125ed6f90993f06f9ee4e1d88bf2ce57e20a2f | *BSD: call unzip with just -u, instead of -o and -u which breaks the build. | |
cfc83b6cba931dcb75a6f071ffbe6124a7b88561 | Rename configure.in to configure.ac (so other patches to configure.ac can apply). | |
2ed47956e3ec22116d5164494008afeac3f699a1 | 1700078 | #i126258# Fix build on systems using a recent version of GNU Patch. |
c86fe57eac59462145a2c4dcd104fb897de9196f cf2d5436d922671aec77ed61f7d162f74469e479 7523a2c4cc93fa7a641641e68fe0d835e7794463 e0f9f944356994beb91659a64d94cb4522cea965 2f57578e8e7e0ab07c12c28c88d12852edcc3a46 |
Java: fix errors building Javadocs with Java >= 8. | |
c25219e083f121aac3c966a458945c1c37d22f15 | FreeBSD: better GCC/Clang support | |
8510b05eb89ad86b6e9c283c055d80fe56e487bc | FreeBSD: system jpeg build fix. | |
5293ed5b27484fdcc6a4809ad82037db7a242152 | NSS build fixes. | |
908225ed13eb08c341ec6cf0751aeed39dfd31a8 | FreeBSD: build structure changes | |
cddbce83059662dad08c06a4f7b247d7fbbbaa9d | Move operator to the public section. This solves visibility issues with modern gcc. | |
2e13fcb7adefbaae2598357d64e73f9b87cf8872 | FreeBSD: x86-64 UNO bridge for FreeBSD >= 10. | |
baf6650df975f89e86ba1b26917c66286ee87ab0 | FreeBSD: x86 UNO bridge for FreeBSD >= 10. | |
66d4592e8cc7c8c33fc626074f9efcda13634c2c | Enable NSS modules also on OS/2 port. NOTE: needed for later patches, not just on OS/2. | |
ae90bea2f185550431df42a0216fdab56af1838e | FreeBSD: Fix the regression in 892b8f20ca40cc85f427d5bbef706b21ecd460e6. | |
ae5c9b6c8d5cd9fec60d7f0cd4cd2b1d775bcb49 | All: remove custom allocator support in stlport-replacement headers | |
22076bf181e8f43a1d012a1c50cab412d09ed2b0 | All: remove obsoleted sal-module-internal custom STL allocator | |
892b8f20ca40cc85f427d5bbef706b21ecd460e6 | FreeBSD: fix build with gcc on FreeBSD-i386. | |
f0339755da5abc74646151d092c4739dd9e5ee54 bcff05d666ac35a4ddc41f4176bdf0038fd9cb02 47d3be6bd7cbd0f5aa101006532916676c4ceede 60db4cd41876498d413568ed5a829ba6386245f9 |
Java: upgrade to the first versions of apache-commons projects that compile on modern Java. | |
2fb14843010286ad9430e029e940242d039c9bf4 | All: obsolete and remove the emulation of hash_map's data_type typedef |