working on analog simulation through Xyce
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
parent
69f1517235
commit
f4111a4db5
18
Dockerfile
18
Dockerfile
@ -7,6 +7,15 @@ RUN apt-get update
|
|||||||
RUN mkdir toolsrc
|
RUN mkdir toolsrc
|
||||||
RUN mkdir /opt/cad
|
RUN mkdir /opt/cad
|
||||||
|
|
||||||
|
WORKDIR /toolsrc
|
||||||
|
RUN apt-get -y install wget make gcc g++
|
||||||
|
RUN wget https://download.open-mpi.org/release/hwloc/v2.8/hwloc-2.8.0.tar.gz
|
||||||
|
RUN tar -xzvf hwloc-2.8.0.tar.gz
|
||||||
|
WORKDIR hwloc-2.8.0
|
||||||
|
RUN ./configure
|
||||||
|
RUN make
|
||||||
|
RUN make install
|
||||||
|
|
||||||
# Xyce and Trilinos takes the longest to execute, in the interest of caching, this should go first.
|
# Xyce and Trilinos takes the longest to execute, in the interest of caching, this should go first.
|
||||||
# install Trilinos
|
# install Trilinos
|
||||||
WORKDIR /toolsrc
|
WORKDIR /toolsrc
|
||||||
@ -15,7 +24,7 @@ RUN apt-get install -y gcc g++ gfortran make cmake flex libfl-dev libfftw3-dev l
|
|||||||
# building from git repo dependencies
|
# building from git repo dependencies
|
||||||
RUN apt-get install -y autoconf automake git
|
RUN apt-get install -y autoconf automake git
|
||||||
# parallel dependencies
|
# parallel dependencies
|
||||||
RUN apt-get install -y libopenmpi-dev openmpi-bin
|
RUN apt-get install -y libhwloc15 libopenmpi-dev openmpi-bin openmpi-common
|
||||||
|
|
||||||
RUN git clone https://github.com/trilinos/Trilinos.git
|
RUN git clone https://github.com/trilinos/Trilinos.git
|
||||||
WORKDIR Trilinos
|
WORKDIR Trilinos
|
||||||
@ -91,7 +100,7 @@ RUN git clone https://tpope.io/vim/fugitive.git /template/.vim/pack/plugins/star
|
|||||||
RUN git clone https://github.com/preservim/nerdtree.git /template/.vim/pack/plugins/start/nerdtree
|
RUN git clone https://github.com/preservim/nerdtree.git /template/.vim/pack/plugins/start/nerdtree
|
||||||
|
|
||||||
# install gaw
|
# install gaw
|
||||||
RUN apt-get update --fix-missing; apt-get install -y libgtk-3-dev libcanberra-gtk3-module
|
RUN apt-get update --fix-missing; DEBIAN_FRONTEND=noninteractive apt-get install -y libgtk-3-dev libcanberra-gtk3-module
|
||||||
WORKDIR /toolsrc
|
WORKDIR /toolsrc
|
||||||
RUN --mount=type=secret,id=user --mount=type=secret,id=token git clone https://$(cat /run/secrets/user):$(cat /run/secrets/token)@git.broccolimicro.io/Broccoli/waveview.git
|
RUN --mount=type=secret,id=user --mount=type=secret,id=token git clone https://$(cat /run/secrets/user):$(cat /run/secrets/token)@git.broccolimicro.io/Broccoli/waveview.git
|
||||||
WORKDIR waveview
|
WORKDIR waveview
|
||||||
@ -99,6 +108,9 @@ RUN ./configure
|
|||||||
RUN make
|
RUN make
|
||||||
RUN make install
|
RUN make install
|
||||||
|
|
||||||
|
# install gtkwave
|
||||||
|
RUN apt-get update --fix-missing; DEBIAN_FRONTEND=noninteractive apt-get install -y gtkwave
|
||||||
|
|
||||||
# install magic layout tool
|
# install magic layout tool
|
||||||
WORKDIR /toolsrc
|
WORKDIR /toolsrc
|
||||||
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y tcsh m4 csh libx11-dev tcl-dev tk-dev libcairo2-dev mesa-common-dev libglu1-mesa-dev libncurses-dev
|
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y tcsh m4 csh libx11-dev tcl-dev tk-dev libcairo2-dev mesa-common-dev libglu1-mesa-dev libncurses-dev
|
||||||
@ -132,6 +144,8 @@ RUN cp pr/* /opt/cad/bin
|
|||||||
# Connect user home directory of host machine
|
# Connect user home directory of host machine
|
||||||
RUN mkdir "/host"
|
RUN mkdir "/host"
|
||||||
WORKDIR "/host"
|
WORKDIR "/host"
|
||||||
|
RUN rm -rf /opt/cad/conf
|
||||||
|
RUN ln -s "/host/tech" "/opt/cad/conf"
|
||||||
|
|
||||||
ENV USER "bcli"
|
ENV USER "bcli"
|
||||||
ENV USER_ID "1000"
|
ENV USER_ID "1000"
|
||||||
|
4
Makefile
4
Makefile
@ -1,5 +1,5 @@
|
|||||||
all:
|
all:
|
||||||
DOCKER_BUILDKIT=1 docker build --secret id=user,src=.secret/user --secret id=token,src=.secret/token -t git.broccolimicro.io/broccoli/development-environment:latest .
|
DOCKER_BUILDKIT=1 docker build --shm-size=4gb --secret id=user,src=.secret/user --secret id=token,src=.secret/token -t git.broccolimicro.io/broccoli/development-environment:latest .
|
||||||
|
|
||||||
local:
|
local:
|
||||||
DOCKER_BUILDKIT=1 docker build --secret id=user,src=.secret/user --secret id=token,src=.secret/token -t git.broccolimicro.io/broccoli/development-environment:latest --add-host=git.broccolimicro.io:10.0.0.65 .
|
DOCKER_BUILDKIT=1 docker build --shm-size=4gb --secret id=user,src=.secret/user --secret id=token,src=.secret/token -t git.broccolimicro.io/broccoli/development-environment:latest --add-host=git.broccolimicro.io:10.0.0.65 .
|
||||||
|
@ -21,7 +21,20 @@ bcli() {
|
|||||||
umount $HOME/tech
|
umount $HOME/tech
|
||||||
fi
|
fi
|
||||||
rmdir $HOME/tech
|
rmdir $HOME/tech
|
||||||
else
|
elif [ "$#" -eq 0 ]; then
|
||||||
docker exec -u $(id -u):$(id -g) -it bcli-develop /bin/bash
|
docker exec -u $(id -u):$(id -g) -it bcli-develop /bin/bash
|
||||||
|
else
|
||||||
|
if [ "$1" != "--help" ]; then
|
||||||
|
echo "error: unrecognized command '$1'"
|
||||||
|
echo ""
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "usage: bcli <command>"
|
||||||
|
echo "If command is empty, then start a terminal logged into the toolset."
|
||||||
|
echo " up - launch the toolset"
|
||||||
|
echo " down - shutdown the toolset"
|
||||||
|
echo " mount - mount the technology files from broccolimicro.io"
|
||||||
|
echo " unmount - unmount the technology files"
|
||||||
|
echo " -f - force the unmount if the connection has been broken"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
export HWLOC_HIDE_ERRORS=2
|
||||||
export ACT_HOME="/opt/cad"
|
export ACT_HOME="/opt/cad"
|
||||||
export PATH="/opt/go/bin:/opt/cad/bin:$HOME/.local/bin:$PATH"
|
export PATH="/opt/go/bin:/opt/cad/bin:$HOME/.local/bin:$PATH"
|
||||||
export PRSPICE_INSTALL="$ACT_HOME/lib/prspice"
|
export PRSPICE_INSTALL="$ACT_HOME/lib/prspice"
|
||||||
|
@ -5,18 +5,15 @@ FLAGS="-O3 -fPIC"
|
|||||||
cmake \
|
cmake \
|
||||||
-G "Unix Makefiles" \
|
-G "Unix Makefiles" \
|
||||||
-DCMAKE_C_COMPILER=mpicc \
|
-DCMAKE_C_COMPILER=mpicc \
|
||||||
-DCMAKE_CXX_COMPILER=mpicxx \
|
-DCMAKE_CXX_COMPILER=mpic++ \
|
||||||
-DCMAKE_Fortran_COMPILER=mpifort \
|
-DCMAKE_Fortran_COMPILER=mpif77 \
|
||||||
-DCMAKE_CXX_FLAGS="$FLAGS" \
|
-DCMAKE_CXX_FLAGS="$FLAGS" \
|
||||||
-DCMAKE_C_FLAGS="$FLAGS" \
|
-DCMAKE_C_FLAGS="$FLAGS" \
|
||||||
-DCMAKE_Fortran_FLAGS="$FLAGS" \
|
-DCMAKE_Fortran_FLAGS="$FLAGS" \
|
||||||
-DCMAKE_INSTALL_PREFIX=$ARCHDIR \
|
-DCMAKE_INSTALL_PREFIX=$ARCHDIR \
|
||||||
-DCMAKE_MAKE_PROGRAM="make" \
|
-DCMAKE_MAKE_PROGRAM="make" \
|
||||||
-DTPL_ENABLE_MPI=ON \
|
|
||||||
-DMPI_BASE_DIR=/usr \
|
|
||||||
-DTrilinos_ENABLE_NOX=ON \
|
-DTrilinos_ENABLE_NOX=ON \
|
||||||
-DNOX_ENABLE_LOCA=ON \
|
-DNOX_ENABLE_LOCA=ON \
|
||||||
-DTrilinos_ENABLE_Epetra=ON \
|
|
||||||
-DTrilinos_ENABLE_EpetraExt=ON \
|
-DTrilinos_ENABLE_EpetraExt=ON \
|
||||||
-DEpetraExt_BUILD_BTF=ON \
|
-DEpetraExt_BUILD_BTF=ON \
|
||||||
-DEpetraExt_BUILD_EXPERIMENTAL=ON \
|
-DEpetraExt_BUILD_EXPERIMENTAL=ON \
|
||||||
@ -27,11 +24,16 @@ cmake \
|
|||||||
-DTrilinos_ENABLE_AztecOO=ON \
|
-DTrilinos_ENABLE_AztecOO=ON \
|
||||||
-DTrilinos_ENABLE_Belos=ON \
|
-DTrilinos_ENABLE_Belos=ON \
|
||||||
-DTrilinos_ENABLE_Teuchos=ON \
|
-DTrilinos_ENABLE_Teuchos=ON \
|
||||||
-DTeuchos_ENABLE_COMPLEX=ON \
|
-DTrilinos_ENABLE_COMPLEX_DOUBLE=ON \
|
||||||
-DTrilinos_ENABLE_Amesos=ON \
|
-DTrilinos_ENABLE_Amesos=ON \
|
||||||
-DAmesos_ENABLE_KLU=ON \
|
-DAmesos_ENABLE_KLU=ON \
|
||||||
|
-DTrilinos_ENABLE_Amesos2=ON \
|
||||||
|
-DAmesos2_ENABLE_KLU2=ON \
|
||||||
|
-DAmesos2_ENABLE_Basker=ON \
|
||||||
-DTrilinos_ENABLE_Sacado=ON \
|
-DTrilinos_ENABLE_Sacado=ON \
|
||||||
-DTrilinos_ENABLE_Kokkos=OFF \
|
-DTrilinos_ENABLE_Stokhos=ON \
|
||||||
|
-DTrilinos_ENABLE_Kokkos=ON \
|
||||||
|
-DTrilinos_ENABLE_Zoltan=ON \
|
||||||
-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \
|
-DTrilinos_ENABLE_ALL_OPTIONAL_PACKAGES=OFF \
|
||||||
-DTrilinos_ENABLE_CXX11=ON \
|
-DTrilinos_ENABLE_CXX11=ON \
|
||||||
-DTPL_ENABLE_AMD=ON \
|
-DTPL_ENABLE_AMD=ON \
|
||||||
@ -39,4 +41,6 @@ cmake \
|
|||||||
-DTPL_AMD_INCLUDE_DIRS="/usr/include/suitesparse" \
|
-DTPL_AMD_INCLUDE_DIRS="/usr/include/suitesparse" \
|
||||||
-DTPL_ENABLE_BLAS=ON \
|
-DTPL_ENABLE_BLAS=ON \
|
||||||
-DTPL_ENABLE_LAPACK=ON \
|
-DTPL_ENABLE_LAPACK=ON \
|
||||||
|
-DTPL_ENABLE_MPI=ON \
|
||||||
|
-DMPI_BASE_DIR=/usr \
|
||||||
$SRCDIR
|
$SRCDIR
|
||||||
|
Loading…
Reference in New Issue
Block a user