Commit Graph

70 Commits

Author SHA1 Message Date
Miodrag Milanović 64db93e319
Google Test as submodule (#1579)
* remove copy of googletest from 3rdparty

* Add googletest as submodule

* Use googletest v1.17.0

* Update main CMakeLists.txt
2025-10-17 14:16:18 +02:00
Miodrag Milanović 17d42e41db
Make GUI able to compile on both Qt5 and Qt6 (#1576)
* Use QtPropertyBrowser for Qt5/6

* Fix cmake for python-console for consistency

* Make GUI compile for both Qt5 and Qt6

* Fix crash on init with Wayland on Qt6

* Cleanup

* disable deprecation warnings for now

* Relaxed cmake check for initial Qt6 test
2025-10-15 12:19:20 +02:00
Lofty 06992bda0a
rust: add getBels() binding (#1460) 2025-03-19 10:02:34 +01:00
Gabriel Somlo 0c060512c1 Fix undefined type error in 3rdparty/json11/json11.cpp
Under certain conditions (e.g., building on Fedora 42
using gcc-15.0.1), compilation fails with the following
error:

    "error: ‘uint8_t’ does not name a type"

Explicitly include <cstdint> to prevent that situation.

Signed-off-by: Gabriel Somlo <gsomlo@gmail.com>
2025-01-23 14:42:14 +01:00
Catherine fac934bd2d 3rdparty: upgrade pybind11 to v2.12.1. 2025-01-22 21:48:55 +00:00
Catherine 155adc3f5d CMake: rationalize and refactor build system.
The two main changes, done together in this commit, are:
* Eliminating most instances of `aux_source_directory()`, replacing
  them with explicit file listings; and
* Moving these file listings into respective subdirectories by
  representing respective nextpnr components as interface libraries.

In addition, the GUI CMake script tree was simplified since it had
a lot of unused/redundant code.

The `aux_source_directory()` command is not recommended for use by
CMake itself because it misses dependency changes when adding/removing
files, and consequently causes build failures requiring a clean rebuild.

This commit does not touch anything related to architectures/families,
which are very complex and redundant all on their own.
2025-01-16 11:36:44 +01:00
Catherine c48157aa4b googletest: fix -Werror=maybe-uninitialized failure. 2025-01-16 11:36:44 +01:00
gatecat fcdaf3f86c Remove fpga_interchange
Signed-off-by: gatecat <gatecat@ds0.me>
2024-09-30 13:10:30 +02:00
Andrew Bell 693058abb7 Eliminate gcc13 warnings. 2024-03-22 09:50:11 +00:00
Lofty d2297b1ba0 Add Rust FFI bindings 2024-01-03 13:42:18 +01:00
Justin Rajewski 6bae89b8b7 Undid accidental formatting 2023-10-26 21:21:14 +02:00
Justin Rajewski 7cac0249a1 Fixes for building on windows 2023-10-26 21:21:14 +02:00
Justin Rajewski 95f0a19391 Fixes for building on windows 2023-10-26 21:21:14 +02:00
gatecat 0eb9a9ad02 placer_static: Initial prototype
Signed-off-by: gatecat <gatecat@ds0.me>
2023-10-02 14:56:40 +02:00
Miodrag Milanovic 12911a7470 Remove anoying warning from cmake 2023-03-16 13:37:23 +01:00
gatecat a72f898ff4 3rdparty: Bump vendored pybind11 version for py3.11 support
Signed-off-by: gatecat <gatecat@ds0.me>
2022-09-14 09:28:47 +02:00
gatecat dcbb322447 Remove redundant code after hashlib move
Signed-off-by: gatecat <gatecat@ds0.me>
2021-06-02 15:05:20 +01:00
Miodrag Milanovic 24ae205f20 Fixed warnings in QtPropertyBrowser component 2021-05-31 16:48:25 +02:00
Miodrag Milanovic 473723b24a Fix hidpi, fixes #167, fixes #275, fixes #425 2021-05-31 16:20:43 +02:00
gatecat ba69b35501 interchange: Bump versions
Signed-off-by: gatecat <gatecat@ds0.me>
2021-05-27 11:21:34 +01:00
gatecat ff48ad83be interchange: Bump versions
Signed-off-by: gatecat <gatecat@ds0.me>
2021-05-21 10:00:35 +01:00
Alessandro Comodi 6e22a9ea97 bump interchange schema
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
2021-05-20 19:24:53 +02:00
gatecat dcb09ec8de interchange: Implement getWireType
Signed-off-by: gatecat <gatecat@ds0.me>
2021-04-30 11:07:31 +01:00
gatecat 0e6955a08d interchange: Bump versions
Signed-off-by: gatecat <gatecat@ds0.me>
2021-04-20 10:42:33 +01:00
Keith Rothman 8d1eb0a195 Initial lookahead for FPGA interchange.
Currently the lookahead is disabled by default because of the time to
compute and RAM usage.  However it does appear to work reasonably well
in testing.  Further effort is required to lower RAM usage after initial
computation, and explore trade-off for cheaper time to compute.

Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-03-23 08:16:50 -07:00
Alessandro Comodi 6a08b0d733 bump fpga_interchange_schema
Signed-off-by: Alessandro Comodi <acomodi@antmicro.com>
2021-03-16 15:39:01 +01:00
Keith Rothman 0afa0da19f Add absl::flat_hash_map.
This lowers the CPU cost of using the flat wire map in router2, and should
use less memory as well.

Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-03-01 09:55:54 -08:00
gatecat 23413a4d12 Fix compiler warnings introduced by -Wextra
Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-25 15:15:25 +00:00
gatecat 3b45174375 pyconsole: Avoid lockup when reading from stdin
Create an empty temporary file for stdin; so reads fail rather than
locking up (otherwise doing help() would be enough to completely lock up
the GUI).

Signed-off-by: gatecat <gatecat@ds0.me>
2021-02-22 10:48:21 +00:00
Keith Rothman 1be70320b9 Pull in fix for out of source builds.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-15 09:54:58 -08:00
Keith Rothman 2c7ee44046 Move CMake logic into fpga-interchange-schema.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-15 09:54:58 -08:00
Keith Rothman 5e11e29ba2 Add interchange schema 3rdparty.
Signed-off-by: Keith Rothman <537074+litghost@users.noreply.github.com>
2021-02-15 09:54:58 -08:00
Miodrag Milanovic 61b07bc9a6 PyEval_InitThreads only for older than 3.9 2021-01-02 10:22:51 +01:00
Miodrag Milanovic e76cdab6dd Update pybind11 to version 2.6.1 2021-01-02 10:15:39 +01:00
Miodrag Milanovic e15b339d41 Do not create new python interpreter 2020-11-13 15:02:24 +01:00
Miodrag Milanovic 444e535f00 Add pybind11 2.5 source 2020-07-23 08:58:19 +02:00
David Shah 8f1683246e python: Improve general robustness during autocomplete
Signed-off-by: David Shah <dave@ds0.me>
2020-04-24 16:44:30 +01:00
David Shah 5024fc0690 python: Escape strings for autocomplete
Signed-off-by: David Shah <dave@ds0.me>
2020-04-24 16:41:13 +01:00
Marcin Kościelnicki 24e3f8417e json: fix handling of 32-bit parameters
See YosysHQ/yosys#1671 for rationale.  Also, added some validation
to our parser, so that out-of-range values are reported and the user
knows they should update yosys.
2020-02-01 17:23:05 +01:00
Miodrag Milanovic d281e18113 Warnings noticed by clang 2020-01-18 15:34:58 +01:00
Miodrag Milanovic 38e3b6338c Various warning fixes 2020-01-18 15:23:35 +01:00
David Shah 240561c370 3rdparty: Add json11
Signed-off-by: David Shah <dave@ds0.me>
2019-12-27 10:44:29 +00:00
Miodrag Milanovic e0b4a2eeab Add GUI for executing python file 2018-12-14 17:20:25 +01:00
Miodrag Milanovic 49f2fff2b0 Proper OpenGL limit for QT 2018-10-29 09:34:20 +01:00
Miodrag Milanovic f796716b83 Make imgui and qtgui compile on older qt as well, opengl 3.2 required 2018-10-24 19:00:58 +02:00
Miodrag Milanovic 40722c098d add qtimgui renderer library 2018-10-24 19:00:58 +02:00
Miodrag Milanovic b948b76c8e add imgui library 2018-10-24 19:00:58 +02:00
Miodrag Milanovic 28e30b2af0 Added hover on properties as well, fixes #64 2018-08-22 18:37:24 +02:00
Miodrag Milanovic 2596b9fe17 Add ability for multiple selection, enable for select only items that make sense 2018-07-25 19:10:45 +02:00
Miodrag Milanovic bf0b1d2db3 add select on property pane, and action to double click 2018-07-15 12:39:19 +02:00