[go: nahoru, domu]

blob: d6a9c85ccb1abbf02b3f378ef2735e41ef97ca57 [file] [log] [blame]
Tony Y14a24002018-06-05 14:00:41 -07001FROM ubuntu:18.04
Julien Hachenbergerccdf6692018-10-23 16:49:04 +02002RUN apt-get update && apt-get install -y \
Tony Y14a24002018-06-05 14:00:41 -07003 autoconf \
John Andersen6c601f02017-06-29 15:23:27 -07004 autoconf-archive \
Tony Y14a24002018-06-05 14:00:41 -07005 automake \
John Andersen6c601f02017-06-29 15:23:27 -07006 build-essential \
Tony Y14a24002018-06-05 14:00:41 -07007 g++ \
8 gcc \
John Andersen6c601f02017-06-29 15:23:27 -07009 git \
10 libssl-dev \
John Andersen6c601f02017-06-29 15:23:27 -070011 libtool \
Tony Y14a24002018-06-05 14:00:41 -070012 m4 \
13 net-tools \
Tony Y8431ed92018-06-07 16:38:50 -070014 pkg-config
John Andersen6c601f02017-06-29 15:23:27 -070015
Tony Y14a24002018-06-05 14:00:41 -070016# OpenSSL
17ARG openssl_name=openssl-1.1.0h
18WORKDIR /tmp
Julien Hachenbergerdc0a8672018-10-23 17:03:57 +020019RUN wget --quiet --show-progress --progress=dot:giga https://www.openssl.org/source/$openssl_name.tar.gz \
20 && tar xvf $openssl_name.tar.gz \
21 && rm /tmp/$openssl_name.tar.gz
Tony Y14a24002018-06-05 14:00:41 -070022WORKDIR $openssl_name
Julien Hachenberger300b7d62018-10-23 17:13:35 +020023RUN ./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl \
24 && make -j$(nproc) \
25 && make install \
26 && 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
Julien Hachenbergerdc0a8672018-10-23 17:03:57 +020031RUN wget --quiet --show-progress --progress=dot:giga "https://downloads.sourceforge.net/project/ibmswtpm2/$ibmtpm_name.tar.gz" \
32 && sha256sum $ibmtpm_name.tar.gz | grep ^b9eef79904e276aeaed2a6b9e4021442ef4d7dfae4adde2473bef1a6a4cd10fb \
33 && mkdir -p $ibmtpm_name \
34 && tar xvf $ibmtpm_name.tar.gz -C $ibmtpm_name \
35 && rm $ibmtpm_name.tar.gz
Tony Y14a24002018-06-05 14:00:41 -070036WORKDIR $ibmtpm_name/src
Julien Hachenberger300b7d62018-10-23 17:13:35 +020037RUN CFLAGS="-I/usr/local/openssl/include" make -j$(nproc) \
38 && cp tpm_server /usr/local/bin
John Andersen80efcb42017-07-18 15:01:51 -070039
Tony Y14a24002018-06-05 14:00:41 -070040RUN apt-get install -y \
41 libcmocka0 \
42 libcmocka-dev \
43 libgcrypt20-dev \
44 libtool \
45 liburiparser-dev \
46 uthash-dev
John Andersene4591892017-07-19 10:13:30 -070047
Tony Y14a24002018-06-05 14:00:41 -070048# TPM2-TSS
49COPY . /tmp/tpm2-tss/
50WORKDIR /tmp/tpm2-tss
Julien Hachenberger300b7d62018-10-23 17:13:35 +020051RUN ./bootstrap \
52 && ./configure --enable-unit \
53 && make -j$(nproc) check \
54 && make install \
55 && ldconfig
Tony Y14a24002018-06-05 14:00:41 -070056ENV LD_LIBRARY_PATH /usr/local/lib
57RUN cat test-suite.log
58