summaryrefslogtreecommitdiff
path: root/bridges/source
AgeCommit message (Collapse)Author
2013-05-09add some documentation links to the assembler needed for the UNO bridgesHerbert Dürr
ceterum censeo: good old C-linkage interoperability would be much more robust, reliable and easier to maintain compared to the current UNO-bridges approach of emulating the behaviour of the individual compiler, linker, dylib, unwind, etc. environments and thus being extremely platform specific. What an incredible waste of energy for little (if any) gain. SCNR. (cherry picked from commit c9fe5d026f2081d493a198a33cf3b1d558166965) Conflicts: bridges/source/cpp_uno/gcc3_freebsd_x86-64/call.s Change-Id: I728bce449e8e56572f31b50fb1452d1c2f9d7fea
2013-04-22Move to MPLv2 license headers, with ESC decision and author's permission.Michael Meeks
2013-04-19remove unused component_canUnload functionsMatúš Kukan
Change-Id: Id3f41e2a620c47bb848718d0fc994739be2d64fc
2013-04-15fdo#60724 convertable -> convertibleThomas Arnhold
Change-Id: I6a742f41305c2b4bd9a60aa3a574f6c02fec4752
2013-04-10bridges: remove unused .map fileMatúš Kukan
Change-Id: Id6e11cef2bdffd6726ac00f9a30e84cf44efe71e
2013-04-07mass removal of rtl:: prefixes for O(U)String*Luboš Luňák
Modules sal, salhelper, cppu, cppuhelper, codemaker (selectively) and odk have kept them, in order not to break external API (the automatic using declaration is LO-internal). Change-Id: I588fc9e0c45b914f824f91c0376980621d730f09
2013-04-07Pre-cache type_info for com::sun::star::ucb::InteractiveAugmentedIOExceptionTor Lillqvist
It seems to be the type_info most commonly looked up dynamically, even the only one in an initial test. I think it is a good idea to avoid dlsym() if possible. Change-Id: I0379c534e10efefafdd253ee651f6c74e4aa47d5
2013-04-03Remove Mac OS X for PowerPC supportTor Lillqvist
Change-Id: I10b15141e6a5f93365e1cfa6fbc0c7cc3ea49b15
2013-04-02Remove RTL_CONSTASCII_(U)STRINGPARAM in bridgesChr. Rossmanith
Change-Id: Id8777ee7f587846399e95cf3b1b37d669a76bae5 Reviewed-on: https://gerrit.libreoffice.org/3139 Reviewed-by: Christina Roßmanith <ChrRossmanith@web.de> Tested-by: Christina Roßmanith <ChrRossmanith@web.de>
2013-03-27-Wunused-macrosStephan Bergmann
Change-Id: Ifaa1637122d6f9cae1e29b77ac36ca5d1f220aed
2013-03-20WaE: '__LP64__' is not defined, evaluates to 0Tor Lillqvist
Change-Id: Ie3b740818b6f705b24e2c718dd47f43ebdb2a3e1
2013-03-19removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStrings declarationsThomas Arnhold
s/(OUString\s+[a-zA-Z_][A-Za-z0-9_]*\s*)\(\s*RTL_CONSTASCII_USTRINGPARAM\s*\((\s*"[^")]*?"\s*)\)\s*\)/$1\($2\)/gms Change-Id: Iad20f242c80c4bdc69df17e2d7a69d58ea53654b Reviewed-on: https://gerrit.libreoffice.org/2835 Reviewed-by: Thomas Arnhold <thomas@arnhold.org> Tested-by: Thomas Arnhold <thomas@arnhold.org>
2013-03-19automated removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStringsThomas Arnhold
Done with a perl regex: s/OUString\s*\(\s*RTL_CONSTASCII_USTRINGPARAM\s*\((\s*"[^")]*?"\s*)\)\s*\)/OUString\($1\)/gms Change-Id: Idf28320817cdcbea6d0f7ec06a9bf51bd2c3b3ec Reviewed-on: https://gerrit.libreoffice.org/2832 Reviewed-by: Thomas Arnhold <thomas@arnhold.org> Tested-by: Thomas Arnhold <thomas@arnhold.org>
2013-03-18Cleanup bridges modulePeter Foley
Reduce excessive copy-pasting Remove bridges for C50 and C52 compilers which aren't in configure any more Prevent LTO from being used in the bridges module because it causes crashes Change-Id: I7ff85c2e8d6ff89c5acd48aea415e0960b3ef812 Reviewed-on: https://gerrit.libreoffice.org/2765 Reviewed-by: Tor Lillqvist <tml@iki.fi> Tested-by: Tor Lillqvist <tml@iki.fi>
2013-03-09fdo#43460: use isEmpty()Thomas Arnhold
Change-Id: Ia768e684d3cf255239c04d024b35488830cc9fe6
2013-02-19RTL_CONSTASCII_USTRINGPARAM removalsKrisztian Pinter
Change-Id: Ib483f271d3c826a2b7192b22a174ff9f7b18c3f8 Reviewed-on: https://gerrit.libreoffice.org/2241 Reviewed-by: Olivier Hallot <olivier.hallot@alta.org.br> Tested-by: Olivier Hallot <olivier.hallot@alta.org.br>
2013-01-30Removed several useless macros: A2OU, A2S, C2U, C2S, OUSTR, OUSTRINGJean-Noël Rouvignac
Change-Id: Ie859cb2dfdc7103c379fce56be88eef8fe390afd Reviewed-on: https://gerrit.libreoffice.org/1924 Tested-by: Luboš Luňák <l.lunak@suse.cz> Reviewed-by: Luboš Luňák <l.lunak@suse.cz>
2013-01-20Another lacking parenthesisJulien Nabet
Change-Id: If5944101688b0219d2476e5c3b29f704634c3bcc
2013-01-19iOS C++/UNO bridge fixesTor Lillqvist
As the inline asm statement stores parameters into r0-r3 we need to include those registers in the clobber list. Clang happened to store pMethod in r2 as input to the asm snippet. iOS uses the basic calling convention, but __ARM_EABI__ is not defined so amend some ifdefs. Change-Id: If3d66c5f3baa4dfa13f82a2b5c2ef1ab559ce31b
2013-01-19Use SAL logging instead of printfsTor Lillqvist
Change-Id: I6221e686fa36cd9061a2a0342a48aaadef903acf
2013-01-19More snippets, and cosmeticsTor Lillqvist
Change-Id: I150981237dc642e46751f0824aeda53dbdb59e5c
2013-01-19Work on the iOS C++/UNO bridgeTor Lillqvist
Split uno2cpp.cxx and cpp2uno.cxx into separate files for the emulator (i386) and device (ARM). Much cleaner like that. Try harder to get the ARM stuff to actually work. Add the rtti.h and unwind-cxx.h files from libcppabi as such instead of cherry-picking stuff from them. Change-Id: Ia238a9ce048116ad796dfb168fd4e5d3b9712ad5
2013-01-10Be truthful to the compiler about registers clobbered by asm snippetTor Lillqvist
The asm code loads values into parameter-passing registers r0-r3. (That is one of the very purposes of the asm snippet.) We need to tell the compiler that. The compiler does not analyze the asm snippet and has no idea by itself what it does. Otherwise the compiler might well put one of the input values to the asm snippet, like the "pmethod" (the value of the pMethod variable) into one of those registers, so that when that value then is used in the asm snippet, *after* r0-r3 have already been modified, it obviously is totally unrelated to pMethod any more, and the result is that the code jumps into hyperspace. Apparently this has worked purely by luck, or thanks to GCC conservatively avoiding using the r0-r3 parameter-passing registers in this way. The problem was noticed when using the same code with Clang. The above analysis tentatively confirmed by Caolán and Jani Monoses, who wrote the code. Change-Id: I3018c2e2ccb83e7a71144425fa404ad28bb955d6
2012-11-30c++ API: use css alias in generated headers, adds global css declThorsten Behrens
This changes all generated API headers (.hpp and .hdl) to use a namespace alias 'css' instead of the pointlessly long com::sun::star Makes the change in cppumaker & associated tools, adds a global namespace alias definition in sal/types.h, and removes a kiloton of local, now pointless-to-harmful versions of that alias from all over the code. Change-Id: Ice5a644a6b971a981f01dc0589d48f5add31cc0f
2012-11-28We only support MSVC 2008 (_MSC_VER 1500) or laterTor Lillqvist
We can drop or simplify many conditionals. Change-Id: I37e820e515cc09845c30b62c89ddb3b6ff370f97
2012-11-27re-factor lifecycle issues in FormattedFieldWrapper.Michael Meeks
XAggregation.idl has some rather helpful comments on how this should work.
2012-11-26Some ::rtl::OUString -> OUString in bridgesRicardo Montania
Change-Id: I5412773f9cebc633a78ee5733b62f64b6d1599d4 Reviewed-on: https://gerrit.libreoffice.org/1068 Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com> Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
2012-11-15re-base on ALv2 code. Includes:Michael Meeks
Patches contributed by: Armin Le Grand. #118558# Correcting OLE attributes of LO3.4 at load time by loading as OOo3.3, details see task. http://svn.apache.org/viewvc?view=revision&revision=1195906 #118485# - Styles for OLEs are not saved. http://svn.apache.org/viewvc?view=revision&revision=1182166 #118898# Adapted ImpGraphic::ImplGetBitmap to correctly convert metafiles http://svn.apache.org/viewvc?view=revision&revision=1293316 #119337# Solves the wrong get/setPropertyValue calls in SvxShapeText (and thus in SvxOle2Shape) http://svn.apache.org/viewvc?view=revision&revision=1344156 Patches contributed by Mathias Bauer (and others) gnumake4 work variously http://svn.apache.org/viewvc?view=revision&revision=1394707 http://svn.apache.org/viewvc?view=revision&revision=1394326 cws mba34issues01: #i117717#: remove wrong assertion http://svn.apache.org/viewvc?view=revision&revision=1172349 Patch contributed by Herbert Duerr goodbye Registration and License dialogs, don't let the door hit you http://svn.apache.org/viewvc?view=revision&revision=1172613 help gcc 4.6.0 on 32bit ubuntu 11.10" http://svn.apache.org/viewvc?view=revision&revision=1245357 Do not add targets for junit tests when junit is disabled. Patch contributed by Andre Fischer http://svn.apache.org/viewvc?view=revision&revision=1241508 Revert "sb140: #i117082# avoid unncessary static class data members commit 21d97438e2944861e26e4984195f959a0cce1e41. remove obsolete FreeBSD visibility special case. retain consolidated BSD bridge code, remove OS/2 pieces.
2012-11-15Revert "sb140: #i117295# use rtl::Static"Michael Meeks
This reverts commit d3794d2d8ab2ee3f8118d61538bb753335b37f23. Conflicts: bridges/source/cpp_uno/cc50_solaris_intel/except.cxx bridges/source/cpp_uno/cc50_solaris_sparc/except.cxx bridges/source/cpp_uno/gcc3_ios_arm/except.cxx bridges/source/cpp_uno/gcc3_linux_arm/except.cxx bridges/source/cpp_uno/gcc3_linux_x86-64/except.cxx
2012-11-14rtl::OUString -> OUString in bridgesRicardo Montania
Change-Id: I292f2007771ab12a30de6cd5a6a1ed436adcff66 Reviewed-on: https://gerrit.libreoffice.org/1057 Reviewed-by: Tor Lillqvist <tml@iki.fi> Tested-by: Tor Lillqvist <tml@iki.fi>
2012-11-09Introdude SAL_JNI_EXPORT and use that instead of JNIEXPORTTor Lillqvist
Use it in the cases where I yesterday changed SAL_DLLPUBLIC_EXPORT to JNIEXPORT. It turns out that on Linux JNIEXPORT does not enforce "default" visibility, but expands to empty. Change-Id: I033b3cf538715fb596e965e17f3da12fb987df63
2012-11-09Use JNIEXPORT to really export these for AndroidTor Lillqvist
Now with DISABLE_DYNLOADING, SAL_DLLPUBLIC_EXPORT actually means hidden visibilty. Which is OK in general as with a single DSO (or a single executable, for iOS), none of our "normal" entry points need to be visible froom the outside. So for the JNI entry points use JNIEXPORT. On "normal" platforms it should be equivalent to SAL_DLLPUBLIC_EXPORT. Change-Id: Iad634950e635ac03a0e90cae6d00afd9fb4eeb64
2012-11-07More ::rtl::OUString -> OUString in bridgesRicardo Montania
Change-Id: Ibd29c68077dd8f27c95cd4cb62cd8dad0e18aacf Reviewed-on: https://gerrit.libreoffice.org/976 Reviewed-by: Radek Doulík <rodo@novell.com> Tested-by: Radek Doulík <rodo@novell.com>
2012-11-07::rtl::OUString -> OUString in bridgesRicardo Montania
Change-Id: I3a4fa7b108c58f100d2c8a586ec6c76af902e138 Reviewed-on: https://gerrit.libreoffice.org/974 Reviewed-by: Radek Doulík <rodo@novell.com> Tested-by: Radek Doulík <rodo@novell.com>
2012-11-03WaE: unused parameterTor Lillqvist
Change-Id: I3bc0896d1bb8c281e535d8a55ced1dec707b1d76
2012-10-22dummy_can_throw_anything reportedly needed at least with GCC 4.5.1, tooStephan Bergmann
...see <http://lists.freedesktop.org/archives/libreoffice/2012-October/039995.html> "RuntimeException while building" Change-Id: I038806d4ca1d7a2a2518106ba722509fbe3a7843
2012-10-01Replace usage of rtl_*Memory with equivalent from string.hArnaud Versini
Change-Id: I50ffc10f007f03c3252ef0196b59b881429cc159 Reviewed-on: https://gerrit.libreoffice.org/734 Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com> Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
2012-09-27Make exceptions work better in the x86-64 MacOSX C++-UNO bridgeTor Lillqvist
Putting the privateSnippetExecutor() assembly code as inline asm inside an otherwise empty C++ function helps, for some reason. Use the actual _Unwnd_Exception and __cxa_exception definitions as used by Apple (from opensource.apple.com libunwind and libcppabi sources) instead of guessing. Change-Id: I1ef22a9c0c664d3a357b9a6474406141f53cc490
2012-09-27WaE: format specifiers in debug outputTor Lillqvist
Change-Id: Ifab851a1294f2e09f31bec9ca517ef6f62b73550
2012-09-27First attempt at C++/UNO bridge for 64-bit OS XTor Lillqvist
Basically, a 1:1 copy of the Linux x86-64 one. The Apple docs say that "The OS X x86-64 function calling conventions are the same as the function calling conventions described in System V Application Binary Interface AMD64 Architecture Processor Supplement," which should mean that it's the same as on Linux. Once this works, the very minor differences to the Linux one will be merged as ifdefs into the Linux one, and no separate source files will be needed. Change-Id: I1ff58f303a7ab7f59ec2ff7a9e24465e89151ec5
2012-09-26make gcc-uno bridge work with both gcc-4.7 and clangLuboš Luňák
It seems b0515ea5fa6c29faebed616ae3e0213c72d24904 and e2b7e28c12bb836fd7ab1dcbfc2460f807dd27f6 conflict, clang requires the extra call, gcc-4.7 crashes with it.
2012-09-25replace remaining InterlockedCount() with inlined versionNorbert Thiebaud
Change-Id: Ifcfa48fc87f905a91470a5b0fd597b02f220784c Reviewed-on: https://gerrit.libreoffice.org/671 Tested-by: Norbert Thiebaud <nthiebaud@gmail.com> Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
2012-09-24Remove java_uno.map unused after gbuildificationStephan Bergmann
Change-Id: I05893a797e276fd7b4f5c05c09743def55cb4036
2012-09-24JNIEXPORT -> SAL_DLLPUBLIC_EXPORT after gbuildificationStephan Bergmann
(no longer using map file). Change-Id: Ib19995e11bd5e8bd5c26d29e2bf298e734a06f1f
2012-09-23Revert "add forgotten asm file to build"David Tardon
This reverts commit 492f9139c1033b3f069880bff8e7f2857cbca111.
2012-09-23gb_AsmObject expects .s extensionDavid Tardon
Change-Id: I958ad58081821ff31c02df0a1a5efb8406d7a6ee
2012-09-23add forgotten asm file to buildDavid Tardon
Change-Id: I5c86e369649e71d785af06437b2af633d6805b8d
2012-09-22switch bridges to gbuildDavid Tardon
Change-Id: Ia19ff61f1f7fb446298472acd6722b57ddaeddec
2012-09-22gbuildize bridgesDavid Tardon
Change-Id: I66e76da71dd5d6ed1b899aba8d41dfb5bc36da1c
2012-09-22add missing exportsDavid Tardon
Change-Id: I4cfbcedde049ae205997815786c46941937e2cf7