From: Clifford Wolf Date: Sat, 8 Jun 2013 21:48:19 +0000 (+0200) Subject: Added "make abc" and "make install-abc" X-Git-Tag: yosys-0.2.0~601 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6c8a424872ff2925c4c87fce6d9a9c9fc74a0800;p=yosys.git Added "make abc" and "make install-abc" --- diff --git a/.gitignore b/.gitignore index 191b95992..0ea495e7b 100644 --- a/.gitignore +++ b/.gitignore @@ -9,7 +9,9 @@ qtcreator.config qtcreator.creator qtcreator.creator.user Makefile.conf +abc yosys +yosys-abc yosys-config yosys-filterlib yosys-svgviewer diff --git a/Makefile b/Makefile index 79220486c..a84a787d0 100644 --- a/Makefile +++ b/Makefile @@ -83,6 +83,11 @@ yosys-svgviewer: libs/svgviewer/*.h libs/svgviewer/*.cpp cd libs/svgviewer && qmake-qt4 && make cp libs/svgviewer/svgviewer yosys-svgviewer +abc: + test -d abc || hg clone https://bitbucket.org/alanmi/abc abc + cd abc && hg pull && make + cp abc/abc yosys-abc + test: yosys cd tests/simple && bash run-test.sh cd tests/hana && bash run-test.sh @@ -91,6 +96,9 @@ test: yosys install: $(TARGETS) install $(TARGETS) /usr/local/bin/ +install-abc: + install yosys-abc /usr/local/bin/ + clean: rm -f $(OBJS) $(GENFILES) $(TARGETS) rm -f libs/*/*.d frontends/*/*.d passes/*/*.d backends/*/*.d kernel/*.d @@ -128,6 +136,6 @@ config-gprof: clean -include backends/*/*.d -include kernel/*.d -.PHONY: all top-all test clean mrproper qtcreator +.PHONY: all top-all abc test install install-abc clean mrproper qtcreator .PHONY: config-clean config-clang-debug config-gcc-debug config-release diff --git a/README b/README index a4a218636..699b83ba6 100644 --- a/README +++ b/README @@ -63,6 +63,11 @@ To build Yosys simply type 'make' in this directory. $ make test $ sudo make install +To also build and install ABC (recommended) use the following commands: + + $ make abc + $ sudo make install-abc + Yosys can be used with the interactive command shell, with synthesis scripts or with command line arguments. Let's perform a simple synthesis job using the interactive command shell: diff --git a/passes/abc/abc.cc b/passes/abc/abc.cc index 9a13a446b..3c6700147 100644 --- a/passes/abc/abc.cc +++ b/passes/abc/abc.cc @@ -630,6 +630,7 @@ struct AbcPass : public Pass { AbcPass() : Pass("abc", "use ABC for technology mapping") { } virtual void help() { + // |---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---|---v---| log("\n"); log(" abc [options] [selection]\n"); log("\n"); @@ -637,8 +638,8 @@ struct AbcPass : public Pass { log("library to a target architecture.\n"); log("\n"); log(" -exe \n"); - log(" use the specified command name instead of \"abc\" to execute ABC. This\n"); - log(" can e.g. be used to call a specific version of ABC or a wrapper script.\n"); + log(" use the specified command name instead of \"yosys-abc\" to execute ABC.\n"); + log(" This can e.g. be used to call a specific version of ABC or a wrapper.\n"); log("\n"); log(" -script \n"); log(" use the specified ABC script file instead of the default script.\n"); @@ -664,7 +665,7 @@ struct AbcPass : public Pass { log_header("Executing ABC pass (technology mapping using ABC).\n"); log_push(); - std::string exe_file = "abc"; + std::string exe_file = "yosys-abc"; std::string script_file, liberty_file; bool cleanup = true;