It is a convention inherited from GNU automake to use CPPFLAGS
for compiler flag intended for the preprocessor, while CFLAGS and
and CXXFLAGS provide flags intended for the C and C++ compiler.
Adjust build rules to include CPPFLAGS ensure any preprocessor
flags in build systems using this environment variable work out of
the box.
This allow Debian builds to pass on hardening flags without modifying
the build setup.
Patch from Ruben Undheim via Debian
* introduce a user-defined function `abc_info` that only prints out text when ABC_MAKE_VERBOSE is set
* replace all calls to $(info ...) with calls to $(call abc_info, ...)
To show the output build with ABC_MAKE_VERBOSE. for example
```
make ABC_MAKE_VERBOSE=1 ...
```
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>
(cherry picked from commit 11c4f998b2)
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.
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
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.
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.