Karl Williamson wrote: > With commit 5f81fa4069cb15ccd77b1c4253c870df84c1788a, moving something > to mathoms.c is now simplified. Previously no C function prototype > was generated, so you had to add one yourself at the beginning of the > file. Some things required the parameter asserts to also be added > individually, and some functions required special handling in > makedef.pl. All of that is gone. > > To move a function to mathoms.c, simply cut and paste it to there, and > change its embed.fnc entry to additionally have the 'b' flag. If, for > some reason a function you'd like to be treated as mathoms can't be > moved from its current place, simply enclose it between > > #ifndef NO_MATHOMS > ... > #endif > > and add the 'b' flag in embed.fnc. Commit 3f1866a8f6c7a9d70d0c8bb1b4f20d2db63756f1 "embed.fnc: Alter 'b' flag meaning" broke a -DNO_MATHOMS win32 build. Once the --------------------------------------- while (<$mathoms>) { ++$skip{$1} if /\A ( NATIVE_TO_NEED | ASCII_TO_NEED | Perl_\w+ ) \s* \( /axms; } -------------------------------------- code was removed from makedef.pl, makedef.pl started putting all these funcs in perldll.def, which created an symbol dep inside perl52*.dll requiring that symbol for perl52*.dll export table, but the symbol was never compiled because of -DNO_MATHOMS. I haven't been following blead in 2017 and not tried to rebase my fork for 2 years so this breakage slipped in. This same link failure is still in 5.27.11 when doing -DNO_MATHOMS on Win32. ----------------------------------------- cl -c -nologo -GF -W3 -O1 -MD -Zi -DNDEBUG -GL -DWIN32 -D_CONSOLE -DNO _STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DNO_MATHOMS -DPE RL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DWIN32_NO_REGIS TRY -DPERLDLL -O1 -MD -Zi -DNDEBUG -GL -DVERSION=\"1.38\" -DXS_VERSION=\"1 .38\" "-I..\..\lib\CORE" -DLIBC="msvcrt.lib" DynaLoader.c DynaLoader.c C:\p527\srcnew\miniperl.exe "-I..\..\lib" "-I..\..\lib" -MExtUtils::Command -e r m_rf -- ..\..\DynaLoader.obj C:\p527\srcnew\miniperl.exe "-I..\..\lib" "-I..\..\lib" -MExtUtils::Command -e c p -- DynaLoader.obj ..\..\DynaLoader.obj link -dll -out:..\perl525.dll "/manifestdependency:type='Win32' name='Microsoft. Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyTo ken='6595b64144ccf1df' language='*'" -subsystem:console -nologo -nodefaultlib -d ebug -opt:ref,icf -ltcg -libpath:"c:\perl\lib\CORE" -machine:x86 \ @Extensions_static \ @C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\mk2076_2358_5 if exist ..\perl525.dll.manifest mt -nologo -manifest ..\perl525.dll.manifest -o utputresource:..\perl525.dll;2 && if exist ..\perl525.dll.manife st del ..\perl525.dll.manifest perl525.exp : error LNK2001: unresolved external symbol _ASCII_TO_NEED perl525.exp : error LNK2001: unresolved external symbol _NATIVE_TO_NEED perl525.exp : error LNK2001: unresolved external symbol _Perl_custom_op_desc perl525.exp : error LNK2001: unresolved external symbol _Perl_custom_op_name perl525.exp : error LNK2001: unresolved external symbol _Perl_do_binmode perl525.exp : error LNK2001: unresolved external symbol _Perl_do_open9 perl525.exp : error LNK2001: unresolved external symbol _Perl_fprintf_nocontext perl525.exp : error LNK2001: unresolved external symbol _Perl_gv_efullname perl525.exp : error LNK2001: unresolved external symbol _Perl_gv_fullname perl525.exp : error LNK2001: unresolved external symbol _Perl_init_i18nl14n perl525.exp : error LNK2001: unresolved external symbol _Perl_isALNUM_lazy perl525.exp : error LNK2001: unresolved external symbol _Perl_isIDFIRST_lazy perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_alnum perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_alnum_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_alnumc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_alnumc_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_alpha perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_alpha_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_ascii perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_ascii_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_blank perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_blank_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_cntrl perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_cntrl_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_digit perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_digit_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_graph perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_graph_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_idfirst perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_idfirst_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_lower perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_lower_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_print perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_print_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_punct perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_punct_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_space perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_space_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_upper perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_upper_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_xdigit perl525.exp : error LNK2001: unresolved external symbol _Perl_is_uni_xdigit_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_alnum perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_alnumc perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_alpha perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_ascii perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_blank perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_char perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_cntrl perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_digit perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_graph perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_idcont perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_idfirst perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_lower perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_mark perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_perl_space perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_perl_word perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_posix_digi t perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_print perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_punct perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_space perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_upper perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_xdigit perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_xidcont perl525.exp : error LNK2001: unresolved external symbol _Perl_is_utf8_xidfirst perl525.exp : error LNK2001: unresolved external symbol _Perl_pack_cat perl525.exp : error LNK2001: unresolved external symbol _Perl_pad_compname_type perl525.exp : error LNK2001: unresolved external symbol _Perl_printf_nocontext perl525.exp : error LNK2001: unresolved external symbol _Perl_save_iv perl525.exp : error LNK2001: unresolved external symbol _Perl_save_list perl525.exp : error LNK2001: unresolved external symbol _Perl_save_long perl525.exp : error LNK2001: unresolved external symbol _Perl_save_nogv perl525.exp : error LNK2001: unresolved external symbol _Perl_sv_iv perl525.exp : error LNK2001: unresolved external symbol _Perl_sv_nounlocking perl525.exp : error LNK2001: unresolved external symbol _Perl_sv_nv perl525.exp : error LNK2001: unresolved external symbol _Perl_sv_pvbyten perl525.exp : error LNK2001: unresolved external symbol _Perl_sv_pvn perl525.exp : error LNK2001: unresolved external symbol _Perl_sv_pvn_nomg perl525.exp : error LNK2001: unresolved external symbol _Perl_sv_pvutf8n perl525.exp : error LNK2001: unresolved external symbol _Perl_sv_uv perl525.exp : error LNK2001: unresolved external symbol _Perl_to_uni_lower_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_to_uni_title_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_to_uni_upper_lc perl525.exp : error LNK2001: unresolved external symbol _Perl_unpack_str perl525.exp : error LNK2001: unresolved external symbol _Perl_utf8_to_uvchr perl525.exp : error LNK2001: unresolved external symbol _Perl_utf8_to_uvuni perl525.exp : error LNK2001: unresolved external symbol _Perl_valid_utf8_to_uvun i ..\perl525.dll : fatal error LNK1120: 87 unresolved externals b88-dmake: Error code 224, while making '..\perl525.dll' C:\p527\srcnew\win32> -----------------------------------------Thread Previous | Thread Next