Skip to content

Commit 85324e2

Browse files
committed
Add fedora 40
1 parent 901679d commit 85324e2

File tree

3 files changed

+25
-2
lines changed

3 files changed

+25
-2
lines changed

configs/components/_base-ruby-selinux.rb

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,9 @@
7878

7979
if ruby_version =~ /^3/
8080
# swig 4.1 generated interface does not need patching
81-
unless platform.name =~ /^(debian-12|ubuntu-24)/
81+
unless (platform.is_debian? && platform.os_version.to_i < 12) ||
82+
(platform.is_fedora? && platform.os_version.to_i < 40) ||
83+
(platform.is_ubuntu? && platform.os_version.to_i < 24)
8284
steps << "#{platform.patch} --strip=0 --fuzz=0 --ignore-whitespace --no-backup-if-mismatch < ../selinuxswig_ruby_wrap.patch"
8385
end
8486
end
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
platform 'fedora-40-x86_64' do |plat|
2+
plat.servicedir '/usr/lib/systemd/system'
3+
plat.defaultdir '/etc/sysconfig'
4+
plat.servicetype 'systemd'
5+
plat.dist 'fc40'
6+
7+
packages = %w[
8+
autoconf automake bzip2-devel gcc gcc-c++ libselinux-devel
9+
libsepol libsepol-devel make cmake pkgconfig readline-devel
10+
rpmdevtools rsync swig zlib-devel systemtap-sdt-devel
11+
perl-lib perl-FindBin
12+
]
13+
plat.provision_with("/usr/bin/dnf install -y --best --allowerasing #{packages.join(' ')}")
14+
15+
plat.install_build_dependencies_with '/usr/bin/dnf install -y --best --allowerasing'
16+
17+
plat.docker_image 'fedora:40'
18+
plat.docker_run_args ['--tty', '--entrypoint=/bin/sh']
19+
plat.use_docker_exec true
20+
end

configs/projects/_shared-agent-components.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,8 @@
3838
proj.component 'libxml2' unless platform.is_windows?
3939
proj.component 'libxslt' unless platform.is_windows?
4040

41-
proj.component 'ruby-augeas' unless platform.is_windows?
41+
# REMIND: gcc12 complains about invalid pointer types in ruby-augeas native extension
42+
proj.component 'ruby-augeas' unless platform.is_windows? || platform.name =~ /^fedora-40/
4243
proj.component 'ruby-shadow' unless platform.is_aix? || platform.is_windows?
4344
# We only build ruby-selinux for EL, Fedora, Debian and Ubuntu (amd64/i386)
4445
if platform.is_el? || platform.is_fedora? || platform.name =~ /debian|ubuntu/

0 commit comments

Comments
 (0)