From cde5bdacf09077822c821d777e738693ac0c0ca2 Mon Sep 17 00:00:00 2001 From: Ned Bingham Date: Tue, 9 Apr 2024 12:10:48 +0000 Subject: [PATCH] updating xyce and actsim --- Dockerfile | 52 ++++++++++++++++++++++++++++++++-------------- home/.bash_aliases | 2 +- 2 files changed, 37 insertions(+), 17 deletions(-) diff --git a/Dockerfile b/Dockerfile index cc872b4..1ec6788 100644 --- a/Dockerfile +++ b/Dockerfile @@ -22,24 +22,26 @@ RUN make install # install Trilinos WORKDIR /toolsrc # basic dependencies -RUN apt-get install -y gcc g++ gfortran make cmake flex libfl-dev libfftw3-dev libsuitesparse-dev libblas-dev liblapack-dev libtool +RUN apt-get install -y gcc g++ gfortran make flex libfl-dev libfftw3-dev libsuitesparse-dev libblas-dev liblapack-dev libtool # building from git repo dependencies RUN apt-get install -y autoconf automake git # parallel dependencies RUN apt-get install -y libhwloc15 libopenmpi-dev openmpi-bin openmpi-common # install python RUN apt-get update --fix-missing; DEBIAN_FRONTEND=noninteractive apt-get install -y python3 pip +RUN apt-get remove cmake -y +RUN pip install cmake --upgrade RUN apt-get install -y bison -RUN git clone --shallow-since 2022-09-15 --branch develop https://github.com/trilinos/Trilinos.git -RUN git clone https://github.com/Xyce/Xyce.git --branch Release-7.6.0 +RUN git clone --depth=1 https://github.com/trilinos/Trilinos.git --branch trilinos-release-15-1-1 +RUN git clone --depth=1 https://github.com/Xyce/Xyce.git --branch Release-7.8.0 WORKDIR Trilinos -RUN git checkout b91cc3dcd9 RUN mkdir build RUN mkdir /opt/trilinos WORKDIR build RUN cmake \ + -D PYTHON_EXECUTABLE=/usr/bin/python3 \ -D CMAKE_C_COMPILER=mpicc \ -D CMAKE_CXX_COMPILER=mpic++ \ -D CMAKE_Fortran_COMPILER=mpif77 \ @@ -47,7 +49,7 @@ RUN cmake \ -D TPL_AMD_INCLUDE_DIRS="/usr/include/suitesparse" \ -D AMD_LIBRARY_DIRS="/usr/lib" \ -D MPI_BASE_DIR="/usr" \ - -C /toolsrc/Xyce/cmake/trilinos/trilinos-config-MPI.cmake \ + -C /toolsrc/Xyce/cmake/trilinos/trilinos-MPI-base.cmake \ /toolsrc/Trilinos RUN cmake --build . -j 40 -t install @@ -74,7 +76,6 @@ RUN ./build_openroad.sh --local --install-path /opt/openroad --nice RUN mv dependencies /opt/or-tools # install ACT -RUN pwd WORKDIR /toolsrc RUN apt-get install -y libedit-dev zlib1g-dev m4 git gcc g++ make libboost-all-dev RUN git clone https://www.github.com/asyncvlsi/actflow.git @@ -82,18 +83,23 @@ WORKDIR actflow RUN git submodule update --init --recursive ENV ACT_HOME=/opt/cad ENV VLSI_TOOLS_SRC=/toolsrc/actflow -RUN ./build +WORKDIR actsim +RUN ./grab_xyce.sh /toolsrc/Xyce/build +RUN sed -i 's/make/make CXX=mpic++ CC=mpicc CC_COMPILER=mpicc CXX_COMPILER=mpic++ C_COMPILER_NAME=mpicc CXX_COMPILER_NAME=mpic++/g' build.sh +WORKDIR /toolsrc/actflow +RUN echo "g++" > CXX_COMPILER +RUN CXX="g++" CC="gcc" CXX_COMPILER="g++" CC_COMPILER="gcc" ./build # install actsim -WORKDIR /toolsrc -RUN git clone https://github.com/asyncvlsi/actsim.git -WORKDIR actsim -RUN ./configure -RUN ./grab_xyce.sh /toolsrc/Xyce/build +#WORKDIR /toolsrc +#RUN git clone https://github.com/asyncvlsi/actsim.git +#WORKDIR actsim +#RUN ./configure +#RUN ./grab_xyce.sh /toolsrc/Xyce/build #WORKDIR ext -RUN ./build.sh +#RUN ./build.sh #WORKDIR .. -RUN make CXX=mpic++ CC=mpicc install +#RUN make CXX=mpic++ CC=mpicc install # install ACT-06 RUN apt-get install -y libedit-dev zlib1g-dev m4 git gcc g++ make @@ -175,6 +181,22 @@ RUN make install ADD share/* /opt/cad/share +# setup python venv +RUN DEBIAN_FRONTEND=noninteractive apt-get install -y python3.10-venv +RUN python3 -m venv /opt/python +RUN source /opt/python/bin/activate +ENV PATH="/opt/python/bin:$PATH" + +# install floret +RUN echo "hello" +RUN DEBIAN_FRONTEND=noninteractive apt-get install -y libqhull-dev zlib1g-dev python3.10-dev tup +WORKDIR /toolsrc +RUN git clone https://github.com/broccolimicro/floret.git +WORKDIR floret +RUN git submodule update --init --recursive +RUN make +RUN cp floret-linux /opt/cad/bin/floret + # Stage 2: Copy everything over to final image FROM ubuntu:latest SHELL ["/bin/bash", "-c"] @@ -188,8 +210,6 @@ COPY --from=0 /toolsrc/OpenROAD-flow-scripts/tools/OpenROAD/etc/DependencyInstal RUN ./etc/DependencyInstaller.sh -base RUN ./tools/OpenROAD/etc/DependencyInstaller.sh -base -RUN pip install gdstk - COPY --from=0 /opt/* /opt WORKDIR /toolsrc diff --git a/home/.bash_aliases b/home/.bash_aliases index 22b07a2..ceec1d5 100644 --- a/home/.bash_aliases +++ b/home/.bash_aliases @@ -1,6 +1,6 @@ export HWLOC_HIDE_ERRORS=2 export ACT_HOME="/opt/cad" -export PATH="/opt/go/bin:$ACT_HOME/bin:/opt/magic/bin:/opt/openroad/OpenROAD/bin:/opt/openroad/yosys/bin:/opt/or-tools/bin:$HOME/.local/bin:$PATH" +export PATH="/opt/go/bin:$ACT_HOME/bin:/opt/magic/bin:/opt/openroad/OpenROAD/bin:/opt/openroad/yosys/bin:/opt/or-tools/bin:/opt/python/bin:$HOME/.local/bin:$PATH" export PRSPICE_INSTALL="$ACT_HOME/lib/prspice" export KLAYOUT_PATH="$HOME/.klayout:$ACT_HOME/share/klayout" export DISPLAY=:1