Skip to content

Commit 46bf1e6

Browse files
committed
add debian 12 build script
1 parent 63def3d commit 46bf1e6

File tree

2 files changed

+275
-0
lines changed

2 files changed

+275
-0
lines changed

.localrun/Dockerfile_deb12

+196
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,196 @@
1+
# syntax=docker/dockerfile:1
2+
FROM debian:12
3+
4+
ENV DEBIAN_FRONTEND=noninteractive
5+
6+
RUN apt-get update && \
7+
apt-get -y --force-yes install \
8+
build-essential \
9+
autoconf \
10+
automake \
11+
libtool \
12+
cmake \
13+
extra-cmake-modules \
14+
git \
15+
libavcodec-dev \
16+
libavdevice-dev \
17+
libavfilter-dev \
18+
libavutil-dev \
19+
libexif-dev \
20+
libgdk-pixbuf2.0-dev \
21+
libglib2.0-dev \
22+
libgtk2.0-dev \
23+
libopenal-dev \
24+
libopus-dev \
25+
libcurl4-gnutls-dev \
26+
libnghttp2-dev \
27+
libidn2-dev \
28+
librtmp-dev \
29+
libssh2-1-dev \
30+
libpsl-dev \
31+
nettle-dev \
32+
libgnutls28-dev \
33+
libgssapi-krb5-2 \
34+
libkrb5-dev \
35+
libk5crypto3 \
36+
libldap2-dev \
37+
zlib1g-dev \
38+
libqrencode-dev \
39+
libqt5opengl5-dev \
40+
libqt5svg5-dev \
41+
libsodium-dev \
42+
libsqlcipher-dev \
43+
libswresample-dev \
44+
libswscale-dev \
45+
libvpx-dev \
46+
libkf5sonnet-dev \
47+
libxss-dev \
48+
qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools \
49+
qttools5-dev \
50+
zsync \
51+
libarchive-dev \
52+
libfuse-dev \
53+
liblzma-dev \
54+
libglib2.0-dev \
55+
libssl-dev \
56+
libinotifytools0-dev \
57+
liblz4-dev \
58+
libcairo-dev \
59+
desktop-file-utils \
60+
wget \
61+
xxd \
62+
ca-certificates \
63+
curl \
64+
patchelf \
65+
lcov && \
66+
apt-get clean && \
67+
rm -rf /var/lib/apt/lists/*
68+
69+
COPY ./buildscripts/download/common.sh /build/download/common.sh
70+
COPY ./buildscripts/build_utils.sh /build/build_utils.sh
71+
72+
COPY ./buildscripts/download/download_snore.sh /build/download/download_snore.sh
73+
COPY ./buildscripts/build_snore_linux.sh /build/build_snore_linux.sh
74+
COPY ./buildscripts/patches/snore.patch /build/patches/snore.patch
75+
RUN mkdir -p /src/snore && \
76+
cd /src/snore && \
77+
/build/build_snore_linux.sh --system-install && \
78+
rm -fr /src/snore
79+
80+
#COPY ./buildscripts/download/download_ldqt.sh /build/download/download_ldqt.sh
81+
#COPY ./buildscripts/build_ldqt_linux.sh /build/build_ldqt_linux.sh
82+
#RUN mkdir -p /src/ldqt && \
83+
# cd /src/ldqt && \
84+
# /build/build_ldqt_linux.sh && \
85+
# rm -fr /src/ldqt
86+
87+
#COPY ./buildscripts/download/download_aitool.sh /build/download/download_aitool.sh
88+
#COPY ./buildscripts/build_aitool_linux.sh /build/build_aitool_linux.sh
89+
#RUN mkdir -p /src/aitool && \
90+
# cd /src/aitool && \
91+
# /build/build_aitool_linux.sh && \
92+
# rm -fr /src/aitool
93+
94+
COPY ./buildscripts/download/download_qt.sh /build/download/download_qt.sh
95+
COPY ./buildscripts/build_qt_linux.sh /build/build_qt_linux.sh
96+
97+
#RUN mkdir -p /src/qt && \
98+
# cd /src/qt && \
99+
# /build/build_qt_linux.sh && \
100+
# rm -fr /src/qt
101+
102+
RUN apt-get update && \
103+
apt-get -y --force-yes install \
104+
libx264-dev \
105+
libbz2-dev \
106+
libxv-dev \
107+
libsdl2-dev \
108+
libzmq5-dev \
109+
libwebp-dev \
110+
libssh-dev \
111+
libpulse-dev \
112+
libopenmpt-dev \
113+
libbs2b-dev \
114+
libbluray-dev \
115+
libass-dev \
116+
libvdpau-dev \
117+
libva-dev \
118+
libva-x11-2 \
119+
libva-drm2 \
120+
libcdio-cdda-dev \
121+
libcdio-dev \
122+
libcdio-paranoia-dev \
123+
libsndio-dev \
124+
libjack-dev \
125+
libasound-dev \
126+
libxml2-dev \
127+
libzvbi-dev \
128+
libxvidcore-dev \
129+
libx265-dev \
130+
libwebpmux3 \
131+
libwavpack-dev \
132+
libvorbisenc2 \
133+
libvorbis-dev \
134+
libtwolame-dev \
135+
libtheora-dev \
136+
libspeex-dev \
137+
libsoxr-dev \
138+
libsnappy-dev \
139+
libshine-dev \
140+
librubberband-dev \
141+
libopenjp2-7-dev \
142+
libopencv-core-dev \
143+
libopencv-imgproc-dev \
144+
libmysofa-dev \
145+
libmp3lame-dev \
146+
libgsm1-dev \
147+
libgpgme-dev \
148+
flite-dev \
149+
libdc1394-dev \
150+
libcaca-dev \
151+
libraw1394-dev \
152+
libavc1394-dev \
153+
libiec61883-dev \
154+
libchromaprint-dev \
155+
librsvg2-dev \
156+
libgme-dev \
157+
libaom-dev \
158+
libcodec2-dev \
159+
libdrm-dev \
160+
libbrotli-dev \
161+
opencl-c-headers \
162+
libjxl-dev \
163+
libjxl-devtools \
164+
librav1e-dev \
165+
libsvtav1enc-dev
166+
167+
RUN apt-get -y --force-yes install \
168+
libzstd1 \
169+
libzstd-dev \
170+
libdav1d-dev \
171+
libmfx-dev \
172+
opencl-dev libopencl1
173+
174+
COPY ./buildscripts/download/download_toxext.sh /build/download/download_toxext.sh
175+
COPY ./buildscripts/download/download_toxext_messages.sh /build/download/download_toxext_messages.sh
176+
177+
COPY ./buildscripts/patches/*.patch /build/patches/
178+
COPY ./buildscripts/build_toxcore_linux.sh /build/build_toxcore_linux.sh
179+
COPY ./buildscripts/download/download_toxcore.sh /build/download/download_toxcore.sh
180+
181+
RUN mkdir -p /src/tox && \
182+
cd /src/tox && \
183+
/build/build_toxcore_linux.sh && \
184+
rm -fr /src/tox
185+
186+
RUN echo '/usr/local/lib/' >> /etc/ld.so.conf.d/locallib.conf && \
187+
ldconfig
188+
189+
RUN apt-get update && \
190+
apt-get -y --force-yes install \
191+
xdg-utils xdg-desktop-portal-gtk nautilus eog gedit \
192+
&& \
193+
apt-get clean && \
194+
rm -rf /var/lib/apt/lists/*
195+
196+
WORKDIR /qtox

.localrun/docker_it_deb12.sh

+79
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
#! /bin/bash
2+
3+
_HOME2_=$(dirname $0)
4+
export _HOME2_
5+
_HOME_=$(cd $_HOME2_;pwd)
6+
export _HOME_
7+
8+
echo $_HOME_
9+
cd $_HOME_
10+
11+
12+
if [ "$1""x" == "buildx" ]; then
13+
cp -a ../buildscripts .
14+
docker build -f Dockerfile_deb12 -t qtox_push_003_deb12 .
15+
exit 0
16+
fi
17+
18+
cp -a ../.ci-scripts/build-qtox-linux.sh .
19+
20+
build_for='
21+
debian:12
22+
'
23+
24+
for system_to_build_for in $build_for ; do
25+
26+
system_to_build_for_orig="$system_to_build_for"
27+
system_to_build_for=$(echo "$system_to_build_for_orig" 2>/dev/null|tr ':' '_' 2>/dev/null)
28+
29+
cd $_HOME_/
30+
mkdir -p $_HOME_/"$system_to_build_for"/
31+
32+
mkdir -p $_HOME_/"$system_to_build_for"/artefacts
33+
mkdir -p $_HOME_/"$system_to_build_for"/script
34+
mkdir -p $_HOME_/"$system_to_build_for"/workspace
35+
36+
ls -al $_HOME_/"$system_to_build_for"/
37+
38+
rsync -a ../ --exclude=.localrun $_HOME_/"$system_to_build_for"/workspace/build
39+
chmod a+rwx -R $_HOME_/"$system_to_build_for"/workspace/build
40+
41+
echo '#! /bin/bash
42+
43+
cp -av /workspace/build/* /qtox/
44+
cp -av /workspace/build/.??* /qtox/
45+
cd /qtox/.ci-scripts/
46+
47+
# disable tests
48+
sed -i -e "s#^include(Testing)##" /qtox/CMakeLists.txt
49+
cat /qtox/CMakeLists.txt|grep -i test
50+
51+
./build-qtox-linux.sh --full --build-type Release
52+
53+
ls -hal /qtox/.ci-scripts/qtox
54+
55+
cp -av /qtox/.ci-scripts/qtox /artefacts/
56+
cp -av /usr/lib/x86_64-linux-gnu/libsnore* /artefacts/
57+
cp -av /usr/local/lib/libtoxcore* /artefacts/
58+
59+
chmod a+rwx /artefacts/*
60+
61+
' > $_HOME_/"$system_to_build_for"/script/run.sh
62+
63+
docker run -ti --rm \
64+
-v $_HOME_/"$system_to_build_for"/artefacts:/artefacts \
65+
-v $_HOME_/"$system_to_build_for"/script:/script \
66+
-v $_HOME_/"$system_to_build_for"/workspace:/workspace \
67+
--net=host \
68+
"qtox_push_003_deb12" \
69+
/bin/sh -c "apk add bash >/dev/null 2>/dev/null; /bin/bash /script/run.sh"
70+
if [ $? -ne 0 ]; then
71+
echo "** ERROR **:$system_to_build_for_orig"
72+
exit 1
73+
else
74+
echo "--SUCCESS--:$system_to_build_for_orig"
75+
fi
76+
77+
done
78+
79+

0 commit comments

Comments
 (0)