Created
August 8, 2014 22:41
-
-
Save anonymous/7e80670dcd3a091127e9 to your computer and use it in GitHub Desktop.
Gradle cross-compile definition
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ########################### | |
//GRADLE 1.12 definition | |
// ########################### | |
model { | |
platforms { | |
omnilinux_ppc { | |
architecture "arm" // HACK FOR PPC, ppc not recognized | |
operatingSystem "linux" | |
} | |
} | |
toolChains { | |
gcc(Gcc) { | |
// Uncomment to use a GCC install that is not in the PATH | |
// path "/usr/bin/gcc" | |
} | |
omnilinux_ppc(Gcc) { | |
def prefix = "powerpc-405-linux-gnu-" | |
CCompiler.executable = prefix + CCompiler.executable | |
cppCompiler.executable = prefix + cppCompiler.executable | |
assembler.executable = prefix + assembler.executable | |
linker.executable = prefix + linker.executable | |
staticLibArchiver.executable = prefix + staticLibArchiver.executable | |
addPlatformConfiguration(new OmniLinuxPpcConfiguration()) | |
} | |
} | |
} | |
class OmniLinuxPpcConfiguration implements TargetPlatformConfiguration { | |
boolean supportsPlatform(Platform platform) { | |
return platform.operatingSystem.linux && platform.architecture.arm // HACK FOR PPC | |
} | |
List<String> getCCompilerArgs() { | |
[] | |
} | |
List<String> getCppCompilerArgs() { | |
["-DOMNI_LINUX_PLATFORM"] | |
} | |
List<String> getObjectiveCCompilerArgs() { | |
[] | |
} | |
List<String> getObjectiveCppCompilerArgs() { | |
[] | |
} | |
List<String> getAssemblerArgs() { | |
[] | |
} | |
List<String> getLinkerArgs() { | |
[] | |
} | |
List<String> getStaticLibraryArchiverArgs() { | |
[] | |
} | |
} | |
// ########################### | |
// GRADLE 2.0 definition | |
// ########################### | |
model { | |
platforms { | |
omnilinux_ppc { | |
architecture "ppc" | |
operatingSystem "linux" | |
} | |
} | |
toolChains { | |
gcc(Gcc) { | |
// Uncomment to use a GCC install that is not in the PATH | |
// path "/usr/bin/gcc" | |
} | |
target("omnilinux_ppc") { | |
def prefix = "powerpc-405-linux-gnu-" | |
cppCompiler.executable = prefix + cppCompiler.executable | |
assembler.executable = prefix + assembler.executable | |
linker.executable = prefix + linker.executable | |
staticLibArchiver.executable = prefix + staticLibArchiver.executable | |
cppCompiler.withArguments { args -> | |
args << "-DOMNI_LINUX_PLATFORM" | |
} | |
} | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment