Commit Graph

1019 Commits

Author SHA1 Message Date
Matthias Koefferlein 3392c08d36 Merge branch 'pymod' into net-extract 2018-10-09 23:43:58 +02:00
Matthias Koefferlein 904a12c11e Added a way to get the exit code from InputPipe
The method is to call wait() on the pipe object
which returns the exit code.

Some tests have been added for this.
2018-10-09 23:40:28 +02:00
Matthias Koefferlein 7df9242efb Merge remote-tracking branch 'origin/pymod' into pymod 2018-10-09 23:00:30 +02:00
Matthias Koefferlein 222b98fd70 Some fixes for the testsuite
With these fixes, unit tests pass with MacOS
(set DYLD_LIBRARY_PATH!)

1.) MacOS takes popen vs. pclose seriously
By using fopen we basically spoil the system and other popen
won't work.

2.) For system integrity, MacOS does not propagate DYLD_LIBRARY_PATH
to child processes such as sh. This has to be done explictly.

3.) Search the klayout binary in the right path (klayout.app/...)

4.) Reset KLAYOUT_HOME for less intervention by installed macros
2018-10-09 13:57:26 -07:00
Matthias Koefferlein 19a3f19378 Removed some misleading comments. 2018-10-09 21:24:23 +02:00
Matthias Koefferlein 70778e9414 Now also fixed the bd unit tests - there are also independent from the streamer plugins now. 2018-10-09 01:12:58 +02:00
Matthias Koefferlein f0661ba0b3 Some wrong header includes fixed. 2018-10-09 00:35:03 +02:00
Matthias Koefferlein a7846ead9f Add-on to previous commit: fixes some Python issues
The comments for LoadLayoutOptions#layer_map, #cif_layer_map
and #dxf_layer_map have been updated to reflect the new status
of these properties (which have been methods). The tests
are updated accordingly (layer_map() -> layer_map).
2018-10-09 00:18:45 +02:00
Matthias Koefferlein db981b0f7d A huge patch to make Windows build functional again after recent updates
The issue was: for MacOS/clang, the virtual format-specific
option structs had to be embedded in one compile unit (for RTTI).
In Windows this will lead to link errors since the DLL is not
reachable at build time for the generic reader/writer configuration in
the buddy tools.

The solution is to use GSI methods (provided for scripting) to
set the reader/writer options in a generic way that does not
require linking against the plugin DLLs.
2018-10-08 23:31:22 +02:00
Matthias Koefferlein 121ec46390 Attempt to introduce multithreading into hierarchical processor
However, performance does not scale well currently.
2018-10-08 00:10:54 +02:00
Matthias Koefferlein 35e03c5f95 Added one more testcase. 2018-10-07 16:56:14 +02:00
Matthias Koefferlein 0bb45dd092 WIP: some refactoring. 2018-10-06 23:59:47 +02:00
Matthias Koefferlein 2fa0d21615 Added self-overlap-with-sizing tests. 2018-10-06 22:25:24 +02:00
Matthias Koefferlein ee55a4ca21 Fixed hier processor in case of self-interactions 2018-10-06 21:56:13 +02:00
Matthias Koefferlein 2e61998372 WIP: interactions with same layer (needs finishing) 2018-10-06 01:40:01 +02:00
Matthias Koefferlein 4ffcaba5d1 Important bug fix for MacOS
Unlike Linux, RTTI does not work in MacOS/clang when the classes
originate from different compile units. I think that Linux's C++
runtime not only checks for identical vtable, but alternatively
for same name. On MacOS, dynamic_cast will fail instead. This fix
solves this issue by placing the important steam format option
specializations into a single specific shared object (the DB plugin).
2018-10-04 14:10:22 -07:00
Matthias Koefferlein f7c4aa0348 (Partial) attempt to fix the plugin detection issue on MacOS 2018-10-02 17:36:30 -07:00
Matthias Koefferlein c380b9c4bf Hier processor: supports two layouts for input now. 2018-10-01 22:45:46 +02:00
Matthias Koefferlein f01e102f0f Merge branch 'pymod' into net-extract 2018-09-30 23:37:21 +02:00
Matthias Koefferlein 967652784e Merge remote-tracking branch 'remotes/origin/master' into pymod 2018-09-30 23:26:20 +02:00
Matthias Koefferlein c08f0a1fda Fixed #176 by introducing a separate bitmap for text drawing optimization. 2018-09-30 10:27:44 +02:00
Matthias Koefferlein c342bca584 WIP: updated solution
* Reverted first solution partially because it lead to drawing errors.
* Redraw thread will fire workers only for layers that really need
  to be drawn
2018-09-30 00:16:35 +02:00
Matthias Koefferlein ad7154c6cf Basic performance improvement in the bitmap to image area
Empty bitmaps are skipped now
2018-09-29 23:35:30 +02:00
Matthias Koefferlein c75e67268b Merge branch 'pymod' into net-extract 2018-09-26 21:40:23 +02:00
Matthias Koefferlein d03d4bec1d Fixed build after merge. 2018-09-26 21:27:31 +02:00
Matthias Koefferlein 6795de1dbb Merge remote-tracking branch 'remotes/origin/master' into pymod
Provides fixes for issue #166 and #172.
2018-09-26 21:15:08 +02:00
Matthias Koefferlein d4adb194e3 Fixed #172 (DEF reader does not pull vias from LEF) 2018-09-26 20:49:04 +02:00
Matthias Koefferlein defbf33d19 WIP: distance parameter for hierarchical processor. 2018-09-25 23:26:18 +02:00
Matthias Koefferlein 824888aaa6 WIP: some refactoring. 2018-09-25 22:25:40 +02:00
Matthias Koefferlein eb71121c38 WIP: bugfix - intra-array self interactions. 2018-09-23 22:34:50 +02:00
Matthias Koefferlein 52a4459dac WIP: timer enhanced (reports start now), drop empty boxes in hier processor (will make the processor stall). 2018-09-23 20:06:27 +02:00
Matthias Koefferlein 611a98165d WIP: diagnostic output 2018-09-23 17:49:10 +02:00
Matthias Koefferlein 3c15d8e387 WIP: some optimization with empty intruder hint. 2018-09-23 17:22:08 +02:00
Matthias Koefferlein 9e09002d43 WIP: refined interaction testing. 2018-09-23 16:57:49 +02:00
Matthias Koefferlein c1b0892641 WIP: More testcases, better test coverage, some bug fixes 2018-09-23 16:08:00 +02:00
Matthias Koefferlein d7099edcae WIP: gcov enabled, added more test cases. 2018-09-23 09:29:05 +02:00
Matthias Koefferlein 8420b29025 WIP: mixed propagation sample. 2018-09-23 00:53:19 +02:00
Matthias Koefferlein 2595f4ed6b WIP: more test coverage. 2018-09-23 00:37:27 +02:00
Matthias Koefferlein 76b045e2ac WIP: hierarchy variant building, tests 2018-09-22 23:44:24 +02:00
Matthias Koefferlein 3cbbe041aa WIP: some bugfixes, new tests (up/down, down/up interactions) 2018-09-22 23:37:23 +02:00
Matthias Koefferlein a551300e0d WIP: Some refactoring (hier processing in extra file), unit tests, bug fixes 2018-09-22 22:32:36 +02:00
Matthias Koefferlein 3214200e17 WIP: code factory 2018-09-22 02:45:56 +02:00
Matthias Koefferlein b25401c254 Added twofold-typed box scanner. 2018-09-20 23:44:51 +02:00
Matthias Koefferlein 9ccc0a86b1 Fixed a merge issue (build was broken) 2018-09-17 22:34:01 +02:00
Matthias Koefferlein 3b59d97195 Ported Ruby initialization issue bugfix from pymod to master.
On OpenSuSE 15 (gcc 7.3.1, Ruby 2.5.0) crashes have been
observed on starting the application. The main reason seems
to be the attempt to disable $0 redirection in Ruby.

This is not required for Ruby >= 1.9, so this is better dropped.
2018-09-17 21:43:38 +02:00
Matthias Köfferlein 11d5819c77 Fix of a small bug found by MSVC iterator assertions 2018-09-17 21:31:52 +02:00
Matthias Köfferlein cb15132029 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-17 21:30:54 +02:00
Matthias Köfferlein 8c4099b77d Bugfix in the annotation area
The annotation ID was taken from an object already deleted - on MSVC 
this becomes an issue.
2018-09-17 21:25:28 +02:00
Matthias Köfferlein 88e0bd77a2 Fix in Image object handling
Id was taken from an object destructed already.
2018-09-17 21:24:47 +02:00
Matthias Koefferlein 6efdb3a9e1 Added testcase for #166. 2018-09-17 01:51:23 +02:00
Matthias Koefferlein f72fda7bae Added test case for #166. 2018-09-17 01:48:31 +02:00
Matthias Koefferlein e9de4252fb Fixed #166 (internal error when writing GDS file)
This fix consists of computing the intersection
points in the split procedure with higher resolution
to avoid topology changes due to snapping on the cut
line.
2018-09-17 01:29:31 +02:00
Matthias Koefferlein 4c4261be6c Initialized netx plugin 2018-09-16 08:48:43 +02:00
Matthias Köfferlein fe26785203 Fixed install target for MSVC - copy needs to use Windows paths. 2018-09-13 22:31:45 +02:00
Matthias Koefferlein 06c0b8f6e1 And back to Windows ... re-inserting the ruby_sysinit workaround. 2018-09-12 00:06:48 +02:00
Matthias Koefferlein 0a2574cd3a Now it breaks the ruby 1.8.x tests ... grrr 2018-09-11 23:19:52 +02:00
Matthias Koefferlein 121e1301b0 Hopefully this fixes the crashes on OpenSuSE 15. 2018-09-11 22:35:57 +02:00
Matthias Koefferlein 6536e9a8dc Modified command line prep for Ruby integration - maybe that fixes the OpenSuSE 15 crashes. 2018-09-11 08:08:18 +02:00
Matthias Köfferlein 6a12a6a4cd Normalize CRLF for OASIS reader test's golden data on Windows. 2018-09-11 07:35:01 +02:00
Matthias Köfferlein 1c68b5472c Enabled ruby_sysinit again after MSVC2017 build crashed without this. 2018-09-11 00:07:33 +02:00
Matthias Koefferlein dcfe2977a8 Merge branch 'pymod-fix' of https://github.com/klayoutmatthias/klayout into pymod-fix 2018-09-10 21:37:14 +00:00
Matthias Koefferlein f35b522256 Fixed a segfault on Ruby initialization found on OpenSuSE 15 with Ruby 2.5.0 and gcc 7.3.1 in release mode 2018-09-10 21:36:27 +00:00
Matthias Köfferlein 99a71b771d Fixed link issue in net tracer plugin both for Linux and Windows (hopefully) 2018-09-10 22:53:49 +02:00
Matthias Koefferlein c46bed0785 Some update to fix build issues (this time, Linux)
- All platforms support native hash values for long long etc.
  with the TR1 containers
- Use non-static, function symbols to force linking.
- Debian package is picky about dates so give them some
  in Changelog.
2018-09-10 21:56:20 +02:00
Matthias Koefferlein ad03533a7b OASIS tests made robust against hash implementation
The text writer was made "normalizing": it will introduce
a certain element order (string sorting). This way, OASIS
files can be compared against golden data without
changes in the order due to different implementation of
hash containers.
2018-09-10 01:16:49 +02:00
Matthias Koefferlein 84072aa23e Fixed a few things that got damaged in Linux build while doing MSVC compatibility. 2018-09-09 22:43:22 +02:00
Matthias Köfferlein e69ed872a7 Fixed a static initialization race. 2018-09-09 18:31:05 +02:00
Matthias Köfferlein 940a96716c Fixed the timestamp generation for pthread-win32 timed waits
Issue: we have to use WIN API functions which deliver times in a 
different way. In order to make the wait functions work, we have to use 
the same time definition - specifically the same zero time.
2018-09-09 18:30:21 +02:00
Matthias Köfferlein 28477af15e Added a missing header 2018-09-09 16:52:18 +02:00
Matthias Köfferlein 9544a5419b Addd current_utc_time() again which got lost during merge 2018-09-09 16:51:54 +02:00
Matthias Köfferlein a543950316 Explicitly allow enabling of pthreads (rather than Qt) using HAVE_PTHREADS on qmake 2018-09-09 16:51:20 +02:00
Matthias Köfferlein 4821b12780 Removed dependency of tlStream on zlib by using a delegate. 2018-09-09 16:49:21 +02:00
Matthias Köfferlein 8c2c888263 MSVC build issue fixed in pya.cc 2018-09-09 16:47:28 +02:00
Matthias Köfferlein 57b8826e2c pthread support enabled for gsiObject.cc 2018-09-09 16:46:51 +02:00
Matthias Köfferlein c9d7b39190 Fixed a general linker problem with release builds on MSVC 2018-09-08 23:11:16 +02:00
Matthias Köfferlein adebdf307b Fixed XML parser tests for Qt-less builds with expat 2018-09-08 00:44:19 +02:00
Matthias Köfferlein 7440acb3c0 Fixed a build warning 2018-09-07 23:40:01 +02:00
Matthias Köfferlein 28f8a1ee7d Merge branch 'pymod' into pymod-msvc 2018-09-07 22:56:22 +02:00
Matthias Köfferlein a4562bee71 Also fixed issue with hash value of LayerProperties 2018-09-07 22:39:12 +02:00
Matthias Köfferlein c53c3ae7cf Hash value issue with db::Text fixed. 2018-09-07 22:29:54 +02:00
Matthias Köfferlein bd6234b699 Fix in Image object handling
Id was taken from an object destructed already.
2018-09-07 00:07:57 +02:00
Matthias Köfferlein a78f75054a Bugfix in the annotation area
The annotation ID was taken from an object already deleted - on MSVC 
this becomes an issue.
2018-09-06 23:49:17 +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 5be469af90 Support "klayout-bits" for building on MSVC 2018-09-06 00:23:10 +02:00
Matthias Köfferlein b0dac7026f MSVC compatibility 2018-09-06 00:22:38 +02:00
Matthias Köfferlein ce918bbc4e Fit a few compiler warnings in the ruby part 2018-09-06 00:22:24 +02:00
Matthias Köfferlein 4e12b9fae7 Fix of a small bug found by MSVC iterator assertions 2018-09-02 22:57:01 +02:00
Matthias Köfferlein 406b2c8cd1 Fixed KD tree implementation for compatibility with MSVC iterator debug mode 2018-09-02 22:39:15 +02:00
Matthias Köfferlein 1bf4d95388 Further MSVC compatibility
String assertions fixed, numerical issue with dbTrans fixed, iterator 
assertions fixed.
2018-09-02 19:18:42 +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 Köfferlein e47a0966bd Bugfix: net tracer memory corruption issue - missing copy ctor/assignment 2018-09-01 21:26:29 +02:00
Matthias Koefferlein c4c1630a38 Tiny enhancement of LayoutView#insert_layer
* returns a non-const reference now which can be modified
* the node parameter is optional and initialized with a default node
2018-09-01 11:39:20 +02:00
Matthias Koefferlein c9771f54eb Merge branch 'master' into pymod 2018-09-01 09:37:08 +02:00
Matthias Koefferlein 753e170a68 Fixed #162 (GDS2 libname not maintained) 2018-08-31 23:25:19 +02:00
Matthias Köfferlein f0f3025f9f More reduction of warnings on MSVC 2018-08-29 07:28:51 +02:00
Matthias Köfferlein af50c0f0c3 Many warnings fixed for MSVC 2018-08-29 01:46:18 +02:00
Matthias Köfferlein 860014e3ae MSVC builds for the first time - still a lot of patches required
Some suspicious compiler warnings remain.
2018-08-28 23:19:58 +02:00
Matthias Koefferlein 3c4ca7597e Fixed #158 (repaint issue with context) 2018-08-25 23:11:26 +02:00
Matthias Koefferlein 89dc424c70 Fixed #159 (Bug in technology setup with tech specific macro/DRC locations) 2018-08-25 20:28:01 +02:00
Matthias Koefferlein 842f39da45 Fixed #153 (crash on Apply when changing guiding shape properties) 2018-08-25 19:07:30 +02:00
Matthias Koefferlein e8a5d6ac0c Fixed a typo. 2018-08-24 22:59:11 +02:00
Matthias Koefferlein 04545e435b Fixed #157 (Replace cell with ... from cell tree context menu does not accept decorated cell names) 2018-08-13 20:59:04 +02:00
Matthias Koefferlein bcd6c466fb Fixed #152 (shape count wrong) 2018-08-13 09:30:46 +02:00
Matthias Koefferlein 1a7bcfc31c Fixed #155 (freeze after replacing nothing by something) 2018-08-13 09:04:13 +02:00
Matthias Koefferlein a8ad415fac Fixed a typo and build compatibility with Qt4. 2018-08-13 01:33:07 +02:00
Matthias Köfferlein 03c1a74d16
Update layLayoutViewConfigPages.cc
Removed commented section - it's actually no longer required.
2018-08-12 23:22:39 +02:00
Matthias Koefferlein 155208c9c9 MSVC compatible declaration of force link flags for Qt bindings. 2018-08-04 22:44:51 +02:00
Matthias Koefferlein 67c2369962 Updated Qt declaration files for MSVC 2018-08-04 21:10:37 +02:00
Matthias Köfferlein 376e4ea0ae WIP: MSVC compatibility for pymod module. 2018-08-04 18:13:49 +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
Thomas Ferreira de Lima f7836de39d
placeholder code for hiDPI display of conf pages. 2018-08-03 10:28:27 -04:00
Thomas Ferreira de Lima 8dbdbe0388
hiDPI Retina display for Stipple and Linesyles 2018-08-02 16:40:28 -04:00
Thomas Ferreira de Lima cfbcc158bf
adding / and /= operators to Point and Vector types in db [ci skip] 2018-08-02 00:45:34 -04:00
Thomas Ferreira de Lima a3234e2645
changing dbHash macro from __APPLE__ to __EXT_HASH_DEPRECATED 2018-08-01 22:31:09 -04:00
Thomas Ferreira de Lima f6d3995d6b
changing ext/hash_(set|map) to unordered_(set|map) to avoid deprecation warning on mac. 2018-08-01 15:51:05 -04:00
Thomas Ferreira de Lima 568035cdd6
adding __rmul__ in all objects with __mul__ 2018-08-01 11:56:50 -04:00
Thomas Ferreira de Lima 5bda390d82
bugfix: forgot to include tlTimer.h in tlThreads.cc 2018-07-31 17:47:01 -04:00
Matthias Koefferlein a272cd3630 Fixed #144 (description of salt packages isn't shown)
Plus: the text color of the description now uses the
palette and the color contrast better when the item
is selected.
2018-07-30 21:19:34 +02:00
Matthias Koefferlein ddfb084a8d Bugfix: also recognize plugins when the main binary is installed in a different place than the libs. 2018-07-29 14:56:19 +02:00
Matthias Koefferlein 98ecc9e47b Fixed a typo, force update of unit tests on Jenkins. 2018-07-29 14:07:02 +02:00
Matthias Koefferlein 3fb568671d A little refactoring - central place for DLL/.so path detection 2018-07-29 10:20:48 +02:00
Matthias Koefferlein 3d7bd0f32d Cleaned up code
Moved current_utc_time out of the central tlUtils header where
it does not belong. It a time function, so tlTimer.h is the better
place. Plus it does not make sense to make this inline. This just
spoils build times on changes.
2018-07-29 10:06:11 +02:00
Matthias Koefferlein 11627486d6 More verbose messages on plugin loading. 2018-07-29 02:36:25 +02:00
Matthias Koefferlein 76db5d1714 Merge branch 'pymod' of https://github.com/klayoutmatthias/klayout into pymod 2018-07-29 01:59:50 +02:00
Matthias Koefferlein d378a632f3 Bugfix: a standalone LayoutView object made the application crash on exit
Reason: at the Qt will destroy all top level widgets.
Ruby/Python will now know of this, hence try to cleanup
the object inside it's GC.

There was an attempt to avoid this by deleting all
top-level widgets before the application exits. But
this failed for LayoutView objects because these will
create other, dependet top-level widgets for the plugins.
And the LayoutView wants to stay owner for them.
2018-07-29 01:02:39 +02:00
Matthias Koefferlein 082a91cf15 Fixed #148 (Wrong font is used) 2018-07-28 00:17:02 +02:00
Matthias Koefferlein e2f4c1874a Fixed a build issue on some compilers. 2018-07-24 22:29:45 +02:00
Matthias Koefferlein c9859b4f8f Fixed some issues with long int emulation. Using long int as substitute for __int128 2018-07-24 22:08:30 +02:00
Matthias Koefferlein 7191e4faa9 Added long int (N times a word) support for emulation of __int128 2018-07-24 21:01:54 +02:00
Matthias Koefferlein 8578918764 Updated PolygonTools test with recent edge processor update. 2018-07-23 20:28:01 +02:00
Matthias Koefferlein 6b48b2bb3d Fixed Edge unit tests. 2018-07-23 19:37:36 +02:00
Matthias Koefferlein f05b3249ca Fixed fast EdgeProcessor unit tests with recent update. 2018-07-23 19:36:00 +02:00
Matthias Koefferlein 2178b72704 Refined test for 74 issue for different orientations. 2018-07-23 19:12:12 +02:00
Matthias Koefferlein 5741a120e9 More precise point/edge interaction for scanner 2018-07-22 22:52:04 +02:00
Matthias Koefferlein efd9e47c1f Attempt to fix a scanline issue. 2018-07-22 18:49:17 +02:00
Daniel Wang c430c82744
Merge branch 'pymod' of https://github.com/klayoutmatthias/klayout into pymod 2018-07-19 19:23:00 -04:00
Matthias Koefferlein 5fe0aca9c7 Fixed a segfault on help(pya.Box)
Needed to refactor the class hierarchy of the Python classes.
Basically the module specific base class was removed as it does
not provide any benefit. The object layout of the PyObject
specialization was modified such that the payload is attached
to the end. This is compatible with the hidden extensions
which Python adds to normal objects.
2018-07-19 23:50:24 +02:00
Daniel Wang ad1ada9b23
Merge branch 'pymod' of https://github.com/klayoutmatthias/klayout into pymod 2018-07-19 13:40:57 -04:00
Matthias Koefferlein aca209c095 Using C.UTF-8 locale fallback for string tests for vanilla Linux installations. 2018-07-18 21:57:47 +02:00
Daniel Wang 5f6c265e4b
Moved current_utc_time to tlUtils and fixed tlTimer 2018-07-17 14:37:41 -04:00
Daniel Wang 106b57c676
Fixed unchanged functions 2018-07-17 14:14:47 -04:00
Daniel Wang 20db1e1f24
Added support for Mac OS X 10.11 and lower 2018-07-17 14:05:33 -04:00
Thomas Ferreira de Lima f26576099c missing stdlib.h import 2018-07-16 23:29:51 -04:00
Matthias Koefferlein 9dcfa140c3 Added __init__.py file to Python package. 2018-07-15 19:33:44 +00:00
Matthias Koefferlein 46b0f079cf Skipping HTTP tests rather than disabling them
With this commit, tests are logged as skipped and
not just omitted, if HTTP support is not enabled
(neighter Qt nor curl)
2018-07-15 20:58:54 +02:00
Matthias Koefferlein 5351922440 Enabled minimum build configuration
Minimum build configuration is without Qt, Ruby, curl and expat.
Only Python is required.

This commit also provides a functional (through polling) Qt-less HTTP
implementation through libcurl if enabled.
2018-07-15 19:59:45 +02:00
klayoutmatthias 6858190a20 Fixed Windows build and tests
* tl::is_same_file works with directories now too
* Unit tests added for this
* bridge_mod sample produces the proper DLL now
2018-07-15 18:03:42 +02:00
Matthias Koefferlein bbb88c5ca6 Merge branch 'pymod' of www.klayout.org:/home/matthias/klayout into pymod 2018-07-15 07:42:14 -07:00
Matthias Koefferlein d3b4bc7f87 Enabled pymod build via setup.py/distutils on MacOS 2018-07-15 07:42:01 -07:00
klayoutmatthias 1642129504 Fixed a typo that breaks the Win build. 2018-07-15 16:39:16 +02:00
Matthias Koefferlein cb33753e1c Fixed a FileUtils unit test on Windows. 2018-07-15 15:36:30 +02:00
Matthias Koefferlein a1d8913de9 Enhanced Qt-less FileUtils test, so they cover the full functionality without Qt 2018-07-15 15:27:39 +02:00
Matthias Koefferlein fc9783432b Bugfix: db_plugin modules were not loaded for python modules
* Added unit test for this
* Provided an option for easier debugging such issues:
  Setting env var KLAYOUT_VERBOSITY will enable debug levels on Python
  modules (and all other binaries). Plugin loading issues can
  be debugged by setting KLAYOUT_VERBOSITY=21.
2018-07-15 14:14:14 +02:00
Matthias Koefferlein 07f69dccd3 Merge branch 'pymod' of www.klayout.org:/home/matthias/klayout into pymod 2018-07-15 11:12:29 +02:00
Matthias Koefferlein 628219080a Some enhancements/bug fixes for Windows
* Enabled pipe: on outputs
* Don't die on file paths containing backslashes in DRC tests
2018-07-15 11:11:05 +02:00
Matthias Koefferlein 6a3914fcf6 Fixed pya.cc build with Py3/Linux 2018-07-14 20:32:13 +00:00
Matthias Koefferlein e709cad9c8 Fixed an include path for better compatibility with Python's distutil. 2018-07-14 20:24:28 +00:00
Matthias Koefferlein 49fd896e68 Another fix for Windows build. 2018-07-14 09:31:40 +02:00
Matthias Koefferlein 2f99a8a67d Another fix for Windows build. 2018-07-14 09:19:23 +02:00
Matthias Koefferlein 817ab9cd1c Fixed Windows build. 2018-07-14 08:55:46 +02:00
Matthias Koefferlein 5ea72893f3 Enabled build with Qt again. 2018-07-14 02:16:35 +02:00
Matthias Koefferlein 8f04fc5358 Removed some further Qt dependencies. For example, HTTPS access now is possible without Qt through Curl only. 2018-07-14 02:14:06 +02:00
Matthias Koefferlein 9ea24cb6a0 Explicitly set the locale for local string conversion test. 2018-07-13 18:35:49 +02:00
Matthias Koefferlein b10c64907a Made the threaded worker test a bit more reliable 2018-07-13 18:28:32 +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 937fa96245 Some bug fixes
* Case folding table fixed: lowercase "i without dot" overlaps "i"
* Fixed build of bridge sample in non-Qt case
2018-07-13 08:03:00 +02:00
Matthias Koefferlein abdde4ba19 Corrected last commit (UTF-8 case conversion) and added more test coverage. 2018-07-13 01:13:41 +02:00
Matthias Koefferlein 70a4bd7aa2 Locale-independent implementation of UTF-8 string case conversion. 2018-07-13 01:07:46 +02:00
Matthias Koefferlein 4f326572d4 Fixed one .pro file for older Qt versions 2018-07-12 23:57:00 +02:00
Matthias Koefferlein 61a37fc3c3 Prevent a deadlock when destroying gsi objects. 2018-07-12 23:28:30 +02:00
Matthias Koefferlein 72c3288090 Disabled thread local storage test for Qt <4.7 because this class is broken with an int argument on Qt 4.6.2 2018-07-12 23:25:33 +02:00
Matthias Koefferlein ccc5be86d7 Fixed a typo - strange enough it compiled with this error on some platforms. 2018-07-12 23:24:46 +02:00
Matthias Koefferlein 1375bdcc9a Fixed XMLParser unit test 5 for Qt 2018-07-12 23:19:54 +02:00
Matthias Koefferlein 03ddd495d8 Disabled brute-force shutdown test for threads on Qt - QThread is not able to deal with this. 2018-07-12 22:11:57 +02:00
Matthias Koefferlein 05f8d223ac Added a way to specify the type of a macro on files
This feature is mainly useful for command line arguments.
If you run KLayout with

  klayout -b -r myscript

it will not be able to determine the type of macro without
a suffix. You can explicitly specify a certain type by
giving the suffix implicitly:

  klayout -b -r myscript[rb]

This will read "myscript" but pretend it was "myscript.rb"
and execute it as Ruby script.

This feature is handy if you need to run a file with a
specific interpreter but cannot modify the file name.
2018-07-12 21:51:51 +02:00
Matthias Koefferlein f8ffcd14f1 Fixed #141 (Issue with RBA::QHostAddress (ambiguous overload) on Qt5) 2018-07-12 21:33:19 +02:00
Matthias Koefferlein 20d1d0500f Fixed #142 (Issue with RBA::RecursiveShapeIterator#region=) 2018-07-12 21:16:14 +02:00
Matthias Koefferlein ca8f9fd904 Fixed Qt-based XML parser build. 2018-07-12 20:54:05 +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 58fd6ed143 WIP: bugfix on WaitCondition (deadlocked) 2018-07-10 00:13:06 +02:00
Matthias Koefferlein 5cfb98d9f2 WIP: pthread-based WaitCondition (simple) 2018-07-10 00:01:25 +02:00
Matthias Koefferlein ad49c9502b WIP: some work on the pthread-based alternative to Qt threads. 2018-07-09 22:58:16 +02:00
Matthias Koefferlein b0f69d46a9 WIP: one first basic Thread test. 2018-07-09 00:55:41 +02:00
Matthias Koefferlein 772062e33e WIP: fixed path generation in db::init in non-Qt case. 2018-07-09 00:43:49 +02:00
Matthias Koefferlein 18782666f7 WIP: made Qt build functional again. 2018-07-09 00:03:19 +02:00
Matthias Koefferlein 260243a6d9 WIP: Fixed PCB import for non-Qt builds, added missing file. 2018-07-08 23:44:36 +02:00
Matthias Koefferlein 3acb7b6920 Fixed documentation (XML parser error) of RBA::TextGenerator. 2018-07-06 00:58:26 +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 803a29037a Added test for reproducing threading issue on TP 2018-07-06 00:09:22 +02:00
Matthias Koefferlein 221d5a4a38 Using enviornment locale with unit_tests. 2018-07-06 00:07:01 +02:00
Matthias Koefferlein e0a23adb66 Made XML parser and writer functional with expat 2018-07-05 23:40:39 +02:00
Matthias Koefferlein 43243ae162 Enabled Qt-less unit tests, some basic implementation of Qt-less threads based on pthread and an atomics library. A lot missing. 2018-07-05 00:33:34 +02:00
Matthias Koefferlein eec1843459 Less Qt in strmrun test 2018-07-04 20:30:34 +02:00
Matthias Koefferlein ad7a9836b0 Using pipes instead of QProcess for pymod tests, enable pipes on Windows (needs testing) 2018-07-04 20:26:34 +02:00
Matthias Koefferlein 642fb4270b Fixed rba::Technology test. Now all tests are passing with Qt. 2018-07-04 20:00:41 +02:00
Matthias Koefferlein 12e0db660c Finished file utils tests. 2018-07-04 19:33:39 +02:00
Matthias Koefferlein e9dcadb278 Fixed a linker issue. 2018-07-04 00:25:34 +02:00
Matthias Koefferlein 1f8afab417 Bugfixed the Qt-based XML implementation. 2018-07-04 00:21:06 +02:00