mirror of
https://github.com/Kitware/CMake.git
synced 2025-12-31 02:39:48 -06:00
Refactor: Add IsAndroidGuiExecutable() method to cmTarget
This commit is contained in:
@@ -636,6 +636,12 @@ bool cmTarget::IsAppBundleOnApple() const
|
||||
this->GetPropertyAsBool("MACOSX_BUNDLE"));
|
||||
}
|
||||
|
||||
bool cmTarget::IsAndroidGuiExecutable() const
|
||||
{
|
||||
return (this->GetType() == cmStateEnums::EXECUTABLE && impl->IsAndroid &&
|
||||
this->GetPropertyAsBool("ANDROID_GUI"));
|
||||
}
|
||||
|
||||
std::vector<cmCustomCommand> const& cmTarget::GetPreBuildCommands() const
|
||||
{
|
||||
return impl->PreBuildCommands;
|
||||
@@ -1865,7 +1871,7 @@ const char* cmTarget::GetSuffixVariableInternal(
|
||||
case cmStateEnums::RuntimeBinaryArtifact:
|
||||
// Android GUI application packages store the native
|
||||
// binary as a shared library.
|
||||
return (impl->IsAndroid && this->GetPropertyAsBool("ANDROID_GUI")
|
||||
return (this->IsAndroidGuiExecutable()
|
||||
? "CMAKE_SHARED_LIBRARY_SUFFIX"
|
||||
: "CMAKE_EXECUTABLE_SUFFIX");
|
||||
case cmStateEnums::ImportLibraryArtifact:
|
||||
@@ -1906,7 +1912,7 @@ const char* cmTarget::GetPrefixVariableInternal(
|
||||
case cmStateEnums::RuntimeBinaryArtifact:
|
||||
// Android GUI application packages store the native
|
||||
// binary as a shared library.
|
||||
return (impl->IsAndroid && this->GetPropertyAsBool("ANDROID_GUI")
|
||||
return (this->IsAndroidGuiExecutable()
|
||||
? "CMAKE_SHARED_LIBRARY_PREFIX"
|
||||
: "");
|
||||
case cmStateEnums::ImportLibraryArtifact:
|
||||
|
||||
@@ -209,6 +209,9 @@ public:
|
||||
//! Return whether this target is an executable Bundle on Apple.
|
||||
bool IsAppBundleOnApple() const;
|
||||
|
||||
//! Return whether this target is a GUI executable on Android.
|
||||
bool IsAndroidGuiExecutable() const;
|
||||
|
||||
//! Get a backtrace from the creation of the target.
|
||||
cmListFileBacktrace const& GetBacktrace() const;
|
||||
|
||||
|
||||
@@ -1134,7 +1134,7 @@ void cmVisualStudio10TargetGenerator::WriteProjectConfigurationValues(Elem& e0)
|
||||
break;
|
||||
case cmStateEnums::EXECUTABLE:
|
||||
if (this->NsightTegra &&
|
||||
!this->GeneratorTarget->GetPropertyAsBool("ANDROID_GUI")) {
|
||||
!this->GeneratorTarget->Target->IsAndroidGuiExecutable()) {
|
||||
// Android executables are .so too.
|
||||
configType = "DynamicLibrary";
|
||||
} else {
|
||||
@@ -4015,8 +4015,7 @@ void cmVisualStudio10TargetGenerator::WriteItemDefinitionGroups(Elem& e0)
|
||||
// output manifest flags <Manifest></Manifest>
|
||||
this->WriteManifestOptions(e1, c);
|
||||
if (this->NsightTegra &&
|
||||
this->GeneratorTarget->GetType() == cmStateEnums::EXECUTABLE &&
|
||||
this->GeneratorTarget->GetPropertyAsBool("ANDROID_GUI")) {
|
||||
this->GeneratorTarget->Target->IsAndroidGuiExecutable()) {
|
||||
this->WriteAntBuildOptions(e1, c);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user