Matthias Köfferlein
e69ed872a7
Fixed a static initialization race.
2018-09-09 18:31:05 +02:00
Matthias Köfferlein
57b8826e2c
pthread support enabled for gsiObject.cc
2018-09-09 16:46:51 +02:00
Matthias Köfferlein
28f8a1ee7d
Merge branch 'pymod' into pymod-msvc
2018-09-07 22:56:22 +02:00
Matthias Köfferlein
ce01ce2dae
Fixed an issue with destruction callbacks in the QApplication destructor - in this case the interpreter may be nulled already and callbacks must not happen into Ruby/Python.
2018-09-06 23:37:26 +02:00
Matthias Köfferlein
356a468d66
A couple of changes to make MSVC work - not done yet.
2018-09-02 00:40:35 +02:00
Matthias Koefferlein
c9771f54eb
Merge branch 'master' into pymod
2018-09-01 09:37:08 +02:00
Matthias Köfferlein
af50c0f0c3
Many warnings fixed for MSVC
2018-08-29 01:46:18 +02:00
Matthias Köfferlein
23d715001b
First steps towards enablement of MSVC2017 for pymod. A lot of things to TODO yet ...
2018-08-04 18:02:39 +02:00
Matthias Koefferlein
f795aa84ec
Avoid one more deadlock in gsi::Proxy.
2018-07-13 18:24:41 +02:00
Matthias Koefferlein
cf3a6c2ce5
Fixed a deadlock.
2018-07-13 08:08:15 +02:00
Matthias Koefferlein
61a37fc3c3
Prevent a deadlock when destroying gsi objects.
2018-07-12 23:28:30 +02:00
klayoutmatthias
616c2942e1
WIP: made pymod functional on Windows (without Qt). Tests pass.
2018-07-10 23:34:30 +02:00
Matthias Koefferlein
d2c890ab6d
WIP: fixed unit tests for Qt-less build.
2018-07-10 01:17:35 +02:00
Matthias Koefferlein
2b64c4bf82
Bugfix: multithread-safety for gsi::Proxy (required for the tiling processor use case).
2018-07-06 00:56:34 +02:00
Matthias Koefferlein
bbfcd9cf9e
Made normal build work again.
2018-07-03 01:49:06 +02:00
Matthias Koefferlein
239b7ca3ff
First (major) steps towards a Qt-less basic build.
2018-07-02 18:20:20 +02:00
Matthias Koefferlein
f4dd012005
WIP: refactored GSI test classes so they are hard-linked into the ut_runner binary. Dynamic loading inside .ut files happens too late.
2018-06-19 21:12:53 +02:00
Matthias Koefferlein
361bc64870
WIP: fixed some build issues, removed some link dependencies which causes issues on Windows.
2018-06-19 20:31:55 +02:00
Matthias Koefferlein
eca8697398
WIP: some refactoring of pya binding and data keeping. Added more conversion functions for use in external code. Needs testing.
2018-06-07 01:05:36 +02:00
Matthias Koefferlein
403840b109
WIP: some bug and performance fixes.
2018-06-01 23:36:01 +02:00
Matthias Koefferlein
3882f6a3b1
WIP: further generation of Python module (kind of slow currently + dependent modules need to be loaded manually)
2018-05-31 23:22:35 +02:00
Matthias Koefferlein
07d9363ea7
WIP: more python modules, made gsi initialization safe against duplicate init.
2018-05-31 20:51:09 +02:00
Matthias Koefferlein
0e29c997f6
WIP: refactoring, fixed documentation and some mistakes.
2018-05-31 01:11:24 +02:00
Matthias Koefferlein
c30d52c801
WIP: fixed a lot of compiler issues after last refactoring.
2018-05-30 01:00:13 +02:00
Matthias Koefferlein
6468bb7ab9
WIP: refactoring of GSI structure for separated modules.
2018-05-30 00:39:58 +02:00
Matthias Koefferlein
e1922da3b2
Better memory statistics.
2018-04-15 00:54:30 +02:00
Matthias Koefferlein
2f46f0d1c6
Fixed some issues found with Coverity.
2018-02-21 00:21:19 +01:00
Matthias Koefferlein
53328d1767
Merge branch 'macos-build' from kazzz
2018-01-14 17:29:59 +01:00
Matthias Koefferlein
2de6b691b4
64bit coordinate support enhanced
...
- int128 to string support for output
- unit tests
- some compiler issues fixed
2018-01-10 22:12:55 +01:00
Matthias Koefferlein
8003d1bb47
Merge branch 'master' into macos-build-on-master
2018-01-02 23:37:45 +01:00
Matthias Koefferlein
ffb56335fb
Updated copyright note to 2018.
2018-01-01 21:08:06 +01:00
klayoutmatthias
7e0f1522ac
Windows build compatibility
...
The issue is with "dllexport": previously, dllexport was present on
exposed templates tool (= visibility(default) for gcc/clang). This
ensured MacOS compatibility since then the typeinfo is corretly
shared and dynamic_cast/typeid works.
For Windows, the "dllexport" equivalent requires the template
instantiations to be declared "external" which is a coding nightmare.
The solution is to provide separate macros for real (non-specialized,
not explicitly instantiated) templates (.._PUBLIC_TEMPLATE) which
is defined as empty for Windows and "visiblity(default)" for gcc/clang.
2018-01-01 18:55:11 +01:00
Matthias Koefferlein
d670083111
Even more exported templates ..
2017-12-31 11:43:44 -08:00
Matthias Koefferlein
c4cf394719
One more external visibility ...
2017-12-31 10:56:46 -08:00
Matthias Koefferlein
6b4d24b442
One more external visibility ...
2017-12-31 10:23:54 -08:00
matthias
063811edc4
Solved the clang/MacOS startup failure and menu issue
...
1.) Startup issue:
This is solved by making sure templates with virtual functions
are made visible in the DSO. This way, dynamic_cast is possible
across DSO's.
Scary: clang/MacOS wants the forward declarations be declared visible as well.
2.) Menu issue:
The best solution is to have only one QMenuBar. The navigator
now gets a synthetic menu bar composed of QToolButtons.
2017-12-30 15:22:16 -08:00
Matthias Koefferlein
c63a47dd89
Added tests for klayout app
...
This commit also contains some important fixes:
* Option -wd wasn't working
* Relative layout file paths in session files are resolved as relative
to the session file. On writing, absolute paths are used, so this
change only affects session files build intentionally.
Plus:
* Program version is available in unit tests too
* Fixed a typo in the RBA::Expression documentation
2017-12-27 17:52:35 +01:00
Matthias Koefferlein
21e42788e6
Fixed #39 (Action cannot be reassigned)
2017-12-17 22:38:48 +01:00
klayoutmatthias
b49db04fb4
Fixed MacOS build
...
The LLVM STL implementation does not recognize "typedef void iterator_traits"
as dummy declaration. It will fall back to an empty traits struct.
Using the default "forward_iterator_tag" for the iterator_traits solves
this compile issue.
2017-12-12 00:21:16 +01:00
Matthias Koefferlein
1cea7dfd23
Fixed #33 (Plugin factory not working when using with Python)
...
The fix consisted of introducing "factory" type virtual
methods which ensure that a reference is held to the
returned object. This is important for implementing
factory methods in Python. Without this, the object
get destroyed before we have a chance to increment the
reference count.
2017-12-11 23:51:00 +01:00
Matthias Koefferlein
65ec67ca3c
Test classes for GSI unit tests must not be exported.
2017-09-03 14:51:41 +02:00
Matthias Koefferlein
388da45703
Fixed gsi::ClassBase::has_class(name)
2017-09-03 12:45:34 +02:00
Matthias Koefferlein
6c26b2a251
Speeding up the startup initialization by using proper type maps for GSI.
2017-09-03 11:52:06 +02:00
Matthias Koefferlein
196d3a60e7
Fixed the build with less dependencies.
2017-09-03 10:29:14 +02:00
Matthias Koefferlein
cfe8375be0
Unit test refactoring
...
Move ut framework to tl, so there are less complex
dependencies.
2017-09-03 01:54:11 +02:00
Matthias Koefferlein
23fdcec7c6
Don't install GSI test library.
2017-08-27 19:40:32 +02:00
Matthias Koefferlein
d080b55c5b
Bugfix: tiling processor's _rec method wasn't delivering virtual methods.
2017-08-27 10:41:32 +02:00
Matthias Koefferlein
79811994f6
Refactoring: moved unit tests to libraries for some other libs
2017-08-26 23:43:40 +02:00
Matthias Koefferlein
000917d2c9
Refactoring: moved unit tests to libraries for some libs (ut modularization)
2017-08-26 22:44:31 +02:00
Matthias Koefferlein
55e797ffaf
Provide proper INSTALL targets for .pro files
...
Plus: reduce compiler warnings
2017-08-21 02:33:45 +02:00