# documentation dependecies
RUN apt-get install -y -qqq doxygen python3-sphinx python3-breathe python3-sphinx-rtd-theme
+# Go and Perl dependencies for BoringSSL
+RUN apt-get install -y -qqq golang perl
+
# Python packags required for Deckard CI
# Python: grab latest versions from PyPi
# (dnspython and Augeas binding in Debian packages are slow and buggy)
# Knot and Knot Resolver dependecies
RUN apt-get install -y -qqq make cmake pkg-config git build-essential bsdmainutils libtool autoconf liburcu-dev libgnutls28-dev libedit-dev liblmdb-dev libcap-ng-dev libsystemd-dev libidn11-dev protobuf-c-compiler libfstrm-dev libuv1-dev libcmocka-dev libluajit-5.1-dev lua-sec lua-socket lua-http
+# Go and Perl dependencies for BoringSSL
+RUN apt-get install -y -qqq golang perl
+
# build and install latest version of Knot DNS
# (kresd depends on libknot and libdnssec)
RUN git clone --depth=1 --branch=$KNOT_BRANCH https://gitlab.labs.nic.cz/knot/knot-dns.git /tmp/knot
bindings-install: $(kresd_DIST) $(DESTDIR)$(MODULEDIR)
$(INSTALL) -m 0644 $(kresd_DIST) $(DESTDIR)$(MODULEDIR)
+# BoringSSL
+.PHONY: boringssl boringssl-clean
+
+boringssl:
+ mkdir -p boringssl/build
+ cmake -Bboringssl/build -Hboringssl
+ make -C boringssl/build
+
+boringssl-clean:
+ @$(RM) -r boringssl/build
+
LUA_HAS_SETFUNCS := \
$(shell pkg-config luajit --atleast-version=2.1.0-beta3 && echo 1 || echo 0)
boringssl_LIBS := -Lboringssl/build/ssl -lssl -Lboringssl/build/crypto -lcrypto
-kresd_DEPEND := $(libkres) $(contrib)
+kresd_DEPEND := $(libkres) $(contrib) boringssl
kresd_LIBS := $(libkres_TARGET) $(contrib_TARGET) $(libknot_LIBS) \
$(libzscanner_LIBS) $(libdnssec_LIBS) $(libuv_LIBS) $(lua_LIBS) \
$(boringssl_LIBS)
$(INSTALL) -d -m 0755 $(DESTDIR)$(MANDIR)/man8/
$(INSTALL) -m 0644 doc/kresd.8 $(DESTDIR)$(MANDIR)/man8/
endif
-daemon-clean: kresd-clean
+daemon-clean: kresd-clean boringssl-clean
@$(RM) daemon/lua/*.inc daemon/lua/trust_anchors.lua
daemon/lua/trust_anchors.lua: daemon/lua/trust_anchors.lua.in