Dockerfile 3.02 KB
Newer Older
1
FROM @SOURCE_IMAGE@
2
3
MAINTAINER BIND 9 Developers <bind9-dev@isc.org>
ENV DEBIAN_FRONTEND noninteractive
4
5
6
ENV ATF_VERSION 0.21
ENV LUTOK_VERSION 0.4
ENV KYUA_VERSION 0.13
Ondřej Surý's avatar
Ondřej Surý committed
7
RUN apt-get -y update
8
RUN apt-get -y dist-upgrade
9
RUN apt-get -y install curl
10
RUN if [ -n "@CLANG@" ]; then \
Ondřej Surý's avatar
Ondřej Surý committed
11
	curl -sSL -o /etc/apt/trusted.gpg.d/llvm.asc https://apt.llvm.org/llvm-snapshot.gpg.key; \
12
13
	echo "deb http://apt.llvm.org/@VERSION@/ llvm-toolchain-@VERSION@ main" > /etc/apt/sources.list.d/llvm.list; \
	echo "deb http://apt.llvm.org/@VERSION@/ llvm-toolchain-@VERSION@-8 main" >> /etc/apt/sources.list.d/llvm.list; \
14
	echo "deb http://apt.llvm.org/@VERSION@/ llvm-toolchain-@VERSION@-9 main" >> /etc/apt/sources.list.d/llvm.list; \
15
16
17
	fi
RUN apt-get -y update
RUN apt-get -y dist-upgrade
Witold Krecicki's avatar
Witold Krecicki committed
18
19
20
21
22
RUN apt-get -y install		\
	autoconf		\
	automake		\
	autotools-dev		\
	bash-completion		\
23
	bear			\
Witold Krecicki's avatar
Witold Krecicki committed
24
25
26
	bison			\
	build-essential		\
	ccache			\
27
	clang			\
28
	coccinelle		\
29
	cppcheck		\
30
	docbook-xsl		\
Witold Krecicki's avatar
Witold Krecicki committed
31
	git			\
32
	idn2			\
Witold Krecicki's avatar
Witold Krecicki committed
33
	libcap2-dev		\
Ondřej Surý's avatar
Ondřej Surý committed
34
	libcmocka-dev		\
Witold Krecicki's avatar
Witold Krecicki committed
35
36
37
38
	libdb-dev		\
	libgeoip-dev		\
	libidn2-0-dev		\
	libjson-c-dev		\
39
	libjson-perl		\
Witold Krecicki's avatar
Witold Krecicki committed
40
41
42
43
44
45
46
47
48
	libkrb5-dev		\
	libldap2-dev		\
	liblmdb-dev		\
	liblua5.1-0-dev		\
	liblua5.2-dev		\
	libnet-dns-perl		\
	libtool			\
	libsqlite3-dev		\
	libssl-dev		\
49
	libxml-simple-perl	\
Witold Krecicki's avatar
Witold Krecicki committed
50
	libxml2-dev		\
51
	libxml2-utils		\
52
	libuv1-dev		\
Witold Krecicki's avatar
Witold Krecicki committed
53
54
55
56
	net-tools		\
	perl			\
	pkg-config		\
	procps			\
57
58
59
	python			\
	python-ply		\
	python-dnspython	\
Witold Krecicki's avatar
Witold Krecicki committed
60
61
62
	python3			\
	python3-ply		\
	python3-dnspython	\
63
64
	python3-sphinx		\
	python3-sphinx-rtd-theme	\
Witold Krecicki's avatar
Witold Krecicki committed
65
	sudo			\
66
	xsltproc		\
67
	zlib1g-dev
68
RUN if [ "@VERSION@" != "jessie" ]; then apt-get -y install libmaxminddb-dev; fi
69
70
RUN if [ -n "@CLANG@" ]; then \
	apt-get -y install \
Ondřej Surý's avatar
Ondřej Surý committed
71
72
73
74
75
		llvm-7 llvm-8 llvm-9 \
		clang-7 clang-8 clang-9 \
		clang-tools-7 clang-tools-8 clang-tools-9 \
		clang-format-7 clang-format-8 clang-format-9 \
		clang-tidy-7 clang-tidy-8 clang-tidy-9;\
76
	fi
77
78
79
80
81
82
RUN if [ "@VERSION@" = "sid" ]; then \
	apt-get -y install \
		llvm \
		clang \
		clang-tools \
		clang-format \
83
		clang-tidy; \
84
	fi
85
RUN if [ -n "@UNCRUSTIFY@" ]; then apt-get -y install uncrustify; fi
86
RUN if [ -n "@DNSTAP@" ]; then apt-get -y install libfstrm-dev libprotobuf-c-dev protobuf-c-compiler; fi
87
88
RUN if [ "@SOFTHSM@" -ge "2" ]; then apt-get -y install libsofthsm2 softhsm2; fi
RUN if [ "@SOFTHSM@" -lt "2" ]; then apt-get -y install libsofthsm softhsm; fi
89
RUN curl -sSL https://github.com/jmmv/atf/releases/download/atf-$ATF_VERSION/atf-$ATF_VERSION.tar.gz | tar -xz -C /usr/src
90
91
RUN cd /usr/src/atf-$ATF_VERSION && autoreconf -fi && ./configure --prefix /usr && make && make install
RUN ldconfig
92
RUN curl -sSL https://github.com/jmmv/lutok/releases/download/lutok-$LUTOK_VERSION/lutok-$LUTOK_VERSION.tar.gz | tar -xz -C /usr/src
93
94
RUN cd /usr/src/lutok-$LUTOK_VERSION && autoreconf -fi && ./configure --prefix /usr && make && make install
RUN ldconfig
95
RUN curl -sSL https://github.com/jmmv/kyua/releases/download/kyua-$KYUA_VERSION/kyua-$KYUA_VERSION.tar.gz | tar -xz -C /usr/src
96
RUN cd /usr/src/kyua-$KYUA_VERSION && autoreconf -fi && ./configure --prefix /usr && make && make install
97
RUN ldconfig