07:25:50 cc -arch x86_64 -o /Users/admin/build/ws/out/Release/obj.target/libffi/deps/libffi/src/x86/ffi64.o ../deps/libffi/src/x86/ffi64.c '-D_GLIBCXX_USE_CXX11_ABI=1' '-D_FILE_OFFSET_BITS=64' '-DNODE_OPENSSL_CONF_NAME=nodejs_conf' '-DICU_NO_USER_DATA_OVERRIDE' '-D_DARWIN_USE_64_BIT_INODE=1' '-DOPENSSL_NO_PINSHARED' '-DOPENSSL_THREADS' '-DFFI_STATIC_BUILD' -I../deps/libffi/include -I/Users/admin/build/ws/out/Release/obj/gen/libffi -O3 -gdwarf-2 -fno-strict-aliasing -fvisibility=hidden -mmacosx-version-min=13.5 -Wall -Wendif-labels -W -Wno-unused-parameter -MMD -MF /Users/admin/build/ws/out/Release/.deps//Users/admin/build/ws/out/Release/obj.target/libffi/deps/libffi/src/x86/ffi64.o.d.raw -c
07:25:50 ../deps/libffi/src/x86/ffiw64.c:61:10: error: use of undeclared identifier 'FFI_GNUW64'; did you mean 'FFI_WIN64'?
07:25:50 61 | case FFI_GNUW64:
07:25:50 | ^~~~~~~~~~
07:25:50 | FFI_WIN64
07:25:50 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:50 48 | FFI_WIN64,
07:25:50 | ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:61:10: error: duplicate case value 'FFI_WIN64'
07:25:50 61 | case FFI_GNUW64:
07:25:50 | ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:60:10: note: previous case defined here
07:25:50 60 | case FFI_WIN64:
07:25:50 | ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:74:23: error: use of undeclared identifier 'FFI_GNUW64'; did you mean 'FFI_WIN64'?
07:25:50 74 | if (cif->abi == FFI_GNUW64)
07:25:50 | ^~~~~~~~~~
07:25:50 | FFI_WIN64
07:25:50 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:50 48 | FFI_WIN64,
07:25:50 | ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:87:12: error: use of undeclared identifier 'FFI_TYPE_SMALL_STRUCT_4B'
07:25:50 87 | flags = FFI_TYPE_SMALL_STRUCT_4B;
07:25:50 | ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:90:12: error: use of undeclared identifier 'FFI_TYPE_SMALL_STRUCT_2B'
07:25:50 90 | flags = FFI_TYPE_SMALL_STRUCT_2B;
07:25:50 | ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:93:12: error: use of undeclared identifier 'FFI_TYPE_SMALL_STRUCT_1B'
07:25:50 93 | flags = FFI_TYPE_SMALL_STRUCT_1B;
07:25:50 | ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:238:35: warning: excess elements in array initializer [-Wexcess-initializers]
07:25:50 238 | 0xff, 0x25, 0x07, 0x00, 0x00, 0x00,
07:25:50 | ^~~~
07:25:50 ../deps/libffi/src/x86/ffiw64.c:242:26: error: no member named 'tramp' in 'ffi_closure'
07:25:50 242 | char *tramp = closure->tramp;
07:25:50 | ~~~~~~~ ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:247:10: error: use of undeclared identifier 'FFI_GNUW64'; did you mean 'FFI_WIN64'?
07:25:50 247 | case FFI_GNUW64:
07:25:50 | ^~~~~~~~~~
07:25:50 | FFI_WIN64
07:25:50 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:50 48 | FFI_WIN64,
07:25:50 | ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:247:10: error: duplicate case value 'FFI_WIN64'
07:25:50 247 | case FFI_GNUW64:
07:25:50 | ^
07:25:50 ../deps/libffi/src/x86/ffiw64.c:246:10: note: previous case defined here
07:25:50 246 | case FFI_WIN64:
07:25:50 | ^
07:25:50 1 warning and 9 errors generated.
07:25:50 make[2]: *** [/Users/admin/build/ws/out/Release/obj.target/libffi/deps/libffi/src/x86/ffiw64.o] Error 1
07:25:50 make[2]: *** Waiting for unfinished jobs....
07:25:51 ../deps/libffi/src/x86/ffi64.c:410:19: error: use of undeclared identifier 'FFI_EFI64'; did you mean 'FFI_WIN64'?
07:25:51 410 | if (cif->abi == FFI_EFI64 || cif->abi == FFI_GNUW64)
07:25:51 | ^~~~~~~~~
07:25:51 | FFI_WIN64
07:25:51 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:51 48 | FFI_WIN64,
07:25:51 | ^
07:25:51 ../deps/libffi/src/x86/ffi64.c:410:44: error: use of undeclared identifier 'FFI_GNUW64'; did you mean 'FFI_WIN64'?
07:25:51 410 | if (cif->abi == FFI_EFI64 || cif->abi == FFI_GNUW64)
07:25:51 | ^~~~~~~~~~
07:25:51 | FFI_WIN64
07:25:51 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:51 48 | FFI_WIN64,
07:25:51 | ^
07:25:51 ../deps/libffi/src/x86/ffi64.c:413:19: error: use of undeclared identifier 'FFI_UNIX64'; did you mean 'FFI_WIN64'?
07:25:51 413 | if (cif->abi != FFI_UNIX64)
07:25:51 | ^~~~~~~~~~
07:25:51 | FFI_WIN64
07:25:51 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:51 48 | FFI_WIN64,
07:25:51 | ^
07:25:51 ../deps/libffi/src/x86/ffi64.c:690:47: error: use of undeclared identifier 'FFI_GNUW64'; did you mean 'FFI_WIN64'?
07:25:51 690 | const int max_reg_struct_size = cif->abi == FFI_GNUW64 ? 8 : 16;
07:25:51 | ^~~~~~~~~~
07:25:51 | FFI_WIN64
07:25:51 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:51 48 | FFI_WIN64,
07:25:51 | ^
07:25:51 ../deps/libffi/src/x86/ffi64.c:707:19: error: use of undeclared identifier 'FFI_EFI64'; did you mean 'FFI_WIN64'?
07:25:51 707 | if (cif->abi == FFI_EFI64 || cif->abi == FFI_GNUW64)
07:25:51 | ^~~~~~~~~
07:25:51 | FFI_WIN64
07:25:51 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:51 48 | FFI_WIN64,
07:25:51 | ^
07:25:51 ../deps/libffi/src/x86/ffi64.c:707:44: error: use of undeclared identifier 'FFI_GNUW64'; did you mean 'FFI_WIN64'?
07:25:51 707 | if (cif->abi == FFI_EFI64 || cif->abi == FFI_GNUW64)
07:25:51 | ^~~~~~~~~~
07:25:51 | FFI_WIN64
07:25:51 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:51 48 | FFI_WIN64,
07:25:51 | ^
07:25:51 ../deps/libffi/src/x86/ffi64.c:774:26: error: no member named 'tramp' in 'ffi_closure'
07:25:51 774 | char *tramp = closure->tramp;
07:25:51 | ~~~~~~~ ^
07:25:51 ../deps/libffi/src/x86/ffi64.c:777:19: error: use of undeclared identifier 'FFI_EFI64'; did you mean 'FFI_WIN64'?
07:25:51 777 | if (cif->abi == FFI_EFI64 || cif->abi == FFI_GNUW64)
07:25:51 | ^~~~~~~~~
07:25:51 | FFI_WIN64
07:25:51 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:51 48 | FFI_WIN64,
07:25:51 | ^
07:25:51 ../deps/libffi/src/x86/ffi64.c:777:44: error: use of undeclared identifier 'FFI_GNUW64'; did you mean 'FFI_WIN64'?
07:25:51 777 | if (cif->abi == FFI_EFI64 || cif->abi == FFI_GNUW64)
07:25:51 | ^~~~~~~~~~
07:25:51 | FFI_WIN64
07:25:51 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:51 48 | FFI_WIN64,
07:25:51 | ^
07:25:51 ../deps/libffi/src/x86/ffi64.c:780:19: error: use of undeclared identifier 'FFI_UNIX64'; did you mean 'FFI_WIN64'?
07:25:51 780 | if (cif->abi != FFI_UNIX64)
07:25:51 | ^~~~~~~~~~
07:25:51 | FFI_WIN64
07:25:51 /Users/admin/build/ws/out/Release/obj/gen/libffi/ffitarget.h:48:5: note: 'FFI_WIN64' declared here
07:25:51 48 | FFI_WIN64,
07:25:51 | ^
07:25:51 10 errors generated.
07:25:51 make[2]: *** [/Users/admin/build/ws/out/Release/obj.target/libffi/deps/libffi/src/x86/ffi64.o] Error 1
Since the pkg macOS builds are universal (containing both arm64 and x64 Node.js binaries) we build the x64 part for those under Rosetta 2 on the same arm64 run.
Starting on 15 April (build for ed05549), the macos15-release-pkg builds are failing to build libffi.
e.g. (link is restricted to releasers but included for reference): https://ci-release.nodejs.org/job/iojs+release/11705/nodes=macos15-release-pkg/console
Since the pkg macOS builds are universal (containing both arm64 and x64 Node.js binaries) we build the x64 part for those under Rosetta 2 on the same arm64 run.