Merge branch 'upgrade_1.5.517' into 'master'

Updating Mumble to 1.5.517. Basing image on alpine:3.18. As Mumble has a bug...

See merge request skobkin/docker-murmur!2
This commit is contained in:
Alexey Eschenko 2023-07-19 21:33:31 +00:00
commit ff19f6bd66
2 changed files with 29 additions and 8 deletions

View file

@ -1,9 +1,6 @@
# Alpine 3.17 provides OpenSSL 3.x+ instead of 1.1.x+ which Mumble currently uses. FROM alpine:3.18 as builder
# Alpine 3.16 provides OpenSSL 1.1.1t-r2 which causes SSL.c build error.
# see: https://github.com/mumble-voip/mumble/issues/5968
FROM alpine:3.15 as builder
ARG VERSION=1.4.287 ARG VERSION=1.5.517
LABEL \ LABEL \
org.label-schema.vendor="Alexey Skobkin - skobkin-ru@ya.ru" \ org.label-schema.vendor="Alexey Skobkin - skobkin-ru@ya.ru" \
@ -26,19 +23,29 @@ RUN \
tar -zxf /tmp/mumble.tar.gz --strip-components=1 -C /tmp/murmur tar -zxf /tmp/mumble.tar.gz --strip-components=1 -C /tmp/murmur
RUN \ RUN \
apk add -q --no-cache --no-progress boost-dev build-base cmake libcap-dev protobuf-dev qt5-qtbase-dev apk add -q --no-cache --no-progress \
boost-dev \
build-base \
cmake \
libcap-dev \
protobuf-dev \
qt5-qtbase-dev
COPY patches/implicit_bool_cast.patch /tmp/murmur/
RUN \ RUN \
cd /tmp/murmur && \ cd /tmp/murmur && \
mkdir build && \ mkdir build && \
cd build && \ cd build && \
# https://bugs.gentoo.org/863452 \
patch ../src/SSL.cpp < ../implicit_bool_cast.patch && \
# static build is currently unavailable # static build is currently unavailable
# see https://github.com/mumble-voip/mumble/issues/5693#issuecomment-1132069719 # see https://github.com/mumble-voip/mumble/issues/5693#issuecomment-1132069719
# -Dstatic=ON # -Dstatic=ON
cmake -Dclient=OFF -Ddbus=OFF -Dice=OFF -Dzeroconf=OFF .. && \ cmake -Dclient=OFF -Ddbus=OFF -Dice=OFF -Dzeroconf=OFF -Dlto=ON .. && \
make -j $(nproc) make -j $(nproc)
FROM alpine:3 FROM alpine:3.18
RUN \ RUN \
apk update -q --no-cache && \ apk update -q --no-cache && \

View file

@ -0,0 +1,14 @@
CRYPTO_get_locking_callback is defined as null in openssl
so this is always true, but it fails to compile on musl 1.2.3
as casting from null to bool is invalid
--- a/src/SSL.cpp
+++ b/src/SSL.cpp
@@ -33,7 +33,7 @@
// If we detect that no locking callback is configured, we
// have to set it up ourselves to allow multi-threaded use
// of OpenSSL.
- if (!CRYPTO_get_locking_callback()) {
+ if (true) {
SSLLocks::initialize();
}
}