dockerfiles

Signed-off-by: James Cherry <cherry@parallaxsw.com>
This commit is contained in:
James Cherry 2024-10-08 15:31:43 -07:00
parent b04def2de0
commit 450cc4a70f
3 changed files with 25 additions and 11 deletions

View File

@ -19,13 +19,12 @@ RUN wget https://raw.githubusercontent.com/davidkebo/cudd/main/cudd_versions/cud
tar -xvf cudd-3.0.0.tar.gz && \ tar -xvf cudd-3.0.0.tar.gz && \
rm cudd-3.0.0.tar.gz rm cudd-3.0.0.tar.gz
# Install CUDD # Build CUDD
RUN source /opt/rh/devtoolset-8/enable && \ RUN source /opt/rh/devtoolset-8/enable && \
cd cudd-3.0.0 && \ cd cudd-3.0.0 && \
mkdir ../cudd && \ mkdir ../cudd && \
./configure && \ ./configure && \
make -j`nproc` && \ make -j`nproc`
make install
FROM base-dependencies AS builder FROM base-dependencies AS builder
@ -34,7 +33,10 @@ WORKDIR /OpenSTA
# Build # Build
RUN rm -rf build && mkdir build RUN rm -rf build && mkdir build
RUN source /opt/rh/devtoolset-8/enable && cd build && cmake3 .. && make -j`nproc` RUN source /opt/rh/devtoolset-8/enable && \
cd build && \
cmake3 -DCUDD_DIR=../cudd-3.0.0 .. && \
make -j`nproc`
# Run sta on entry # Run sta on entry
ENTRYPOINT ["OpenSTA/app/sta"] ENTRYPOINT ["OpenSTA/app/sta"]

View File

@ -1,23 +1,33 @@
FROM ubuntu:18.04 FROM ubuntu:22.04
LABEL author="James Cherry" LABEL author="James Cherry"
LABEL maintainer="James Cherry <cherry@parallaxsw.com>" LABEL maintainer="James Cherry <cherry@parallaxsw.com>"
# Install basics # Install basics
ARG DEBIAN_FRONTEND=noninteractive ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && \ RUN apt-get update && \
apt-get install -y wget cmake gcc tcl-dev tcl-tclreadline libeigen3-dev swig bison flex apt-get install -y \
wget \
cmake \
gcc \
tcl-dev \
tcl-tclreadline \
libeigen3-dev \
swig \
bison \
flex \
automake \
autotools-dev
# Download CUDD # Download CUDD
RUN wget https://raw.githubusercontent.com/davidkebo/cudd/main/cudd_versions/cudd-3.0.0.tar.gz && \ RUN wget https://raw.githubusercontent.com/davidkebo/cudd/main/cudd_versions/cudd-3.0.0.tar.gz && \
tar -xvf cudd-3.0.0.tar.gz && \ tar -xvf cudd-3.0.0.tar.gz && \
rm cudd-3.0.0.tar.gz rm cudd-3.0.0.tar.gz
# Install CUDD # Build CUDD
RUN cd cudd-3.0.0 && \ RUN cd cudd-3.0.0 && \
mkdir ../cudd && \ mkdir ../cudd && \
./configure && \ ./configure && \
make -j`nproc` && \ make -j`nproc`
make install
# Copy files and install OpenSTA # Copy files and install OpenSTA
RUN mkdir OpenSTA RUN mkdir OpenSTA
@ -26,7 +36,7 @@ RUN cd OpenSTA && \
rm -rf build && \ rm -rf build && \
mkdir build && \ mkdir build && \
cd build && \ cd build && \
cmake .. && \ cmake -DCUDD_DIR=../cudd-3.0.0 .. && \
make -j`nproc` make -j`nproc`
# Run sta on entry # Run sta on entry

View File

@ -9,6 +9,8 @@ standard file formats.
* SDC timing constraints * SDC timing constraints
* SDF delay annotation * SDF delay annotation
* SPEF parasitics * SPEF parasitics
* VCD power acitivies
* SAIF power acitivies
OpenSTA uses a TCL command interpreter to read the design, specify OpenSTA uses a TCL command interpreter to read the design, specify
timing constraints and print timing reports. timing constraints and print timing reports.
@ -49,8 +51,8 @@ netlist data structures without duplicating them.
* Simulator to propagate constants from constraints and netlist tie high/low * Simulator to propagate constants from constraints and netlist tie high/low
See doc/OpenSTA.pdf for command documentation. See doc/OpenSTA.pdf for command documentation.
See doc/StaApi.txt for timing engine API documentation.
See doc/ChangeLog.txt for changes to commands. See doc/ChangeLog.txt for changes to commands.
See doc/StaApi.txt for timing engine API documentation.
OpenSTA is dual licensed. It is released under GPL v3 as OpenSTA and OpenSTA is dual licensed. It is released under GPL v3 as OpenSTA and
is also licensed for commerical applications by Parallax Software without is also licensed for commerical applications by Parallax Software without