Commit Graph

299 Commits

Author SHA1 Message Date
Michael Stahl
70c35265f5 gbuild: remove libraries from OUTDIR and WORKDIR
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
2013-09-22 11:08:31 +02:00
Matúš Kukan
41f00a356e pyuno: this rc file seems to be unused
Change-Id: I98b6263a464b46075e69e363c3eb9e4ec4557c46
2013-09-09 22:09:04 +02:00
Luboš Luňák
64b993e046 finish deprecation of O(U)String::valueOf()
Compiler plugin to replace with matching number(), boolean() or OUString ctor,
ran it, few manual tweaks, mark as really deprecated.

Change-Id: I4a79bdbcf4c460d21e73b635d2bd3725c22876b2
2013-08-21 15:10:35 +02:00
Stephan Bergmann
19277d02fb osl_getThreadIdentifier(0) -> osl::Thread::getCurrentIdentifier()
Change-Id: Ida9785c4b9fda0459769957734952e69d7a9de44
2013-08-21 14:19:10 +02:00
Tor Lillqvist
c6a7300974 Use subfolder names from <config_folders.h>
Change all instances of hardcoded "program", "share" etc subfolder names to
use those from <config_folders.h> instead. In normal builds, the end result
will not change.

Change-Id: I91c95cd8e482818be67307e889ae6df887763f53
2013-08-18 21:11:16 +03:00
Takeshi Abe
7ef72aefc6 Mark as const
Change-Id: Ic7ee570935b5d827dc01a483877ea5021da5abea
2013-08-15 22:09:58 +09:00
David Bolen
1be8e912ba fdo#50470: Restore pyuno object method introspection in Python 3
Switch to __dir__ entry point for introspection as Python 3 dropped support
for __members__/__methods__.  This is backwards compatible to Python 2.6.

Module initialization adjusted to complete type setup (needed for tp_dict)
via PyType_Ready.

Change-Id: Ie1f7b9dd4279242de89d009eb7acdc8c786dab8f
Reviewed-on: https://gerrit.libreoffice.org/5375
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
2013-08-13 11:34:52 +00:00
Stephan Bergmann
d6c63c9a84 Remove whitespace from line ends
Change-Id: Ie894879eaebda32bc4f99e7ad7f810c569e86a7a
2013-07-29 11:35:18 +02:00
David Bolen
948b6ea02e fdo#66025: Improve accuracy of ImportError traceback and message
The ImportError raised on an import failure with the uno module loaded
now includes a complete traceback and the original Python exception
message text, combined with the most relevant (nearest to failure if
imports are nested) uno lookup that also failed.

Change-Id: Id968d84d7f09d555a81017a99369beb503d61439
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2013-07-29 11:35:18 +02:00
David Bolen
fbe28de6fb fdo#66025: Simplify new ImportError logic
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2013-07-24 15:26:10 +02:00
David Bolen
329125abb6 fdo#66025: Minor clean-up of previous patch
Change-Id: Idaaf8ebbf419899ba04b77cf10b217c141652a3a
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2013-07-24 13:04:25 +02:00
David Bolen
7fd81244c2 fdo#66025: Improve ImportError raised from _uno_import
Change-Id: I92301f0c37d69e5977a12ab4d5a360f7a4ff20fe
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2013-07-24 10:04:44 +02:00
Herbert Dürr
28a4496c76 Resolves: #i120788# remove unused members from PyUNO_callable_Internals
Patch by: Tsutomu Uchino <hanya.runo@gmail.com>

(cherry picked from commit 5e2c3fd88906494965979bd20ca852391bee3bac)

Conflicts:
	pyuno/source/module/pyuno_impl.hxx

Change-Id: If73d5f7b799f04b79b5cc71d2d44c797851b18d0
2013-07-12 11:45:05 +01:00
Thomas Arnhold
ba0a57702c remove OUString wrap for string literals
For some functions and all kinds of Exceptions.

CannotConvertException
CloseVetoException
DisposedException
EmptyUndoStackException
ErrorCodeIOException
Exception
GridInvalidDataException
GridInvalidModelException
IOException
IllegalAccessException
IllegalArgumentException
IllegalTypeException
IndexOutOfBoundsException
NoMasterException
NoSuchElementException
NoSupportException
PropertyVetoException
RuntimeException
SAXException
ScannerException
StorageWrappedTargetException
UnsupportedFlavorException
VetoException
WrappedTargetException
ZipIOException
throwGenericSQLException
throwIllegallArgumentException

createInstance
createInstanceWithContext
forName
getByName
getPackageManager
getPropertyValue
getUnpackedValueOrDefault
getValueByName
hasPropertyByName
openKey
setName
setPropertyValue
supportsService

bash command:

for i in `cat list`; do git grep "$i\s*(\s*OUString(\s*\"" -- '*.[hc]xx'
	| cut -d ':' -f1 | sort -u
	| xargs sed -i
		-e "s/\(\<$i\s*(\)\s*OUString(\s*\(\"[^\")\\]*\"\)\s*)\s*/\1\2/g"
		-e "s/\($i.*\)\"+ /\1\" + /g";
done

Change-Id: Iaf8e641b0abf28c082906014f87a183517630535
Reviewed-on: https://gerrit.libreoffice.org/4624
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Thomas Arnhold <thomas@arnhold.org>
Tested-by: Thomas Arnhold <thomas@arnhold.org>
2013-06-29 21:52:54 +00:00
Thomas Arnhold
b6d97514cd reduce some spacing
Change-Id: I72d494b1c0ff5ed3c52ae6a078815f497e4dd647
2013-06-29 18:38:14 +02:00
Xiaoli
7441d4bbdb PyUno fixed crash in function isInstanceOfStructOrException()
when we try to call PyUNO_callable object that doesn't have __class__ attribute

Change-Id: Ia05f70d70f248d50aa141b09625f7ec50189e1dd
Reviewed-on: https://gerrit.libreoffice.org/4309
Reviewed-by: Michael Stahl <mstahl@redhat.com>
Tested-by: Michael Stahl <mstahl@redhat.com>
2013-06-16 15:29:04 +00:00
Noel Grandin
8bf8a2f349 fdo#46808, Convert script::InvocationAdapterFactory to new style
Change-Id: I2fe24c863f4c43471f46032ed15fcd5b98863fc1
2013-05-14 13:39:29 +02:00
Stephan Bergmann
094978d48d No need for RTLD_NOW here
...it was like that "since the beginning," but for no apparent reason.

Change-Id: Ic293739b5cd5de0bfe9e2580a0755af64202e582
2013-05-08 20:16:44 +02:00
Michael Stahl
288c8b9d59 adapt path for test.dll for WNT
Change-Id: I4d7cb081805213f55ae69c4ade8638bbfc06f0c4
2013-04-21 15:00:51 +02:00
Michael Stahl
1fb53a6375 pyuno_loader::CreateInstance: delete the initial PyThreadState
Don't see how it could be used again, it appears to be leaked
and causes the assertion in PyThreadState_Swap to fire.

Change-Id: Id6bbb4363928e4fdd8bda1905f6e1f9931dba74c
Reviewed-on: https://gerrit.libreoffice.org/3452
Reviewed-by: David Ostrovsky <David.Ostrovsky@gmx.de>
Tested-by: David Ostrovsky <David.Ostrovsky@gmx.de>
2013-04-18 16:27:16 +00:00
Miklos Vajna
89035356bc pyuno_dlopenwrapper: give error message before abort() if dlopen() fails
Change-Id: Idf39b33efe4c7838f2669aec8773616416811d57
2013-04-12 09:47:18 +02:00
Stephan Bergmann
4eccc3798b warning C4101: 'e' : unreferenced local variable
Change-Id: I2828021d60d82e43358ba98a1a3b4967a6901cd6
2013-04-09 12:33:56 +02:00
David Tardon
542cf6d9ea unbreak windows tinderbox
Change-Id: Ic777267cb86acdb62b53a7b324e1423b7c6b67c5
2013-04-09 09:46:38 +02:00
Michael Stahl
ebeae438db move Python tests in-process
This is nice to make them more easily debuggable.
A series of crude hacks are employed to bootstrap enough services from
python so the current tests run.
This is only tested with system python3 on Fedora.

Change-Id: I5e06741e55ead7fddec41ff776ff8ca5d2399469
Reviewed-on: https://gerrit.libreoffice.org/3215
Reviewed-by: David Ostrovsky <David.Ostrovsky@gmx.de>
Tested-by: David Ostrovsky <David.Ostrovsky@gmx.de>
2013-04-09 05:52:49 +00:00
Luboš Luňák
1946794ae0 mass removal of rtl:: prefixes for O(U)String*
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-07 14:23:11 +02:00
Chr. Rossmanith
8333cbf2a3 Remove RTL_CONSTASCII_(U)STRINGPARAM in pyuno
and use append() instead of appendAscii()

Change-Id: Iaf29a2f18eff39db5d1b5cc298cce23442ac51a9
2013-03-28 22:54:38 +01:00
Thomas Arnhold
39d45390f4 removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStrings declarations
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-19 10:48:30 +00:00
Thomas Arnhold
8b27d78b4a automated removal of RTL_CONSTASCII_USTRINGPARAM for quoted OUStrings
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-19 09:00:26 +00:00
Luboš Luňák
a09124e6f5 avoid Wundef in cases where the usage seems otherwise ok
Change-Id: Iabccc31c59cec32235661f5225f45bb13f76a68f
2013-03-18 17:15:56 +01:00
Kenneth Beck
21e1e859a7 fdo#60724 change spelling error REMOVEABLE -> REMOVABLE
Only applies to PropertyAttribute::REMOVEABLE, and all instances in comments.
All other instances of the misspelling have remained the same.
Example: AF_REMOVEABLE

Change-Id: I391f4101bbc3e06689318235a37d616065bc1686
Signed-off-by: Stephan Bergmann <sbergman@redhat.com>
2013-03-06 10:39:30 +01:00
Julien Nabet
76fb62755b coverity#983056: Resource leak
Change-Id: Ic40776f3cec5139e7f7accb4985533e78bd7c158
2013-03-04 21:27:27 +01:00
Julien Nabet
f68cd77923 Fix type unkown -> unknown
Change-Id: I8d55d5ae5ae38ae2b252859b5400e36301f19ef0
2013-02-21 21:50:01 +01:00
Jean-Noël Rouvignac
77fd448d09 Removed several useless macros: UNISTRING, USTR, USTR_ASCII, ASCII_STR, ASCII_STRING, CONST_ASCII, ASCSTR, ASCII, DEFINE_CONST_UNICODE, DEFINE_CONST_OUSTRING
Change-Id: I96d690bf9f9b319e9eeafcf218ec5ce87f21215f
Reviewed-on: https://gerrit.libreoffice.org/1954
Reviewed-by: Tor Lillqvist <tml@iki.fi>
Tested-by: Tor Lillqvist <tml@iki.fi>
2013-02-14 13:20:14 +00:00
Stephan Bergmann
bd2c4e8dc4 Adapt PyUNO getConstantByName to previous TypeDescriptionMgr API CHANGE
Change-Id: I5a91c6c6dce103a8e4daa1572a638e1968a48fd8
2013-01-30 18:13:26 +01:00
Stephan Bergmann
c2445b03f4 fdo#59728: Fix encoding of .py files as UTF-8 for Python 3
...where it could default to something like CP 1252 instead on Windows, while
keeping backwards compatibility for now with running under Python 2 (where
things apparently worked well with the original code).

Change-Id: I0ddd06771a36e1cd2cc2ce78abd8bd667db7778f
2013-01-23 17:58:25 +01:00
Tor Lillqvist
d72a0b5c61 Check for __GNUC__ instead of GCC in sources
We still have checks for $(COM) being GCC or MSC in makefiles, of
course. But there is no reason to pass -D$(COM) to compilations.
Checking the built-in compiler-specific macros __GNUC__, _MSC_VER
(etc) is the right thing to do.

Change-Id: Ia961a29ba74e2c4977e5300a92318f38104c6592
2012-12-27 13:38:15 +02:00
Tor Lillqvist
43df436f60 WaE: Fix needed with MSVS 2010, too
Change-Id: I1d1da64b14139c1d90ac07685f3fe88e99253815
2012-12-25 10:55:29 +02:00
Tor Lillqvist
781548472b VS2012 WaE: C4211: nonstandard extension used : redefined extern to static
Some screwup with hypot(). As a workaround, include <math.h> early.

Change-Id: Ic8c6abc45f8502097c6b6b619108d50ea3c22392
2012-12-21 18:39:28 +02:00
László Németh
71f9633d67 some not important Python3.3 port (pythonloader DEBUG mode)
Change-Id: I9a6ee04524c0ecd10301c17d2ca6da156d1c2160
2012-12-19 11:16:14 +01:00
Ariel Constenla-Haile
374c9af20d i118798 - Fix Pyuno dead-lock
Fixes fdo#57569, thanks to Miklós Prisznyák for the hint.

git-svn-id: https://svn-master.apache.org/repos/asf/incubator/ooo/trunk@1232123 13f79535-47bb-0310-9956-ffa450edef68
2012-12-11 19:40:50 +01:00
Julien Nabet
a0f86c9c1d Python/pep8: fix E711 (is or is not None instead of = or !=) in pyuno module
Change-Id: I8ee9abc9a31a6d7791a006ed589d83d5858de267
2012-12-09 23:16:08 +01:00
Michael Stahl
31170413ae API CHANGE: com.sun.star.lang.IllegalArgumentException
... derives from com.sun.star.uno.RuntimeException instead of
com.sun.star.uno.Exception.

Only test that breaks with this change is jurt_uno/AnyConverter_Test,
which for mysterious reasons effectively tests that
IllegalArgumentException is a subclass of Exception and not
RuntimeException.  Presumably this is just a generic exception test that
happens to use IllegalArgumentException.

Some further testing indicates there are no problems expected at
runtime:
Running "make subsequentcheck" with all Java test code compiled against
a ridl.jar that does not contain the change, running against a soffice
that uses ridl.jar and rdbs with the change + ridl.jar with the change
on the test side yields exactly the same AnyConverter_Test failure, with
no other failures.

Change-Id: Iad183de76ec7e0d56648084e97cdcc160b5b033d
2012-11-26 23:14:33 +01:00
Rene Engelhard
669f0da19b use correct PyString_Size for python2
This reverts commit 8ea4657f64.

Conflicts:
	pyuno/source/module/pyuno_util.cxx

Change-Id: I252688b72610864613ceb80aac9030062e63fdac
2012-11-26 13:48:58 +01:00
Julien Nabet
b7617d50dc New try to fix pystring size
I don't know if it's ok but compilation doesn't fail

Change-Id: I6960b2cd4587b3f49ccfa7fb24874c288ccfce6a
2012-11-25 19:05:01 +01:00
Michael Meeks
8ea4657f64 attempted blind fix for pystring size.
Change-Id: I637292be9791484a58b60e8889962176a37e2c07
2012-11-25 16:55:25 +00:00
Michael Stahl
af2b7fac27 pyuno: fix handling of "str", "unicode", "bytes" types:
Replace currrent wrappers of Python 2 only PyString_* functions with
better abstractions that handle default "str" (PyStr_*) or byte strings
("str"/"bytes" depending on version, PyStrBytes_*) and adjust all
invocations to work on appropriate string types.
Fixes obvious "attributes typeName and/or value of uno.Enum are not
strings" exceptions with Python 3.

Change-Id: I255dcb1bc198fd7f6a62b83b957901521071a480
2012-11-25 16:06:40 +01:00
Michael Stahl
a38b59265c pyuno: adjust uno.ByteSequence to work with "bytes"
This is necessary for Python3; "str" type is still accepted so it runs
on Python 2 as well.

Change-Id: I51098feca00e4cd8ce3ceebf663d4ce79252cbcd
2012-11-25 16:06:40 +01:00
Michael Stahl
8e5ea6dcbf pyuno: fix breakage because PATH_MAX not defined with Python3
Change-Id: I12e55c8810193591d9cd017bf5d89078b3915ddb
2012-11-17 00:45:12 +01:00
Michael Stahl
e60f936ece pyuno: Runtime::pyObject2Any only allowed to throw RuntimeException
... so wrap the InvocationTargetException that happens when loading
Python 2 only LightProof into Python 3 so LO does not crash.

Change-Id: I4da230b46ef23c184718e858bf178f340f4b9c1f
2012-11-17 00:45:11 +01:00
Noel Grandin
b30ee83058 fdo#46808, use service constructor for beans::Introspection
Change-Id: Ieb49277020d31779979d8eb508391d6f8b97bf94
2012-10-23 13:06:14 +02:00