aboutsummaryrefslogtreecommitdiff
path: root/cad
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2020-09-14 16:15:44 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2020-09-14 16:15:44 +0000
commit30b65bcf2127851d4f264d3de00e3b628de38f0a (patch)
tree9179814560a4bcdc1222f3a70485bc173684368b /cad
parent713b96a4098aa45205716601e71ebacfe5713bc4 (diff)
downloadports-30b65bcf2127851d4f264d3de00e3b628de38f0a.tar.gz
ports-30b65bcf2127851d4f264d3de00e3b628de38f0a.zip
Notes
Diffstat (limited to 'cad')
-rw-r--r--cad/Makefile1
-rw-r--r--cad/openroad/Makefile50
-rw-r--r--cad/openroad/distinfo15
-rw-r--r--cad/openroad/files/patch-src_CMakeLists.txt20
-rw-r--r--cad/openroad/files/patch-src_OpenDB_CMakeLists.txt11
-rw-r--r--cad/openroad/files/patch-src_OpenSTA_CMakeLists.txt11
-rw-r--r--cad/openroad/files/patch-src_flute3_etc_MakeDatVar.tcl11
-rw-r--r--cad/openroad/files/patch-src_gui_src_scriptWidget.cpp11
-rw-r--r--cad/openroad/pkg-descr4
-rw-r--r--cad/openroad/pkg-plist217
10 files changed, 351 insertions, 0 deletions
diff --git a/cad/Makefile b/cad/Makefile
index f3e951e5ad5e..305c99defaf6 100644
--- a/cad/Makefile
+++ b/cad/Makefile
@@ -83,6 +83,7 @@
SUBDIR += opencascade
SUBDIR += openctm
SUBDIR += openfpgaloader
+ SUBDIR += openroad
SUBDIR += openscad
SUBDIR += openscad-devel
SUBDIR += opensta
diff --git a/cad/openroad/Makefile b/cad/openroad/Makefile
new file mode 100644
index 000000000000..78378b861752
--- /dev/null
+++ b/cad/openroad/Makefile
@@ -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>
diff --git a/cad/openroad/distinfo b/cad/openroad/distinfo
new file mode 100644
index 000000000000..9be827f2df00
--- /dev/null
+++ b/cad/openroad/distinfo
@@ -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
diff --git a/cad/openroad/files/patch-src_CMakeLists.txt b/cad/openroad/files/patch-src_CMakeLists.txt
new file mode 100644
index 000000000000..385205bb4395
--- /dev/null
+++ b/cad/openroad/files/patch-src_CMakeLists.txt
@@ -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")
+
diff --git a/cad/openroad/files/patch-src_OpenDB_CMakeLists.txt b/cad/openroad/files/patch-src_OpenDB_CMakeLists.txt
new file mode 100644
index 000000000000..09db7a1479e1
--- /dev/null
+++ b/cad/openroad/files/patch-src_OpenDB_CMakeLists.txt
@@ -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})
+
diff --git a/cad/openroad/files/patch-src_OpenSTA_CMakeLists.txt b/cad/openroad/files/patch-src_OpenSTA_CMakeLists.txt
new file mode 100644
index 000000000000..05c311b65368
--- /dev/null
+++ b/cad/openroad/files/patch-src_OpenSTA_CMakeLists.txt
@@ -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)
diff --git a/cad/openroad/files/patch-src_flute3_etc_MakeDatVar.tcl b/cad/openroad/files/patch-src_flute3_etc_MakeDatVar.tcl
new file mode 100644
index 000000000000..aa2418d7cfdf
--- /dev/null
+++ b/cad/openroad/files/patch-src_flute3_etc_MakeDatVar.tcl
@@ -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
diff --git a/cad/openroad/files/patch-src_gui_src_scriptWidget.cpp b/cad/openroad/files/patch-src_gui_src_scriptWidget.cpp
new file mode 100644
index 000000000000..897a36c2ad4b
--- /dev/null
+++ b/cad/openroad/files/patch-src_gui_src_scriptWidget.cpp
@@ -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 {
diff --git a/cad/openroad/pkg-descr b/cad/openroad/pkg-descr
new file mode 100644
index 000000000000..ecb25fe0a622
--- /dev/null
+++ b/cad/openroad/pkg-descr
@@ -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/
diff --git a/cad/openroad/pkg-plist b/cad/openroad/pkg-plist
new file mode 100644
index 000000000000..503c5ed3bdfe
--- /dev/null
+++ b/cad/openroad/pkg-plist
@@ -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