Apache OpenOffice (AOO) Bugzilla – Issue 118923
Build of OS/2 tree
Last modified: 2018-07-12 07:50:34 UTC
Tracker of patches to allow building the AOO tree under OS/2 and eComStation.
This ticket continues previous work done in bug 118582.
gcc3_uno implementation was importing RTTI symbols from non-built libraries. This was breaking the os2 build. Since also cygwin ignores rtti dynamic loading, now references have been removed. Committed revision 1244984.
auto export of debug printf, skip more chars in file://./ urls. Committed revision 1244985.
fix compiler warnings in dtrans project. Committed revision 1244987.
vcl: upgraded function prototype. Committed revision 1244988.
gbuild updates. Committed revision 1244995.
sax, basegfx, basebmp: cppunit is no longer broken. Committed revision 1244999.
Updates to configuration system. Committed revision 1245048.
shell: minor build fix. Committed revision 1245063. ucbhelper: minor build fix. Committed revision 1245065. packimages, postprocess: minor build fix. Committed revision 1245066. slideshow sax extensions desktop writerfilter: use 8.3 names for targets. Committed revision 1245067.
solenv: add os2 support to perl installation code. Committed revision 1245106.
scp2: allow packaging of 8.3 shortened names. Committed revision 1290838.
solenv: build system patches. Committed revision 1290840. solenv: remove destination file before copy. Committed revision 1290841. many: new link system now uses unix style. Committed revision 1290848.
solenv: removed old .btm macro files. Committed revision 1290852.
The old RGBCOLOR macro wasn't casting fields correctly, so 0xFF,0xFF,0xFF was translated to 0xFFFFFFFF, that is black in OS/2 presentation manager. vcl: use standard macro to create RGB colors, fixes vcl black backgrounds. Committed revision 1292826.
i18npool build system updates. Committed revision 1292855. solenv, added svpm.h wrapper around os2.h system header. Committed revision 1292856.
Change sb import library. Sending RepositoryFixes.mk Enable packaging of hicontrast images. Sending packimages/pack/makefile.mk Delete target file before copy. Sending solenv/bin/hicontrast-to-theme.pl OS/2 uses basic.lib not sb.lib (static lib). Sending solenv/inc/libs.mk Missing gperf executable. Sending solenv/inc/unitools.mk Remove debug_printf calls in release build. Sending vcl/os2/source/window/salobj.cxx Transmitting file data ...... Committed revision 1294739.
Allow grep to ignore .exe extension in first line; since ash does not understand { } in scripts, skip icu version check; we only support ant.cmd in path search. make configure script more OS/2 friendly, hacks no more required. Sending configure.cmd Sending configure.in Committed revision 1295065.
solenv: remove reference to os2 libraries. Sending libs.mk Committed revision 1295711. Now the makefiles for gbuild system are using proper 8.3 names for OS/2 build, so 8.3 hacks are no longer required. They are still in place for old build system, because many .uno.dll build makefiles are still unchanged. Also in the build system it had been added a new dependancies on the import lib: this has been done to allow rebuilding a dll if the export ordinals were changed; this is no longer the case, since debug builds are done without ordinals, and release builds are built from scratch. solenv: remove 8.3 hacks from gbuild, remove IMP_ORD dependencies. Sending solenv/gbuild/platform/os2.mk Sending solenv/inc/_tg_shl.mk Sending solenv/inc/os2gcci.mk Sending solenv/inc/tg_shl.mk Committed revision 1295713.
The zipfile&ooofilereader libraries are statically linked into the OOo WPS class interface code, to allow reading document properties and thumbnails. This code does not currently build, and zipfile requires OOo zlib (doesn't compile with system zlib because it requires unzip.h). shell: do not build ereader libraries until OOo WPS interface code is cleaned and ready to build again. Sending shell/prj/build.lst Committed revision 1295732.
ucb: remove obsolete import libraries. Committed revision 1296417. solevn: gbuild system minor fixes and cleanup. Committed revision 1296423. scp2,solenv: correct packaging for unopkg.exe and online update dll. Committed revision 1296424. Committed revision 1296425. ext_librarires,scp2,ucb: use system libraries for apr, apr-util, serf. Committed revision 1296429. Committed revision 1296433.
(In reply to comment #20) .... > > ext_librarires,scp2,ucb: use system libraries for apr, apr-util, serf. > Committed revision 1296429. > Committed revision 1296433. This is ugly: apr, apr-util and serf are not part of OS/2 AFAICT. If ppl have them then configure should be taught to find them or be able to build the ones that come with AOO.
This is not completely correct: while these stuffs are not part of base operating system, there is a (huge) effort (by me and others) to get many stuffs shared from a single source. These projects are tracked at http://svn.netlabs.org/ports http://svn.netlabs.org/rpm and all binaries are available here http://rpm.netlabs.org/ The current dev build already uses many libraries coming from this new environment (still this does not force rpm/yum to be installed). If I understand correctly, enabling AOO configure script to recognize serf/apr stuffs is a work in progress by people working on that.
solenv: : remove obsolete IMP_ORD dependancies, fix ECHON macro. Sending inc/_tg_app.mk Sending inc/tg_app.mk Sending inc/unitools.mk Committed revision 1298489.
(In reply to comment #22) > This is not completely correct: while these stuffs are not part of base > operating system, there is a (huge) effort (by me and others) to get many > stuffs shared from a single source. > These projects are tracked at > I am aware of netlabs, and other systems have their own packaging/development websites, however we are including serf,apr, libpng, etc so that people can build everything from source if they dont have it preinstalled. > http://svn.netlabs.org/ports > > The current dev build already uses many libraries coming from this new > environment (still this does not force rpm/yum to be installed). > Still it is back practice to hardcode this stuff according to the platform. I know it works, but it is ugly :(. > If I understand correctly, enabling AOO configure script to recognize serf/apr > stuffs is a work in progress by people working on that. Yes, and I hope when it is ready we will all use it instead of reinventing the wheel in ugly ways.
(In reply to comment #24) > websites, however we are including serf,apr, libpng, etc so that people can > build everything from source if they dont have it preinstalled. a lot of work is being done to get current 'ports' code working, and AOO is getting a lot of benefits from this work: e.g. now it builds out of the box, this was not possible before. The netlabs work will make everyone able to build AOO, without it this is an almost impossible task. Lot of hacks are not longer necessary. Many unix ports requires source code patches, sometimes not trivial: without 'ports' effort, everything should be replicated in the AOO build system. > Yes, and I hope when it is ready we will all use it instead of reinventing the > wheel in ugly ways. I will make use of it once ready :-)
Believe me, it took 7 years to me to get it buildable as is today, just run configure.cmd and build --all inside insetoonative.
solenv: use globals for mkdir too. Committed revision 1299239. solenv: quotes must be escaped in command line (4nt/4os2). Committed revision 1299242.
solenv: improve r1299242, quotes must be removed in perl code, fix exclusion patterns. Sending solenv/bin/zipdep.pl Sending solenv/inc/_tg_zip.mk Sending solenv/inc/tg_zip.mk Committed revision 1299759.
solenv: improve r1299242/r1299759, quotes must be removed also in perl parameter, forgot to to test a clean build before, last commit regarding this issue, promised :-) Sending solenv/bin/zipdep.pl Committed revision 1300264.
sw.dll was conflicting with mmos2 sw.dll, name changed in AOO build. Committed revision 1351684.
lingucomponent: use 8.3 names for libraries. Sending lingucomponent/source/languageguessing/makefile.mk Sending lingucomponent/source/thesaurus/libnth/makefile.mk Sending scp2/source/ooo/file_library_ooo.scp Transmitting file data ... Committed revision 1351686.
hide truncation warnings while building. Sending solenv/gbuild/platform/os2.mk Sending solenv/inc/os2gcci.mk Committed revision 1351688.
The setup of new LIBPATH was killing existing entries in local environment. Sending desktop/os2/source/applauncher/launcher.cxx Committed revision 1351690.
The registration of clipboard component was using the wrong component file in dtrans; also VCL was registering itself for X11ClipboardSupport (unix component), thus hiding sysdtrans registration. Now windows passive registration style is used. Fix clipboard component passive registration using windows way.Sending dtrans/source/os2/clipb/Os2Clipboard.hxx Sending dtrans/util/makefile.mk Sending postprocess/packcomponents/makefile.mk Sending vcl/Library_vcl.mk Transmitting file data .... Committed revision 1351692.
more work on Java support, correctly identify new OpenJDK 1.6 client library. Sending jvmfwk/distributions/OpenOfficeorg/javavendors_os2.xml Sending jvmfwk/plugins/sunmajor/pluginlib/sunjre.cxx Sending jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx Sending jvmfwk/plugins/sunmajor/pluginlib/sunversion.hxx Committed revision 1351699.
This commit fixes the famous clipboard locking bug: under some unknown situations, the clipboard was no longer available to other applications (os2 included) and the User Interface was locked until OO or the other app was killed. This was happening because the clipboard was opened even if no data was available for storage, so it was not closed. do not open the clipboard if data is not available, fix clipboard locking. Sending dtrans/source/os2/clipb/Os2Clipboard.cxx Sending dtrans/source/os2/clipb/Os2Transferable.hxx Committed revision 1353109.
reference debug_printf() also in release builds, so linker does not strip it. Sending os2/module.c Committed revision 1354048.
allow Java and UNO exports in bridge, partial revert of r1199933, enables java support in OS/2 port. Sending jni_uno/makefile.mk Committed revision 1354050.
allow configure to use system apr-serv-coinmp libraries. Sending configure.cmd Committed revision 1355047.
do not shorten names for resource files, otherwise libraries are unable to find strings for dialogs, fixes missing string id 3005 in splash screen and crash in extension mamanger dialog. Sending desktop/source/deployment/gui/makefile.mk Sending desktop/source/deployment/makefile.mk Sending scp2/source/ooo/file_resource_ooo.scp Committed revision 1355048.
enable again LIBSTRICTPATH, we are no longer using innowin for java support. Sending desktop/os2/source/applauncher/launcher.cxx Committed revision 1356837. match the new WPS object ID for Apache OpenOffice objects. Sending sfx2/source/appl/shutdowniconOs2.cxx Committed revision 1356838. vcl: enable menu automatic hilite based on current WPS/XWP settings. Sending vcl/inc/os2/salmenu.h Sending vcl/source/window/menu.cxx Committed revision 1356909.
scp2: add quickstart executable to install set. Sending common_brand.scp Committed revision 1362507.
fix build and installation of binfilter modules. Sending binfilter/bf_sc/util/makefile.mk Sending binfilter/bf_sd/util/makefile.mk Sending binfilter/bf_sw/util/makefile.mk Sending binfilter/filter/source/bf_migrate/makefile.mk Sending scp2/source/binfilter/file_binfilter.scp Sending solenv/inc/libs.mk Transmitting file data ...... Committed revision 1362509.
vcl: fix ImplOs2FontData reference counting, fixes vcl exit crash and pdf export crash. Sending salgdi3.cxx Committed revision 1363119.
vcl: dump some more info about printers and form sizes. Sending os2/source/app/salinst.cxx Sending os2/source/gdi/salprn.cxx Committed revision 1363134.
sal: use linux way to detect real numbers. Sending sal/inc/sal/mathconf.h Committed revision 1363136.
Use of internal graphics filters were broken since OO 3.2, so pcx/tiff/... files were not loadable. svtools: use windows directory layout for OS/2, fixes use of internal graphic filters. Sending source/filter/filter.cxx Committed revision 1363695. svtools: PM2 is no longer supported as macro, replaced with OS2 or deleted (old compilers). Sending svtools/source/edit/textdoc.cxx Sending svtools/source/filter/sgvspln.cxx Sending svtools/source/filter/sgvtext.cxx Committed revision 1363696.
sal: fix reporting of error message. Sending sal/osl/os2/module.c Committed revision 1372791.
Moving from windows style import libraries (iXXX.lib) to gcc style (-lXXX). Sending RepositoryFixes.mk Sending basic/prj/d.lst Sending dbaccess/util/makefile.mk Sending formula/util/makefile.mk Sending i18npool/source/localedata/data/makefile.mk Sending i18nutil/prj/d.lst Sending redland/rasqal/rasqal-0.9.16.patch.dmake Sending redland/redland/redland-1.0.8.patch.dmake Sending sc/util/makefile.mk Sending solenv/inc/libs.mk Sending writerfilter/source/doctok/makefile.mk Sending writerfilter/source/ooxml/makefile.mk Sending writerfilter/unocomponent/makefile.mk Sending xmlreader/source/makefile.mk Committed revision 1415538.
"ydario" committed SVN revision 1415538 into trunk: i118923 - OS/2 port: use of gcc style import libraries.
Export libraries built from dll do not recognize ordinals, so .DEF file must be processed to recognize numbers. The drawback is that _Export is no longer working. various: build import libraries from .def file instead of .dll, allows export by ordinal for faster loading. Sending solenv/gbuild/platform/os2.mk Sending solenv/inc/_tg_def.mk Sending solenv/inc/_tg_shl.mk Sending solenv/inc/os2gcci.mk Sending solenv/inc/tg_def.mk Sending solenv/inc/tg_shl.mk Committed revision 1415951.
"ydario" committed SVN revision 1449154 into trunk: i118923 - OS/2 port: use short names for mysql&odbc libraries.
"ydario" committed SVN revision 1484394 into trunk: i118923 - OS/2 port: use short names for dynamic libraries.
"ydario" committed SVN revision 1484395 into trunk: i118923 - OS/2 port: enable named exports also for os2.
"ydario" committed SVN revision 1484397 into trunk: i118923 - OS/2 port: cleanup of old and unusable code.
i118923 - OS/2 port: build system updates. Committed revision 1536083. desktop launchers: i118923 - OS/2 port: remove three layer LIBPATH layout. Committed revision 1536093.
After fixing issue #119097, the exception handler code has been disabled. Now ExceptQ system exception handling has been added to AOO code. sal: i118923 - OS/2 port: make use of system ExceptQ exception handler. Committed revision 1536313.
"ydario" committed SVN revision 1536083 into trunk: i118923 - OS/2 port: build system updates. svnbz message delay caused by perl problems after Bugzilla 4.4.1 update
"ydario" committed SVN revision 1536093 into trunk: i118923 - OS/2 port: remove three layer LIBPATH layout. svnbz message delay caused by perl problems after Bugzilla 4.4.1 update
"ydario" committed SVN revision 1536313 into trunk: i118923 - OS/2 port: make use of system ExceptQ exception handler. svnbz message delay caused by perl problems after Bugzilla 4.4.1 update
the alloc_arena code is using 64KB block allocations, which leads to high use of memory blocks. libc allocates memory in 16MB chunks to make better use of memory. Using valloc() allows getting 4KB aligned blocks from heap suballocator. sal: i118923 - OS/2 port: use libc memory allocator to reduce fragmentation. Sending alloc_arena.c Committed revision 1545312.
"ydario" committed SVN revision 1545312 into trunk: i118923 - OS/2 port: use libc memory allocator to reduce fragmentation.
Above change will use more memory in terms of used virtual addresses, but with far less memory blocks. I didn't check, but committed memory is expected to be almost the same as before.
"ydario" committed SVN revision 1570166 into trunk: #i118923# fix failure to show message box in release mode.
#i123840# fix name typo in OS/2 code. Sending gdi/salgdi3.cxx Committed revision 1570218.
"ydario" committed SVN revision 1570225 into trunk: #i118923# OS/2 port, add CPPULIB to resolve uno constructors.
"ydario" committed SVN revision 1570226 into trunk: #i118923# OS/2 port, use UNIXROOT drive for perl shell dir.
"ydario" committed SVN revision 1570229 into trunk: #i118923# OS/2 port, remove parenthesis around soffice name constant.
"ydario" committed SVN revision 1570235 into trunk: #i118923# OS/2 port, add CPPULIB to resolve uno constructors.
"ydario" committed SVN revision 1570843 into trunk: #i118923# OS/2 port, report correct error string in case of dlopen() failure,...
"ydario" committed SVN revision 1570848 into trunk: #i118923# OS/2 port, ignore ENOENT errors on dlopen() failure.
#i118923# OS/2 port, use forward slashes for paths in installer scripts. Committed revision 1623849.
#i118923# OS/2 port, use forward slashes for paths in installer scripts. Committed revision 1623850.
"ydario" committed SVN revision 1623849 into trunk: #i118923# OS/2 port, use forward slashes for paths in installer scripts.
"ydario" committed SVN revision 1623850 into trunk: #i118923# OS/2 port, use forward slashes for paths in installer scripts.
"ydario" committed SVN revision 1702880 into branches/AOO410: #i118923# merge OS/2 trunk changesets from #i125501# #i125592# #i118932# into...
"ydario" committed SVN revision 1702898 into trunk: #i118923# OS/2, use the legacy config.site script.
"ydario" committed SVN revision 1702902 into branches/AOO410: #i118923# merge OS/2 trunk changesets from #i125592# #i118932# into AOO410 br...
This issue is getting closed since all committed trunk changesets has been merged to AOO410 branch. The work is going on in issue 126518. Moving all open issues to issue 126518.
"ydario" committed SVN revision 1702986 into trunk: #i118923# OS/2, use pmbidi header from dev toolkit.
"ydario" committed SVN revision 1702988 into trunk: #i118923# OS/2, the emxexpr tool is no longer used.
"ydario" committed SVN revision 1702993 into branches/AOO410: #i118923# merge OS/2 trunk changesets into AOO410 branch.
@ydario: Just for confirmation, is everything ported to AOO410 already? If anything is missing, feel free to commit it.