]> Sergey Matveev's repositories - public-inbox.git/commitdiff
ci: require IO::KQueue on FreeBSD, for now
authorEric Wong <e@80x24.org>
Mon, 24 Jun 2019 02:52:51 +0000 (02:52 +0000)
committerEric Wong <e@80x24.org>
Mon, 24 Jun 2019 05:26:27 +0000 (05:26 +0000)
We'll likely replace IO::KQueue (at least on FreeBSD) using
a pure-Perl syscall()-based version since syscall numbers are
consistent across architectures on FreeBSD and easy to maintain.

IO::KQueue->EV_SET is also shockingly inefficient in that it
calls kqueue() as much as epoll_ctl.

ci/deps.perl
ci/profiles.sh

index 62870c1f99647992b2bbbf52e572c98b7feb58fe..ad2c11d28f6bc1a4e48799d4d6d8447ec3ad6d67 100755 (executable)
@@ -60,7 +60,7 @@ my $profiles = {
 # account for granularity differences between package systems and OSes
 my @precious;
 if ($^O eq 'freebsd') {
-       @precious = qw(perl curl Socket6 IO::Compress::Gzip);
+       @precious = qw(perl curl Socket6 IO::Compress::Gzip IO::KQueue);
 } elsif ($pkg_fmt eq 'rpm') {
        @precious = qw(perl curl);
 }
@@ -149,9 +149,6 @@ my (@pkg_install, @pkg_remove, %all);
 for my $ary (values %$profiles) {
        $all{$_} = \@pkg_remove for @$ary;
 }
-if ($^O eq 'freebsd') {
-       $all{'IO::KQueue'} = \@pkg_remove;
-}
 $profiles->{all} = [ keys %all ]; # pseudo-profile for all packages
 
 # parse the profile list from the command-line
index d559ec5f9b742161b80271a429b62f6442bdab74..1ddf7891eccb54a69fb4bf02021996c50f9a785c 100755 (executable)
@@ -54,8 +54,7 @@ esac
 case $ID-$VERSION_ID in
 freebsd-11|freebsd-12) sed "s/^/$PKG_FMT /" <<EOF
 all devtest-
-all devtest IO::KQueue-
-all devtest IO::KQueue
+all devtest
 v2essential
 essential
 essential devtest-