Skip to content

Commit 986fd1a

Browse files
committed
Stage all installs in an intermediate DESTDIR to shrink COPY scope
This hopefully reduces the amount of files COPY has to consider, increasing cache efficiency and reducing pointless re-runs of stages.
1 parent 0fdac1b commit 986fd1a

File tree

119 files changed

+258
-237
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

119 files changed

+258
-237
lines changed

images/base-linux32/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@ ENV PATH="/opt/ct-ng/bin:${PATH}" \
5252
FFBUILD_TARGET_FLAGS="--pkg-config=pkg-config --cross-prefix=${FFBUILD_TOOLCHAIN}- --arch=i686 --target-os=linux" \
5353
FFBUILD_CROSS_PREFIX="${FFBUILD_TOOLCHAIN}-" \
5454
FFBUILD_PREFIX=/opt/ffbuild \
55+
FFBUILD_DESTDIR=/opt/ffdest \
56+
FFBUILD_DESTPREFIX=/opt/ffdest/opt/ffbuild \
5557
FFBUILD_CMAKE_TOOLCHAIN=/toolchain.cmake \
5658
PKG_CONFIG=pkg-config \
5759
PKG_CONFIG_LIBDIR=/opt/ffbuild/lib/pkgconfig:/opt/ffbuild/share/pkgconfig \

images/base-linux64/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@ ENV PATH="/opt/ct-ng/bin:${PATH}" \
5252
FFBUILD_TARGET_FLAGS="--pkg-config=pkg-config --cross-prefix=${FFBUILD_TOOLCHAIN}- --arch=x86_64 --target-os=linux" \
5353
FFBUILD_CROSS_PREFIX="${FFBUILD_TOOLCHAIN}-" \
5454
FFBUILD_PREFIX=/opt/ffbuild \
55+
FFBUILD_DESTDIR=/opt/ffdest \
56+
FFBUILD_DESTPREFIX=/opt/ffdest/opt/ffbuild \
5557
FFBUILD_CMAKE_TOOLCHAIN=/toolchain.cmake \
5658
PKG_CONFIG=pkg-config \
5759
PKG_CONFIG_LIBDIR=/opt/ffbuild/lib/pkgconfig:/opt/ffbuild/share/pkgconfig \

images/base-linuxarm64/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,8 @@ ENV PATH="/opt/ct-ng/bin:${PATH}" \
5050
FFBUILD_TARGET_FLAGS="--pkg-config=pkg-config --cross-prefix=${FFBUILD_TOOLCHAIN}- --arch=aarch64 --cpu=armv8-a --target-os=linux" \
5151
FFBUILD_CROSS_PREFIX="${FFBUILD_TOOLCHAIN}-" \
5252
FFBUILD_PREFIX=/opt/ffbuild \
53+
FFBUILD_DESTDIR=/opt/ffdest \
54+
FFBUILD_DESTPREFIX=/opt/ffdest/opt/ffbuild \
5355
FFBUILD_CMAKE_TOOLCHAIN=/toolchain.cmake \
5456
PKG_CONFIG=pkg-config \
5557
PKG_CONFIG_LIBDIR=/opt/ffbuild/lib/pkgconfig:/opt/ffbuild/share/pkgconfig \

images/base-win32/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ ENV PATH="/opt/ct-ng/bin:${PATH}" \
3333
FFBUILD_TARGET_FLAGS="--pkg-config=pkg-config --cross-prefix=${FFBUILD_TOOLCHAIN}- --arch=i686 --target-os=mingw32" \
3434
FFBUILD_CROSS_PREFIX=${FFBUILD_TOOLCHAIN}- \
3535
FFBUILD_PREFIX=/opt/ffbuild \
36+
FFBUILD_DESTDIR=/opt/ffdest \
37+
FFBUILD_DESTPREFIX=/opt/ffdest/opt/ffbuild \
3638
FFBUILD_CMAKE_TOOLCHAIN=/toolchain.cmake \
3739
PKG_CONFIG=pkg-config \
3840
PKG_CONFIG_LIBDIR=/opt/ffbuild/lib/pkgconfig:/opt/ffbuild/share/pkgconfig \

images/base-win64/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ ENV PATH="/opt/ct-ng/bin:${PATH}" \
3333
FFBUILD_TARGET_FLAGS="--pkg-config=pkg-config --cross-prefix=${FFBUILD_TOOLCHAIN}- --arch=x86_64 --target-os=mingw32" \
3434
FFBUILD_CROSS_PREFIX=${FFBUILD_TOOLCHAIN}- \
3535
FFBUILD_PREFIX=/opt/ffbuild \
36+
FFBUILD_DESTDIR=/opt/ffdest \
37+
FFBUILD_DESTPREFIX=/opt/ffdest/opt/ffbuild \
3638
FFBUILD_CMAKE_TOOLCHAIN=/toolchain.cmake \
3739
PKG_CONFIG=pkg-config \
3840
PKG_CONFIG_LIBDIR=/opt/ffbuild/lib/pkgconfig:/opt/ffbuild/share/pkgconfig \

images/base-winarm64/Dockerfile

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ ENV PATH="/opt/llvm-mingw/bin:${PATH}" \
3333
FFBUILD_TARGET_FLAGS="--pkg-config=pkg-config --cross-prefix=${FFBUILD_TOOLCHAIN}- --arch=aarch64 --cpu=armv8-a --target-os=mingw32" \
3434
FFBUILD_CROSS_PREFIX=${FFBUILD_TOOLCHAIN}- \
3535
FFBUILD_PREFIX=/opt/ffbuild \
36+
FFBUILD_DESTDIR=/opt/ffdest \
37+
FFBUILD_DESTPREFIX=/opt/ffdest/opt/ffbuild \
3638
FFBUILD_CMAKE_TOOLCHAIN=/toolchain.cmake \
3739
PKG_CONFIG=pkg-config \
3840
PKG_CONFIG_LIBDIR=/opt/ffbuild/lib/pkgconfig:/opt/ffbuild/share/pkgconfig \

scripts.d/10-mingw-std-threads.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,6 @@ ffbuild_enabled() {
99
}
1010

1111
ffbuild_dockerbuild() {
12-
mkdir -p "$FFBUILD_PREFIX"/include
13-
cp *.h "$FFBUILD_PREFIX"/include
12+
mkdir -p "$FFBUILD_DESTPREFIX"/include
13+
cp *.h "$FFBUILD_DESTPREFIX"/include
1414
}

scripts.d/10-xorg-macros.sh

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@ ffbuild_enabled() {
99
}
1010

1111
ffbuild_dockerlayer() {
12-
to_df "COPY --link --from=${SELFLAYER} \$FFBUILD_PREFIX/. \$FFBUILD_PREFIX"
13-
to_df "COPY --link --from=${SELFLAYER} \$FFBUILD_PREFIX/share/aclocal/. /usr/share/aclocal"
12+
to_df "COPY --link --from=${SELFLAYER} \$FFBUILD_DESTPREFIX/. \$FFBUILD_PREFIX"
13+
to_df "COPY --link --from=${SELFLAYER} \$FFBUILD_DESTPREFIX/share/aclocal/. /usr/share/aclocal"
1414
}
1515

1616
ffbuild_dockerbuild() {
1717
autoreconf -i
1818
./configure --prefix="$FFBUILD_PREFIX"
1919
make -j"$(nproc)"
20-
make install
20+
make install DESTDIR="$FFBUILD_DESTDIR"
2121
}

scripts.d/20-libiconv.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ ffbuild_dockerbuild() {
4040

4141
./configure "${myconf[@]}"
4242
make -j$(nproc)
43-
make install
43+
make install DESTDIR="$FFBUILD_DESTDIR"
4444
}
4545

4646
ffbuild_configure() {

scripts.d/20-zlib.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ ffbuild_dockerbuild() {
1515

1616
./configure "${myconf[@]}"
1717
make -j$(nproc)
18-
make install
18+
make install DESTDIR="$FFBUILD_DESTDIR"
1919
}
2020

2121
ffbuild_configure() {

0 commit comments

Comments
 (0)