Commit Graph

174 Commits

Author SHA1 Message Date
Martin Povišer bf64a92253 Merge remote-tracking branch 'upstream/master' into yosys-experimental 2024-08-07 12:57:53 +02:00
Robert O'Callahan e0a9c29e5a Instead of throwing C++ exceptions, just print an error message and abort
Many C++ projects forbid the use of exceptions. These are not recoverable
errors anyway, so just abort.
2024-08-06 17:51:15 +00:00
Ethan Mahintorabi 8afc83874f
add c++17 back to makefile for makefile only runs
Signed-off-by: Ethan Mahintorabi <ethanmoon@google.com>
2024-05-04 01:13:09 +00:00
Ethan Mahintorabi 0fc549d8b8
Reverts downgrade to c++11
Signed-off-by: Ethan Mahintorabi <ethanmoon@google.com>
2024-05-03 05:24:02 +00:00
Martin Povišer 208b48667f Merge branch 'master' of https://github.com/berkeley-abc/abc into yosys-experimental 2024-04-22 16:33:29 +02:00
Roland Coeurjoly 2c52e3f969 Support out of tree builds 2024-04-18 04:49:09 +01:00
Jason Thorpe ecce27ce1d Skip -ldl on NetBSD; it does not exist. Skip -lrt on NetBSD; it is
not required.  Same treatment as FreeBSD.
2024-03-03 08:02:41 -08:00
aletempiac 9eb32f0766 Changing compilation flag for c++11 2024-02-08 15:11:58 +01:00
aletempiac 5a00bbaa8f Cleaning Makefile 2024-01-16 18:13:30 +01:00
aletempiac 67aab70cff Moving ACD package to if folder 2024-01-16 17:42:43 +01:00
aletempiac 1632dc0d4e First version of ACD 2023-11-15 18:38:00 +01:00
Josuah Demangeon b6c0b36c8a do not include -lrt or -ldl on platform that do not support them
Some platforms were already listed, this includes OpenBSD to the list
and makes it easier to add more.
2022-07-15 14:34:10 +02:00
Miodrag Milanovic 163af36fee Merge remote-tracking branch 'upstream/master' into yosys-experimental 2022-07-04 16:02:44 +02:00
Baruch Sterin 554a1693ac Move CI to GitHub Actions.
Also, a few minor changes that are required to compile ABC under moder compilers.
2022-01-22 18:34:43 +02:00
Miodrag Milanovic d2d6bbd9f8 Merge remote-tracking branch 'upstream/master' into yosys-experimental 2021-11-12 12:31:29 +01:00
Baruch Sterin 2343da6bf1 Makefile: support ccache for compiling ABC.
Surround $(CC), $(CXX) with double quotes when calling depends.sh, to allow space-delimited compilation tools to be used.
2020-11-24 19:56:35 -05:00
Baruch Sterin c3699a2043 Makefile: support ccache for compiling ABC.
Surround $(CC), $(CXX) with double quotes when calling depends.sh, to allow space-delimited compilation tools to be used.
2020-11-19 22:27:24 +02:00
Alan Mishchenko b3d3f7dd3a Duplicating Glucose package. 2020-11-12 23:57:46 -08:00
Sean Cross 11c4f998b2 Makefile: break apart steps in `make clean`
The `make clean` target consists of a single `rm` call that passes every
generated file, object file, and dependency directory.  This results in
a command line that's around 53,800 characters long.

On Linux, the maximum length of a command line is 131,072 or 262,144
characters, however on Windows the limit is 32,768.

The 53,800 character command simply fails to run on Windows, which is a
problem when the first command that gets run is `make clean`.

Break this target into steps, first removing the output files, then the
object files, then any generated garbage, and then the object depedency
directories.

This fixes `make clean` (and as a result yosys) on Windows.

Signed-off-by: Sean Cross <sean@xobs.io>
2020-05-01 08:25:53 -07:00
whitequark 128ba6ebc5 Allow changing the `ar` binary.
This is useful for cross-compilation, when build `ar` cannot handle
the target object files.

The invocation of `ranlib` is replaced with `ar s`, which is
equivalent and simplifies the build system a bit.
2020-04-30 02:17:23 +00:00
Alan Mishchenko 9e787c7191 Experiments with word-level retiming. 2018-09-30 20:51:37 -07:00
Alan Mishchenko a08cc8b29b Changing makefile to suppress warnings with GCC 5+ 2018-06-08 12:03:39 -07:00
Baruch Sterin 9c78efbadf Makefile: add support for ABC_USE_STDINT_H 2018-03-30 01:03:04 -07:00
Alan Mishchenko e839091ba0 Suggested fix to compile on FreeBSD. 2018-02-05 19:00:46 -08:00
Baruch Sterin 5ab3f0fa6b Patch by Larry Doolittle to allow out-of-source builds of ABC.
Usage:

Starting from an empty directory:

(1) set AS to point to the location of ABC

(2) reconstruct the directory structure of ABC in the new directory:

    mkdir -p `cd $AS && find src -type d`

(3) Build ABC:

    make -f $AS/Makefile VPATH=$AS ABCSRC=$AS
2017-10-20 14:41:30 -07:00
Alan Mishchenko 50bed57cae Changes and fixed suggested by Clifford Wolf. 2017-09-15 10:59:39 -07:00
Alan Mishchenko 1ca80e1f6c Adding Glucose 3.0 as a separate package. 2017-09-06 16:32:15 -07:00
Alan Mishchenko 0afc6123f9 Experiments with new network data-structure. 2017-03-19 21:56:19 -07:00
Bruno Schmitt cac3967b52 Adding a new SAT solver to ABC. (Satoko)
The command is ‘satoko’
2017-02-06 11:34:52 -08:00
Baruch Sterin b9dfb992c7 (1) Makefile: added a shared library target, (2) no longer compile the main function as part of libabc.a 2016-12-22 18:15:29 -08:00
Bruno Schmitt 5351ab4b13 xSAT is an experimental SAT Solver based on Glucose v3(see Glucose copyrights below) and ABC C version of
MiniSat (bsat) developed by Niklas Sorensson and modified by Alan Mishchenko. It’s development has reached
sufficient maturity to be committed in ABC, but still in a beta state.

TODO:
* Read compressed CNF files.
* Study the use of floating point for variables and clauses activity.
* Better documentation.
* Improve verbose messages.
* Expose parameters for tuning.
2016-12-12 16:20:38 -02:00
Alan Mishchenko 585f3a6407 New SAT-based optimization package. 2016-11-17 12:16:14 -08:00
Vinicius Callegaro faf8d6ecea Disjoint-support decomposition with cofactoring and boolean difference analysis
from V. Callegaro, F. S. Marranghello, M. G. A. Martins, R. P. Ribas and A. I. Reis,
entitled "Bottom-up disjoint-support decomposition based on cofactor and boolean difference analysis" presented in ICCD'15.
2016-11-08 17:00:35 -02:00
Bruno Schmitt 3cf495c831 Add a new module which implements the fast extract with cube hashing (fxch) algorithm.
Removes old partial implementation of this algorithm from the "pla" module.
2016-05-11 19:41:31 -03:00
Alan Mishchenko 236d412255 Experiments with CEC for arithmetic circuits. 2016-05-07 19:47:02 -07:00
Alan Mishchenko 395bd727a1 Typo in Makefile. 2016-04-12 11:16:22 -07:00
Alan Mishchenko 03dc51369c Updates to Exorcism package 2016-04-11 21:46:14 -07:00
Alan Mishchenko c441ea0cf0 Updates to Exorcism package 2016-04-11 21:43:37 -07:00
Baruch Sterin 3237ebafaa CMake, Makefile: pass the location of arch_flags to the makefile, this way the cmake build does not write to the soruce directory 2015-11-12 11:43:59 -08:00
Baruch Sterin b18eb60301 CMakeLists.txt, Makefile: fix a bug in passing the readline options 2015-11-07 19:48:11 -08:00
Baruch Sterin c610c03661 pyabc: remove python integration from abc, it is moved to a separate extension 2015-11-05 01:24:26 -08:00
Baruch Sterin 0f14713dbc CMakeLists.txt, Makefile: pass readline flags from the CMake lists file to the Makefile. 2015-11-05 01:23:35 -08:00
Baruch Sterin be429079b5 CMakeLists.txt: pass CXX flags from the Makefile 2015-11-05 01:23:31 -08:00
Baruch Sterin 91d8040bd6 Restoring Aaron Hurst's "fretime" command 2015-10-28 19:59:57 -07:00
Baruch Sterin 9b3a358e6f Makefile: Add a CMakeLists.txt that uses the regular Makefile to compute flags and source file. This is a ugly hack, mainly to allow the use of CLion with ABC. Include some changes in the Makefile to support that. 2015-10-21 22:56:15 -07:00
Baruch Sterin 28f2063caa Makefile: (1) split CFLAGS into OPTFLAGS, INCLUDES, and CFLAGS 2015-10-21 22:56:15 -07:00
Baruch Sterin da80a038cc Makefile: fix a typo in -fPIC flag 2015-10-21 22:56:15 -07:00
Baruch Sterin d944384d9e Makefile: add ABC_MAKE_VERBOSE flag to print the acutall commands executed. 2015-10-16 16:44:59 -07:00
Baruch Sterin 824584ff44 Makefile: make namespaces/readline/threads/cudd options easier to use 2015-10-16 16:27:59 -07:00
Alan Mishchenko eb699bbaf8 Changes to be able to compile ABC without CUDD. 2015-08-24 21:09:43 -07:00