1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package com.github.maven_nar.cpptasks.intel;
21
22 import org.apache.tools.ant.types.Environment;
23
24 import com.github.maven_nar.cpptasks.compiler.LinkType;
25 import com.github.maven_nar.cpptasks.compiler.Linker;
26 import com.github.maven_nar.cpptasks.compiler.Processor;
27 import com.github.maven_nar.cpptasks.msvc.MsvcCompatibleCCompiler;
28
29
30
31
32
33
34 public final class IntelWin64CCompiler extends MsvcCompatibleCCompiler {
35 private static final IntelWin64CCompiler instance = new IntelWin64CCompiler(false, null);
36
37 public static IntelWin64CCompiler getInstance() {
38 return instance;
39 }
40
41 private IntelWin64CCompiler(final boolean newEnvironment, final Environment env) {
42 super("ecl", "-help", newEnvironment, env);
43 }
44
45 @Override
46 public Processor changeEnvironment(final boolean newEnvironment, final Environment env) {
47 if (newEnvironment || env != null) {
48 return new IntelWin64CCompiler(newEnvironment, env);
49 }
50 return this;
51 }
52
53 @Override
54 public Linker getLinker(final LinkType type) {
55
56
57
58 return IntelWin32Linker.getInstance().getLinker(type);
59 }
60
61 @Override
62 public int getMaximumCommandLength() {
63 return 32767;
64 }
65 }