[Cmake-commits] CMake branch, next, updated. v3.6.0-740-ge572762
Brad King
brad.king at kitware.com
Fri Jul 8 10:36:38 EDT 2016
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "CMake".
The branch, next has been updated
via e57276271be7605ba5de06ff243bdcab2739a37c (commit)
via 9346e4b83a7a4acbc45d2936af73465439511b94 (commit)
from 91b5bee8a4aac38478c566de3da619f25fcf9057 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=e57276271be7605ba5de06ff243bdcab2739a37c
commit e57276271be7605ba5de06ff243bdcab2739a37c
Merge: 91b5bee 9346e4b
Author: Brad King <brad.king at kitware.com>
AuthorDate: Fri Jul 8 10:36:37 2016 -0400
Commit: CMake Topic Stage <kwrobot at kitware.com>
CommitDate: Fri Jul 8 10:36:37 2016 -0400
Merge topic 'windows-export-all-from-exe' into next
9346e4b8 Revert "Windows: Honor WINDOWS_EXPORT_ALL_SYMBOLS for executables with exports"
https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=9346e4b83a7a4acbc45d2936af73465439511b94
commit 9346e4b83a7a4acbc45d2936af73465439511b94
Author: Brad King <brad.king at kitware.com>
AuthorDate: Fri Jul 8 10:36:22 2016 -0400
Commit: Brad King <brad.king at kitware.com>
CommitDate: Fri Jul 8 10:36:22 2016 -0400
Revert "Windows: Honor WINDOWS_EXPORT_ALL_SYMBOLS for executables with exports"
This reverts commit ac0dcb715f3d5d0b208743535d376ef1bc6f072d.
diff --git a/Help/prop_tgt/WINDOWS_EXPORT_ALL_SYMBOLS.rst b/Help/prop_tgt/WINDOWS_EXPORT_ALL_SYMBOLS.rst
index 06c3e6d..3f48af8 100644
--- a/Help/prop_tgt/WINDOWS_EXPORT_ALL_SYMBOLS.rst
+++ b/Help/prop_tgt/WINDOWS_EXPORT_ALL_SYMBOLS.rst
@@ -5,9 +5,8 @@ This property is implemented only for MS-compatible tools on Windows.
Enable this boolean property to automatically create a module definition
(``.def``) file with all global symbols found in the input ``.obj`` files
-for a ``SHARED`` library (or executable with :prop_tgt:`ENABLE_EXPORTS`)
-on Windows. The module definition file will be passed to the linker
-causing all symbols to be exported from the ``.dll``.
+for a ``SHARED`` library on Windows. The module definition file will be
+passed to the linker causing all symbols to be exported from the ``.dll``.
For global *data* symbols, ``__declspec(dllimport)`` must still be used when
compiling against the code in the ``.dll``. All other function symbols will
be automatically exported and imported by callers. This simplifies porting
diff --git a/Help/release/dev/windows-export-all-from-exe.rst b/Help/release/dev/windows-export-all-from-exe.rst
deleted file mode 100644
index 48c16ec..0000000
--- a/Help/release/dev/windows-export-all-from-exe.rst
+++ /dev/null
@@ -1,5 +0,0 @@
-windows-export-all-from-exe
----------------------------
-
-* The :prop_tgt:`WINDOWS_EXPORT_ALL_SYMBOLS` target property now applies
- to executable targets with the :prop_tgt:`ENABLE_EXPORTS` property set.
diff --git a/Source/cmLocalVisualStudio7Generator.cxx b/Source/cmLocalVisualStudio7Generator.cxx
index e72abe9..c38e99c 100644
--- a/Source/cmLocalVisualStudio7Generator.cxx
+++ b/Source/cmLocalVisualStudio7Generator.cxx
@@ -1013,8 +1013,7 @@ void cmLocalVisualStudio7Generator::OutputBuildTool(
linkOptions.AddFlag("ModuleDefinitionFile", defFile.c_str());
}
- if ((target->GetType() == cmState::SHARED_LIBRARY ||
- target->IsExecutableWithExports()) &&
+ if (target->GetType() == cmState::SHARED_LIBRARY &&
this->Makefile->IsOn("CMAKE_SUPPORT_WINDOWS_EXPORT_ALL_SYMBOLS")) {
if (target->GetPropertyAsBool("WINDOWS_EXPORT_ALL_SYMBOLS")) {
linkOptions.AddFlag("ModuleDefinitionFile", "$(IntDir)/exportall.def");
@@ -1837,8 +1836,7 @@ void cmLocalVisualStudio7Generator::OutputTargetRules(
tool = this->FortranProject ? "VFPreLinkEventTool" : "VCPreLinkEventTool";
event.Start(tool);
bool addedPrelink = false;
- if ((target->GetType() == cmState::SHARED_LIBRARY ||
- target->IsExecutableWithExports()) &&
+ if (target->GetType() == cmState::SHARED_LIBRARY &&
this->Makefile->IsOn("CMAKE_SUPPORT_WINDOWS_EXPORT_ALL_SYMBOLS")) {
if (target->GetPropertyAsBool("WINDOWS_EXPORT_ALL_SYMBOLS")) {
addedPrelink = true;
diff --git a/Source/cmMakefileLibraryTargetGenerator.cxx b/Source/cmMakefileLibraryTargetGenerator.cxx
index 8761fce..380fd7d 100644
--- a/Source/cmMakefileLibraryTargetGenerator.cxx
+++ b/Source/cmMakefileLibraryTargetGenerator.cxx
@@ -519,8 +519,7 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules(
useWatcomQuote);
// maybe create .def file from list of objects
- if ((this->GeneratorTarget->GetType() == cmState::SHARED_LIBRARY ||
- this->GeneratorTarget->IsExecutableWithExports()) &&
+ if (this->GeneratorTarget->GetType() == cmState::SHARED_LIBRARY &&
this->Makefile->IsOn("CMAKE_SUPPORT_WINDOWS_EXPORT_ALL_SYMBOLS")) {
if (this->GeneratorTarget->GetPropertyAsBool(
"WINDOWS_EXPORT_ALL_SYMBOLS")) {
diff --git a/Source/cmNinjaNormalTargetGenerator.cxx b/Source/cmNinjaNormalTargetGenerator.cxx
index 81a1618..77d3901 100644
--- a/Source/cmNinjaNormalTargetGenerator.cxx
+++ b/Source/cmNinjaNormalTargetGenerator.cxx
@@ -472,8 +472,7 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement()
vars["FLAGS"], vars["LINK_FLAGS"], frameworkPath,
linkPath, &genTarget, useWatcomQuote);
if (this->GetMakefile()->IsOn("CMAKE_SUPPORT_WINDOWS_EXPORT_ALL_SYMBOLS") &&
- (gt.GetType() == cmState::SHARED_LIBRARY ||
- gt.IsExecutableWithExports())) {
+ gt.GetType() == cmState::SHARED_LIBRARY) {
if (gt.GetPropertyAsBool("WINDOWS_EXPORT_ALL_SYMBOLS")) {
std::string name_of_def_file = gt.GetSupportDirectory();
name_of_def_file += "/" + gt.GetName();
@@ -600,8 +599,7 @@ void cmNinjaNormalTargetGenerator::WriteLinkStatement()
}
// maybe create .def file from list of objects
- if ((gt.GetType() == cmState::SHARED_LIBRARY ||
- gt.IsExecutableWithExports()) &&
+ if (gt.GetType() == cmState::SHARED_LIBRARY &&
this->GetMakefile()->IsOn("CMAKE_SUPPORT_WINDOWS_EXPORT_ALL_SYMBOLS")) {
if (gt.GetPropertyAsBool("WINDOWS_EXPORT_ALL_SYMBOLS")) {
std::string cmakeCommand =
diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx
index 8476538..ceebf93 100644
--- a/Source/cmTarget.cxx
+++ b/Source/cmTarget.cxx
@@ -253,8 +253,7 @@ void cmTarget::SetMakefile(cmMakefile* mf)
this->TargetTypeValue == cmState::MODULE_LIBRARY) {
this->SetProperty("POSITION_INDEPENDENT_CODE", "True");
}
- if (this->TargetTypeValue == cmState::SHARED_LIBRARY ||
- this->TargetTypeValue == cmState::EXECUTABLE) {
+ if (this->TargetTypeValue == cmState::SHARED_LIBRARY) {
this->SetPropertyDefault("WINDOWS_EXPORT_ALL_SYMBOLS", CM_NULLPTR);
}
diff --git a/Source/cmVisualStudio10TargetGenerator.cxx b/Source/cmVisualStudio10TargetGenerator.cxx
index 50da41b..13e7c89 100644
--- a/Source/cmVisualStudio10TargetGenerator.cxx
+++ b/Source/cmVisualStudio10TargetGenerator.cxx
@@ -2343,8 +2343,7 @@ bool cmVisualStudio10TargetGenerator::ComputeLinkOptions(
"%(IgnoreSpecificDefaultLibraries)");
}
- if ((this->GeneratorTarget->GetType() == cmState::SHARED_LIBRARY ||
- this->GeneratorTarget->IsExecutableWithExports()) &&
+ if (this->GeneratorTarget->GetType() == cmState::SHARED_LIBRARY &&
this->Makefile->IsOn("CMAKE_SUPPORT_WINDOWS_EXPORT_ALL_SYMBOLS")) {
if (this->GeneratorTarget->GetPropertyAsBool(
"WINDOWS_EXPORT_ALL_SYMBOLS")) {
@@ -2507,8 +2506,7 @@ void cmVisualStudio10TargetGenerator::WriteEvents(
std::string const& configName)
{
bool addedPrelink = false;
- if ((this->GeneratorTarget->GetType() == cmState::SHARED_LIBRARY ||
- this->GeneratorTarget->IsExecutableWithExports()) &&
+ if (this->GeneratorTarget->GetType() == cmState::SHARED_LIBRARY &&
this->Makefile->IsOn("CMAKE_SUPPORT_WINDOWS_EXPORT_ALL_SYMBOLS")) {
if (this->GeneratorTarget->GetPropertyAsBool(
"WINDOWS_EXPORT_ALL_SYMBOLS")) {
diff --git a/Tests/RunCMake/AutoExportDll/AutoExport.cmake b/Tests/RunCMake/AutoExportDll/AutoExport.cmake
index bdddb38..3b2b2c5 100644
--- a/Tests/RunCMake/AutoExportDll/AutoExport.cmake
+++ b/Tests/RunCMake/AutoExportDll/AutoExport.cmake
@@ -3,11 +3,5 @@ set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS TRUE)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${autoexport_BINARY_DIR}/bin)
add_subdirectory(sub)
add_library(autoexport SHARED hello.cxx world.cxx foo.c)
-
add_executable(say say.cxx)
-if(MSVC)
- set_target_properties(say PROPERTIES ENABLE_EXPORTS ON)
- add_library(autoexport_for_exec SHARED hello2.c)
- target_link_libraries(autoexport_for_exec say)
-endif()
target_link_libraries(say autoexport autoexport2)
diff --git a/Tests/RunCMake/AutoExportDll/hello2.c b/Tests/RunCMake/AutoExportDll/hello2.c
deleted file mode 100644
index d4d6b72..0000000
--- a/Tests/RunCMake/AutoExportDll/hello2.c
+++ /dev/null
@@ -1,8 +0,0 @@
-#include <stdio.h>
-
-extern int own_auto_export_function(int i);
-
-void hello2()
-{
- printf("hello exec:%i", own_auto_export_function(41));
-}
diff --git a/Tests/RunCMake/AutoExportDll/say.cxx b/Tests/RunCMake/AutoExportDll/say.cxx
index 9ca8d31..0178688 100644
--- a/Tests/RunCMake/AutoExportDll/say.cxx
+++ b/Tests/RunCMake/AutoExportDll/say.cxx
@@ -18,14 +18,6 @@ int bar();
void hello();
void world();
-// test exports for executable target
-extern "C" {
-int own_auto_export_function(int i)
-{
- return i + 1;
-}
-}
-
int main()
{
// test static data (needs declspec to work)
-----------------------------------------------------------------------
Summary of changes:
Help/prop_tgt/WINDOWS_EXPORT_ALL_SYMBOLS.rst | 5 ++---
Help/release/dev/windows-export-all-from-exe.rst | 5 -----
Source/cmLocalVisualStudio7Generator.cxx | 6 ++----
Source/cmMakefileLibraryTargetGenerator.cxx | 3 +--
Source/cmNinjaNormalTargetGenerator.cxx | 6 ++----
Source/cmTarget.cxx | 3 +--
Source/cmVisualStudio10TargetGenerator.cxx | 6 ++----
Tests/RunCMake/AutoExportDll/AutoExport.cmake | 6 ------
Tests/RunCMake/AutoExportDll/hello2.c | 8 --------
Tests/RunCMake/AutoExportDll/say.cxx | 8 --------
10 files changed, 10 insertions(+), 46 deletions(-)
delete mode 100644 Help/release/dev/windows-export-all-from-exe.rst
delete mode 100644 Tests/RunCMake/AutoExportDll/hello2.c
hooks/post-receive
--
CMake
More information about the Cmake-commits
mailing list