diff options
author | Brad King <brad.king@kitware.com> | 2017-03-13 15:54:30 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2017-03-21 14:02:34 (GMT) |
commit | 075f6454092ae058add228eda8220a3680b2f9e4 (patch) | |
tree | c0bff4ce5eaf25b8e38d904f3cfb64ebfc13265b /Tests/ModuleDefinition/example_exe.c | |
parent | 21c4ec4ffe1c40382f6b435ff49eade31e1137f2 (diff) | |
download | CMake-075f6454092ae058add228eda8220a3680b2f9e4.zip CMake-075f6454092ae058add228eda8220a3680b2f9e4.tar.gz CMake-075f6454092ae058add228eda8220a3680b2f9e4.tar.bz2 |
Support WINDOWS_EXPORT_ALL_SYMBOLS with `.def` files
The `WINDOWS_EXPORT_ALL_SYMBOLS` target property exports all symbols
found in object files explicitly given to the linker. However, the
linker may also find additional symbols in dependencies and copy them
into the linked binary (e.g. from `msvcrt.lib`). Provide a way to
export an explicit list of such symbols by adding a `.def` file as a
source file.
Fixes: #16473
Diffstat (limited to 'Tests/ModuleDefinition/example_exe.c')
-rw-r--r-- | Tests/ModuleDefinition/example_exe.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Tests/ModuleDefinition/example_exe.c b/Tests/ModuleDefinition/example_exe.c index dff566f..8e86fc4 100644 --- a/Tests/ModuleDefinition/example_exe.c +++ b/Tests/ModuleDefinition/example_exe.c @@ -3,15 +3,19 @@ extern int __declspec(dllimport) example_dll_gen_function(void); #ifdef EXAMPLE_DLL_2 extern int __declspec(dllimport) example_dll_2_function(void); #endif +extern int __declspec(dllimport) split_dll_1(void); +extern int __declspec(dllimport) split_dll_2(void); + int example_exe_function(void) { return 0; } + int main(void) { return example_dll_function() + example_dll_gen_function() + #ifdef EXAMPLE_DLL_2 example_dll_2_function() + #endif - example_exe_function(); + split_dll_1() + split_dll_2() + example_exe_function(); } |