Skip to content

Commit 776e60f

Browse files
authored
chore(ci): build libcap, libcap-ng, libcapstone, libcom_err, libcrypt, libcrypto3, libcurl (#1327)
Signed-off-by: Maksim Fedotov <[email protected]>
1 parent 32eb5bd commit 776e60f

File tree

29 files changed

+1619
-297
lines changed

29 files changed

+1619
-297
lines changed

build/components/versions.yml

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,10 @@ package:
1111
bzip2: bzip2-1.0.8
1212
dmidecode: dmidecode-3-6
1313
dtc: v1.7.2
14+
e2fsprogs: v1.47.1
1415
file: FILE5_45
1516
gcc: releases/gcc-14.2.0
16-
glib2: 2.82.5
17+
glib2: 2.84.2
1718
glibc: glibc-2.38
1819
libgmp: 6.3.0
1920
gnutls: 3.8.6
@@ -23,8 +24,13 @@ package:
2324
libbrotli: v1.1.0
2425
libbsd: 0.12.2
2526
libburn: release-1.5.6
27+
libcap: libcap-2.69
28+
libcap-ng: v0.8.5
29+
libcapstone: 4.0.2
30+
libcurl: curl-8_14_1
2631
libfuse3: fuse-3.16.2
2732
libgcrypt: libgcrypt-1.10.2
33+
libxcrypt: v4.4.36
2834
libtpms: v0.10.0
2935
libgpg-error: libgpg-error-1.55
3036
libibverbs: 1.0.0

images/base-alt-p11-binaries/werf.inc.yaml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
{{- define "$name" -}}
44
packages:
55
- glibc-utils
6-
- mount xfsprogs xfstests util-linux e2fsprogs
6+
- mount xfsprogs xfstests util-linux
77
- libffi-devel
88
libraries:
99
- libssh-devel libssh2-devel
@@ -17,8 +17,18 @@ fromImage: builder/alt
1717
git:
1818
- add: {{ .ModuleDir }}/build/tools/relocate_binaries.sh
1919
to: /relocate_binaries.sh
20+
import:
21+
{{- $images := list "e2fsprogs" -}}
22+
{{- include "importPackageImages" (list . $images "install") -}}
2023
shell:
2124
install:
25+
- |
26+
# Install packages
27+
PKGS="{{ $images | join " " }}"
28+
for pkg in $PKGS; do
29+
cp -a /$pkg/. /
30+
rm -rf /$pkg
31+
done
2232
{{- include "alt packages proxy" . | nindent 2 }}
2333
- |
2434
apt-get install -y \

images/libvirt/werf.inc.yaml

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ packages:
6565
- python3-tools python3-module-pip
6666
- python3-module-black
6767
- mdevctl tshark
68-
- util-linux dmsetup pm-utils
68+
- dmsetup pm-utils
6969
libraries:
7070
- libudev-devel
7171
- libpciaccess-devel
@@ -78,20 +78,18 @@ libraries:
7878
- libdevmapper-devel
7979
- ceph-devel
8080
- libiscsi-devel libglusterfs-devel
81-
- libnuma-devel libcap-ng-devel
82-
- libcurl-devel
8381
- libfuse-devel libnbd-devel
8482
- libgnutls-devel libp11-kit-devel
8583
- libreadline-devel libtasn1-devel
8684
- libattr-devel libbsd-devel
87-
- libsystemd-devel libuuid-devel
85+
- libsystemd-devel
8886
- libjson-c-devel systemtap-sdt-devel
8987
- libacl-devel glib2-devel glibc-utils
9088
- libgio-devel libxml2-devel
9189
- libtirpc-devel libsasl2-devel
9290
- wireshark-devel
9391
- zlib-devel libclocale
94-
- libnuma libslirp-devel
92+
- libslirp-devel
9593
- libyajl-devel libselinux-devel
9694
{{- end -}}
9795

@@ -112,7 +110,7 @@ import:
112110
add: /install-libvirt.sh
113111
to: /install-libvirt.sh
114112
before: install
115-
{{- $images := list "dmidecode" "lvm2" "libattr" "libbsd" "libmd" "libblkid" "libgcrypt" "libfuse3" "libaudit" -}}
113+
{{- $images := list "dmidecode" "lvm2" "libattr" "libbsd" "libmd" "libblkid" "libgcrypt" "libfuse3" "libaudit" "libcap-ng" "openssl" "libcurl" "e2fsprogs" "libxcrypt" "numactl" -}}
116114
{{- include "importPackageImages" (list . $images "install") -}}
117115
- image: {{ .ModuleNamePrefix }}qemu
118116
add: /qemu-img
@@ -141,10 +139,9 @@ shell:
141139
PKGS="{{ $images | join " " }}"
142140
PKGS+=" qemu-img"
143141
for pkg in $PKGS; do
144-
cp -a /$pkg/. /
142+
cp -af /$pkg/. /
145143
rm -rf /$pkg
146144
done
147-
148145
mkdir -p ~/.ssh && echo "StrictHostKeyChecking accept-new" > ~/.ssh/config
149146
150147
export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# e2fsprogs
2+
```
3+
└── [drwxr-xr-x 4096] usr
4+
├── [drwxr-xr-x 4096] bin
5+
│ ├── [-rwxr-xr-x 14952] chattr
6+
│ ├── [-rwxr-xr-x 1342] compile_et
7+
│ ├── [-rwxr-xr-x 14952] lsattr
8+
│ └── [-rwxr-xr-x 1102] mk_cmds
9+
├── [drwxr-xr-x 4096] etc
10+
│ ├── [-rw-r--r-- 685] e2scrub.conf
11+
│ └── [-rw-r--r-- 813] mke2fs.conf
12+
├── [drwxr-xr-x 4096] include
13+
│ ├── [-rw-r--r-- 2118] com_err.h
14+
│ ├── [drwxr-xr-x 4096] e2p
15+
│ │ └── [-rw-r--r-- 3338] e2p.h
16+
│ ├── [drwxr-xr-x 4096] et
17+
│ │ └── [-rw-r--r-- 2118] com_err.h
18+
│ ├── [drwxr-xr-x 4096] ext2fs
19+
│ │ ├── [-rw-r--r-- 19838] bitops.h
20+
│ │ ├── [-rw-r--r-- 12036] ext2_err.h
21+
│ │ ├── [-rw-r--r-- 3137] ext2_ext_attr.h
22+
│ │ ├── [-rw-r--r-- 44151] ext2_fs.h
23+
│ │ ├── [-rw-r--r-- 5748] ext2_io.h
24+
│ │ ├── [-rw-r--r-- 4212] ext2_types.h
25+
│ │ ├── [-rw-r--r-- 79995] ext2fs.h
26+
│ │ ├── [-rw-r--r-- 4558] ext3_extents.h
27+
│ │ ├── [-rw-r--r-- 1183] hashmap.h
28+
│ │ ├── [-rw-r--r-- 2620] qcow2.h
29+
│ │ └── [-rw-r--r-- 8871] tdb.h
30+
│ └── [drwxr-xr-x 4096] ss
31+
│ ├── [-rw-r--r-- 3116] ss.h
32+
│ └── [-rw-r--r-- 1193] ss_err.h
33+
├── [drwxr-xr-x 4096] lib64
34+
│ ├── [-rwxr-xr-x 50368] e2initrd_helper
35+
│ ├── [-r--r--r-- 50800] libcom_err.a
36+
│ ├── [lrwxrwxrwx 15] libcom_err.so -> libcom_err.so.2
37+
│ ├── [lrwxrwxrwx 17] libcom_err.so.2 -> libcom_err.so.2.1
38+
│ ├── [-rwxr-xr-x 18984] libcom_err.so.2.1
39+
│ ├── [-r--r--r-- 274520] libe2p.a
40+
│ ├── [lrwxrwxrwx 11] libe2p.so -> libe2p.so.2
41+
│ ├── [lrwxrwxrwx 13] libe2p.so.2 -> libe2p.so.2.3
42+
│ ├── [-rwxr-xr-x 45544] libe2p.so.2.3
43+
│ ├── [-r--r--r-- 2905846] libext2fs.a
44+
│ ├── [lrwxrwxrwx 14] libext2fs.so -> libext2fs.so.2
45+
│ ├── [lrwxrwxrwx 16] libext2fs.so.2 -> libext2fs.so.2.4
46+
│ ├── [-rwxr-xr-x 447032] libext2fs.so.2.4
47+
│ ├── [-r--r--r-- 161008] libss.a
48+
│ ├── [lrwxrwxrwx 10] libss.so -> libss.so.2
49+
│ ├── [lrwxrwxrwx 12] libss.so.2 -> libss.so.2.0
50+
│ ├── [-rwxr-xr-x 35576] libss.so.2.0
51+
│ └── [drwxr-xr-x 4096] pkgconfig
52+
│ ├── [-rw-r--r-- 254] com_err.pc
53+
│ ├── [-rw-r--r-- 242] e2p.pc
54+
│ ├── [-rw-r--r-- 239] ext2fs.pc
55+
│ └── [-rw-r--r-- 265] ss.pc
56+
├── [drwxr-xr-x 4096] sbin
57+
│ ├── [-rwxr-xr-x 35440] badblocks
58+
│ ├── [-rwxr-xr-x 252032] debugfs
59+
│ ├── [-rwxr-xr-x 31336] dumpe2fs
60+
│ ├── [-rwxr-xr-x 14936] e2freefrag
61+
│ ├── [-rwxr-xr-x 361184] e2fsck
62+
│ ├── [-rwxr-xr-x 56064] e2image
63+
│ ├── [-rwxr-xr-x 121632] e2label
64+
│ ├── [-rwxr-xr-x 31336] e2mmpstatus
65+
│ ├── [-rwxr-xr-x 7556] e2scrub
66+
│ ├── [-rwxr-xr-x 5033] e2scrub_all
67+
│ ├── [-rwxr-xr-x 23128] e2undo
68+
│ ├── [-rwxr-xr-x 27224] e4crypt
69+
│ ├── [-rwxr-xr-x 35416] e4defrag
70+
│ ├── [-rwxr-xr-x 19064] filefrag
71+
│ ├── [-rwxr-xr-x 361184] fsck.ext2
72+
│ ├── [-rwxr-xr-x 361184] fsck.ext3
73+
│ ├── [-rwxr-xr-x 361184] fsck.ext4
74+
│ ├── [-rwxr-xr-x 14944] logsave
75+
│ ├── [-rwxr-xr-x 146272] mke2fs
76+
│ ├── [-rwxr-xr-x 146272] mkfs.ext2
77+
│ ├── [-rwxr-xr-x 146272] mkfs.ext3
78+
│ ├── [-rwxr-xr-x 146272] mkfs.ext4
79+
│ ├── [-rwxr-xr-x 14936] mklost+found
80+
│ ├── [-rwxr-xr-x 68184] resize2fs
81+
│ └── [-rwxr-xr-x 121632] tune2fs
82+
└── [drwxr-xr-x 4096] share
83+
├── [drwxr-xr-x 4096] et
84+
│ ├── [-rw-r--r-- 6485] et_c.awk
85+
│ └── [-rw-r--r-- 4539] et_h.awk
86+
├── [drwxr-xr-x 4096] info
87+
└── [drwxr-xr-x 4096] ss
88+
├── [-rw-r--r-- 1551] ct_c.awk
89+
└── [-rw-r--r-- 2290] ct_c.sed
90+
91+
16 directories, 72 files
92+
```
Lines changed: 96 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
---
2+
image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}
3+
final: false
4+
fromImage: builder/scratch
5+
import:
6+
- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-builder
7+
add: /out
8+
to: /{{ $.ImageName }}
9+
before: setup
10+
11+
---
12+
{{- $version := get .PackageVersion .ImageName }}
13+
{{- $gitRepoUrl := "ext2/e2fsprogs.git" }}
14+
image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact
15+
final: false
16+
fromImage: builder/src
17+
secrets:
18+
- id: SOURCE_REPO
19+
value: {{ $.SOURCE_REPO_GIT }}
20+
shell:
21+
install:
22+
- |
23+
mkdir -p ~/.ssh && echo "StrictHostKeyChecking accept-new" > ~/.ssh/config
24+
25+
git clone --depth=1 $(cat /run/secrets/SOURCE_REPO)/{{ $gitRepoUrl }} --branch {{ $version }} /src
26+
27+
---
28+
{{- $name := print $.ImageName "-dependencies" -}}
29+
{{- define "$name" -}}
30+
packages:
31+
- gcc git make libtool gettext-tools
32+
- libuuid-devel libarchive-devel acl
33+
- glib2-devel
34+
- tree
35+
{{- end -}}
36+
37+
{{ $builderDependencies := include "$name" . | fromYaml }}
38+
39+
image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-builder
40+
final: false
41+
fromImage: builder/alt
42+
secrets:
43+
- id: SOURCE_REPO
44+
value: {{ $.SOURCE_REPO_GIT }}
45+
import:
46+
- image: {{ .ModuleNamePrefix }}{{ .PackagePath }}/{{ .ImageName }}-src-artifact
47+
add: /src
48+
to: /src
49+
before: install
50+
{{- $images := list "libblkid" -}}
51+
{{- include "importPackageImages" (list . $images "install") -}}
52+
shell:
53+
beforeInstall:
54+
{{- include "alt packages proxy" . | nindent 2 }}
55+
- |
56+
apt-get install -y \
57+
{{ $builderDependencies.packages | join " " }}
58+
59+
{{- include "alt packages clean" . | nindent 2 }}
60+
61+
install:
62+
- |
63+
# Install packages
64+
PKGS="{{ $images | join " " }}"
65+
for pkg in $PKGS; do
66+
cp -a /$pkg/. /
67+
rm -rf /$pkg
68+
done
69+
70+
OUTDIR=/out
71+
cd /src
72+
find -type f -print0 |
73+
xargs -r0 grep -lZ '^static void usage' -- |
74+
xargs -r0 sed -i 's/^static void usage/__attribute__ ((noreturn)) &/' --
75+
./configure \
76+
--prefix=/usr \
77+
--libdir=/usr/lib64 \
78+
--enable-nls \
79+
--enable-elf-shlibs \
80+
--disable-libblkid \
81+
--disable-libuuid \
82+
--disable-fsck \
83+
--with-libarchive \
84+
--without-manpages \
85+
--disable-docs
86+
87+
make -j$(nproc)
88+
make DESTDIR=$OUTDIR install
89+
strip $OUTDIR/usr/bin/chattr
90+
strip $OUTDIR/usr/bin/lsattr
91+
strip $OUTDIR/usr/sbin/{badblocks,debugfs,dumpe2fs,e2freefrag,e2fsck,e2image,e2label,e2mmpstatus,e2undo,e4crypt,e4defrag,filefrag,fsck.ext2,fsck.ext3,fsck.ext4,logsave,mke2fs,mkfs.ext2,mkfs.ext3,mkfs.ext4,mklost+found,resize2fs,tune2fs}
92+
strip $OUTDIR/usr/lib64/*.so.*
93+
rm -rf $OUTDIR/usr/share/locale
94+
rm -rf $OUTDIR/usr/share/man
95+
tree -sp $OUTDIR
96+

images/packages/file/werf.inc.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,8 @@ packages:
3232
- make automake autoconf libtool makeinfo
3333
- pkg-config
3434
- bison
35-
- bzlib-devel libcap-devel liblzma-devel libseccomp-devel libzstd-devel zlib-devel lzip ncompress strace
35+
- bzlib-devel liblzma-devel libseccomp-devel libcap-devel libzstd-devel zlib-devel lzip ncompress strace
36+
- tree
3637
{{- end -}}
3738

3839

@@ -58,12 +59,11 @@ shell:
5859
install:
5960
- |
6061
OUTDIR=/out
61-
6262
cd /src
63-
63+
6464
autoreconf -f -i
6565
./configure --prefix=/usr --libdir=/usr/lib64 --datadir=/usr/share
66-
66+
6767
make install -j $(nproc) DESTDIR=$OUTDIR
6868
6969
rm -rf $OUTDIR/share/man

0 commit comments

Comments
 (0)