Commit Graph

842 Commits

Author SHA1 Message Date
Matthias Koefferlein 46116f4828 Basic performance improvement in the bitmap to image area
Empty bitmaps are skipped now
2018-10-20 09:52:35 +02:00
Matthias Koefferlein 8ab4868d76 Fixed build on Windows (tl::InputPipe::wait was missing) 2018-10-16 23:00:28 +02:00
Matthias Koefferlein 90c03140b3 Fixed #185 for pymod branch 2018-10-14 23:42:10 +02:00
Matthias Koefferlein dd9d46da38 Activated stream unit tests. 2018-10-14 23:34:25 +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 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 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 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 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