-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile
56 lines (49 loc) · 1.32 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
FROM 0x01be/eigen as eigen
FROM 0x01be/base as build
COPY --from=eigen /opt/eigen/ /opt/eigen/
ENV REVISION=master \
CFLAGGS="$CFLAGS -U_FORTIFY_SOURCE" \
CXXFLAGS="$CXXFLAGS -U_FORTIFY_SOURCE" \
C_INCLUDE_PATH=/usr/include/:/opt/eigen/include/ \
CMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}:/opt/eigen
RUN apk add --no-cache --virtual vtr-build-dependencies \
git \
build-base \
cmake \
bison \
flex \
cmake \
python3-dev \
py3-pip \
cython \
perl \
perl-list-moreutils \
pkgconfig \
zlib-dev \
linux-headers \
cairo-dev \
freetype-dev \
libxft-dev \
libx11-dev \
fontconfig-dev \
gtk+3.0-dev \
libxml2-dev \
libxslt-dev &&\
apk add --no-cache --virtual vtr-edge-build-dependencies \
--repository http://dl-cdn.alpinelinux.org/alpine/edge/testing \
--repository http://dl-cdn.alpinelinux.org/alpine/edge/community \
--repository http://dl-cdn.alpinelinux.org/alpine/edge/main \
libtbb-dev &&\
ln -s /usr/bin/python3 /usr/bin/python &&\
pip install \
black \
prettytable \
pylint \
lxml &&\
git clone --depth 1 --branch ${VTR_REVISION} https://github.com/SymbiFlow/vtr-verilog-to-routing.git /vtr
WORKDIR /vtr/build
RUN cmake \
-DCMAKE_INSTALL_PREFIX=/opt/vtr \
.. &&\
make
RUN make install