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.compaq;
21
22 import java.io.File;
23 import java.util.Vector;
24
25 import com.github.maven_nar.cpptasks.CCTask;
26 import com.github.maven_nar.cpptasks.compiler.CommandLineLinker;
27 import com.github.maven_nar.cpptasks.compiler.LinkType;
28 import com.github.maven_nar.cpptasks.compiler.Linker;
29 import com.github.maven_nar.cpptasks.msvc.MsvcLibrarian;
30 import com.github.maven_nar.cpptasks.msvc.MsvcProcessor;
31 import com.github.maven_nar.cpptasks.types.LibraryTypeEnum;
32
33
34
35
36
37
38 public class CompaqVisualFortranLibrarian extends CommandLineLinker {
39 private static final CompaqVisualFortranLibrarian instance = new CompaqVisualFortranLibrarian();
40
41 public static CompaqVisualFortranLibrarian getInstance() {
42 return instance;
43 }
44
45 private CompaqVisualFortranLibrarian() {
46 super("lib", "/bogus", new String[] {
47 ".obj"
48 }, new String[0], ".lib", false, null);
49 }
50
51 @Override
52 protected void addImpliedArgs(final CCTask task, final boolean debug, final LinkType linkType,
53 final Vector<String> args) {
54 args.addElement("/nologo");
55 }
56
57 @Override
58 protected String getCommandFileSwitch(final String commandFile) {
59 return MsvcProcessor.getCommandFileSwitch(commandFile);
60 }
61
62 @Override
63 public File[] getLibraryPath() {
64 return new File[0];
65 }
66
67 @Override
68 public String[] getLibraryPatterns(final String[] libnames, final LibraryTypeEnum libType) {
69 return new String[0];
70 }
71
72 @Override
73 public Linker getLinker(final LinkType type) {
74 return CompaqVisualFortranLinker.getInstance().getLinker(type);
75 }
76
77 @Override
78 protected int getMaximumCommandLength() {
79 return MsvcLibrarian.getInstance().getMaximumCommandLength();
80 }
81
82 @Override
83 protected String[] getOutputFileSwitch(final String outputFile) {
84 return MsvcLibrarian.getInstance().getOutputFileSwitch(outputFile);
85 }
86
87 @Override
88 public boolean isCaseSensitive() {
89 return false;
90 }
91 }