Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Sep 2020 16:15:45 +0000 (UTC)
From:      Yuri Victorovich <yuri@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r548624 - in head/cad: . openroad openroad/files
Message-ID:  <202009141615.08EGFjwV048779@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: yuri
Date: Mon Sep 14 16:15:44 2020
New Revision: 548624
URL: https://svnweb.freebsd.org/changeset/ports/548624

Log:
  New port: cad/openroad: ASIC physical design tool

Added:
  head/cad/openroad/
  head/cad/openroad/Makefile   (contents, props changed)
  head/cad/openroad/distinfo   (contents, props changed)
  head/cad/openroad/files/
  head/cad/openroad/files/patch-src_CMakeLists.txt   (contents, props changed)
  head/cad/openroad/files/patch-src_OpenDB_CMakeLists.txt   (contents, props changed)
  head/cad/openroad/files/patch-src_OpenSTA_CMakeLists.txt   (contents, props changed)
  head/cad/openroad/files/patch-src_flute3_etc_MakeDatVar.tcl   (contents, props changed)
  head/cad/openroad/files/patch-src_gui_src_scriptWidget.cpp   (contents, props changed)
  head/cad/openroad/pkg-descr   (contents, props changed)
  head/cad/openroad/pkg-plist   (contents, props changed)
Modified:
  head/cad/Makefile

Modified: head/cad/Makefile
==============================================================================
--- head/cad/Makefile	Mon Sep 14 15:48:18 2020	(r548623)
+++ head/cad/Makefile	Mon Sep 14 16:15:44 2020	(r548624)
@@ -83,6 +83,7 @@
     SUBDIR += opencascade
     SUBDIR += openctm
     SUBDIR += openfpgaloader
+    SUBDIR += openroad
     SUBDIR += openscad
     SUBDIR += openscad-devel
     SUBDIR += opensta

Added: head/cad/openroad/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/openroad/Makefile	Mon Sep 14 16:15:44 2020	(r548624)
@@ -0,0 +1,50 @@
+# $FreeBSD$
+
+PORTNAME=	openroad
+DISTVERSIONPREFIX=	v
+DISTVERSION=	0.9.0-beta-637
+DISTVERSIONSUFFIX=	-gc3706485
+CATEGORIES=	cad
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	ASIC physical design tool
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	base64:converters/base64 \
+		boost-libs>0:devel/boost-libs \
+		coin-or-lemon>0:math/lemon \
+		swig:devel/swig
+LIB_DEPENDS=	libcudd.so:math/cudd
+
+USES=		bison compiler:c++17-lang cmake eigen:3 python qt:5 tcl:86 # the code asks for tcl-87, but build fails: https://github.com/The-OpenROAD-Project/OpenROAD/issues/508
+USE_GITHUB=	yes
+GH_ACCOUNT=	The-OpenROAD-Project
+GH_PROJECT=	OpenROAD
+USE_QT=		core gui widgets buildtools_build qmake_build
+GH_TUPLE=	\
+		The-OpenROAD-Project:OpenSTA:ab2b1924e80f979bd6e606f8325a0d06b9d0bb5c:The_OpenROAD_Project_OpenSTA/src/OpenSTA \
+		The-OpenROAD-Project:OpenDB:27d2a50961685b37a5a1b738a3cfd147ee7b9103:The_OpenROAD_Project_OpenDB/src/OpenDB \
+		The-OpenROAD-Project:flute3:0c7d532bca351fae86de2d306dfcbe1060ecab01:The_OpenROAD_Project_flute3/src/flute3 \
+		The-OpenROAD-Project:OpenRCX:cd6f1f3477851801df7ad199a37e0dacc1620bec:The_OpenROAD_Project_OpenRCX/src/OpenRCX \
+		The-OpenROAD-Project:lef:fc84e83ef4cde0c4145655565641098d688a0fe1:The_OpenROAD_Project_lef/src/OpenDB/src/lef \
+		The-OpenROAD-Project:def:c0fe2837a89f2a0947c2e8e10cef64e704214035:The_OpenROAD_Project_def/src/OpenDB/src/def
+
+CMAKE_ARGS=	-DFREEBSD_TCL_VER=${TCL_VER:S/.//} -DFREEBSD_TCL_INCLUDEDIR=${TCL_INCLUDEDIR}
+
+CXXFLAGS+=	-I${TCL_INCLUDEDIR} -I${LOCALBASE}/include/eigen3
+LDFLAGS+=	-pthread
+
+BINARY_ALIAS=	tclsh=${TCLSH}
+
+post-patch: # override the TCL version to be the same as USES=tcl sets
+	@${FIND} ${WRKSRC} -name FindTCL.cmake \
+		| ${XARGS} ${REINPLACE_CMD} -e ' \
+			s|set(TCL_POSSIBLE_NAMES |set(TCL_POSSIBLE_NAMES tcl$${FREEBSD_TCL_VER} |; \
+			s|PATHS $${TCL_LIB_PARENT1}|PATHS $${FREEBSD_TCL_INCLUDEDIR} $${TCL_LIB_PARENT1}|'
+
+post-configure: # perhaps -ltcl leaks from some other project's cmake file
+	@${REINPLACE_CMD} 's| -ltcl | |' ${BUILD_WRKSRC}/build.ninja
+
+.include <bsd.port.mk>

Added: head/cad/openroad/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/openroad/distinfo	Mon Sep 14 16:15:44 2020	(r548624)
@@ -0,0 +1,15 @@
+TIMESTAMP = 1600072448
+SHA256 (The-OpenROAD-Project-OpenROAD-v0.9.0-beta-637-gc3706485_GH0.tar.gz) = e15bf33a8c4bfc0e4baba50f8de9b98ee34337b14ed5831da125e85fa37d0a3d
+SIZE (The-OpenROAD-Project-OpenROAD-v0.9.0-beta-637-gc3706485_GH0.tar.gz) = 167070472
+SHA256 (The-OpenROAD-Project-OpenSTA-ab2b1924e80f979bd6e606f8325a0d06b9d0bb5c_GH0.tar.gz) = 687a81d91361765ea9433aa13a19e37c869b8595473fdda1e2dc7841620c905c
+SIZE (The-OpenROAD-Project-OpenSTA-ab2b1924e80f979bd6e606f8325a0d06b9d0bb5c_GH0.tar.gz) = 4874350
+SHA256 (The-OpenROAD-Project-OpenDB-27d2a50961685b37a5a1b738a3cfd147ee7b9103_GH0.tar.gz) = 8970be8cb4a91562945f178b9e6eefd4d88116d949bfe9726a499b7903c6bb72
+SIZE (The-OpenROAD-Project-OpenDB-27d2a50961685b37a5a1b738a3cfd147ee7b9103_GH0.tar.gz) = 685514
+SHA256 (The-OpenROAD-Project-flute3-0c7d532bca351fae86de2d306dfcbe1060ecab01_GH0.tar.gz) = eb0b9baa8c17d6e022718ecef0315791d155e6e7fb4f9635e9b746c1bc1714a6
+SIZE (The-OpenROAD-Project-flute3-0c7d532bca351fae86de2d306dfcbe1060ecab01_GH0.tar.gz) = 2282167
+SHA256 (The-OpenROAD-Project-OpenRCX-cd6f1f3477851801df7ad199a37e0dacc1620bec_GH0.tar.gz) = 985ea54d327ee4726d3a3163b0e0df94d948959ace039760a6a1776852586a89
+SIZE (The-OpenROAD-Project-OpenRCX-cd6f1f3477851801df7ad199a37e0dacc1620bec_GH0.tar.gz) = 269366
+SHA256 (The-OpenROAD-Project-lef-fc84e83ef4cde0c4145655565641098d688a0fe1_GH0.tar.gz) = 26de7711167125a498cb69686ae205ee1204ffe1207cc10d4a1edcd79fa3d97e
+SIZE (The-OpenROAD-Project-lef-fc84e83ef4cde0c4145655565641098d688a0fe1_GH0.tar.gz) = 1137547
+SHA256 (The-OpenROAD-Project-def-c0fe2837a89f2a0947c2e8e10cef64e704214035_GH0.tar.gz) = 211523a3fcf75708ab277474d26248a8479ba9bcb3e981157c6fb00911c54dc6
+SIZE (The-OpenROAD-Project-def-c0fe2837a89f2a0947c2e8e10cef64e704214035_GH0.tar.gz) = 3163621

Added: head/cad/openroad/files/patch-src_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/openroad/files/patch-src_CMakeLists.txt	Mon Sep 14 16:15:44 2020	(r548624)
@@ -0,0 +1,20 @@
+--- src/CMakeLists.txt.orig	2020-09-12 17:40:11 UTC
++++ src/CMakeLists.txt
+@@ -14,7 +14,7 @@
+ # along with this program.  If not, see <https://www.gnu.org/licenses/>.
+ 
+ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+-  link_libraries(pthread m stdc++ stdc++fs)
++  link_libraries(pthread m stdc++)
+ endif()
+ 
+ set(OPENSTA_HOME ${PROJECT_SOURCE_DIR}/src/OpenSTA)
+@@ -87,7 +87,7 @@ if (TCL_READLINE_H)
+   message(STATUS "TCL readline header: ${TCL_READLINE_H}")
+ endif()
+ 
+-find_package(SWIG REQUIRED 3.0)
++find_package(SWIG REQUIRED)
+ include(UseSWIG)
+ set(OPENDB_SWIG_WARNINGS "-w509,503,501,472,467,402,401,317,325,378,383,389,365,362,314,258,240,203,201")
+ 

Added: head/cad/openroad/files/patch-src_OpenDB_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/openroad/files/patch-src_OpenDB_CMakeLists.txt	Mon Sep 14 16:15:44 2020	(r548624)
@@ -0,0 +1,11 @@
+--- src/OpenDB/CMakeLists.txt.orig	2020-09-14 08:20:09 UTC
++++ src/OpenDB/CMakeLists.txt
+@@ -38,7 +38,7 @@ add_subdirectory(tests/cpp)
+ ################################# SWIG #####################################
+ ############################################################################
+ 
+-find_package(SWIG REQUIRED 3.0)
++find_package(SWIG REQUIRED)
+ 
+ include(${SWIG_USE_FILE})
+ 

Added: head/cad/openroad/files/patch-src_OpenSTA_CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/openroad/files/patch-src_OpenSTA_CMakeLists.txt	Mon Sep 14 16:15:44 2020	(r548624)
@@ -0,0 +1,11 @@
+--- src/OpenSTA/CMakeLists.txt.orig	2020-09-14 08:19:49 UTC
++++ src/OpenSTA/CMakeLists.txt
+@@ -291,7 +291,7 @@ add_flex_bison_dependency(SdfLex SdfParser)
+ 
+ ################################################################
+ 
+-find_package(SWIG REQUIRED 3.0)
++find_package(SWIG REQUIRED)
+ include(UseSWIG)
+ 
+ set(STA_SWIG_FILE app/StaApp.i)

Added: head/cad/openroad/files/patch-src_flute3_etc_MakeDatVar.tcl
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/openroad/files/patch-src_flute3_etc_MakeDatVar.tcl	Mon Sep 14 16:15:44 2020	(r548624)
@@ -0,0 +1,11 @@
+--- src/flute3/etc/MakeDatVar.tcl.orig	2020-09-14 08:48:52 UTC
++++ src/flute3/etc/MakeDatVar.tcl
+@@ -32,7 +32,7 @@ close $var_stream
+ set b64_file "[file rootname $dat_file].b64"
+ set b64_file2 "[file rootname $dat_file].tr"
+ 
+-exec base64 -i $dat_file > $b64_file
++exec base64 $dat_file > $b64_file
+ # strip trailing \n from base64 file
+ exec tr -d "\n" <$b64_file >$b64_file2
+ exec cat < $b64_file2 >> $var_file

Added: head/cad/openroad/files/patch-src_gui_src_scriptWidget.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/openroad/files/patch-src_gui_src_scriptWidget.cpp	Mon Sep 14 16:15:44 2020	(r548624)
@@ -0,0 +1,11 @@
+--- src/gui/src/scriptWidget.cpp.orig	2020-09-14 08:51:25 UTC
++++ src/gui/src/scriptWidget.cpp
+@@ -41,6 +41,8 @@
+ #include <QTimer>
+ #include <QVBoxLayout>
+ 
++#include <sys/errno.h> // for EINVAL
++
+ #include "openroad/OpenRoad.hh"
+ 
+ namespace gui {

Added: head/cad/openroad/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/openroad/pkg-descr	Mon Sep 14 16:15:44 2020	(r548624)
@@ -0,0 +1,4 @@
+OpenROAD is a chip physical design tool. It uses the OpenDB database as a design
+database and representation. OpenSTA is used for static timing analysis.
+
+WWW: https://theopenroadproject.org/

Added: head/cad/openroad/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/cad/openroad/pkg-plist	Mon Sep 14 16:15:44 2020	(r548624)
@@ -0,0 +1,217 @@
+bin/openroad
+bin/sta
+include/abkCRC32.h
+include/abkMD5.h
+include/abkassert.h
+include/abkcommon.h
+include/abkcpunorm.h
+include/abkfunc.h
+include/abkmessagebuf.h
+include/abkrand.h
+include/abkseed.h
+include/abktempl.h
+include/abktimer.h
+include/abkversion.h
+include/config.h
+include/crypt.hpp
+include/def.tab.h
+include/defiAlias.hpp
+include/defiAssertion.hpp
+include/defiBlockage.hpp
+include/defiComponent.hpp
+include/defiDebug.hpp
+include/defiDefs.hpp
+include/defiFPC.hpp
+include/defiFill.hpp
+include/defiGroup.hpp
+include/defiIOTiming.hpp
+include/defiKRDefs.hpp
+include/defiMisc.hpp
+include/defiNet.hpp
+include/defiNonDefault.hpp
+include/defiPartition.hpp
+include/defiPath.hpp
+include/defiPinCap.hpp
+include/defiPinProp.hpp
+include/defiProp.hpp
+include/defiPropType.hpp
+include/defiRegion.hpp
+include/defiRowTrack.hpp
+include/defiScanchain.hpp
+include/defiSite.hpp
+include/defiSlot.hpp
+include/defiTimingDisable.hpp
+include/defiUser.hpp
+include/defiUtil.hpp
+include/defiVia.hpp
+include/defrCallBacks.hpp
+include/defrData.hpp
+include/defrReader.hpp
+include/defrSettings.hpp
+include/defwWriter.hpp
+include/defwWriterCalls.hpp
+include/defzlib.hpp
+include/infolines.h
+include/lef.tab.h
+include/lefiArray.hpp
+include/lefiCrossTalk.hpp
+include/lefiDebug.hpp
+include/lefiDefs.hpp
+include/lefiEncryptInt.hpp
+include/lefiKRDefs.hpp
+include/lefiLayer.hpp
+include/lefiMacro.hpp
+include/lefiMisc.hpp
+include/lefiNonDefault.hpp
+include/lefiProp.hpp
+include/lefiPropType.hpp
+include/lefiUnits.hpp
+include/lefiUser.hpp
+include/lefiUtil.hpp
+include/lefiVia.hpp
+include/lefiViaRule.hpp
+include/lefrCallBacks.hpp
+include/lefrData.hpp
+include/lefrReader.hpp
+include/lefrSettings.hpp
+include/lefwWriter.hpp
+include/lefwWriterCalls.hpp
+include/lefzlib.hpp
+include/lex.h
+include/mmapIStream.h
+include/mmapStreamBuf.h
+include/paramproc.h
+include/sta/ArcDelayCalc.hh
+include/sta/ArrayTable.hh
+include/sta/Bfs.hh
+include/sta/ClkInfo.hh
+include/sta/ClkNetwork.hh
+include/sta/Clock.hh
+include/sta/ClockGatingCheck.hh
+include/sta/ClockGroups.hh
+include/sta/ClockInsertion.hh
+include/sta/ClockLatency.hh
+include/sta/ConcreteLibrary.hh
+include/sta/ConcreteNetwork.hh
+include/sta/Corner.hh
+include/sta/CycleAccting.hh
+include/sta/DataCheck.hh
+include/sta/DcalcAnalysisPt.hh
+include/sta/Debug.hh
+include/sta/Delay.hh
+include/sta/DelayCalc.hh
+include/sta/DelayFloat.hh
+include/sta/DelayNormal1.hh
+include/sta/DelayNormal2.hh
+include/sta/DeratingFactors.hh
+include/sta/DisabledPorts.hh
+include/sta/DisallowCopyAssign.hh
+include/sta/DispatchQueue.hh
+include/sta/EnumNameMap.hh
+include/sta/EquivCells.hh
+include/sta/Error.hh
+include/sta/ExceptionPath.hh
+include/sta/FuncExpr.hh
+include/sta/Fuzzy.hh
+include/sta/Graph.hh
+include/sta/GraphClass.hh
+include/sta/GraphCmp.hh
+include/sta/GraphDelayCalc.hh
+include/sta/Hash.hh
+include/sta/HashMap.hh
+include/sta/HashSet.hh
+include/sta/HpinDrvrLoad.hh
+include/sta/InputDrive.hh
+include/sta/InternalPower.hh
+include/sta/Iterator.hh
+include/sta/LeakagePower.hh
+include/sta/Liberty.hh
+include/sta/LibertyClass.hh
+include/sta/LinearModel.hh
+include/sta/Machine.hh
+include/sta/MakeConcreteNetwork.hh
+include/sta/MakeConcreteParasitics.hh
+include/sta/Map.hh
+include/sta/MinMax.hh
+include/sta/MinMaxValues.hh
+include/sta/Mutex.hh
+include/sta/Network.hh
+include/sta/NetworkClass.hh
+include/sta/NetworkCmp.hh
+include/sta/NullParasitics.hh
+include/sta/ObjectId.hh
+include/sta/ObjectTable.hh
+include/sta/Parasitics.hh
+include/sta/ParasiticsClass.hh
+include/sta/ParseBus.hh
+include/sta/Path.hh
+include/sta/PathAnalysisPt.hh
+include/sta/PathEnd.hh
+include/sta/PathExpanded.hh
+include/sta/PathGroup.hh
+include/sta/PathRef.hh
+include/sta/PathVertex.hh
+include/sta/PathVertexRep.hh
+include/sta/PatternMatch.hh
+include/sta/PinPair.hh
+include/sta/PortDelay.hh
+include/sta/PortDirection.hh
+include/sta/PortExtCap.hh
+include/sta/PowerClass.hh
+include/sta/Property.hh
+include/sta/Report.hh
+include/sta/ReportStd.hh
+include/sta/ReportTcl.hh
+include/sta/RiseFallMinMax.hh
+include/sta/RiseFallValues.hh
+include/sta/Sdc.hh
+include/sta/SdcClass.hh
+include/sta/SdcCmdComment.hh
+include/sta/SdcNetwork.hh
+include/sta/Search.hh
+include/sta/SearchClass.hh
+include/sta/SearchPred.hh
+include/sta/Sequential.hh
+include/sta/Set.hh
+include/sta/Sta.hh
+include/sta/StaConfig.hh
+include/sta/StaMain.hh
+include/sta/StaState.hh
+include/sta/Stats.hh
+include/sta/StringSeq.hh
+include/sta/StringSet.hh
+include/sta/StringUtil.hh
+include/sta/TableModel.hh
+include/sta/TimingArc.hh
+include/sta/TimingModel.hh
+include/sta/TimingRole.hh
+include/sta/TokenParser.hh
+include/sta/Transition.hh
+include/sta/Units.hh
+include/sta/UnorderedMap.hh
+include/sta/UnorderedSet.hh
+include/sta/Vector.hh
+include/sta/VerilogNamespace.hh
+include/sta/VerilogReader.hh
+include/sta/VerilogWriter.hh
+include/sta/VertexId.hh
+include/sta/VertexVisitor.hh
+include/sta/VisitPathEnds.hh
+include/sta/Wireload.hh
+include/sta/WritePathSpice.hh
+include/sta/WriteSdc.hh
+include/sta/Zlib.hh
+include/verbosity.h
+lib/libABKCommon.a
+lib/libOpenSTA.a
+lib/libParquetFP.a
+lib/libdef.a
+lib/libdefzlib.a
+lib/liblef.a
+lib/liblefzlib.a
+lib/openphysyn/transforms/libbuffer_fanout.a
+lib/openphysyn/transforms/libconstant_propagation.a
+lib/openphysyn/transforms/libgate_clone.a
+lib/openphysyn/transforms/libpin_swap.a
+lib/openphysyn/transforms/librepair_timing.a
+lib/openphysyn/transforms/libtiming_buffer.a



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202009141615.08EGFjwV048779>