summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog273
-rw-r--r--debian/compat1
-rw-r--r--debian/control85
-rw-r--r--debian/copyright191
-rw-r--r--debian/docs1
-rw-r--r--debian/gbp.conf2
-rw-r--r--debian/man/.gitignore1
-rwxr-xr-xdebian/man/genmanpages.sh3
-rw-r--r--debian/man/yosys-smtbmc.txt44
-rw-r--r--debian/patches/0007-Disable-pretty-build.patch21
-rw-r--r--debian/patches/0009-Some-spelling-errors-fixed.patch67
-rw-r--r--debian/patches/0010-Fix-adding-of-sys.path-in-yosys-smtbmc.patch21
-rw-r--r--debian/patches/0010-Fix-reproducibility-of-PDF-documents-in-yosys-doc.patch133
-rw-r--r--debian/patches/0011-Do-not-show-g-build-flags-in-Version-string.patch34
-rw-r--r--debian/patches/0012-Skip-non-deterministic-test-causing-random-FTBFS-on-.patch22
-rw-r--r--debian/patches/0013-Let-dpkg-buildpackage-handle-stripping-of-binaries.patch32
-rw-r--r--debian/patches/01_gitrevision.patch27
-rw-r--r--debian/patches/02_removeabc.patch23
-rw-r--r--debian/patches/05_abc_executable.patch29
-rw-r--r--debian/patches/kfreebsd-support.patch149
-rw-r--r--debian/patches/manual-build.patch23
-rw-r--r--debian/patches/series13
-rw-r--r--debian/patches/switch-to-free-font.patch79
-rwxr-xr-xdebian/rules48
-rw-r--r--debian/source/format1
-rw-r--r--debian/tests/control2
-rw-r--r--debian/tests/design_ice.v19
-rwxr-xr-xdebian/tests/ice13
-rwxr-xr-xdebian/tests/smtbc12
-rw-r--r--debian/upstream/metadata6
-rw-r--r--debian/watch2
-rw-r--r--debian/yosys-abc.123
-rw-r--r--debian/yosys-config.153
-rw-r--r--debian/yosys-dev.install3
-rw-r--r--debian/yosys-dev.manpages1
-rw-r--r--debian/yosys-doc.doc-base9
-rw-r--r--debian/yosys-doc.install2
-rw-r--r--debian/yosys-filterlib.148
-rw-r--r--debian/yosys.1137
-rw-r--r--debian/yosys.install34
-rw-r--r--debian/yosys.links4
-rw-r--r--debian/yosys.lintian-overrides2
-rw-r--r--debian/yosys.manpages4
43 files changed, 1697 insertions, 0 deletions
diff --git a/debian/changelog b/debian/changelog
new file mode 100644
index 00000000..29cf88ad
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,273 @@
+yosys (0.8+20190328git32bd0f2-1~exp1) experimental; urgency=low
+
+ * New upstream GIT HEAD
+ * debian/control:
+ - New standards version 4.3.0 - no changes
+ * debian/copyright:
+ - Added new copyright holders
+ * debian/patches: Refreshed patches
+ * debian/yosys.install: Install more files
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Sun, 31 Mar 2019 00:01:48 +0100
+
+yosys (0.8-1) unstable; urgency=medium
+
+ * New upstream release
+ * debian/control:
+ - New standards version 4.2.1 - no changes
+ * debian/copyright:
+ - New copyright years
+ - Some new copyright holders for certain files
+ * debian/patches: Fix patches after importing new version
+ * d/patches/0013-Let-dpkg-buildpackage-handle-stripping-of-binaries.patch:
+ - Fix issue with empty -dbgsym package
+ * debian/rules:
+ - Enable hardening
+ - Remove redundant '--parallel'
+ - Override dh_auto_install and remove executable permission on some files
+ - Delete one more file in override_dh_auto_clean
+ * debian/yosys.1: Updated man page for new version
+ * debian/yosys.install: Install new files
+ * debian/yosys.lintian-overrides:
+ - Waive a 'spelling error' which is in fact not an error.
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Wed, 17 Oct 2018 18:36:13 +0200
+
+yosys (0.7-8) unstable; urgency=medium
+
+ * d/patches/0012-Skip-non-deterministic-test-causing-random-FTBFS-on-.patch:
+ - Disable test which fails some times when being built (Closes: #907211)
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Tue, 04 Sep 2018 20:00:14 +0200
+
+yosys (0.7-7) unstable; urgency=medium
+
+ * debian/patches/0011-Do-not-show-g-build-flags-in-Version-string.patch:
+ - Do not quote CXXFLAGS_FOR_YOSYS_CONFIG (fixes build on all)
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Wed, 22 Aug 2018 07:23:08 +0200
+
+yosys (0.7-6) unstable; urgency=medium
+
+ * debian/compat: level 11
+ * debian/control:
+ - debhelper >= 11
+ - Standards version 4.2.0 - no changes
+ * debian/upstream/metadata: Added upstream metadata
+ * d/patches/0011-Do-not-show-g-build-flags-in-Version-string.patch:
+ - some build flags for the g++ version being used were "injected" into
+ the source files for yosys. Remove them
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Tue, 21 Aug 2018 21:37:46 +0200
+
+yosys (0.7-5) unstable; urgency=medium
+
+ * debian/patches/0010-Fix-adding-of-sys.path-in-yosys-smtbmc.patch
+ - Fix "ModuleNotFoundError: No module named 'smtio'" (Closes: #904752)
+ * debian/tests/smtbc:
+ - Added CI test to check that 'yosys-smtbmc' can be started with no
+ import errors
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Fri, 27 Jul 2018 20:57:41 +0200
+
+yosys (0.7-4) unstable; urgency=medium
+
+ * d/patches/0010-Fix-reproducibility-of-PDF-documents-in-yosys-doc.patch
+ - Another attempt of getting full reproducibility of PDF documents
+ in yosys-doc
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Sat, 14 Jul 2018 23:47:09 +0200
+
+yosys (0.7-3) unstable; urgency=low
+
+ * debian/copyright:
+ - Use https protocol in Format field
+ * debian/control:
+ - Added dh-python as build-dependency (Closes: #896802)
+ - Changed VCS URLs to Salsa
+ - Mark 'yosys-doc' Multi-Arch: foreign
+ - Remove 'Testsuite: autopkgtest' since it is now handled automatically
+ - Updated Standards Version to 4.1.5 - requires reproducibility
+ * debian/patches:
+ - 0007-Disable-pretty-build.patch: New patch to disable pretty build
+ (Closes: #847110)
+ - 0008-Set-fixed-date-when-calling-pdflatex-for-presentatio.patch
+ Improve reproducibility
+ - 0009-Some-spelling-errors-fixed.patch: Fixed some spelling errors
+ detected by lintian
+ * debian/rules:
+ - Pass down changelog date to pdflatex
+ - Upstream source has moved to https://github.com/YosysHQ/yosys
+ - Use /usr/share/dpkg/pkg-info.mk instead of separate calls to
+ dpkg-parsechangelog
+ * debian/watch:
+ - Fix watch URL - now github.com/YosysHQ/yosys/releases
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Thu, 12 Jul 2018 17:27:53 +0200
+
+yosys (0.7-2) unstable; urgency=medium
+
+ * debian/control:
+ - Moved berkeley-abc from Build-Depends-Indep to Build-Depends in order
+ to fix dependency problem during test.
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Sun, 06 Nov 2016 14:40:47 +0000
+
+yosys (0.7-1) unstable; urgency=medium
+
+ * New upstream release
+ * Refreshed patches. Some patches applied upstream and deleted.
+ * Updated man page for yosys
+ * Simplified debian/*.install files
+ * debian/patches/03_notruntests.patch deleted
+ - Tests can now be run during build since an updated version
+ of iverilog is in the archive
+ * debian/control:
+ - Depend on a newer version of berkeley-abc
+ - Build-depend on iverilog >= 10.1
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Sun, 06 Nov 2016 11:28:06 +0100
+
+yosys (0.6-7) unstable; urgency=medium
+
+ [ Ruben Undheim ]
+ * Use gbp-pq for patches.
+ * debian/control:
+ - Removed dependency on GCC 5 which was added in 0.6-6. (Closes: #835953)
+ It causes problems now since GCC 6 is default.
+
+ [Sebastian Kuzminsky]
+ * debian/patches/switch-to-free-font.patch: Switch manual tt font
+ from libertine to inconsolata. The yosys manual doesn't render with
+ libertine on sid, but it renders nicely with inconsolata. (Closes: #835678)
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Thu, 22 Sep 2016 19:30:37 +0200
+
+yosys (0.6-6) unstable; urgency=medium
+
+ * Added versioned build-dependency on gcc-5 (>= 5.3.1-15) since it
+ now fails to build with older versions due to the fix for #822408.
+ (Closes: #823809)
+ * Updated Standards to 3.9.8 - no changes
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Wed, 11 May 2016 22:20:00 +0200
+
+yosys (0.6-5) unstable; urgency=medium
+
+ [ Sebastian Kuzminsky ]
+ * debian/patches/fixup-initalization.patch:
+ - Add a bugfix patch from upstream's development branch.
+
+ [ Ruben Undheim ]
+ * debian/patches/fix_ftbfs_cannot_find_infinite.patch:
+ - Fixes FTBFS due to std::isfinite not found. (Closes: #822408)
+ * Move PDFs in yosys-doc to /usr/share/doc/yosys in order to adhere to
+ Debian Policy 12.3.
+ * Refreshed patches
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Tue, 03 May 2016 21:56:53 +0200
+
+yosys (0.6-4) unstable; urgency=medium
+
+ * debian/rules:
+ - Override dh_auto_build-arch instead of dh_auto_build to resolve
+ build issue for "all" package.
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Sat, 09 Apr 2016 16:38:20 +0200
+
+yosys (0.6-3) unstable; urgency=medium
+
+ [ Sebastian Kuzminsky ]
+ * debian/patches/kfreebsd-support.patch:
+ - Fix a build problem on kFreeBSD. Use __unix__ instead of __linux__
+
+ [ Ruben Undheim ]
+ * debian/control:
+ - Define Build-Depends-Indep dependencies
+ * debian/rules:
+ - Override dh_auto_build-indep instead for building documentation.
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Sat, 09 Apr 2016 14:29:32 +0200
+
+yosys (0.6-2) unstable; urgency=medium
+
+ * split the package into yosys, yosys-dev, and yosys-doc
+ - yosys is the tool itself
+ - yosys-dev is development files for building plugins
+ - yosys-doc is the manual (in pdf format)
+ * debian/rules:
+ - fail the build if upstream installs files that aren't picked up
+ by any of the debs
+
+ -- Sebastian Kuzminsky <seb@highlab.com> Wed, 23 Mar 2016 18:46:51 -0600
+
+yosys (0.6-1) unstable; urgency=medium
+
+ * Uploaded to unstable.
+ * New upstream release: 0.6 (5869d26)
+ - 01_gitrevision.patch: refresh
+ - spelling-fixes.patch: fix upstream spelling mistakes
+ * debian/rules:
+ - don't run make as part of dh_auto_configure, it'll get run by
+ dh_auto_build later
+ - enable parallel build
+ - handle the new python dependencies of yosys-smtbmc
+ * debian/control:
+ - add Sebastian Kuzminsky to Uploaders
+ * add a manpage for the new yosys-smtbmc executable
+
+ -- Sebastian Kuzminsky <seb@highlab.com> Sun, 28 Feb 2016 10:48:44 -0700
+
+yosys (0.5.0+20151013gitf13e387-2~exp1) experimental; urgency=low
+
+ * Added autopkg test for synthesis for iCE FPGA.
+ * Updated standards to 3.9.7 - no needed changes
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Sun, 21 Feb 2016 12:21:37 +0100
+
+yosys (0.5.0+20151013gitf13e387-1) unstable; urgency=low
+
+ * Uploaded to unstable
+ - New features in yosys are needed for the Icestorm tool chain
+ * New upstream version
+ - Drop patches 04_installpath.patch and 06_cflags_ldflags.patch
+ - Set PREFIX in d/rules
+ * debian/control: Fixed Vcs-Git to use https
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Sun, 07 Feb 2016 11:59:04 +0100
+
+yosys (0.5.0+20151007gitba4cce9-1) experimental; urgency=low
+
+ * New upstream version
+ - Refreshed patches
+ * debian/control: Added "python3" as build-dependency
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Sat, 10 Oct 2015 09:21:17 +0200
+
+yosys (0.5.0-1) unstable; urgency=low
+
+ * New upstream release
+ * Added d/watch
+ * Updated copyright years in d/copyright
+ * Changed dependency from tcl8.5-dev to tcl-dev
+ * Added d/gbp.conf
+ * Added link from /usr/bin/yosys-abc to /usr/bin/berkeley-abc
+ - Also added man page for yosys-abc
+ * Fixed paths returned by yosys-config
+ - fix included in 04_installpath.patch
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Mon, 09 Feb 2015 20:37:38 +0100
+
+yosys (0.4.0-1) unstable; urgency=medium
+
+ * New upstream release
+ * Few fixes in d/copyright
+ * Removed some strictly not needed dependencies
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Wed, 12 Nov 2014 18:35:59 +0100
+
+yosys (0.3.0+20140906git652345c-1) unstable; urgency=low
+
+ * Initial release (Closes: #761365)
+
+ -- Ruben Undheim <ruben.undheim@gmail.com> Thu, 16 Oct 2014 22:02:03 +0200
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 00000000..b4de3947
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+11
diff --git a/debian/control b/debian/control
new file mode 100644
index 00000000..6edbf3e1
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,85 @@
+Source: yosys
+Maintainer: Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
+Uploaders: Ruben Undheim <ruben.undheim@gmail.com>,
+ Sebastian Kuzminsky <seb@highlab.com>
+Section: electronics
+Priority: optional
+Build-Depends: debhelper (>= 11),
+ dh-python,
+ tcl-dev,
+ libreadline-dev,
+ bison,
+ flex,
+ gawk,
+ libffi-dev,
+ pkg-config,
+ txt2man,
+ iverilog (>= 10.1),
+ python3,
+ berkeley-abc (>= 1.01+20161002hgeb6eca6+dfsg)
+Build-Depends-Indep:
+ texlive-base,
+ texlive-generic-recommended,
+ texlive-fonts-recommended,
+ texlive-fonts-extra,
+ texlive-latex-base,
+ texlive-latex-extra,
+ texlive-font-utils,
+ texlive-science,
+ texlive-publishers,
+ texlive-bibtex-extra,
+ lmodern,
+ graphviz
+Standards-Version: 4.3.0
+Vcs-Browser: https://salsa.debian.org/science-team/yosys
+Vcs-Git: https://salsa.debian.org/science-team/yosys.git
+Homepage: http://www.clifford.at/yosys
+
+Package: yosys
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${python3:Depends},
+ ${misc:Depends},
+ berkeley-abc (>= 1.01+20161002hgeb6eca6+dfsg),
+ xdot
+Description: Framework for Verilog RTL synthesis
+ This is a framework for Verilog RTL synthesis. It currently has extensive
+ Verilog-2005 support and provides a basic set of synthesis algorithms for
+ various application domains.
+ .
+ Yosys can be adapted to perform any synthesis job by combining the existing
+ passes (algorithms) using synthesis scripts and adding additional passes as
+ needed by extending the yosys C++ code base.
+
+Package: yosys-dev
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${python3:Depends},
+ ${misc:Depends}
+Description: Framework for Verilog RTL synthesis (development files)
+ Yosys is a framework for Verilog RTL synthesis. It currently has extensive
+ Verilog-2005 support and provides a basic set of synthesis algorithms for
+ various application domains.
+ .
+ Yosys can be adapted to perform any synthesis job by combining the existing
+ passes (algorithms) using synthesis scripts and adding additional passes as
+ needed by extending the yosys C++ code base.
+ .
+ This package contains the headers and programs needed to build yosys plugins.
+
+Package: yosys-doc
+Section: doc
+Architecture: all
+Depends: ${misc:Depends}
+Multi-Arch: foreign
+Suggests: yosys
+Description: Documentation for Yosys
+ Yosys is a framework for Verilog RTL synthesis. It currently has extensive
+ Verilog-2005 support and provides a basic set of synthesis algorithms for
+ various application domains.
+ .
+ Yosys can be adapted to perform any synthesis job by combining the existing
+ passes (algorithms) using synthesis scripts and adding additional passes as
+ needed by extending the yosys C++ code base.
+ .
+ This package contains the manual.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 00000000..68beccd9
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,191 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Upstream-Name: yosys
+Source: http://www.clifford.at/yosys/
+
+Files: *
+Copyright: 2012-2018 Clifford Wolf <clifford@clifford.at>
+License: ISC
+
+Files: backends/btor/btor.cc
+Copyright: 2012 Clifford Wolf <clifford@clifford.at>
+ 2014 Ahmed Irfan <irfan@fbk.eu>
+License: ISC
+
+Files: passes/cmds/tee.cc passes/tests/test_cell.cc passes/cmds/logcmd.cc
+ passes/cmds/write_file.cc passes/cmds/trace.cc
+ passes/tests/test_abcloop.cc
+Copyright: 2012-2014 Clifford Wolf <clifford@clifford.at>
+ 2014 Johann Glaser <Johann.Glaser@gmx.at>
+License: ISC
+
+Files: backends/protobuf/protobuf.cc
+Copyright: 2012 Clifford Wolf <clifford@clifford.at>
+ 2018 Serge Bazanski <q3k@symbioticeda.com>
+License: ISC
+
+Files: passes/techmap/dff2dffs.cc
+ techlibs/ecp5/arith_map.v
+ techlibs/ecp5/synth_ecp5.cc
+ techlibs/ecp5/ecp5_ffinit.cc
+ techlibs/gowin/arith_map.v
+Copyright: 2012 Clifford Wolf <clifford@clifford.at>
+ 2018-2019 David Shah <dave@ds0.me>
+License: ISC
+
+Files: frontends/aiger/aigerparse.*
+Copyright: 2012 Clifford Wolf <clifford@clifford.at>
+ 2012 Eddie Hung <eddie@fpgeh.com>
+License: ISC
+
+Files: frontends/ast/ast.cc
+ passes/hierarchy/hierarchy.cc
+Copyright: 2012 Clifford Wolf <clifford@clifford.at>
+ 2018 Ruben Undheim <ruben.undheim@gmail.com>
+License: ISC
+
+Files: passes/cmds/bugpoint.cc
+ passes/equiv/equiv_opt.cc
+ passes/opt/opt_lut.cc
+ passes/techmap/flowmap.cc
+Copyright: 2018 whitequark <whitequark@whitequark.org>
+License: ISC
+
+Files: passes/techmap/extract_reduce.cc
+ techlibs/coolrunner2/*
+Copyright: 2017 Robert Ou <rqou@robertou.com>
+License: ISC
+
+Files: techlibs/anlogic/anlogic_determine_init.c
+ techlibs/anlogic/anlogic_eqn.cc
+ techlibs/anlogic/arith_map.v
+ techlibs/anlogic/synth_anlogic.cc
+Copyright: 2012,2018 Clifford Wolf <clifford@clifford.at
+ 2018 Icenowy Zheng <icenowy@aosc.io>
+ 2018 Miodrag Milanovic <miodrag@symbioticeda.com>
+License: ISC
+
+Files: misc/yosys.proto
+Copyright: 2018 Serge Bazanski <q3k@symbioticeda.com>
+License: ISC
+
+Files: libs/minisat/*
+Copyright: 2003-2006, Niklas Een, Niklas Sorensson
+ 2006-2012 Niklas Sorensson
+License: MIT
+
+Files: libs/sha1/*
+Copyright: Steve Reid <steve@edmweb.com>
+ Bruce Guenter <bruce@untroubled.org>
+ Volker Grabsch <vog@notjusthosting.com>
+License: Public-Domain
+ These files are in the public domain.
+
+Files: misc/launcher.c
+Copyright: 2016 Jason R Coombs <jaraco@jaraco.com>
+License: MIT
+
+Files: manual/CHAPTER_StateOfTheArt/simlib_hana.v
+ tests/hana/hana_vlib.v
+Copyright: 2009-2010 Parvez Ahmad <parvez_ahmad@yahoo.co.uk>
+License: GPL-3+
+
+Files: passes/fsm/fsm_export.cc
+Copyright: 2012 Clifford Wolf <clifford@clifford.at>
+ 2012 Martin Schmölzer <martin@schmoelzer.at>
+License: ISC
+
+Files: tests/memories/amber23_sram_byte_en.v
+Copyright: 2010 Conor Santifort <csantifort.amber@gmail.com>
+ 2010 OPENCORES.ORG
+License: LGPL-2.1+
+
+Files: debian/*
+Copyright: 2014-2016,2018-2019 Ruben Undheim <ruben.undheim@gmail.com>
+ 2016 Sebastian Kuzminsky <seb@highlab.com>
+License: GPL-2+
+
+
+License: ISC
+ Permission to use, copy, modify, and/or distribute this software for any
+ purpose with or without fee is hereby granted, provided that the above
+ copyright notice and this permission notice appear in all copies.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+License: GPL-2+
+ This package is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>
+ .
+ On Debian systems, the complete text of the GNU General
+ Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
+
+License: GPL-3+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+ .
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>.
+ .
+ On Debian systems, the complete text of the GNU General
+ Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
+
+License: LGPL-2.1+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either version 2.1
+ og the License, or (at your option) any later version.
+ .
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the
+ Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+ .
+ On Debian Systems, the full text of the license can be found on
+ /usr/share/common-licenses/LGPL-2.1
+
+License: MIT
+ Permission is hereby granted, free of charge, to any person obtaining a copy
+ of this software and associated documentation files (the "Software"), to deal
+ in the Software without restriction, including without limitation the rights
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ copies of the Software, and to permit persons to whom the Software is
+ furnished to do so, subject to the following conditions:
+ .
+ The above copyright notice and this permission notice shall be included in
+ all copies or substantial portions of the Software.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ SOFTWARE.
diff --git a/debian/docs b/debian/docs
new file mode 100644
index 00000000..b43bf86b
--- /dev/null
+++ b/debian/docs
@@ -0,0 +1 @@
+README.md
diff --git a/debian/gbp.conf b/debian/gbp.conf
new file mode 100644
index 00000000..cec628c7
--- /dev/null
+++ b/debian/gbp.conf
@@ -0,0 +1,2 @@
+[DEFAULT]
+pristine-tar = True
diff --git a/debian/man/.gitignore b/debian/man/.gitignore
new file mode 100644
index 00000000..f7e585b8
--- /dev/null
+++ b/debian/man/.gitignore
@@ -0,0 +1 @@
+*.1
diff --git a/debian/man/genmanpages.sh b/debian/man/genmanpages.sh
new file mode 100755
index 00000000..8c6f6e71
--- /dev/null
+++ b/debian/man/genmanpages.sh
@@ -0,0 +1,3 @@
+#!/bin/bash
+
+txt2man -d "${CHANGELOG_DATE}" -t YOSYS-SMTBMC -s 1 yosys-smtbmc.txt > yosys-smtbmc.1
diff --git a/debian/man/yosys-smtbmc.txt b/debian/man/yosys-smtbmc.txt
new file mode 100644
index 00000000..3f2df5fc
--- /dev/null
+++ b/debian/man/yosys-smtbmc.txt
@@ -0,0 +1,44 @@
+NAME
+ yosys-smtbmc - write design to SMT2-LIBv2 file
+
+SYNOPSIS
+ yosys-smtbmc [options] <yosys_smt2_output>
+
+OPTIONS
+
+ -t [<skip_steps>:]<num_steps>
+ default: skip_steps=0, num_steps=20
+
+ -u <start_step>
+ assume asserts in skipped steps in BMC
+
+ -S <step_size>
+ proof <step_size> time steps at once
+
+ -c <vcd_filename>
+ write counter-example to this VCD file (hint: use 'write_smt2
+ -wires' for maximum coverage of signals in generated VCD file)
+
+ -i
+ instead of BMC run temporal induction
+
+ -m <module_name>
+ name of the top module
+
+ -s <solver>
+ Set SMT solver: z3, cvc4, yices, mathsat. default: z3
+
+ -v
+ enable debug output
+
+ -p
+ disable timer display during solving
+
+ -d <filename>
+ write smt2 statements to file
+
+
+AUTHOR
+
+ This manual page was written by Sebastian Kuzminsky <seb@highlab.com>
+ for the Debian project (and may be used by others).
diff --git a/debian/patches/0007-Disable-pretty-build.patch b/debian/patches/0007-Disable-pretty-build.patch
new file mode 100644
index 00000000..22e31cbc
--- /dev/null
+++ b/debian/patches/0007-Disable-pretty-build.patch
@@ -0,0 +1,21 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Wed, 5 Apr 2017 09:31:37 +0000
+Subject: Disable pretty build
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 383f6a5..0205d18 100644
+--- a/Makefile
++++ b/Makefile
+@@ -53,7 +53,7 @@ EXTRA_OBJS =
+ EXTRA_TARGETS =
+ TARGETS = yosys$(EXE) yosys-config
+
+-PRETTY = 1
++PRETTY = 0
+ SMALL = 0
+
+ # Unit test
diff --git a/debian/patches/0009-Some-spelling-errors-fixed.patch b/debian/patches/0009-Some-spelling-errors-fixed.patch
new file mode 100644
index 00000000..32c7c896
--- /dev/null
+++ b/debian/patches/0009-Some-spelling-errors-fixed.patch
@@ -0,0 +1,67 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Thu, 12 Jul 2018 13:41:39 +0200
+Subject: Some spelling errors fixed
+
+---
+ frontends/ast/genrtlil.cc | 2 +-
+ manual/CHAPTER_Overview.tex | 2 +-
+ manual/command-reference-manual.tex | 2 +-
+ techlibs/xilinx/synth_xilinx.cc | 4 ++--
+ 4 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/frontends/ast/genrtlil.cc b/frontends/ast/genrtlil.cc
+index b3a2a84..6ec7227 100644
+--- a/frontends/ast/genrtlil.cc
++++ b/frontends/ast/genrtlil.cc
+@@ -557,7 +557,7 @@ struct AST_INTERNAL::ProcessGenerator
+ break;
+
+ case AST_ASSIGN:
+- log_file_error(ast->filename, ast->linenum, "Found continous assignment in always/initial block!\n");
++ log_file_error(ast->filename, ast->linenum, "Found continuous assignment in always/initial block!\n");
+ break;
+
+ case AST_PARAMETER:
+diff --git a/manual/CHAPTER_Overview.tex b/manual/CHAPTER_Overview.tex
+index 2feb0f1..c7d1d5c 100644
+--- a/manual/CHAPTER_Overview.tex
++++ b/manual/CHAPTER_Overview.tex
+@@ -240,7 +240,7 @@ An RTLIL::Wire object has the following properties:
+ As with modules, the attributes can be Verilog attributes imported by the
+ Verilog frontend or attributes assigned by passes.
+
+-In Yosys, busses (signal vectors) are represented using a single wire object
++In Yosys, buses (signal vectors) are represented using a single wire object
+ with a width > 1. So Yosys does not convert signal vectors to individual signals.
+ This makes some aspects of RTLIL more complex but enables Yosys to be used for
+ coarse grain synthesis where the cells of the target architecture operate on
+diff --git a/manual/command-reference-manual.tex b/manual/command-reference-manual.tex
+index bed6326..eb43467 100644
+--- a/manual/command-reference-manual.tex
++++ b/manual/command-reference-manual.tex
+@@ -3182,7 +3182,7 @@ to a graphics file (usually SVG or PostScript).
+ assigned to each unique value of this attribute.
+
+ -width
+- annotate busses with a label indicating the width of the bus.
++ annotate buses with a label indicating the width of the bus.
+
+ -signed
+ mark ports (A, B) that are declared as signed (using the [AB]_SIGNED
+diff --git a/techlibs/xilinx/synth_xilinx.cc b/techlibs/xilinx/synth_xilinx.cc
+index 805ae8e..0b8d833 100644
+--- a/techlibs/xilinx/synth_xilinx.cc
++++ b/techlibs/xilinx/synth_xilinx.cc
+@@ -64,10 +64,10 @@ struct SynthXilinxPass : public Pass
+ log(" (this feature is experimental and incomplete)\n");
+ log("\n");
+ log(" -nobram\n");
+- log(" disable infering of block rams\n");
++ log(" disable inferring of block rams\n");
+ log("\n");
+ log(" -nodram\n");
+- log(" disable infering of distributed rams\n");
++ log(" disable inferring of distributed rams\n");
+ log("\n");
+ log(" -run <from_label>:<to_label>\n");
+ log(" only run the commands between the labels (see below). an empty\n");
diff --git a/debian/patches/0010-Fix-adding-of-sys.path-in-yosys-smtbmc.patch b/debian/patches/0010-Fix-adding-of-sys.path-in-yosys-smtbmc.patch
new file mode 100644
index 00000000..5d37598f
--- /dev/null
+++ b/debian/patches/0010-Fix-adding-of-sys.path-in-yosys-smtbmc.patch
@@ -0,0 +1,21 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Fri, 27 Jul 2018 18:46:13 +0000
+Subject: Fix adding of sys.path in yosys-smtbmc
+
+---
+ backends/smt2/Makefile.inc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/backends/smt2/Makefile.inc b/backends/smt2/Makefile.inc
+index 92941d4..2c0b7c6 100644
+--- a/backends/smt2/Makefile.inc
++++ b/backends/smt2/Makefile.inc
+@@ -22,7 +22,7 @@ else
+ TARGETS += yosys-smtbmc
+
+ yosys-smtbmc: backends/smt2/smtbmc.py
+- $(P) sed 's|##yosys-sys-path##|sys.path += [os.path.dirname(os.path.realpath(__file__)) + p for p in ["/share/python3", "/../share/yosys/python3"]]|;' < $< > $@.new
++ $(P) sed 's|##yosys-sys-path##|sys.path += ["/usr/share/yosys"]|;' < $< > $@.new
+ $(Q) chmod +x $@.new
+ $(Q) mv $@.new $@
+ endif
diff --git a/debian/patches/0010-Fix-reproducibility-of-PDF-documents-in-yosys-doc.patch b/debian/patches/0010-Fix-reproducibility-of-PDF-documents-in-yosys-doc.patch
new file mode 100644
index 00000000..33bbedc3
--- /dev/null
+++ b/debian/patches/0010-Fix-reproducibility-of-PDF-documents-in-yosys-doc.patch
@@ -0,0 +1,133 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Thu, 12 Jul 2018 10:41:21 +0000
+Subject: Fix reproducibility of PDF documents in yosys-doc
+
+---
+ Makefile | 6 +++---
+ manual/appnotes.sh | 5 ++++-
+ manual/manual.sh | 6 ++++--
+ manual/presentation.sh | 11 +++++++++--
+ manual/presentation.tex | 1 +
+ 5 files changed, 21 insertions(+), 8 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 0205d18..6f8c067 100644
+--- a/Makefile
++++ b/Makefile
+@@ -651,9 +651,9 @@ update-manual: $(TARGETS) $(EXTRA_TARGETS)
+ cd manual && ../yosys -p 'help -write-tex-command-reference-manual'
+
+ manual: $(TARGETS) $(EXTRA_TARGETS)
+- cd manual && bash appnotes.sh
+- cd manual && bash presentation.sh
+- cd manual && bash manual.sh
++ cd manual && PDF_DATE=$(PDF_DATE) bash appnotes.sh
++ cd manual && PDF_DATE=$(PDF_DATE) bash presentation.sh
++ cd manual && PDF_DATE=$(PDF_DATE) bash manual.sh
+
+ clean:
+ rm -rf share
+diff --git a/manual/appnotes.sh b/manual/appnotes.sh
+index 0ae5286..798d9d3 100755
+--- a/manual/appnotes.sh
++++ b/manual/appnotes.sh
+@@ -7,16 +7,19 @@ do
+ if [ -f $job/make.sh ]; then
+ cd $job
+ bash make.sh
++ sed -i 's#/CreationDate (D:[^)]\+)#/CreationDate ('${PDF_DATE}')#' *.pdf
+ cd ..
+ fi
+ old_md5=$([ -f $job.aux ] && md5sum < $job.aux || true)
+ while
+- pdflatex -shell-escape -halt-on-error $job.tex || exit
++ pdflatex -shell-escape -halt-on-error '\pdfinfo{/CreationDate('${PDF_DATE}')/ModDate('${PDF_DATE}')}\input{'${job}'.tex}' || exit
+ new_md5=$(md5sum < $job.aux)
+ [ "$old_md5" != "$new_md5" ]
+ do
+ old_md5="$new_md5"
+ done
++ grep -av '^/ID \[\(<[0-9A-F]\{32\}>\) \1]$' ${job}.pdf > ${job}.pdf.without_pdf_id
++ mv -f ${job}.pdf.without_pdf_id ${job}.pdf
+ touch $job.ok
+ done
+
+diff --git a/manual/manual.sh b/manual/manual.sh
+index c467393..4417f56 100755
+--- a/manual/manual.sh
++++ b/manual/manual.sh
+@@ -39,7 +39,7 @@ fi
+
+ set -ex
+
+-pdflatex $PDFTEX_OPT manual.tex
++pdflatex $PDFTEX_OPT '\pdfinfo{/CreationDate('${PDF_DATE}')/ModDate('${PDF_DATE}')}\input{manual.tex}'
+
+ if ! $fast_mode; then
+ bibtex manual.aux
+@@ -50,10 +50,12 @@ if ! $fast_mode; then
+ ! cmp autoloop.old autoloop.new
+ do
+ cp autoloop.new autoloop.old
+- pdflatex $PDFTEX_OPT manual.tex
++ pdflatex $PDFTEX_OPT '\pdfinfo{/CreationDate('${PDF_DATE}')/ModDate('${PDF_DATE}')}\input{manual.tex}'
+ done
+
+ rm -f autoloop.old
+ rm -f autoloop.new
+ fi
+
++grep -av '^/ID \[\(<[0-9A-F]\{32\}>\) \1]$' manual.pdf > manual.pdf.without_pdf_id
++mv -f manual.pdf.without_pdf_id manual.pdf
+diff --git a/manual/presentation.sh b/manual/presentation.sh
+index ca8a6c9..f2d0a30 100755
+--- a/manual/presentation.sh
++++ b/manual/presentation.sh
+@@ -29,15 +29,20 @@ set -ex
+ if ! $fast_mode; then
+ ! md5sum *.aux *.snm *.nav *.toc > autoloop.old
+ make -C PRESENTATION_Intro
++ sed -i 's#/CreationDate (D:[^)]\+)#/CreationDate ('${PDF_DATE}')#' PRESENTATION_Intro/*.pdf
+ make -C PRESENTATION_ExSyn
++ sed -i 's#/CreationDate (D:[^)]\+)#/CreationDate ('${PDF_DATE}')#' PRESENTATION_ExSyn/*.pdf
+ make -C PRESENTATION_ExAdv
++ sed -i 's#/CreationDate (D:[^)]\+)#/CreationDate ('${PDF_DATE}')#' PRESENTATION_ExAdv/*.pdf
+ make -C PRESENTATION_ExOth
++ sed -i 's#/CreationDate (D:[^)]\+)#/CreationDate ('${PDF_DATE}')#' PRESENTATION_ExOth/*.pdf
+ make -C PRESENTATION_Prog
+ fi
+
+ set -ex
+
+-pdflatex $PDFTEX_OPT presentation.tex
++echo ${PDF_DATE}
++pdflatex $PDFTEX_OPT '\pdfinfo{/CreationDate('${PDF_DATE}')/ModDate('${PDF_DATE}')}\input{presentation.tex}'
+
+ if ! $fast_mode; then
+ while
+@@ -45,10 +50,12 @@ if ! $fast_mode; then
+ ! cmp autoloop.old autoloop.new
+ do
+ cp autoloop.new autoloop.old
+- pdflatex $PDFTEX_OPT presentation.tex
++ pdflatex $PDFTEX_OPT '\pdfinfo{/CreationDate('${PDF_DATE}')/ModDate('${PDF_DATE}')}\input{presentation.tex}'
+ done
+
+ rm -f autoloop.old
+ rm -f autoloop.new
+ fi
+
++grep -av '^/ID \[\(<[0-9A-F]\{32\}>\) \1]$' presentation.pdf > presentation.pdf.without_pdf_id
++mv -f presentation.pdf.without_pdf_id presentation.pdf
+diff --git a/manual/presentation.tex b/manual/presentation.tex
+index 8060998..a42648c 100644
+--- a/manual/presentation.tex
++++ b/manual/presentation.tex
+@@ -81,6 +81,7 @@
+
+ \title{Yosys Open SYnthesis Suite}
+ \author{Clifford Wolf}
++\date{REPLACEWITHDATE}
+ \institute{http://www.clifford.at/yosys/}
+
+ \usetheme{Madrid}
diff --git a/debian/patches/0011-Do-not-show-g-build-flags-in-Version-string.patch b/debian/patches/0011-Do-not-show-g-build-flags-in-Version-string.patch
new file mode 100644
index 00000000..af0015d8
--- /dev/null
+++ b/debian/patches/0011-Do-not-show-g-build-flags-in-Version-string.patch
@@ -0,0 +1,34 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Sun, 19 Aug 2018 23:03:51 +0200
+Subject: Do not show g++ build flags in Version string
+
+---
+ Makefile | 7 ++++---
+ 1 file changed, 4 insertions(+), 3 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 6f8c067..5024349 100644
+--- a/Makefile
++++ b/Makefile
+@@ -514,8 +514,7 @@ libyosys.so: $(filter-out kernel/driver.o,$(OBJS))
+ $(Q) mkdir -p $(dir $@)
+ $(P) $(CXX) -o $@ -c $(CPPFLAGS) $(CXXFLAGS) $<
+
+-YOSYS_VER_STR := Yosys $(YOSYS_VER) (git sha1 $(GIT_REV), $(notdir $(CXX)) $(shell \
+- $(CXX) --version | tr ' ()' '\n' | grep '^[0-9]' | head -n1) $(filter -f% -m% -O% -DNDEBUG,$(CXXFLAGS)))
++YOSYS_VER_STR := Yosys $(YOSYS_VER) (git sha1 $(GIT_REV))
+
+ kernel/version_$(GIT_REV).cc: $(YOSYS_SRC)/Makefile
+ $(P) rm -f kernel/version_*.o kernel/version_*.d kernel/version_*.cc
+@@ -529,8 +528,10 @@ CXXFLAGS_NOVERIFIC = $(CXXFLAGS)
+ LDLIBS_NOVERIFIC = $(LDLIBS)
+ endif
+
++CXXFLAGS_FOR_YOSYS_CONFIG := $(shell echo $(subst -I. -I"$(YOSYS_SRC)",-I"$(DATDIR)/include",$(CXXFLAGS_NOVERIFIC)) | sed 's/-fdebug-prefix[^ ]\+ //' | sed 's/-ffile-prefix-map[^ ]\+ //')
++
+ yosys-config: misc/yosys-config.in
+- $(P) $(SED) -e 's#@CXXFLAGS@#$(subst -I. -I"$(YOSYS_SRC)",-I"$(DATDIR)/include",$(strip $(CXXFLAGS_NOVERIFIC)))#;' \
++ $(P) $(SED) -e 's#@CXXFLAGS@#$(CXXFLAGS_FOR_YOSYS_CONFIG)#;' \
+ -e 's#@CXX@#$(strip $(CXX))#;' -e 's#@LDFLAGS@#$(strip $(LDFLAGS) $(PLUGIN_LDFLAGS))#;' -e 's#@LDLIBS@#$(strip $(LDLIBS_NOVERIFIC))#;' \
+ -e 's#@BINDIR@#$(strip $(BINDIR))#;' -e 's#@DATDIR@#$(strip $(DATDIR))#;' < $< > yosys-config
+ $(Q) chmod +x yosys-config
diff --git a/debian/patches/0012-Skip-non-deterministic-test-causing-random-FTBFS-on-.patch b/debian/patches/0012-Skip-non-deterministic-test-causing-random-FTBFS-on-.patch
new file mode 100644
index 00000000..fffd15ce
--- /dev/null
+++ b/debian/patches/0012-Skip-non-deterministic-test-causing-random-FTBFS-on-.patch
@@ -0,0 +1,22 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Tue, 4 Sep 2018 19:59:05 +0200
+Subject: Skip non-deterministic test causing random FTBFS on some
+ architectures
+
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index 5024349..2ed9f0f 100644
+--- a/Makefile
++++ b/Makefile
+@@ -576,7 +576,7 @@ test: $(TARGETS) $(EXTRA_TARGETS)
+ +cd tests/simple && bash run-test.sh $(SEEDOPT)
+ +cd tests/hana && bash run-test.sh $(SEEDOPT)
+ +cd tests/asicworld && bash run-test.sh $(SEEDOPT)
+- # +cd tests/realmath && bash run-test.sh $(SEEDOPT)
++ #+cd tests/realmath && bash run-test.sh $(SEEDOPT)
+ +cd tests/share && bash run-test.sh $(SEEDOPT)
+ +cd tests/fsm && bash run-test.sh $(SEEDOPT)
+ +cd tests/techmap && bash run-test.sh
diff --git a/debian/patches/0013-Let-dpkg-buildpackage-handle-stripping-of-binaries.patch b/debian/patches/0013-Let-dpkg-buildpackage-handle-stripping-of-binaries.patch
new file mode 100644
index 00000000..35b623f7
--- /dev/null
+++ b/debian/patches/0013-Let-dpkg-buildpackage-handle-stripping-of-binaries.patch
@@ -0,0 +1,32 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Wed, 17 Oct 2018 08:40:22 +0200
+Subject: Let dpkg-buildpackage handle stripping of binaries
+
+---
+ Makefile | 4 ----
+ 1 file changed, 4 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 2ed9f0f..b4aac53 100644
+--- a/Makefile
++++ b/Makefile
+@@ -625,19 +625,15 @@ install: $(TARGETS) $(EXTRA_TARGETS)
+ $(INSTALL_SUDO) mkdir -p $(DESTDIR)$(BINDIR)
+ $(INSTALL_SUDO) cp $(TARGETS) $(DESTDIR)$(BINDIR)
+ ifneq ($(filter yosys,$(TARGETS)),)
+- $(INSTALL_SUDO) $(STRIP) -S $(DESTDIR)$(BINDIR)/yosys
+ endif
+ ifneq ($(filter yosys-abc,$(TARGETS)),)
+- $(INSTALL_SUDO) $(STRIP) $(DESTDIR)$(BINDIR)/yosys-abc
+ endif
+ ifneq ($(filter yosys-filterlib,$(TARGETS)),)
+- $(INSTALL_SUDO) $(STRIP) $(DESTDIR)$(BINDIR)/yosys-filterlib
+ endif
+ $(INSTALL_SUDO) mkdir -p $(DESTDIR)$(DATDIR)
+ $(INSTALL_SUDO) cp -r share/. $(DESTDIR)$(DATDIR)/.
+ ifeq ($(ENABLE_LIBYOSYS),1)
+ $(INSTALL_SUDO) cp libyosys.so $(DESTDIR)$(LIBDIR)
+- $(INSTALL_SUDO) $(STRIP) -S $(DESTDIR)$(LIBDIR)/libyosys.so
+ $(INSTALL_SUDO) ldconfig
+ endif
+
diff --git a/debian/patches/01_gitrevision.patch b/debian/patches/01_gitrevision.patch
new file mode 100644
index 00000000..fd31dbbf
--- /dev/null
+++ b/debian/patches/01_gitrevision.patch
@@ -0,0 +1,27 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Sat, 14 May 2016 15:44:12 +0200
+Subject: Compilation from the upstream code depends on being in the git
+ repository to get the correct git-revision to be shown when running the
+ program. This patch puts in the git revision from the correct upstream. It
+ must be updated every time upstream changes!
+
+Forwarded: doesn't make sense upstream
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index 8586e97..ea66859 100644
+--- a/Makefile
++++ b/Makefile
+@@ -101,8 +101,8 @@ LDFLAGS += -rdynamic
+ LDLIBS += -lrt
+ endif
+
+-YOSYS_VER := 0.8+$(shell cd $(YOSYS_SRC) && test -e .git && { git log --author=clifford@clifford.at --oneline 4d4665b.. 2> /dev/null | wc -l; })
+-GIT_REV := $(shell cd $(YOSYS_SRC) && git rev-parse --short HEAD 2> /dev/null || echo UNKNOWN)
++YOSYS_VER := 0.8+20190328git32bd0f2
++GIT_REV := 32bd0f2
+ OBJS = kernel/version_$(GIT_REV).o
+
+ # set 'ABCREV = default' to use abc/ as it is
diff --git a/debian/patches/02_removeabc.patch b/debian/patches/02_removeabc.patch
new file mode 100644
index 00000000..8ef43852
--- /dev/null
+++ b/debian/patches/02_removeabc.patch
@@ -0,0 +1,23 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Sat, 14 May 2016 15:44:12 +0200
+Subject: Don't build abc when building yosys. It is built as a separate
+ source package.
+
+Forwarded: doesn't make sense upstream
+---
+ Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile b/Makefile
+index ea66859..383f6a5 100644
+--- a/Makefile
++++ b/Makefile
+@@ -356,7 +356,7 @@ LDLIBS += -lpthread
+ endif
+ else
+ ifeq ($(ABCEXTERNAL),)
+-TARGETS += yosys-abc$(EXE)
++#TARGETS += yosys-abc$(EXE)
+ endif
+ endif
+ endif
diff --git a/debian/patches/05_abc_executable.patch b/debian/patches/05_abc_executable.patch
new file mode 100644
index 00000000..a59741fc
--- /dev/null
+++ b/debian/patches/05_abc_executable.patch
@@ -0,0 +1,29 @@
+From: Ruben Undheim <ruben.undheim@gmail.com>
+Date: Sat, 14 May 2016 15:44:13 +0200
+Subject: The dependency abc is built with the name yosys-abc upstream. Since
+ it is available as a separate package independently of yosys,
+ it is not called yosys-abc in debian. This patch changes the name of the
+ command that yosys looks for.
+
+Forwarded: doesn't make sense upstream
+---
+ passes/techmap/abc.cc | 6 +-----
+ 1 file changed, 1 insertion(+), 5 deletions(-)
+
+diff --git a/passes/techmap/abc.cc b/passes/techmap/abc.cc
+index 21b70f4..1b36261 100644
+--- a/passes/techmap/abc.cc
++++ b/passes/techmap/abc.cc
+@@ -1458,11 +1458,7 @@ struct AbcPass : public Pass {
+ pi_map.clear();
+ po_map.clear();
+
+-#ifdef ABCEXTERNAL
+- std::string exe_file = ABCEXTERNAL;
+-#else
+- std::string exe_file = proc_self_dirname() + "yosys-abc";
+-#endif
++ std::string exe_file = "berkeley-abc";
+ std::string script_file, liberty_file, constr_file, clk_str;
+ std::string delay_target, sop_inputs, sop_products, lutin_shared = "-S 1";
+ bool fast_mode = false, dff_mode = false, keepff = false, cleanup = true;
diff --git a/debian/patches/kfreebsd-support.patch b/debian/patches/kfreebsd-support.patch
new file mode 100644
index 00000000..ba4fb8c1
--- /dev/null
+++ b/debian/patches/kfreebsd-support.patch
@@ -0,0 +1,149 @@
+From: Sebastian Kuzminsky <seb@highlab.com>
+Date: Sat, 14 May 2016 15:44:13 +0200
+Subject: Change yosys to look for the #define constant "__unix__" instead of
+ "__linux__",
+ to select code appropriate for Unix-like systems. This has been tested with
+ Clang 3.5 and GCC 4.6, 4.8, and 4.9 on Linux,
+ and Clang 3.5 and GCC 4.9 on kFreeBSD.
+
+---
+ kernel/driver.cc | 8 ++++----
+ kernel/log.cc | 6 +++---
+ kernel/log.h | 2 +-
+ kernel/yosys.cc | 4 ++--
+ libs/minisat/System.cc | 2 +-
+ passes/cmds/cover.cc | 2 +-
+ 6 files changed, 12 insertions(+), 12 deletions(-)
+
+diff --git a/kernel/driver.cc b/kernel/driver.cc
+index a0bb7e6..0ea5505 100644
+--- a/kernel/driver.cc
++++ b/kernel/driver.cc
+@@ -34,7 +34,7 @@
+ #include <limits.h>
+ #include <errno.h>
+
+-#if defined (__linux__) || defined(__FreeBSD__)
++#if defined (__unix__) || defined(__FreeBSD__)
+ # include <sys/resource.h>
+ # include <sys/types.h>
+ # include <unistd.h>
+@@ -456,7 +456,7 @@ int main(int argc, char **argv)
+ if (print_stats)
+ log_hasher = new SHA1;
+
+-#if defined(__linux__)
++#if defined(__unix__)
+ // set stack size to >= 128 MB
+ {
+ struct rlimit rl;
+@@ -546,7 +546,7 @@ int main(int argc, char **argv)
+ #else
+ std::string meminfo;
+ std::string stats_divider = ", ";
+-# if defined(__linux__)
++# if defined(__unix__)
+ std::ifstream statm;
+ statm.open(stringf("/proc/%lld/statm", (long long)getpid()));
+ if (statm.is_open()) {
+@@ -613,7 +613,7 @@ int main(int argc, char **argv)
+ }
+ }
+
+-#if defined(YOSYS_ENABLE_COVER) && (defined(__linux__) || defined(__FreeBSD__))
++#if defined(YOSYS_ENABLE_COVER) && (defined(__unix__) || defined(__FreeBSD__))
+ if (getenv("YOSYS_COVER_DIR") || getenv("YOSYS_COVER_FILE"))
+ {
+ string filename;
+diff --git a/kernel/log.cc b/kernel/log.cc
+index 400a549..757a49c 100644
+--- a/kernel/log.cc
++++ b/kernel/log.cc
+@@ -25,7 +25,7 @@
+ # include <sys/time.h>
+ #endif
+
+-#if defined(__linux__) || defined(__FreeBSD__)
++#if defined(__unix__) || defined(__FreeBSD__)
+ # include <dlfcn.h>
+ #endif
+
+@@ -393,7 +393,7 @@ void log_pop()
+ log_flush();
+ }
+
+-#if (defined(__linux__) || defined(__FreeBSD__)) && defined(YOSYS_ENABLE_PLUGINS)
++#if (defined(__unix__) || defined(__FreeBSD__)) && defined(YOSYS_ENABLE_PLUGINS)
+ void log_backtrace(const char *prefix, int levels)
+ {
+ if (levels <= 0) return;
+@@ -588,7 +588,7 @@ void log_wire(RTLIL::Wire *wire, std::string indent)
+ // ---------------------------------------------------
+ // This is the magic behind the code coverage counters
+ // ---------------------------------------------------
+-#if defined(YOSYS_ENABLE_COVER) && (defined(__linux__) || defined(__FreeBSD__))
++#if defined(YOSYS_ENABLE_COVER) && (defined(__unix__) || defined(__FreeBSD__))
+
+ dict<std::string, std::pair<std::string, int>> extra_coverage_data;
+
+diff --git a/kernel/log.h b/kernel/log.h
+index 7599390..30f2a64 100644
+--- a/kernel/log.h
++++ b/kernel/log.h
+@@ -121,7 +121,7 @@ static inline void log_assert_worker(bool cond, const char *expr, const char *fi
+ // This is the magic behind the code coverage counters
+ // ---------------------------------------------------
+
+-#if defined(YOSYS_ENABLE_COVER) && (defined(__linux__) || defined(__FreeBSD__))
++#if defined(YOSYS_ENABLE_COVER) && (defined(__unix__) || defined(__FreeBSD__))
+
+ #define cover(_id) do { \
+ static CoverData __d __attribute__((section("yosys_cover_list"), aligned(1), used)) = { __FILE__, __FUNCTION__, _id, __LINE__, 0 }; \
+diff --git a/kernel/yosys.cc b/kernel/yosys.cc
+index 450e4e4..68ba3e6 100644
+--- a/kernel/yosys.cc
++++ b/kernel/yosys.cc
+@@ -79,7 +79,7 @@ std::vector<void*> memhasher_store;
+
+ void memhasher_on()
+ {
+-#if defined(__linux__) || defined(__FreeBSD__)
++#if defined(__unix__) || defined(__FreeBSD__)
+ memhasher_rng += time(NULL) << 16 ^ getpid();
+ #endif
+ memhasher_store.resize(0x10000);
+@@ -679,7 +679,7 @@ struct TclPass : public Pass {
+ } TclPass;
+ #endif
+
+-#if defined(__linux__) || defined(__CYGWIN__)
++#if defined(__unix__)
+ std::string proc_self_dirname()
+ {
+ char path[PATH_MAX];
+diff --git a/libs/minisat/System.cc b/libs/minisat/System.cc
+index 1921a1d..efbfb08 100644
+--- a/libs/minisat/System.cc
++++ b/libs/minisat/System.cc
+@@ -29,7 +29,7 @@ OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWA
+
+ #include "System.h"
+
+-#if defined(__linux__)
++#if defined(__unix__)
+
+ #include <stdlib.h>
+
+diff --git a/passes/cmds/cover.cc b/passes/cmds/cover.cc
+index 0ec7476..5f0042a 100644
+--- a/passes/cmds/cover.cc
++++ b/passes/cmds/cover.cc
+@@ -128,7 +128,7 @@ struct CoverPass : public Pass {
+ log("\n");
+ }
+
+-#if defined(YOSYS_ENABLE_COVER) && (defined(__linux__) || defined(__FreeBSD__))
++#if defined(YOSYS_ENABLE_COVER) && (defined(__unix__) || defined(__FreeBSD__))
+ for (auto &it : get_coverage_data()) {
+ if (!patterns.empty()) {
+ for (auto &p : patterns)
diff --git a/debian/patches/manual-build.patch b/debian/patches/manual-build.patch
new file mode 100644
index 00000000..dd3d2030
--- /dev/null
+++ b/debian/patches/manual-build.patch
@@ -0,0 +1,23 @@
+From: Sebastian Kuzminsky <seb@highlab.com>
+Date: Sat, 14 May 2016 15:44:13 +0200
+Subject: build the manual using the headers from the source tree,
+ not the installed ones.
+
+===================================================================
+---
+ manual/PRESENTATION_Prog/Makefile | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/manual/PRESENTATION_Prog/Makefile b/manual/PRESENTATION_Prog/Makefile
+index 794f5c1..319909c 100644
+--- a/manual/PRESENTATION_Prog/Makefile
++++ b/manual/PRESENTATION_Prog/Makefile
+@@ -2,7 +2,7 @@
+ all: test0.log test1.log test2.log
+
+ my_cmd.so: my_cmd.cc
+- ../../yosys-config --exec --cxx --cxxflags --ldflags -o my_cmd.so -shared my_cmd.cc --ldlibs
++ ../../yosys-config --exec --cxx --cxxflags -I../.. --ldflags -o my_cmd.so -shared my_cmd.cc --ldlibs
+
+ test0.log: my_cmd.so
+ ../../yosys -Ql test0.log_new -m ./my_cmd.so -p 'my_cmd foo bar' absval_ref.v
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 00000000..643b1cf4
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,13 @@
+01_gitrevision.patch
+02_removeabc.patch
+05_abc_executable.patch
+switch-to-free-font.patch
+manual-build.patch
+kfreebsd-support.patch
+0007-Disable-pretty-build.patch
+0009-Some-spelling-errors-fixed.patch
+0010-Fix-reproducibility-of-PDF-documents-in-yosys-doc.patch
+0010-Fix-adding-of-sys.path-in-yosys-smtbmc.patch
+0011-Do-not-show-g-build-flags-in-Version-string.patch
+0012-Skip-non-deterministic-test-causing-random-FTBFS-on-.patch
+0013-Let-dpkg-buildpackage-handle-stripping-of-binaries.patch
diff --git a/debian/patches/switch-to-free-font.patch b/debian/patches/switch-to-free-font.patch
new file mode 100644
index 00000000..093bbbfc
--- /dev/null
+++ b/debian/patches/switch-to-free-font.patch
@@ -0,0 +1,79 @@
+From: Sebastian Kuzminsky <seb@highlab.com>
+Date: Sat, 14 May 2016 15:44:13 +0200
+Subject: Switch the yosys manual font from luximono (non-free) to inconsolata
+ (free)
+
+===================================================================
+---
+ manual/APPNOTE_010_Verilog_to_BLIF.tex | 2 +-
+ manual/APPNOTE_011_Design_Investigation.tex | 2 +-
+ manual/APPNOTE_012_Verilog_to_BTOR.tex | 2 +-
+ manual/manual.tex | 2 +-
+ manual/presentation.tex | 2 +-
+ 5 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/manual/APPNOTE_010_Verilog_to_BLIF.tex b/manual/APPNOTE_010_Verilog_to_BLIF.tex
+index 0ecdf61..05559b6 100644
+--- a/manual/APPNOTE_010_Verilog_to_BLIF.tex
++++ b/manual/APPNOTE_010_Verilog_to_BLIF.tex
+@@ -4,7 +4,7 @@
+ \documentclass[9pt,technote,a4paper]{IEEEtran}
+
+ \usepackage[T1]{fontenc} % required for luximono!
+-\usepackage[scaled=0.8]{luximono} % typewriter font with bold face
++\usepackage[scaled=0.8]{inconsolata} % typewriter font with bold face
+
+ % To install the luximono font files:
+ % getnonfreefonts-sys --all or
+diff --git a/manual/APPNOTE_011_Design_Investigation.tex b/manual/APPNOTE_011_Design_Investigation.tex
+index 9780c78..4e63e20 100644
+--- a/manual/APPNOTE_011_Design_Investigation.tex
++++ b/manual/APPNOTE_011_Design_Investigation.tex
+@@ -4,7 +4,7 @@
+ \documentclass[9pt,technote,a4paper]{IEEEtran}
+
+ \usepackage[T1]{fontenc} % required for luximono!
+-\usepackage[scaled=0.8]{luximono} % typewriter font with bold face
++\usepackage[scaled=0.8]{inconsolata} % typewriter font with bold face
+
+ % To install the luximono font files:
+ % getnonfreefonts-sys --all or
+diff --git a/manual/APPNOTE_012_Verilog_to_BTOR.tex b/manual/APPNOTE_012_Verilog_to_BTOR.tex
+index 1bc2778..c139188 100644
+--- a/manual/APPNOTE_012_Verilog_to_BTOR.tex
++++ b/manual/APPNOTE_012_Verilog_to_BTOR.tex
+@@ -4,7 +4,7 @@
+ \documentclass[9pt,technote,a4paper]{IEEEtran}
+
+ \usepackage[T1]{fontenc} % required for luximono!
+-\usepackage[scaled=0.8]{luximono} % typewriter font with bold face
++\usepackage[scaled=0.8]{inconsolata} % typewriter font with bold face
+
+ % To install the luximono font files:
+ % getnonfreefonts-sys --all or
+diff --git a/manual/manual.tex b/manual/manual.tex
+index 67982cb..b274792 100644
+--- a/manual/manual.tex
++++ b/manual/manual.tex
+@@ -2,7 +2,7 @@
+
+ \usepackage[T1]{fontenc} % required for luximono!
+ \usepackage{lmodern}
+-\usepackage[scaled=0.8]{luximono} % typewriter font with bold face
++\usepackage[scaled=0.8]{inconsolata} % typewriter font with bold face
+
+ % To install the luximono font files:
+ % getnonfreefonts-sys --all or
+diff --git a/manual/presentation.tex b/manual/presentation.tex
+index 63b963b..8060998 100644
+--- a/manual/presentation.tex
++++ b/manual/presentation.tex
+@@ -3,7 +3,7 @@
+
+ \usepackage[T1]{fontenc} % required for luximono!
+ \usepackage{lmodern}
+-\usepackage[scaled=0.8]{luximono} % typewriter font with bold face
++\usepackage[scaled=0.8]{inconsolata} % typewriter font with bold face
+
+ % To install the luximono font files:
+ % getnonfreefonts-sys --all or
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 00000000..a9af380a
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,48 @@
+#!/usr/bin/make -f
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+include /usr/share/dpkg/pkg-info.mk
+
+export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
+
+export DEB_BUILD_MAINT_OPTIONS = hardening=+all
+
+PDF_DATE := $(shell LC_ALL=C date -u -d @$(SOURCE_DATE_EPOCH) +D:%Y%m%d%H%M%SZ)
+PDF_DATE2 := $(shell LC_ALL=C date -u -d @$(SOURCE_DATE_EPOCH) +"%B %d, %Y")
+CHANGELOG_DATE ?= $(shell LC_ALL=C date -u -d @$(SOURCE_DATE_EPOCH) +"%d %B %Y")
+
+
+%:
+ PREFIX=/usr dh $@ --with=python3
+
+
+override_dh_auto_clean:
+ dh_auto_clean
+ $(RM) debian/man/*.1
+ $(RM) Makefile.conf
+
+override_dh_auto_configure:
+ make config-gcc
+
+override_dh_auto_install:
+ dh_auto_install
+ chmod a-x debian/tmp/usr/share/yosys/achronix/speedster22i/cells*.v
+
+override_dh_install:
+ dh_install --fail-missing
+
+override_dh_installman:
+ cd debian/man ; CHANGELOG_DATE="$(CHANGELOG_DATE)" ./genmanpages.sh
+ dh_installman
+
+override_dh_compress:
+ dh_compress --exclude=.pdf
+
+override_dh_auto_build-arch:
+ dh_auto_build --parallel -- all
+
+override_dh_auto_build-indep:
+ sed -i 's/REPLACEWITHDATE/$(PDF_DATE2)/' manual/presentation.tex
+ PDF_DATE=$(PDF_DATE) dh_auto_build --parallel -- all manual
diff --git a/debian/source/format b/debian/source/format
new file mode 100644
index 00000000..163aaf8d
--- /dev/null
+++ b/debian/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/debian/tests/control b/debian/tests/control
new file mode 100644
index 00000000..3459b297
--- /dev/null
+++ b/debian/tests/control
@@ -0,0 +1,2 @@
+Tests: ice, smtbc
+Depends: @
diff --git a/debian/tests/design_ice.v b/debian/tests/design_ice.v
new file mode 100644
index 00000000..87dd1d32
--- /dev/null
+++ b/debian/tests/design_ice.v
@@ -0,0 +1,19 @@
+module design_ice(input ck, input I1, output O1);
+
+ reg ready = 0;
+ reg value;
+
+ always @(posedge ck) begin
+ if(ready) begin
+ value <= I1;
+ end
+ else begin
+ ready <= 1;
+ end
+
+ end
+
+
+ assign O1 = value;
+
+endmodule
diff --git a/debian/tests/ice b/debian/tests/ice
new file mode 100755
index 00000000..1643807b
--- /dev/null
+++ b/debian/tests/ice
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+set -e
+
+rm -f /tmp/design_ice.blif
+
+yosys -p "synth_ice40 -blif /tmp/design_ice.blif" debian/tests/design_ice.v
+
+if [ -f /tmp/design_ice.blif ] ; then
+ exit 0
+else
+ exit 1
+fi
diff --git a/debian/tests/smtbc b/debian/tests/smtbc
new file mode 100755
index 00000000..fb07acd6
--- /dev/null
+++ b/debian/tests/smtbc
@@ -0,0 +1,12 @@
+#!/bin/bash
+
+# Just verify that there are no Python import errors when starting yosys-smtbmc
+
+yosys-smtbmc 2>&1 | grep --quiet ImportError
+RET=$?
+
+if [ "$RET" = "0" ]; then
+ exit 1
+else
+ exit 0
+fi
diff --git a/debian/upstream/metadata b/debian/upstream/metadata
new file mode 100644
index 00000000..a191c0f0
--- /dev/null
+++ b/debian/upstream/metadata
@@ -0,0 +1,6 @@
+---
+Bug-Database: https://github.com/YosysHQ/yosys/issues
+Bug-Submit: https://github.com/YosysHQ/yosys/issues/new
+Name: Yosys
+Repository: https://github.com/YosysHQ/yosys.git
+Repository-Browse: https://github.com/YosysHQ/yosys
diff --git a/debian/watch b/debian/watch
new file mode 100644
index 00000000..72d171cb
--- /dev/null
+++ b/debian/watch
@@ -0,0 +1,2 @@
+version=3
+https://github.com/YosysHQ/yosys/releases /YosysHQ/yosys/archive/\w+-(\d\S+)\.tar\.(?:bz2|gz|xz)
diff --git a/debian/yosys-abc.1 b/debian/yosys-abc.1
new file mode 100644
index 00000000..780b004c
--- /dev/null
+++ b/debian/yosys-abc.1
@@ -0,0 +1,23 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH YOSYS-ABC 1 "February 09, 2015"
+.SH NAME
+yosys-abc \- symlink to berkeley-abc
+.SH SYNOPSIS
+.B yosys-abc
+.br
+.SH DESCRIPTION
+This manual page documents briefly the
+.B yosys-abc
+command.
+.PP
+\fByosys-abc\fP is simply a symbolic link to berkeley-abc which is provided by another package but which is a dependency for yosys. This is necessary since yosys-abc is the name used for berkeley-abc upstream for yosys and some yosys scripts may depend on it. For more information see the manual page for berkeley-abc(1)
+.SH SEE ALSO
+berkeley-abc(1), yosys(1)
+.\".SH AUTHOR
+.\"yosys-config was written by Clifford Wolf <clifford@clifford.at>.
+.PP
+This manual page was written by Ruben Undheim <ruben.undheim@gmail.com>,
+for the Debian project (and may be used by others).
diff --git a/debian/yosys-config.1 b/debian/yosys-config.1
new file mode 100644
index 00000000..f8d45b1b
--- /dev/null
+++ b/debian/yosys-config.1
@@ -0,0 +1,53 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH YOSYS-CONFIG 1 "October 16, 2014"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+yosys-config \- Yosys Open SYnthesis Suite Config
+.SH SYNOPSIS
+.B yosys-config
+.RI "[ -exec ] [ --prefix pf ]" " args"
+.br
+.SH DESCRIPTION
+This manual page documents briefly the
+.B yosys-config
+command.
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+\fByosys-config\fP is a shell script which can be used to query compiler options and other information needed for building loadable modules for yosys. It is similar in behaviour to pkg-config.
+.SH OPTIONS
+A summary of options is included below.
+.TP
+.B \-\-cxx
+.TP
+.B \-\-cxxflag
+.TP
+.B \-\-ldflags
+.TP
+.B \-\-ldlibs
+.TP
+.B \-\-bindir
+.TP
+.B \-\-datdir
+.SH SEE ALSO
+yosys(1), yosys-filterlib(1)
+.SH AUTHOR
+yosys-config was written by Clifford Wolf <clifford@clifford.at>.
+.PP
+This manual page was written by Ruben Undheim <ruben.undheim@gmail.com>,
+for the Debian project (and may be used by others).
diff --git a/debian/yosys-dev.install b/debian/yosys-dev.install
new file mode 100644
index 00000000..e2e0fe2f
--- /dev/null
+++ b/debian/yosys-dev.install
@@ -0,0 +1,3 @@
+usr/bin/yosys-config
+
+usr/share/yosys/include/*
diff --git a/debian/yosys-dev.manpages b/debian/yosys-dev.manpages
new file mode 100644
index 00000000..0c4ffd9e
--- /dev/null
+++ b/debian/yosys-dev.manpages
@@ -0,0 +1 @@
+debian/yosys-config.1
diff --git a/debian/yosys-doc.doc-base b/debian/yosys-doc.doc-base
new file mode 100644
index 00000000..3a2a29a8
--- /dev/null
+++ b/debian/yosys-doc.doc-base
@@ -0,0 +1,9 @@
+Document: yosys-manual
+Title: Yosys Manual
+Author: Clifford Wolf
+Abstract: This manual describes what yosys is and how it can be used to
+ compile Verilog code for FPGAs
+Section: Science/Electronics
+
+Format: PDF
+Files: /usr/share/doc/yosys/*.pdf
diff --git a/debian/yosys-doc.install b/debian/yosys-doc.install
new file mode 100644
index 00000000..74dba8bf
--- /dev/null
+++ b/debian/yosys-doc.install
@@ -0,0 +1,2 @@
+manual/presentation.pdf usr/share/doc/yosys
+manual/manual.pdf usr/share/doc/yosys
diff --git a/debian/yosys-filterlib.1 b/debian/yosys-filterlib.1
new file mode 100644
index 00000000..457159e7
--- /dev/null
+++ b/debian/yosys-filterlib.1
@@ -0,0 +1,48 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH YOSYS-FILTERLIB 1 "October 16, 2014"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+yosys-filterlib \- Yosys Open SYnthesis Suite Filterlib
+.SH SYNOPSIS
+.B yosys-filterlib
+.RI "[ rules-files [liberty-file]]"
+.br
+.SH DESCRIPTION
+This manual page documents briefly the
+.B yosys-filterlib
+command.
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+\fByosys-filterlib\fP is a program used to strip sensitive information from Liberty files.
+
+Occasionally Liberty files contain trade secrets (such as sensitive timing information) that cannot be shared
+freely. This complicates processes such as reporting bugs in the tools involved. When the information in
+the Liberty file used by Yosys and ABC are not part of the sensitive information, this tool
+yosys-filterlib can be used to strip the sensitive information from the Liberty file.
+.\".SH OPTIONS
+.\"A summary of options is included below.
+.\"#.TP
+.\"a
+.SH SEE ALSO
+yosys(1), yosys-config(1)
+.SH AUTHOR
+yosys-filterlib was written by Clifford Wolf <clifford@clifford.at>.
+.PP
+This manual page was written by Ruben Undheim <ruben.undheim@gmail.com>,
+for the Debian project (and may be used by others).
diff --git a/debian/yosys.1 b/debian/yosys.1
new file mode 100644
index 00000000..84164d16
--- /dev/null
+++ b/debian/yosys.1
@@ -0,0 +1,137 @@
+.\" Hey, EMACS: -*- nroff -*-
+.\" First parameter, NAME, should be all caps
+.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection
+.\" other parameters are allowed: see man(7), man(1)
+.TH YOSYS 1 "October 17, 2018"
+.\" Please adjust this date whenever revising the manpage.
+.\"
+.\" Some roff macros, for reference:
+.\" .nh disable hyphenation
+.\" .hy enable hyphenation
+.\" .ad l left justify
+.\" .ad b justify to both left and right margins
+.\" .nf disable filling
+.\" .fi enable filling
+.\" .br insert line break
+.\" .sp <n> insert n+1 empty lines
+.\" for manpage-specific macros, see man(7)
+.SH NAME
+yosys \- Yosys Open SYnthesis Suite
+.SH SYNOPSIS
+.B yosys
+.RI [ options ] " <infile>"
+.br
+.SH DESCRIPTION
+This manual page documents briefly the
+.B yosys
+command.
+.PP
+.\" TeX users may be more comfortable with the \fB<whatever>\fP and
+.\" \fI<whatever>\fP escape sequences to invode bold face and italics,
+.\" respectively.
+\fByosys\fP is a program that synthesizes RTL to gate-level logic.
+.SH OPTIONS
+A summary of options is included below.
+.TP
+.B \-Q
+suppress printing of banner (copyright, disclaimer, version)
+.TP
+.B \-T
+suppress printing of footer (log hash, version, timing statistics)
+.TP
+.B \-q
+quiet operation. only write error message to console
+use this option twice to also quiet warning messages
+.TP
+.B \-v <level>
+print log headers up to level <level> to the console. (implies \-q)
+.TP
+.B \-t
+annotate all log messages with a time stamp
+.TP
+.B \-d
+print more detailed timing stats at exit
+.TP
+.B \-l logfile
+write log messages to the specified file
+.TP
+.B \-L logfile
+like -l but open log file in line buffered mode
+.TP
+.B \-o outfile
+write the design to the specified file on exit
+.TP
+.B \-b backend
+use this backend for the output file specified on the command line
+.TP
+.B \-f frontend
+use the specified frontend for the input files on the command line
+.TP
+.B \-H
+print the command list
+.TP
+.B \-h command
+print the help message for the specified command
+.TP
+.B \-s scriptfile
+execute the commands in the script file
+.TP
+.B \-c tcl_scriptfile
+execute the commands in the tcl script file (see 'help tcl' for details)
+.TP
+.B \-p command
+execute the commands
+.TP
+.B \-m module_file
+load the specified module (aka plugin)
+.TP
+.B \-X
+enable tracing of core data structure changes. for debugging
+.TP
+.B \-M
+will slightly randomize allocated pointer addresses. for debugging
+.TP
+.B \-A
+will call abort() at the end of the script. for debugging
+.TP
+.B \-D <header_id>[:<filename>]
+dump the design when printing the specified log header to a file.
+yosys_dump_<header_id>.il is used as filename if none is specified.
+Use 'ALL' as <header_id> to dump at every header.
+.TP
+.B \-W regex
+if a warning message matches the regex, it is printed as regular
+message instead.
+.TP
+.B \-e regex
+if a warning message matches the regex, it is printed as error
+message instead and the tool terminates with a nonzero return code.
+.TP
+.B \-V
+print version information and exit
+.TP
+.B \-E depsfile
+write a Makefile dependencies file with in- and output file names
+.TP
+.B \-S
+The option \-S is an alias for the "synth" command, a default
+script for transforming the Verilog input to a gate-level netlist. For example:
+
+ yosys -o output.blif -S input.v
+
+.SH USAGE
+For more complex synthesis jobs it is recommended to use the read_* and write_*
+commands in a script file instead of specifying input and output files on the
+command line.
+
+When no commands, script files or input files are specified on the command
+line, yosys automatically enters the interactive command mode. Use the 'help'
+command to get information on the individual commands.
+
+.SH SEE ALSO
+berkeley-abc(1), yosys-config(1), yosys-filterlib(1)
+.SH AUTHOR
+yosys was written by Clifford Wolf <clifford@clifford.at>.
+.PP
+This manual page was written by Ruben Undheim <ruben.undheim@gmail.com>,
+for the Debian project (and may be used by others).
diff --git a/debian/yosys.install b/debian/yosys.install
new file mode 100644
index 00000000..e3326453
--- /dev/null
+++ b/debian/yosys.install
@@ -0,0 +1,34 @@
+usr/bin/yosys-filterlib
+usr/bin/yosys-smtbmc
+usr/bin/yosys
+
+usr/share/yosys/simlib.v
+usr/share/yosys/pmux2mux.v
+usr/share/yosys/simcells.v
+usr/share/yosys/techmap.v
+usr/share/yosys/cells.lib
+usr/share/yosys/adff2dff.v
+usr/share/yosys/dff2ff.v
+
+usr/share/yosys/ice40
+usr/share/yosys/xilinx
+usr/share/yosys/greenpak4
+usr/share/yosys/gowin
+usr/share/yosys/coolrunner2
+usr/share/yosys/ecp5
+usr/share/yosys/achronix
+usr/share/yosys/intel
+debian/tmp/usr/share/yosys/python3/smtio.py usr/share/yosys
+
+usr/share/yosys/gate2lut.v
+usr/share/yosys/cmp2lut.v
+usr/share/yosys/anlogic/arith_map.v
+usr/share/yosys/anlogic/cells_map.v
+usr/share/yosys/anlogic/dram_init_16x4.vh
+usr/share/yosys/anlogic/cells_sim.v
+usr/share/yosys/anlogic/drams_map.v
+usr/share/yosys/anlogic/eagle_bb.v
+usr/share/yosys/anlogic/drams.txt
+usr/share/yosys/sf2/arith_map.v
+usr/share/yosys/sf2/cells_map.v
+usr/share/yosys/sf2/cells_sim.v
diff --git a/debian/yosys.links b/debian/yosys.links
new file mode 100644
index 00000000..4e4bb818
--- /dev/null
+++ b/debian/yosys.links
@@ -0,0 +1,4 @@
+# This symlink provides the "yosys-abc" name for the ABC executable, as
+# used/expected by upstream. It was requested by upstream (Clifford Wolf)
+# to keep some out-of-tree scripts working.
+/usr/bin/berkeley-abc /usr/bin/yosys-abc
diff --git a/debian/yosys.lintian-overrides b/debian/yosys.lintian-overrides
new file mode 100644
index 00000000..7b397082
--- /dev/null
+++ b/debian/yosys.lintian-overrides
@@ -0,0 +1,2 @@
+# Cannot be fixed because part of file format implementation
+yosys binary: spelling-error-in-binary usr/bin/yosys upto up to
diff --git a/debian/yosys.manpages b/debian/yosys.manpages
new file mode 100644
index 00000000..bbe07363
--- /dev/null
+++ b/debian/yosys.manpages
@@ -0,0 +1,4 @@
+debian/yosys.1
+debian/yosys-filterlib.1
+debian/yosys-abc.1
+debian/man/*.1