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