File tree Expand file tree Collapse file tree 3 files changed +57
-0
lines changed Expand file tree Collapse file tree 3 files changed +57
-0
lines changed Original file line number Diff line number Diff line change 1+ FROM ubuntu:16.04
2+
3+ RUN apt-get update && apt-get --no-install-recommends -y install \
4+ build-essential gcc git make flex bison \
5+ software-properties-common libwww-perl python \
6+ bin86 gdb bcc liblzma-dev python-dev gettext iasl \
7+ uuid-dev libncurses5-dev libncursesw5-dev pkg-config \
8+ libgtk2.0-dev libyajl-dev sudo time
9+
10+ ADD integration/xen/docker_compile_xen.sh docker_compile_xen.sh
11+ ADD src /tmp/cbmc/src
12+ RUN ./docker_compile_xen.sh
13+ VOLUME /tmp/cbmc
14+ VOLUME /tmp/xen_compilation
Original file line number Diff line number Diff line change 1+ CONTAINER_ID = xen_build_container
2+ IMAGE_ID = xen_image
3+
4+ all :
5+ if docker ps | grep -q ^$( CONTAINER_ID) ; then \
6+ docker rm xen_build_container ; \
7+ fi
8+ cd ../../ && docker build -t $(IMAGE_ID ) -f integration/xen/Dockerfile .
9+ docker run -i -t --name $(CONTAINER_ID ) $(IMAGE_ID ) /bin/bash
Original file line number Diff line number Diff line change 1+ # /bin/bash
2+
3+ set -e
4+
5+ cd /tmp/cbmc/src
6+
7+ make minisat2-download
8+ make -j$( nproc)
9+
10+ mkdir /tmp/xen_compilation
11+ cd /tmp/xen_compilation
12+ ln -s /tmp/cbmc/src/goto-cc/goto-cc goto-ld
13+ ln -s /tmp/cbmc/src/goto-cc/goto-cc goto-gcc
14+ ln -s /tmp/cbmc/src/goto-cc/goto-cc goto-diff
15+
16+ git clone https://github.com/awslabs/one-line-scan.git
17+
18+ git clone git://xenbits.xen.org/xen.git
19+
20+ export PATH=$( pwd) /one-line-scan/configuration:$PATH
21+ export PATH=$( pwd) :$PATH
22+
23+ cd xen
24+ if one-line-scan \
25+ --no-analysis --trunc-existing \
26+ --extra-cflags -Wno-error \
27+ -o CPROVER -j $(( $(nproc)/ 4 )) -- make xen -j$( nproc)
28+ then
29+ echo " SUCCESS: Compilation of Xen succeeded"
30+ else
31+ echo -n " FAILED: Compilation of Xen failed."
32+ echo -n " The build log can be found in"
33+ echo " /tmp/xen_compilation/xen/CPROVER/build.log"
34+ fi
You can’t perform that action at this time.
0 commit comments