From owner-svn-ports-all@freebsd.org Sun Mar 22 10:02:46 2020 Return-Path: Delivered-To: svn-ports-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 5FF7A27C329; Sun, 22 Mar 2020 10:02:46 +0000 (UTC) (envelope-from yuri@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 48lY3V1xjtz3xNh; Sun, 22 Mar 2020 10:02:46 +0000 (UTC) (envelope-from yuri@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3BEDD23AA4; Sun, 22 Mar 2020 10:02:46 +0000 (UTC) (envelope-from yuri@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id 02MA2kiw079881; Sun, 22 Mar 2020 10:02:46 GMT (envelope-from yuri@FreeBSD.org) Received: (from yuri@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id 02MA2id8079873; Sun, 22 Mar 2020 10:02:44 GMT (envelope-from yuri@FreeBSD.org) Message-Id: <202003221002.02MA2id8079873@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: yuri set sender to yuri@FreeBSD.org using -f From: Yuri Victorovich Date: Sun, 22 Mar 2020 10:02:44 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r528909 - in head/cad: . qflow qflow/files X-SVN-Group: ports-head X-SVN-Commit-Author: yuri X-SVN-Commit-Paths: in head/cad: . qflow qflow/files X-SVN-Commit-Revision: 528909 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Mar 2020 10:02:46 -0000 Author: yuri Date: Sun Mar 22 10:02:44 2020 New Revision: 528909 URL: https://svnweb.freebsd.org/changeset/ports/528909 Log: New port: cad/qflow: End-to-end digital synthesis flow for ASIC designs Added: head/cad/qflow/ head/cad/qflow/Makefile (contents, props changed) head/cad/qflow/distinfo (contents, props changed) head/cad/qflow/files/ head/cad/qflow/files/patch-src_hash.c (contents, props changed) head/cad/qflow/files/patch-src_lef.h (contents, props changed) head/cad/qflow/files/patch-src_vesta.c (contents, props changed) head/cad/qflow/pkg-descr (contents, props changed) head/cad/qflow/pkg-plist (contents, props changed) Modified: head/cad/Makefile Modified: head/cad/Makefile ============================================================================== --- head/cad/Makefile Sun Mar 22 09:32:13 2020 (r528908) +++ head/cad/Makefile Sun Mar 22 10:02:44 2020 (r528909) @@ -91,6 +91,7 @@ SUBDIR += python-gdsii SUBDIR += qcad SUBDIR += qelectrotech + SUBDIR += qflow SUBDIR += qmls SUBDIR += qrouter SUBDIR += repsnapper Added: head/cad/qflow/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/qflow/Makefile Sun Mar 22 10:02:44 2020 (r528909) @@ -0,0 +1,34 @@ +# $FreeBSD$ + +PORTNAME= qflow +DISTVERSION= 1.4.79 +CATEGORIES= cad + +MAINTAINER= yuri@FreeBSD.org +COMMENT= End-to-end digital synthesis flow for ASIC designs + +LICENSE= GPLv2 + +APP_DEPENDS= magic>0:cad/magic \ + netgen-lvs>0:cad/netgen-lvs \ + qrouter>0:cad/qrouter \ + yosys>0:cad/yosys +BUILD_DEPENDS= ${APP_DEPENDS} +RUN_DEPENDS= ${APP_DEPENDS} + +USES= gmake python tar:tgz tcl tk +USE_GITHUB= yes +GH_ACCOUNT= RTimothyEdwards + +GNU_CONFIGURE= yes + +post-patch: + @${REINPLACE_CMD} -e 's|^#!ENV_PATH python3$$|#!${PYTHON_CMD}|' ${WRKSRC}/scripts/*.py.in + @${REINPLACE_CMD} -e 's|^#!TCLSH_PATH$$|#!${TCLSH}|' ${WRKSRC}/scripts/*.tcl.in + +post-install: + @cd ${STAGEDIR}${PREFIX}/share/qflow/bin && \ + ${STRIP_CMD} a* b* D* r* s* v* && \ + ${RM} yosys-abc && ${LN} -s ${LOCALBASE}/bin/abc yosys-abc # https://github.com/RTimothyEdwards/qflow/issues/6 + +.include Added: head/cad/qflow/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/qflow/distinfo Sun Mar 22 10:02:44 2020 (r528909) @@ -0,0 +1,3 @@ +TIMESTAMP = 1584862088 +SHA256 (RTimothyEdwards-qflow-1.4.79_GH0.tar.gz) = 34328bad0412d6735ba410f9fd03571f614368173de7db01f11e8044f7836174 +SIZE (RTimothyEdwards-qflow-1.4.79_GH0.tar.gz) = 939727 Added: head/cad/qflow/files/patch-src_hash.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/qflow/files/patch-src_hash.c Sun Mar 22 10:02:44 2020 (r528909) @@ -0,0 +1,11 @@ +--- src/hash.c.orig 2020-03-19 05:26:09 UTC ++++ src/hash.c +@@ -19,7 +19,7 @@ the Free Software Foundation, Inc., 675 Mass Ave, Camb + + #include + #include /* For strdup() */ +-#ifdef __APPLE__ ++#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__DragonFly__) + #include + #else + #include Added: head/cad/qflow/files/patch-src_lef.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/qflow/files/patch-src_lef.h Sun Mar 22 10:02:44 2020 (r528909) @@ -0,0 +1,11 @@ +--- src/lef.h.orig 2020-03-19 05:44:48 UTC ++++ src/lef.h +@@ -28,7 +28,7 @@ typedef unsigned long u_long; + #endif /* _SYS_TYPES_H */ + + /* Compare functions aren't defined in the Mac's standard library */ +-#if defined(__APPLE__) ++#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__DragonFly__) + typedef int (*__compar_fn_t)(const void*, const void*); + #endif + Added: head/cad/qflow/files/patch-src_vesta.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/qflow/files/patch-src_vesta.c Sun Mar 22 10:02:44 2020 (r528909) @@ -0,0 +1,11 @@ +--- src/vesta.c.orig 2020-03-19 05:46:20 UTC ++++ src/vesta.c +@@ -82,7 +82,7 @@ + + #define LIB_LINE_MAX 65535 + +-#ifdef __APPLE__ ++#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__DragonFly__) + // Linux defines a comparison function prototype, the Mac doesn't. . . + typedef int (*__compar_fn_t)(const void *, const void *); + #endif Added: head/cad/qflow/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/qflow/pkg-descr Sun Mar 22 10:02:44 2020 (r528909) @@ -0,0 +1,11 @@ +A digital synthesis flow is a set of tools and methods used to turn a circuit +design written in a high-level behavioral language like verilog or VHDL into a +physical circuit, which can either be configuration code for an FPGA target like +a Xilinx or Altera chip, or a layout in a specific fabrication process +technology, that would become part of a fabricated circuit chip. Several digital +synthesis flows targeting FPGAs are available, usually from the FPGA +manufacturers, and while they are typically not open source, they are generally +distributed for free (presumably on the sensible assumption that more people +will be buying more FPGA hardware). + +WWW: http://opencircuitdesign.com/qflow/ Added: head/cad/qflow/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/cad/qflow/pkg-plist Sun Mar 22 10:02:44 2020 (r528909) @@ -0,0 +1,115 @@ +bin/qflow +%%DATADIR%%/bin/DEF2Verilog +%%DATADIR%%/bin/addspacers +%%DATADIR%%/bin/blif2BSpice +%%DATADIR%%/bin/blif2Verilog +%%DATADIR%%/bin/blifFanout +%%DATADIR%%/bin/magic +%%DATADIR%%/bin/netgen +%%DATADIR%%/bin/qrouter +%%DATADIR%%/bin/rc2dly +%%DATADIR%%/bin/spice2delay +%%DATADIR%%/bin/vesta +%%DATADIR%%/bin/vlog2Cel +%%DATADIR%%/bin/vlog2Def +%%DATADIR%%/bin/vlog2Spice +%%DATADIR%%/bin/vlog2Verilog +%%DATADIR%%/bin/vlogFanout +%%DATADIR%%/bin/yosys +%%DATADIR%%/bin/yosys-abc +%%DATADIR%%/scripts/addspacers.tcl +%%DATADIR%%/scripts/annotate.tcl +%%DATADIR%%/scripts/arrangepins.tcl +%%DATADIR%%/scripts/blif2cel.tcl +%%DATADIR%%/scripts/blifanno.tcl +%%DATADIR%%/scripts/checkdirs.sh +%%DATADIR%%/scripts/cleanup.sh +%%DATADIR%%/scripts/consoletext.py +%%DATADIR%%/scripts/count_lvs.py +%%DATADIR%%/scripts/decongest.tcl +%%DATADIR%%/scripts/getantennacell.tcl +%%DATADIR%%/scripts/getfillcell.tcl +%%DATADIR%%/scripts/getpowerground.tcl +%%DATADIR%%/scripts/graywolf.sh +%%DATADIR%%/scripts/helpwindow.py +%%DATADIR%%/scripts/magic_db.sh +%%DATADIR%%/scripts/magic_drc.sh +%%DATADIR%%/scripts/magic_gds.sh +%%DATADIR%%/scripts/magic_view.sh +%%DATADIR%%/scripts/netgen_lvs.sh +%%DATADIR%%/scripts/opensta.sh +%%DATADIR%%/scripts/opentimer.sh +%%DATADIR%%/scripts/pinmanager.py +%%DATADIR%%/scripts/place2def.tcl +%%DATADIR%%/scripts/place2lef2.tcl +%%DATADIR%%/scripts/place2net2.tcl +%%DATADIR%%/scripts/powerbus.tcl +%%DATADIR%%/scripts/preproc.py +%%DATADIR%%/scripts/qflow.sh +%%DATADIR%%/scripts/qflow_help.txt +%%DATADIR%%/scripts/qflow_manager.py +%%DATADIR%%/scripts/qrouter.sh +%%DATADIR%%/scripts/removeblocks.tcl +%%DATADIR%%/scripts/replace.sh +%%DATADIR%%/scripts/spi2xspice.py +%%DATADIR%%/scripts/textreport.py +%%DATADIR%%/scripts/tksimpledialog.py +%%DATADIR%%/scripts/tooltip.py +%%DATADIR%%/scripts/vesta.sh +%%DATADIR%%/scripts/ybuffer.tcl +%%DATADIR%%/scripts/yosys.sh +%%DATADIR%%/scripts/ypostproc.tcl +%%DATADIR%%/tech/gscl45nm/gscl45nm.gds +%%DATADIR%%/tech/gscl45nm/gscl45nm.lef +%%DATADIR%%/tech/gscl45nm/gscl45nm.lib +%%DATADIR%%/tech/gscl45nm/gscl45nm.magicrc +%%DATADIR%%/tech/gscl45nm/gscl45nm.par +%%DATADIR%%/tech/gscl45nm/gscl45nm.prm +%%DATADIR%%/tech/gscl45nm/gscl45nm.sh +%%DATADIR%%/tech/gscl45nm/gscl45nm.sp +%%DATADIR%%/tech/gscl45nm/gscl45nm.tech +%%DATADIR%%/tech/gscl45nm/gscl45nm.v +%%DATADIR%%/tech/gscl45nm/gscl45nm_setup.tcl +%%DATADIR%%/tech/osu018/SCN6M_SUBM.10.tech +%%DATADIR%%/tech/osu018/osu018.magicrc +%%DATADIR%%/tech/osu018/osu018.par +%%DATADIR%%/tech/osu018/osu018.prm +%%DATADIR%%/tech/osu018/osu018.sh +%%DATADIR%%/tech/osu018/osu018_setup.tcl +%%DATADIR%%/tech/osu018/osu018_stdcells.gds2 +%%DATADIR%%/tech/osu018/osu018_stdcells.lef +%%DATADIR%%/tech/osu018/osu018_stdcells.lib +%%DATADIR%%/tech/osu018/osu018_stdcells.sp +%%DATADIR%%/tech/osu018/osu018_stdcells.v +%%DATADIR%%/tech/osu035/SCN4M_SUBM.20.tech +%%DATADIR%%/tech/osu035/osu035.magicrc +%%DATADIR%%/tech/osu035/osu035.par +%%DATADIR%%/tech/osu035/osu035.prm +%%DATADIR%%/tech/osu035/osu035.sh +%%DATADIR%%/tech/osu035/osu035_setup.tcl +%%DATADIR%%/tech/osu035/osu035_stdcells.gds2 +%%DATADIR%%/tech/osu035/osu035_stdcells.lef +%%DATADIR%%/tech/osu035/osu035_stdcells.lib +%%DATADIR%%/tech/osu035/osu035_stdcells.sp +%%DATADIR%%/tech/osu035/osu035_stdcells.v +%%DATADIR%%/tech/osu035_redm4/osu035.prm +%%DATADIR%%/tech/osu035_redm4/osu035_redm4.magicrc +%%DATADIR%%/tech/osu035_redm4/osu035_redm4.par +%%DATADIR%%/tech/osu035_redm4/osu035_redm4.sh +%%DATADIR%%/tech/osu035_redm4/osu035_redm4_setup.tcl +%%DATADIR%%/tech/osu035_redm4/osu035_redm4_stdcells.lef +%%DATADIR%%/tech/osu035_redm4/osu035_stdcells.gds2 +%%DATADIR%%/tech/osu035_redm4/osu035_stdcells.lib +%%DATADIR%%/tech/osu035_redm4/osu035_stdcells.sp +%%DATADIR%%/tech/osu035_redm4/osu035_stdcells.v +%%DATADIR%%/tech/osu050/SCN3ME_SUBM.30.tech +%%DATADIR%%/tech/osu050/osu050.magicrc +%%DATADIR%%/tech/osu050/osu050.par +%%DATADIR%%/tech/osu050/osu050.prm +%%DATADIR%%/tech/osu050/osu050.sh +%%DATADIR%%/tech/osu050/osu050_setup.tcl +%%DATADIR%%/tech/osu050/osu050_stdcells.lef +%%DATADIR%%/tech/osu050/osu050_stdcells.sp +%%DATADIR%%/tech/osu050/osu05_stdcells.gds2 +%%DATADIR%%/tech/osu050/osu05_stdcells.lib +%%DATADIR%%/tech/osu050/osu05_stdcells.v