mirror of
https://github.com/mhx/dwarfs.git
synced 2025-08-03 17:56:12 -04:00
chore: add build environment for static 0.2.x releases
This commit is contained in:
parent
8cdc0e7698
commit
3ae2241e11
66
.docker/docker-0.2.x/Dockerfile
Normal file
66
.docker/docker-0.2.x/Dockerfile
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
# syntax=docker/dockerfile:1
|
||||||
|
ARG ARCH=amd64
|
||||||
|
FROM $ARCH/alpine:3.14
|
||||||
|
RUN apk update
|
||||||
|
RUN apk upgrade
|
||||||
|
RUN apk add --no-cache \
|
||||||
|
bash-completion \
|
||||||
|
build-base \
|
||||||
|
wget \
|
||||||
|
curl \
|
||||||
|
vim \
|
||||||
|
tar \
|
||||||
|
ripgrep \
|
||||||
|
py3-pip \
|
||||||
|
less \
|
||||||
|
gcc \
|
||||||
|
g++ \
|
||||||
|
git \
|
||||||
|
ccache \
|
||||||
|
samurai \
|
||||||
|
cmake \
|
||||||
|
make \
|
||||||
|
bison \
|
||||||
|
flex \
|
||||||
|
ronn \
|
||||||
|
fuse \
|
||||||
|
fuse-dev \
|
||||||
|
pkgconf \
|
||||||
|
binutils-dev \
|
||||||
|
libevent-dev \
|
||||||
|
libevent-static \
|
||||||
|
linux-headers \
|
||||||
|
date-dev \
|
||||||
|
range-v3-dev \
|
||||||
|
zlib-static \
|
||||||
|
libucontext-dev \
|
||||||
|
libdwarf-dev \
|
||||||
|
elfutils-dev \
|
||||||
|
nlohmann-json \
|
||||||
|
meson \
|
||||||
|
autoconf \
|
||||||
|
strace \
|
||||||
|
gdb \
|
||||||
|
zstd-dev \
|
||||||
|
zstd-static \
|
||||||
|
lz4-dev \
|
||||||
|
lz4-static \
|
||||||
|
eudev-dev \
|
||||||
|
gtest-dev \
|
||||||
|
xz \
|
||||||
|
xz-dev \
|
||||||
|
boost-dev \
|
||||||
|
boost-static \
|
||||||
|
sparsehash \
|
||||||
|
icu-static \
|
||||||
|
openssl-libs-static \
|
||||||
|
openssl-dev
|
||||||
|
|
||||||
|
COPY double-conversion-3.1.5.tar.gz /opt/
|
||||||
|
COPY fmt-7.1.3.tar.gz /opt/
|
||||||
|
COPY fuse-3.10.4.tar.xz /opt/
|
||||||
|
COPY glog-0.5.0.tar.gz /opt/
|
||||||
|
COPY build_libs.sh /opt/
|
||||||
|
RUN bash /opt/build_libs.sh
|
||||||
|
|
||||||
|
ENTRYPOINT /bin/bash
|
18
.docker/docker-0.2.x/Makefile
Normal file
18
.docker/docker-0.2.x/Makefile
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
IMAGE="dwarfs-alpine-old"
|
||||||
|
|
||||||
|
ROOT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST))))
|
||||||
|
NPROC:=$(shell nproc)
|
||||||
|
|
||||||
|
COMMON_RUN_OPTS=-it --rm \
|
||||||
|
--cap-add SYS_ADMIN --device /dev/fuse --privileged \
|
||||||
|
--mount type=bind,source=/home/mhx/git/github/dwarfs,target=/workspace,readonly \
|
||||||
|
--mount type=bind,source="$(ROOT_DIR)"/../@ccache,target=/ccache \
|
||||||
|
--mount type=bind,source="$(ROOT_DIR)"/../@home,target=/root \
|
||||||
|
--env CCACHE_DIR=/ccache --env CTEST_PARALLEL_LEVEL=$(NPROC) \
|
||||||
|
--entrypoint /bin/bash
|
||||||
|
|
||||||
|
build:
|
||||||
|
docker build -t $(IMAGE) .
|
||||||
|
|
||||||
|
run:
|
||||||
|
@docker run $(COMMON_RUN_OPTS) $(IMAGE)
|
46
.docker/docker-0.2.x/build_libs.sh
Normal file
46
.docker/docker-0.2.x/build_libs.sh
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
cd /opt
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
tar xf /opt/double-conversion-3.1.5.tar.gz
|
||||||
|
cd double-conversion-3.1.5
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=OFF
|
||||||
|
make -j$(nproc)
|
||||||
|
make install
|
||||||
|
|
||||||
|
cd /opt/build
|
||||||
|
tar xf /opt/fmt-7.1.3.tar.gz
|
||||||
|
cd fmt-7.1.3
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=OFF -DFMT_DOC=OFF -DFMT_TEST=OFF
|
||||||
|
make -j$(nproc)
|
||||||
|
make install
|
||||||
|
|
||||||
|
cd /opt/build
|
||||||
|
tar xf /opt/fuse-3.10.4.tar.xz
|
||||||
|
cd fuse-3.10.4
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
meson setup .. --default-library=static --prefix=/usr/local
|
||||||
|
meson configure -D utils=false -D tests=false -D examples=false
|
||||||
|
meson setup --reconfigure ..
|
||||||
|
ninja
|
||||||
|
ninja install
|
||||||
|
|
||||||
|
cd /opt/build
|
||||||
|
tar xf /opt/glog-0.5.0.tar.gz
|
||||||
|
cd glog-0.5.0
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=OFF -DBUILD_TESTING=OFF
|
||||||
|
make -j$(nproc)
|
||||||
|
make install
|
||||||
|
|
||||||
|
cd /opt
|
||||||
|
rm -rf build
|
Loading…
x
Reference in New Issue
Block a user