Now that we have default values for Exception constructor params,
remove lots of boilerplate code.
Change-Id: I620bd641eecfed38e6123873b3b94aaf47922e74
...mostly done with a rewriting Clang plugin, with just some manual tweaking
necessary to fix poor macro usage.
Change-Id: I71fa20213e86be10de332ece0aa273239df7b61a
It's not very efficient, because we generally end up copying it twice -
once into the parameter and again into the destination OUString.
So I create a clang plugin that finds such places and generates a
warning so that we can convert them to pass-by-reference.
Change-Id: I5341a6ea9e3190f4b4c05c42c85595e3dcd83361
Convert code like
aStr.compareToAscii("XXX") == 0
to
aStr.equalsAscii("XXX")
which is both easier to read and faster.
Change-Id: I448abf58f2fa0e7715dba53f8e8825ca0587c83f
Convert code like:
0 == aStr.compareToAscii("XXX")
to
aStr.equalsAscii("XXX")
which is both clearer and faster.
Change-Id: I2e906d7d38494db38eb292702fadb781b1251e07
... to set up a fake command line. This is used from pyuno, when
invoked from the "python" executable as "import uno".
On WNT there is an API to get the actual command line, so just use that
even in the "fake" case; on UNX just fake something up.
Just for the record the whole osl_setCommandArgs() is called exactly once
assumption should work out _unless_ there is a program that uses SAL_MAIN
_and_ does a python-level "import uno" _before_ it wants to create a
python-based UNO service (via pyuno_loader::CreateInstance), since
pyuno already takes care to call Runtime::initialize() at most once.
Change-Id: Ifd23de733ea3e6b694d46ab039b6aa4fd3e7fc1b
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
Easy to trigger the assert in osl_getCommandArgCount(), just
run instdir/*/program/python and "import unohelper".
Avoid that by setting up a fake command line, hopefully
nobody expects to be able to give relevant args to python...
Change-Id: I0df6c23d6ecbb3c2bce81a9d5bcecdcb1729ddbb
Add backwards compatibility support for Python 2 to the earlier
change in fdo#66025 to improve import error handling under Python 3.
Change-Id: I47bf8ef255c4c2a3e4a2754414977aaa8ed32483
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
Refactor everything to find and link libraries directly in INSTDIR.
- add gb_LinkTarget_get_linksearchpath_for_layer, and use it to set up
-L paths for T_LDFLAGS in such a way that only allowed libraries
can be linked against; i.e. it's not possible to link URE
linktargets against OOO or not-installed libraries
- gb_Library_get_target is now same as the gb_LinkTarget_get_target
(TODO: this needs cleanup)
- since a pattern rule won't work for linking libraries in INSTDIR,
add a separate per-file rule for every INSTDIR lib
- pattern rule can't find link target in the clean target any more
so add a LINKTARGET variable
- disable gb_Library_add_auxtarget, no auxtargets need to be copied
- tweak the call to gb_Library_Library_platform to pass in a path
in sdk/lib for the versioned URE libs
- fix the Library clean target
- add LAYER parameter to gb_LinkTarget_LinkTarget
- adjust platform link commands
- MSVC link command now uses explicit -manifestfile and -pdb
parameters to keep misc. files out of INSTDIR
- remove gb_Helper_OUTDIR_FOR_BUILDLIBDIR
- adjust Extension, CppunitTest, JunitTest, PythonTest, Gallery,
various CustomTargets to search INSTDIR
- remove SDK library symlinks and import libs from odk/Package_lib
- on Mac OS X, put .dylib symlinks into sdk/lib even though those
are not packaged and would be created by the SDK configury;
we need these to be somewhere for linking anyway
- add a (unfortunately cyclic) dependency on Package ure_install to sal
Change-Id: I70d88742f8c8232ad7b9521416275c67b64fe6cf
Compiler plugin to replace with matching number(), boolean() or OUString ctor,
ran it, few manual tweaks, mark as really deprecated.
Change-Id: I4a79bdbcf4c460d21e73b635d2bd3725c22876b2