Replace the grep|grep|awk|sed|sort|uniq abomination with a simple
and elegant awk script.
Signed-off-by: Eugene Syromiatnikov <esyr@openssl.org>
Reviewed-by: Neil Horman <nhorman@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.foundation>
MergeDate: Fri Apr 3 15:42:20 2026
(Merged from https://github.com/openssl/openssl/pull/30635)
exit !$ok;
}
else {
- $cmd = "objdump -t " . $objfilelist . " | grep UND | grep -v \@OPENSSL";
- $cmd = $cmd . " | awk '{print \$NF}' |";
- $cmd = $cmd . " sed -e\"s/@.*\$//\" | sort | uniq";
+ $cmd = "objdump -t " . $objfilelist . " | awk " .
+ "'/\\\\*UND\\\\*/ {" .
+ "split(\$NF, sym_lib, \"@\");" .
+ "if (sym_lib[2] !~ \"OPENSSL_[1-9][0-9]*\\\\.[0-9]+\\\\.[0-9]+\$\")" .
+ "syms[sym_lib[1]] = 1;" .
+ "}" .
+ "END { for (s in syms) print s; };'";
open $expsyms, '<', $expectedsyms or die;
{