Split shared and static build container
Some checks failed
continuous-integration/drone/push Build is failing
Some checks failed
continuous-integration/drone/push Build is failing
This commit is contained in:
parent
52ad54b6ea
commit
a80be616f6
6 changed files with 68 additions and 25 deletions
18
.drone.yml
18
.drone.yml
|
@ -2,12 +2,26 @@ kind: pipeline
|
|||
name: default
|
||||
|
||||
steps:
|
||||
- name: docker
|
||||
- name: glibc-shared
|
||||
image: plugins/docker
|
||||
settings:
|
||||
dockerfile: glibc-shared/Dockerfile
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
repo: arminfriedl/xwim-build
|
||||
tags: latest
|
||||
tags:
|
||||
- shared
|
||||
|
||||
- name: musl-static
|
||||
image: plugins/docker
|
||||
settings:
|
||||
dockerfile: musl-static/Dockerfile
|
||||
username:
|
||||
from_secret: docker_username
|
||||
password:
|
||||
from_secret: docker_password
|
||||
repo: arminfriedl/xwim-build
|
||||
tags:
|
||||
- static
|
||||
|
|
23
Dockerfile
23
Dockerfile
|
@ -1,23 +0,0 @@
|
|||
FROM ubuntu:rolling
|
||||
|
||||
# Needed to prevent ubuntu from showing interactive
|
||||
# dialog when e.g. installing tzdata
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt-get update -y && apt-get upgrade -y && apt-get install -y\
|
||||
# Base dependencies for: `git push` xwim build
|
||||
## meson/build essentials
|
||||
build-essential cmake pkg-config meson ninja-build g++ doxygen git \
|
||||
## test coverage generator
|
||||
gcovr \
|
||||
## xwim dependencies
|
||||
libspdlog-dev libfmt-dev libarchive-dev libtclap-dev \
|
||||
# Dependencies for release build/libarchive build
|
||||
zip \
|
||||
&& mkdir /build/
|
||||
|
||||
COPY ./entrypoint.sh /usr/local/bin
|
||||
|
||||
WORKDIR /build/
|
||||
|
||||
CMD ["entrypoint.sh"]
|
23
glibc-shared/Dockerfile
Normal file
23
glibc-shared/Dockerfile
Normal file
|
@ -0,0 +1,23 @@
|
|||
FROM ubuntu:rolling
|
||||
|
||||
# Needed to prevent ubuntu from showing interactive
|
||||
# dialog when e.g. installing tzdata
|
||||
ARG DEBIAN_FRONTEND=noninteractive
|
||||
|
||||
RUN apt-get update -y && apt-get upgrade -y && apt-get install -y\
|
||||
# Base dependencies for: `git push` xwim build
|
||||
## meson/build essentials
|
||||
build-essential cmake pkg-config meson ninja-build g++ doxygen git \
|
||||
## test coverage generator
|
||||
gcovr \
|
||||
## xwim dependencies
|
||||
libspdlog-dev libfmt-dev libarchive-dev libtclap-dev \
|
||||
# Dependencies for release build/libarchive build
|
||||
zip \
|
||||
&& mkdir /build/
|
||||
|
||||
COPY ./entrypoint.sh /usr/local/bin
|
||||
|
||||
WORKDIR /build/
|
||||
|
||||
CMD ["entrypoint.sh"]
|
24
musl-static/Dockerfile
Normal file
24
musl-static/Dockerfile
Normal file
|
@ -0,0 +1,24 @@
|
|||
FROM alpine:3.13
|
||||
|
||||
ENV LDFLAGS="-static-libgcc -static-libstdc++ -static"
|
||||
|
||||
RUN apk add --no-cache \
|
||||
build-base cmake git meson pkgconf doxygen graphviz \
|
||||
libarchive-static libarchive-dev \
|
||||
libressl-dev \
|
||||
tclap-dev \
|
||||
bzip2-static acl-static expat-static zstd-static lz4-static zlib-static xz-dev
|
||||
|
||||
WORKDIR /build/
|
||||
|
||||
RUN git clone --depth 1 --branch 7.1.3 https://github.com/fmtlib/fmt.git \
|
||||
&& git clone --depth 1 --branch v1.8.2 https://github.com/gabime/spdlog.git
|
||||
|
||||
RUN cd fmt && mkdir build && cd build \
|
||||
&& cmake -DFMT_DOC=FALSE -DFMT_TEST=FALSE -DCMAKE_BUILD_TYPE=Release -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE --target fmt .. && make -j && make install
|
||||
|
||||
RUN cd spdlog && mkdir build && cd build \
|
||||
&& cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_POSITION_INDEPENDENT_CODE=TRUE .. && make -j && make install
|
||||
|
||||
COPY ./entrypoint.sh /usr/local/bin
|
||||
CMD ["entrypoint.sh"]
|
5
musl-static/entrypoint.sh
Executable file
5
musl-static/entrypoint.sh
Executable file
|
@ -0,0 +1,5 @@
|
|||
#!/bin/sh
|
||||
|
||||
meson --buildtype release --strip --layout flat --default-library static target
|
||||
ninja -C target
|
||||
strip target/meson-out/xwim
|
Loading…
Reference in a new issue