[APITESTS][NTVDM][SPOOLSV] Add the missing ENABLE_EXPORTS property as these EXE targets have function exports.

This became a requirement, following a previous CMake update.
Otherwise the built EXEs would not export their intended functions.

Addendum to commit d8e92b5a (see PR #1335)
CORE-15406

[LOADCONFIG] The GCC rant had nothing to do with GCC, but everything with CMake...

[SPOOLSV] Add the missing exported stubs.
This commit is contained in:
Hermès Bélusca-Maïto 2021-12-04 01:08:20 +01:00
parent addf1e87fe
commit 957e566a23
No known key found for this signature in database
GPG key ID: 3B2539C65E7B93D0
6 changed files with 36 additions and 10 deletions

View file

@ -7,16 +7,16 @@ list(APPEND SOURCE
loadconfig.h)
add_executable(loadconfig_apitest ${SOURCE} testlist.c ${CMAKE_CURRENT_BINARY_DIR}/loadconfig_apitest.def)
set_target_properties(loadconfig_apitest
PROPERTIES
ENABLE_EXPORTS TRUE
DEFINE_SYMBOL "")
target_link_libraries(loadconfig_apitest wine ${PSEH_LIB})
set_module_type(loadconfig_apitest win32cui)
add_importlibs(loadconfig_apitest msvcrt kernel32 ntdll)
#add_pch(loadconfig_apitest loadconfig.h SOURCE)
add_rostests_file(TARGET loadconfig_apitest)
# Tell GCC again that we are really interested in exporting symols (who would have figured that we want to use the .def we specified before?)
set_target_properties(loadconfig_apitest
PROPERTIES
ENABLE_EXPORTS TRUE
DEFINE_SYMBOL "")
fixup_load_config(loadconfig_apitest)

View file

@ -110,6 +110,11 @@ add_executable(ntdll_apitest
testdata.rc
${CMAKE_CURRENT_BINARY_DIR}/ntdll_apitest.def)
set_target_properties(ntdll_apitest
PROPERTIES
ENABLE_EXPORTS TRUE
DEFINE_SYMBOL "")
target_link_libraries(ntdll_apitest wine uuid ${PSEH_LIB})
set_module_type(ntdll_apitest win32cui)
add_importlibs(ntdll_apitest msvcrt advapi32 kernel32 ntdll)

View file

@ -41,6 +41,11 @@ add_executable(shell32_apitest
resource.rc
${CMAKE_CURRENT_BINARY_DIR}/shell32_apitest.def)
set_target_properties(shell32_apitest
PROPERTIES
ENABLE_EXPORTS TRUE
DEFINE_SYMBOL "")
target_link_libraries(shell32_apitest wine uuid ${PSEH_LIB} cpprt atl_classes)
set_module_type(shell32_apitest win32cui)
add_importlibs(shell32_apitest user32 gdi32 shell32 ole32 oleaut32 advapi32 shlwapi msvcrt kernel32 ntdll)

View file

@ -669,8 +669,10 @@ function(set_module_type MODULE TYPE)
if(TYPE STREQUAL kernel)
# Kernels are executables with exports
set_property(TARGET ${MODULE} PROPERTY ENABLE_EXPORTS TRUE)
set_target_properties(${MODULE} PROPERTIES DEFINE_SYMBOL "")
set_target_properties(${MODULE}
PROPERTIES
ENABLE_EXPORTS TRUE
DEFINE_SYMBOL "")
endif()
if(${TYPE} STREQUAL win32ocx)

View file

@ -73,6 +73,11 @@ add_executable(ntvdm
ntvdm.rc
${CMAKE_CURRENT_BINARY_DIR}/ntvdm.def)
set_target_properties(ntvdm
PROPERTIES
ENABLE_EXPORTS TRUE
DEFINE_SYMBOL "")
add_pch(ntvdm ntvdm.h SOURCE)
set_module_type(ntvdm win32cui UNICODE IMAGEBASE 0x0F000000)
target_link_libraries(ntvdm fast486 ${PSEH_LIB})

View file

@ -22,9 +22,18 @@ list(APPEND SOURCE
rpcstubs.c
spoolfile.c
xcv.c
${CMAKE_CURRENT_BINARY_DIR}/winspool_s.c)
${CMAKE_CURRENT_BINARY_DIR}/winspool_s.c
${CMAKE_CURRENT_BINARY_DIR}/spoolsv_stubs.c)
add_executable(spoolsv ${SOURCE} spoolsv.rc)
add_executable(spoolsv
${SOURCE}
spoolsv.rc
${CMAKE_CURRENT_BINARY_DIR}/spoolsv.def)
set_target_properties(spoolsv
PROPERTIES
ENABLE_EXPORTS TRUE
DEFINE_SYMBOL "")
if(USE_CLANG_CL)
target_compile_options(spoolsv PRIVATE "-Wno-cast-calling-convention")