ultimatepp/uppsrc/ide/Builders/AndroidBuilderCommands.cpp
klugier 796fd82dde Ide, Android: Android builder now can works with higher versions of JDE - Java 1.8 will be forced.
git-svn-id: svn://ultimatepp.org/upp/trunk@16032 f0d560ea-af0d-0410-9eb7-867de7ffcac7
2021-07-25 15:58:25 +00:00

43 lines
1 KiB
C++

#include "AndroidBuilder.h"
namespace Upp {
AndroidBuilderCommands::AndroidBuilderCommands(
AndroidProject* projectPtr, AndroidSDK* sdkPtr, Jdk* jdkPtr)
: projectPtr(projectPtr)
, sdkPtr(sdkPtr)
, jdkPtr(jdkPtr)
{
ASSERT_(projectPtr, "Project is not initialized.");
ASSERT_(sdkPtr, "Android sdk is not initialized.");
ASSERT_(jdkPtr, "JDK is not initialized.");
}
String AndroidBuilderCommands::PreperCompileJavaSourcesCommand(
const Vector<String>& sources)
{
String cmd;
cmd << NormalizeExePath(jdkPtr->GetJavacPath());
if (jdkPtr->GetVersion().IsGreaterOrEqual(9)) {
cmd << " -source 1.8 -target 1.8";
}
cmd << (projectPtr->IsDebug() ? " -g" : " -g:none");
cmd << " -d "<< projectPtr->GetClassesDir();
cmd << " -classpath ";
cmd << NormalizeExePath(sdkPtr->AndroidJarPath()) << Java::GetDelimiter();
cmd << projectPtr->GetBuildDir();
cmd << " -sourcepath ";
cmd << projectPtr->GetJavaDir() << " ";
for(int i = 0; i < sources.GetCount(); ++i) {
cmd << sources[i];
if(i < sources.GetCount() - 1)
cmd << " ";
}
return cmd;
}
}