Skip to content

Commit 5d5391a

Browse files
committed
simplify logic of incorporating aliasing into Registry
1 parent 97c5a7e commit 5d5391a

4 files changed

Lines changed: 24 additions & 24 deletions

File tree

lib/OpenGL/Modern.pm

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5363,8 +5363,7 @@ our %EXPORT_TAGS_GL = (
53635363
],
53645364
'GL_ARB_ES3_2_compatibility' => [
53655365
'glPrimitiveBoundingBox',
5366-
'glPrimitiveBoundingBoxARB',
5367-
'glPrimitiveBoundingBoxEXT'
5366+
'glPrimitiveBoundingBoxARB'
53685367
],
53695368
'GL_ARB_base_instance' => [
53705369
'glDrawArraysInstancedBaseInstance',
@@ -7795,8 +7794,7 @@ our %EXPORT_TAGS_GL = (
77957794
],
77967795
'GL_KHR_blend_equation_advanced' => [
77977796
'glBlendBarrier',
7798-
'glBlendBarrierKHR',
7799-
'glBlendBarrierNV'
7797+
'glBlendBarrierKHR'
78007798
],
78017799
'GL_KHR_debug' => [
78027800
'glDebugMessageCallback_c',

lib/OpenGL/Modern.pod

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1484,10 +1484,10 @@ Exported under tag C<:GL_VERSION_1_1>.
14841484
Not available in a 'future-compatible' profile as removed in 3.2.
14851485
See L<https://registry.khronos.org/OpenGL-Refpages/gl2.1/xhtml/glBitmap.xml>
14861486

1487-
=head2 glBlendBarrierKHR
1487+
=head2 glBlendBarrier
14881488

1489-
glBlendBarrierKHR();
14901489
glBlendBarrier();
1490+
glBlendBarrierKHR();
14911491
glBlendBarrierNV();
14921492

14931493
Exported under tag C<:GL_KHR_blend_equation_advanced>.
@@ -11739,10 +11739,10 @@ Exported under tag C<:GL_NV_present_video>.
1173911739

1174011740
Exported under tag C<:GL_NV_present_video>.
1174111741

11742-
=head2 glPrimitiveBoundingBoxARB
11742+
=head2 glPrimitiveBoundingBox
1174311743

11744-
glPrimitiveBoundingBoxARB($minX, $minY, $minZ, $minW, $maxX, $maxY, $maxZ, $maxW);
1174511744
glPrimitiveBoundingBox($minX, $minY, $minZ, $minW, $maxX, $maxY, $maxZ, $maxW);
11745+
glPrimitiveBoundingBoxARB($minX, $minY, $minZ, $minW, $maxX, $maxY, $maxZ, $maxW);
1174611746
glPrimitiveBoundingBoxEXT($minX, $minY, $minZ, $minW, $maxX, $maxY, $maxZ, $maxW);
1174711747

1174811748
Exported under tag C<:GL_ARB_ES3_2_compatibility>.

lib/OpenGL/Modern/Registry.pm

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6930,9 +6930,9 @@ our %registry = (
69306930
'glewtype' => 'fun',
69316931
'restype' => 'void'
69326932
},
6933-
'glBlendBarrierKHR' => {
6933+
'glBlendBarrier' => {
69346934
'aliases' => {
6935-
'glBlendBarrier' => 'GL_KHR_blend_equation_advanced',
6935+
'glBlendBarrierKHR' => 'GL_KHR_blend_equation_advanced',
69366936
'glBlendBarrierNV' => 'GL_NV_blend_equation_advanced'
69376937
},
69386938
'feature' => 'GL_KHR_blend_equation_advanced',
@@ -47016,9 +47016,9 @@ our %registry = (
4701647016
'glewtype' => 'fun',
4701747017
'restype' => 'void'
4701847018
},
47019-
'glPrimitiveBoundingBoxARB' => {
47019+
'glPrimitiveBoundingBox' => {
4702047020
'aliases' => {
47021-
'glPrimitiveBoundingBox' => 'GL_ARB_ES3_2_compatibility',
47021+
'glPrimitiveBoundingBoxARB' => 'GL_ARB_ES3_2_compatibility',
4702247022
'glPrimitiveBoundingBoxEXT' => 'GL_EXT_primitive_bounding_box'
4702347023
},
4702447024
'argdata' => [

utils/generate-registry.pl

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -282,22 +282,24 @@ =head1 PURPOSE
282282
}
283283
@features{keys %features} = map [sort keys %$_], values %features;
284284

285-
my %nonglew2alias;
285+
{
286+
my %alias2real;
286287
for (grep $_, split /\n/, slurp('utils/aliases.txt')) {
287288
my ($to, $from) = split ' ';
288-
my $alias_feature = $signature{$from}{feature};
289-
if (exists $signature{$to}) {
290-
# do nothing
291-
} elsif (exists $nonglew2alias{$to}) {
292-
$to = $nonglew2alias{$to};
293-
} else {
294-
$nonglew2alias{$to} = $from;
295-
$signature{$to} = $signature{$from};
296-
($to, $from) = ($from, $to);
297-
}
298-
$signature{$to}{aliases}{$from} = $alias_feature;
289+
$alias2real{$from} = $to;
290+
}
291+
my %nonglew2alias;
292+
for (grep !exists $signature{$alias2real{$_}}, sort keys %alias2real) {
293+
next if exists $nonglew2alias{$alias2real{$_}};
294+
$nonglew2alias{$alias2real{$_}} = $_;
295+
$signature{$alias2real{$_}} = $signature{$_};
296+
}
297+
for (sort keys %alias2real) {
298+
my ($to, $from) = ($alias2real{$_}, $_);
299+
$signature{$to}{aliases}{$from} = $signature{$from}{feature};
299300
delete $signature{$from};
300301
}
302+
}
301303

302304
my @version_features = grep /^GL_VERSION/, keys %features;
303305
my (@version_31, @version_core);

0 commit comments

Comments
 (0)