本文整理汇总了Java中org.gradle.nativeplatform.toolchain.Clang类的典型用法代码示例。如果您正苦于以下问题:Java Clang类的具体用法?Java Clang怎么用?Java Clang使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
Clang类属于org.gradle.nativeplatform.toolchain包,在下文中一共展示了Clang类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: addToolChain
import org.gradle.nativeplatform.toolchain.Clang; //导入依赖的package包/类
@Defaults
public static void addToolChain(NativeToolChainRegistryInternal toolChainRegistry, ServiceRegistry serviceRegistry) {
final FileResolver fileResolver = serviceRegistry.get(FileResolver.class);
final ExecActionFactory execActionFactory = serviceRegistry.get(ExecActionFactory.class);
final Instantiator instantiator = serviceRegistry.get(Instantiator.class);
final BuildOperationProcessor buildOperationProcessor = serviceRegistry.get(BuildOperationProcessor.class);
final CompilerMetaDataProviderFactory metaDataProviderFactory = serviceRegistry.get(CompilerMetaDataProviderFactory.class);
toolChainRegistry.registerFactory(Clang.class, new NamedDomainObjectFactory<Clang>() {
public Clang create(String name) {
return instantiator.newInstance(ClangToolChain.class, name, buildOperationProcessor, OperatingSystem.current(), fileResolver, execActionFactory, metaDataProviderFactory, instantiator);
}
});
toolChainRegistry.registerDefaultToolChain(ClangToolChain.DEFAULT_NAME, Clang.class);
}
示例2: IncrementalNativeCompiler
import org.gradle.nativeplatform.toolchain.Clang; //导入依赖的package包/类
public IncrementalNativeCompiler(TaskInternal task, FileHasher hasher, CompilationStateCacheFactory compilationStateCacheFactory, Compiler<T> delegateCompiler, NativeToolChain toolChain, DirectoryFileTreeFactory directoryFileTreeFactory) {
this.task = task;
this.hasher = hasher;
this.compilationStateCacheFactory = compilationStateCacheFactory;
this.delegateCompiler = delegateCompiler;
this.directoryFileTreeFactory = directoryFileTreeFactory;
this.importsAreIncludes = Clang.class.isAssignableFrom(toolChain.getClass()) || Gcc.class.isAssignableFrom(toolChain.getClass());
}
示例3: addToolChain
import org.gradle.nativeplatform.toolchain.Clang; //导入依赖的package包/类
@Mutate
public static void addToolChain(NativeToolChainRegistryInternal toolChainRegistry, ServiceRegistry serviceRegistry) {
final FileResolver fileResolver = serviceRegistry.get(FileResolver.class);
final ExecActionFactory execActionFactory = serviceRegistry.get(ExecActionFactory.class);
final Instantiator instantiator = serviceRegistry.get(Instantiator.class);
final CompilerMetaDataProviderFactory metaDataProviderFactory = serviceRegistry.get(CompilerMetaDataProviderFactory.class);
toolChainRegistry.registerFactory(Clang.class, new NamedDomainObjectFactory<Clang>() {
public Clang create(String name) {
return instantiator.newInstance(ClangToolChain.class, name, OperatingSystem.current(), fileResolver, execActionFactory, metaDataProviderFactory, instantiator);
}
});
toolChainRegistry.registerDefaultToolChain(ClangToolChain.DEFAULT_NAME, Clang.class);
}
示例4: IncrementalNativeCompiler
import org.gradle.nativeplatform.toolchain.Clang; //导入依赖的package包/类
public IncrementalNativeCompiler(TaskInternal task, TaskArtifactStateCacheAccess cacheAccess, FileSnapshotter fileSnapshotter, Compiler<NativeCompileSpec> delegateCompiler, NativeToolChain toolChain) {
this.task = task;
this.cacheAccess = cacheAccess;
this.fileSnapshotter = fileSnapshotter;
this.delegateCompiler = delegateCompiler;
this.importsAreIncludes = Clang.class.isAssignableFrom(toolChain.getClass()) || Gcc.class.isAssignableFrom(toolChain.getClass());
}
示例5: configureToolchain
import org.gradle.nativeplatform.toolchain.Clang; //导入依赖的package包/类
/**
* Configure toolchain for a platform.
*/
public static void configureToolchain(
NativeToolChainRegistry toolchainRegistry,
final String toolchainName,
final NdkHandler ndkHandler) {
final Toolchain ndkToolchain = Toolchain.getByName(toolchainName);
toolchainRegistry.create("ndk-" + toolchainName,
toolchainName.equals("gcc") ? Gcc.class : Clang.class,
new Action<GccCompatibleToolChain>() {
@Override
public void execute(GccCompatibleToolChain toolchain) {
// Configure each platform.
for (Abi it : ndkHandler.getSupportedAbis()) {
final Abi abi = it;
toolchain.target(abi.getName(), new Action<GccPlatformToolChain>() {
@Override
public void execute(GccPlatformToolChain targetPlatform) {
if (Toolchain.GCC.equals(ndkToolchain)) {
String gccPrefix = abi.getGccExecutablePrefix();
targetPlatform.getcCompiler()
.setExecutable(gccPrefix + "-gcc");
targetPlatform.getCppCompiler()
.setExecutable(gccPrefix + "-g++");
targetPlatform.getLinker()
.setExecutable(gccPrefix + "-g++");
targetPlatform.getAssembler()
.setExecutable(gccPrefix + "-as");
targetPlatform.getStaticLibArchiver()
.setExecutable(gccPrefix + "-ar");
}
// By default, gradle will use -Xlinker to pass arguments to the linker.
// Removing it as it prevents -sysroot from being properly set.
targetPlatform.getLinker().withArguments(
new Action<List<String>>() {
@Override
public void execute(List<String> args) {
args.removeAll(Collections.singleton("-Xlinker"));
}
});
}
});
toolchain.path(ndkHandler.getCCompiler(abi).getParentFile());
}
}
});
}