this did reintroduce hundreds of warnings:
defined(%hash) is deprecated at ...ngspice/tests/bin/runQaTests.pl line 331.
(Maybe you should just omit the defined()?)
this was deprecated aproximately 2001 with perl version
v5.6.1
see
https://perldoc.perl.org/perl561delta.html
obviously for good reason, because defined(%hash) did have a semantics which
did not exactly match the users expectation.
does not work when "configured" in a separate working directory.
apart from that, repeatedly executing a ngspice solely to check the version
is slow, and actually useless because the test harness is part of the Makefile
and thus the version is known to be exactly that of the currently
checked out commit.