Untested, should do the right thing
Index: PackageName.pm
===================================================================
RCS file: /build/data/openbsd/cvs/src/usr.sbin/pkg_add/OpenBSD/PackageName.pm,v
diff -u -p -r1.58 PackageName.pm
--- PackageName.pm 13 Jun 2023 09:07:17 -0000 1.58
+++ PackageName.pm 16 Sep 2026 07:36:16 -0000
@@ -30,7 +30,7 @@ sub url2pkgname($name)
# see packages-specs(7)
sub splitname($n)
{
- if ($n =~ /^(.*?)\-(\d.*)$/o) {
+ if ($n =~ /^((?:debug\-)?.*?)\-(\d.*)$/o) {
my $stem = $1;
my $rest = $2;
my @all = split /\-/o, $rest;
@@ -49,7 +49,7 @@ sub from_string($class, $s)
sub new_from_string($class, $n)
{
- if ($n =~ /^(.*?)\-(\d.*)$/o) {
+ if ($n =~ /^((?:debug\-)?.*?)\-(\d.*)$/o) {
my $stem = $1;
my $rest = $2;
my @all = split /\-/o, $rest;
@@ -68,7 +68,7 @@ sub new_from_string($class, $n)
sub splitstem($s)
{
- if ($s =~ /^(.*?)\-\d/o) {
+ if ($s =~ /^((?:debug\-)?.*?)\-\d/o) {
return $1;
} else {
return $s;
@@ -84,6 +84,7 @@ sub pkg2stem($pkg)
}
sub is_stem($s)
{
+ $s =~ s/^debug\-//;
if ($s =~ m/\-\d/o || $s eq '-') {
return 0;
} else {