[go: nahoru, domu]

blob: 3a6df19ce0a74a8a0646dc0ef5f5cbf38292ac5b [file] [log] [blame]
Tony Y14a24002018-06-05 14:00:41 -07001FROM ubuntu:18.04
2RUN apt-get update
3RUN apt-get install -y \
4 autoconf \
John Andersen6c601f02017-06-29 15:23:27 -07005 autoconf-archive \
Tony Y14a24002018-06-05 14:00:41 -07006 automake \
John Andersen6c601f02017-06-29 15:23:27 -07007 build-essential \
Tony Y14a24002018-06-05 14:00:41 -07008 g++ \
9 gcc \
John Andersen6c601f02017-06-29 15:23:27 -070010 git \
11 libssl-dev \
John Andersen6c601f02017-06-29 15:23:27 -070012 libtool \
Tony Y14a24002018-06-05 14:00:41 -070013 m4 \
14 net-tools \
Tony Y8431ed92018-06-07 16:38:50 -070015 pkg-config
John Andersen6c601f02017-06-29 15:23:27 -070016
Tony Y14a24002018-06-05 14:00:41 -070017# OpenSSL
18ARG openssl_name=openssl-1.1.0h
19WORKDIR /tmp
20ADD https://www.openssl.org/source/$openssl_name.tar.gz .
21RUN tar xvf $openssl_name.tar.gz
22WORKDIR $openssl_name
23RUN ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl
24RUN make -j$(nproc)
25RUN make install
26RUN openssl version
John Andersen6c601f02017-06-29 15:23:27 -070027
Tony Y14a24002018-06-05 14:00:41 -070028# IBM's Software TPM 2.0
29ARG ibmtpm_name=ibmtpm1119
30WORKDIR /tmp
Tony Y8431ed92018-06-07 16:38:50 -070031ADD "https://downloads.sourceforge.net/project/ibmswtpm2/$ibmtpm_name.tar.gz" .
Tony Y14a24002018-06-05 14:00:41 -070032RUN sha256sum $ibmtpm_name.tar.gz | grep ^b9eef79904e276aeaed2a6b9e4021442ef4d7dfae4adde2473bef1a6a4cd10fb
33RUN mkdir -p $ibmtpm_name
34RUN tar xvf $ibmtpm_name.tar.gz -C $ibmtpm_name
35WORKDIR $ibmtpm_name/src
36RUN CFLAGS="-I/usr/local/openssl/include" make -j$(nproc)
37RUN cp tpm_server /usr/local/bin
John Andersen80efcb42017-07-18 15:01:51 -070038
Tony Y14a24002018-06-05 14:00:41 -070039RUN apt-get install -y \
40 libcmocka0 \
41 libcmocka-dev \
42 libgcrypt20-dev \
43 libtool \
44 liburiparser-dev \
45 uthash-dev
John Andersene4591892017-07-19 10:13:30 -070046
Tony Y14a24002018-06-05 14:00:41 -070047# TPM2-TSS
48COPY . /tmp/tpm2-tss/
49WORKDIR /tmp/tpm2-tss
50RUN ./bootstrap
51RUN ./configure --enable-unit
52RUN make -j$(nproc) check
53RUN make install
54RUN ldconfig
55ENV LD_LIBRARY_PATH /usr/local/lib
56RUN cat test-suite.log
57