$ cd qemu
$ git submodule update --init roms/ipxe
$ cd roms
$ make pxerom

report error like this:
 
In file included from tests/bigint_test.c:38:
tests/bigint_test.c: In function ‘bigint_test_exec’:
tests/bigint_test.c:232:14: error: ‘result_raw’ may be used uninitialized [-Werror=maybe-uninitialized]
  232 |         ok ( memcmp ( result_raw, expected_raw,                         \
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  233 |                       sizeof ( result_raw ) ) == 0 );                   \
      |                       ~~~~~~~~~~~~~~~~~~~~~~~
include/ipxe/test.h:45:19: note: in definition of macro ‘okx’
   45 |         test_ok ( success, file, line, #success )
      |                   ^~~~~~~
tests/bigint_test.c:232:9: note: in expansion of macro ‘ok’
  232 |         ok ( memcmp ( result_raw, expected_raw,                         \
      |         ^~
tests/bigint_test.c:565:9: note: in expansion of macro ‘bigint_add_ok’
  565 |         bigint_add_ok ( BIGINT ( 0x8a ),
      |         ^~~~~~~~~~~~~
In file included from tests/bigint_test.c:36:
include/string.h:32:19: note: by argument 1 of type ‘const void *’ to ‘memcmp’ declared here
   32 | extern int __pure memcmp ( const void *first, const void *second,
      |                   ^~~~~~
tests/bigint_test.c:213:17: note: ‘result_raw’ declared here
  213 |         uint8_t result_raw[ sizeof ( expected_raw ) ];                  \
      |                 ^~~~~~~~~~
tests/bigint_test.c:565:9: note: in expansion of macro ‘bigint_add_ok’
  565 |         bigint_add_ok ( BIGINT ( 0x8a ),
      |         ^~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[1]: *** [Makefile.housekeeping:943: bin/bigint_test.o] Error 1
make[1]: Leaving directory '/home/jaloo/slackware/qemu/qemu/roms/ipxe/src'
make: *** [Makefile:126: build-pxe-roms] Error 2