Merge pull request #597 from kiwix/libzim_bionic
Build libzim on bionic
This commit is contained in:
commit
826ce1718d
|
@ -19,7 +19,9 @@ def select_build_target():
|
||||||
DESKTOP,
|
DESKTOP,
|
||||||
OS_NAME
|
OS_NAME
|
||||||
)
|
)
|
||||||
if (PLATFORM_TARGET.startswith("android_")
|
if OS_NAME == "bionic" and PLATFORM_TARGET.endswith("_mixed"):
|
||||||
|
return ("libzim", )
|
||||||
|
elif (PLATFORM_TARGET.startswith("android_")
|
||||||
or PLATFORM_TARGET.startswith("iOS")
|
or PLATFORM_TARGET.startswith("iOS")
|
||||||
or PLATFORM_TARGET.startswith("macOS")):
|
or PLATFORM_TARGET.startswith("macOS")):
|
||||||
return ("libzim", "libkiwix")
|
return ("libzim", "libkiwix")
|
||||||
|
|
|
@ -45,15 +45,16 @@ else:
|
||||||
DEV_BRANCH = None
|
DEV_BRANCH = None
|
||||||
|
|
||||||
RELEASE_OS_NAME = "macos" if OS_NAME == "osx" else "linux"
|
RELEASE_OS_NAME = "macos" if OS_NAME == "osx" else "linux"
|
||||||
|
EXTRA_NAME = "-bionic" if OS_NAME == "bionic" else ""
|
||||||
|
|
||||||
PLATFORM_TO_RELEASE = {
|
PLATFORM_TO_RELEASE = {
|
||||||
"native_mixed": "{os}-x86_64".format(os=RELEASE_OS_NAME),
|
"native_mixed": "{os}-x86_64{extra}".format(os=RELEASE_OS_NAME, extra=EXTRA_NAME),
|
||||||
"native_static": "{os}-x86_64".format(os=RELEASE_OS_NAME),
|
"native_static": "{os}-x86_64".format(os=RELEASE_OS_NAME),
|
||||||
"win32_static": "win-i686",
|
"win32_static": "win-i686",
|
||||||
"armhf_static": "{os}-armhf".format(os=RELEASE_OS_NAME),
|
"armhf_static": "{os}-armhf".format(os=RELEASE_OS_NAME),
|
||||||
"armhf_mixed": "{os}-armhf".format(os=RELEASE_OS_NAME),
|
"armhf_mixed": "{os}-armhf".format(os=RELEASE_OS_NAME),
|
||||||
"aarch64_static": "{os}-aarch64".format(os=RELEASE_OS_NAME),
|
"aarch64_static": "{os}-aarch64".format(os=RELEASE_OS_NAME),
|
||||||
"aarch64_mixed": "{os}-aarch64".format(os=RELEASE_OS_NAME),
|
"aarch64_mixed": "{os}-aarch64{extra}".format(os=RELEASE_OS_NAME, extra=EXTRA_NAME),
|
||||||
"i586_static": "{os}-i586".format(os=RELEASE_OS_NAME),
|
"i586_static": "{os}-i586".format(os=RELEASE_OS_NAME),
|
||||||
"macOS_arm64_static": "{os}-arm64".format(os=RELEASE_OS_NAME),
|
"macOS_arm64_static": "{os}-arm64".format(os=RELEASE_OS_NAME),
|
||||||
"macOS_arm64_mixed": "{os}-arm64".format(os=RELEASE_OS_NAME),
|
"macOS_arm64_mixed": "{os}-arm64".format(os=RELEASE_OS_NAME),
|
||||||
|
|
|
@ -31,6 +31,12 @@ jobs:
|
||||||
image_variant: ['focal']
|
image_variant: ['focal']
|
||||||
lib_postfix: ['/x86_64-linux-gnu']
|
lib_postfix: ['/x86_64-linux-gnu']
|
||||||
include:
|
include:
|
||||||
|
- target: native_mixed
|
||||||
|
image_variant: bionic
|
||||||
|
lib_postfix: '/x86_64-linux-gnu'
|
||||||
|
- target: aarch64_mixed
|
||||||
|
image_variant: bionic
|
||||||
|
lib_postfix: '/aarch64-linux-gnu'
|
||||||
- target: win32_static
|
- target: win32_static
|
||||||
image_variant: f35
|
image_variant: f35
|
||||||
lib_postfix: '64'
|
lib_postfix: '64'
|
||||||
|
|
|
@ -15,7 +15,7 @@ jobs:
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
matrix:
|
matrix:
|
||||||
variant: [f35, focal, alpine]
|
variant: [f35, focal, bionic, alpine]
|
||||||
runs-on: ubuntu-22.04
|
runs-on: ubuntu-22.04
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
|
|
@ -38,6 +38,9 @@ jobs:
|
||||||
- target: native_mixed
|
- target: native_mixed
|
||||||
image_variant: focal
|
image_variant: focal
|
||||||
lib_postfix: '/x86_64-linux-gnu'
|
lib_postfix: '/x86_64-linux-gnu'
|
||||||
|
- target: native_mixed
|
||||||
|
image_variant: bionic
|
||||||
|
lib_postfix: '/x86_64-linux-gnu'
|
||||||
- target: native_desktop
|
- target: native_desktop
|
||||||
image_variant: focal
|
image_variant: focal
|
||||||
lib_postfix: '/x86_64-linux-gnu'
|
lib_postfix: '/x86_64-linux-gnu'
|
||||||
|
@ -56,6 +59,9 @@ jobs:
|
||||||
- target: aarch64_mixed
|
- target: aarch64_mixed
|
||||||
image_variant: focal
|
image_variant: focal
|
||||||
lib_postfix: '/x86_64-linux-gnu'
|
lib_postfix: '/x86_64-linux-gnu'
|
||||||
|
- target: aarch64_mixed
|
||||||
|
image_variant: bionic
|
||||||
|
lib_postfix: '/aarch64-linux-gnu'
|
||||||
- target: win32_static
|
- target: win32_static
|
||||||
image_variant: f35
|
image_variant: f35
|
||||||
lib_postfix: '64'
|
lib_postfix: '64'
|
||||||
|
|
|
@ -4,42 +4,21 @@ ENV LANG C.UTF-8
|
||||||
ENV OS_NAME bionic
|
ENV OS_NAME bionic
|
||||||
|
|
||||||
RUN apt update -q \
|
RUN apt update -q \
|
||||||
&& dpkg --add-architecture i386 \
|
|
||||||
&& apt install -q -y --no-install-recommends software-properties-common \
|
|
||||||
&& add-apt-repository ppa:beineri/opt-qt-5.15.2-bionic \
|
|
||||||
&& apt-get update \
|
&& apt-get update \
|
||||||
&& apt install -q -y --no-install-recommends \
|
&& apt install -q -y --no-install-recommends \
|
||||||
# Base build tools
|
# Base build tools
|
||||||
build-essential automake libtool cmake ccache pkg-config autopoint patch \
|
build-essential automake libtool cmake ccache pkg-config autopoint patch \
|
||||||
python3-pip python3-setuptools python3-wheel git subversion wget unzip \
|
python3-pip python3-setuptools python3-wheel git subversion wget unzip \
|
||||||
ninja-build openssh-client curl libgl-dev \
|
ninja-build openssh-client curl \
|
||||||
# Python (2) is needed to install android-ndk
|
|
||||||
python \
|
|
||||||
# Packaged dependencies
|
# Packaged dependencies
|
||||||
libbz2-dev libmagic-dev uuid-dev zlib1g-dev \
|
libbz2-dev uuid-dev zlib1g-dev \
|
||||||
libmicrohttpd-dev aria2 libgtest-dev libgl-dev \
|
libgtest-dev \
|
||||||
# Devel package to compile python modules
|
|
||||||
libxml2-dev libxslt-dev python3-dev \
|
|
||||||
# Qt packages
|
|
||||||
qt515base qt515webengine qt515svg qt515imageformats qt515wayland \
|
|
||||||
# To create the appimage of kiwix-desktop
|
|
||||||
libfuse2 fuse patchelf \
|
|
||||||
# Flatpak tools
|
|
||||||
elfutils flatpak flatpak-builder \
|
|
||||||
# Cross compile i586
|
|
||||||
libc6-dev-i386 lib32stdc++6 gcc-multilib g++-multilib \
|
|
||||||
# Other tools (to remove)
|
# Other tools (to remove)
|
||||||
# vim less grep \
|
# vim less grep \
|
||||||
&& apt-get clean -y \
|
&& apt-get clean -y \
|
||||||
&& rm -rf /var/lib/apt/lists/* /usr/share/doc/* /var/cache/debconf/* \
|
&& rm -rf /var/lib/apt/lists/* /usr/share/doc/* /var/cache/debconf/* \
|
||||||
&& pip3 install meson pytest gcovr requests distro
|
&& pip3 install meson pytest gcovr requests distro
|
||||||
|
|
||||||
# Set qt515 environment (the equivalent of "source /opt/qt515/bin/qt515-env.sh")
|
|
||||||
# RUN echo "source /opt/qt515/bin/qt515-env.sh" >> /home/runner/.bashrc
|
|
||||||
ENV PATH=/opt/qt515/bin:$PATH \
|
|
||||||
LD_LIBRARY_PATH=/opt/qt515/lib/x86_64-linux-gnu:/opt/qt515/lib:$LD_LIBRARY_PATH \
|
|
||||||
PKG_CONFIG_PATH=/opt/qt515/lib/pkgconfig:$PKG_CONFIG_PATH
|
|
||||||
|
|
||||||
# Create user
|
# Create user
|
||||||
RUN groupadd --gid 121 runner
|
RUN groupadd --gid 121 runner
|
||||||
RUN useradd --uid 1001 --gid 121 --create-home runner
|
RUN useradd --uid 1001 --gid 121 --create-home runner
|
||||||
|
|
|
@ -8,7 +8,7 @@ base_url = 'https://master.dl.sourceforge.net/project/raspberry-pi-cross-compile
|
||||||
armhf_base_url = base_url + 'Raspberry%20Pi%20GCC%20Cross-Compiler%20Toolchains/Stretch/GCC%2010.3.0/Raspberry%20Pi%202%2C%203/'
|
armhf_base_url = base_url + 'Raspberry%20Pi%20GCC%20Cross-Compiler%20Toolchains/Stretch/GCC%2010.3.0/Raspberry%20Pi%202%2C%203/'
|
||||||
|
|
||||||
# This is Gcc 10.3.0 and ALL rapsberry Pi arch64
|
# This is Gcc 10.3.0 and ALL rapsberry Pi arch64
|
||||||
aarch_base_url = base_url + 'Bonus%20Raspberry%20Pi%20GCC%2064-Bit%20Toolchains/Raspberry%20Pi%20GCC%2064-Bit%20Cross-Compiler%20Toolchains/Stretch/GCC%2010.3.0/'
|
aarch_base_url = base_url + 'Bonus%20Raspberry%20Pi%20GCC%2064-Bit%20Toolchains/Raspberry%20Pi%20GCC%2064-Bit%20Cross-Compiler%20Toolchains/Stretch/GCC%206.3.0/'
|
||||||
|
|
||||||
class armhf_toolchain(Dependency):
|
class armhf_toolchain(Dependency):
|
||||||
dont_skip = True
|
dont_skip = True
|
||||||
|
@ -29,8 +29,8 @@ class aarch64_toolchain(Dependency):
|
||||||
name = "aarch64"
|
name = "aarch64"
|
||||||
|
|
||||||
class Source(ReleaseDownload):
|
class Source(ReleaseDownload):
|
||||||
archive = Remotefile('cross-gcc-10.3.0-pi_64.tar.gz',
|
archive = Remotefile('cross-gcc-6.3.0-pi_64.tar.gz',
|
||||||
'5b3fdb7ee8c496c377ab8b11d7ffd404b4d3041f4fdcfeebcbcb734d45a5f3e9',
|
'1b048bb8886ad63d21797cd9129fc37b9ea0dfaac7e3c36f888aa16fbec1d320',
|
||||||
aarch_base_url + 'cross-gcc-10.3.0-pi_64.tar.gz')
|
aarch_base_url + 'cross-gcc-6.3.0-pi_64.tar.gz')
|
||||||
|
|
||||||
Builder = NoopBuilder
|
Builder = NoopBuilder
|
||||||
|
|
|
@ -39,7 +39,7 @@ release_versions = {
|
||||||
|
|
||||||
# This is the "version" of the whole base_deps_versions dict.
|
# This is the "version" of the whole base_deps_versions dict.
|
||||||
# Change this when you change base_deps_versions.
|
# Change this when you change base_deps_versions.
|
||||||
base_deps_meta_version = '85'
|
base_deps_meta_version = '86'
|
||||||
|
|
||||||
base_deps_versions = {
|
base_deps_versions = {
|
||||||
'zlib' : '1.2.12',
|
'zlib' : '1.2.12',
|
||||||
|
|
Loading…
Reference in New Issue