Skip to content

Commit 04f45b2

Browse files
committed
[cmake] Perform symbol exports depending on winx86 and winx64
1 parent a6976c0 commit 04f45b2

File tree

1 file changed

+44
-24
lines changed

1 file changed

+44
-24
lines changed

CMakeLists.txt

Lines changed: 44 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -462,32 +462,52 @@ endif()
462462
if(MSVC)
463463

464464
set(MSVC_EXPORTLIST
465-
??_7type_info@@6B@
466-
?nothrow@std@@3Unothrow_t@1@B
467-
_Init_thread_header
468-
_Init_thread_footer
469-
??_7type_info@@6B@
470-
?_Facet_Register@std@@YAXPEAV_Facet_base@1@@Z
465+
_Init_thread_header
466+
_Init_thread_footer
467+
?nothrow@std@@3Unothrow_t@1@B
468+
??_7type_info@@6B@
471469
)
472470

473-
set(MSVC_EXPORTLIST ${MSVC_EXPORTLIST}
474-
??2@YAPEAX_K@Z
475-
??3@YAXPEAX@Z
476-
??3@YAXPEAX_K@Z
477-
??_U@YAPEAX_K@Z
478-
??_V@YAXPEAX@Z
479-
??_V@YAXPEAX_K@Z
480-
??2@YAPEAX_KAEBUnothrow_t@std@@@Z
481-
??_U@YAPEAX_KAEBUnothrow_t@std@@@Z
482-
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@H@Z
483-
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
484-
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@N@Z
485-
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@PEBX@Z
486-
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@P6AAEAV01@AEAV01@@Z@Z
487-
??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z
488-
??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@PEBD@Z
489-
?_Facet_Register@std@@YAXPEAV_Facet_base@1@@Z
490-
)
471+
if(CMAKE_SIZEOF_VOID_P EQUAL 8)
472+
# new/delete variants needed when linking to static msvc runtime (esp. Debug)
473+
set(MSVC_EXPORTLIST ${MSVC_EXPORTLIST}
474+
??2@YAPEAX_K@Z
475+
??3@YAXPEAX@Z
476+
??_U@YAPEAX_K@Z
477+
??_V@YAXPEAX@Z
478+
??3@YAXPEAX_K@Z
479+
??_V@YAXPEAX_K@Z
480+
??2@YAPEAX_KAEBUnothrow_t@std@@@Z
481+
??_U@YAPEAX_KAEBUnothrow_t@std@@@Z
482+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@H@Z
483+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@M@Z
484+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@N@Z
485+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@PEBX@Z
486+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QEAAAEAV01@P6AAEAV01@AEAV01@@Z@Z
487+
??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@D@Z
488+
??$?6U?$char_traits@D@std@@@std@@YAAEAV?$basic_ostream@DU?$char_traits@D@std@@@0@AEAV10@PEBD@Z
489+
?_Facet_Register@std@@YAXPEAV_Facet_base@1@@Z
490+
)
491+
else()
492+
set(MSVC_EXPORTLIST ${MSVC_EXPORTLIST}
493+
??2@YAPAXI@Z
494+
??3@YAXPAX@Z
495+
??3@YAXPAXI@Z
496+
??_U@YAPAXI@Z
497+
??_V@YAXPAX@Z
498+
??_V@YAXPAXI@Z
499+
??2@YAPAXIABUnothrow_t@std@@@Z
500+
??_U@YAPAXIABUnothrow_t@std@@@Z
501+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@H@Z
502+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@M@Z
503+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@N@Z
504+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@PBX@Z
505+
??6?$basic_ostream@DU?$char_traits@D@std@@@std@@QAEAAV01@P6AAAV01@AAV01@@Z@Z
506+
??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@D@Z
507+
??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z
508+
?_Facet_Register@std@@YAXPAV_Facet_base@1@@Z
509+
)
510+
endif()
491511

492512
if(MSVC_VERSION LESS 1914)
493513
set(MSVC_EXPORTLIST ${MSVC_EXPORTLIST} ??3@YAXPAX0@Z ??_V@YAXPAX0@Z)

0 commit comments

Comments
 (0)