additionIdx = 0;
curAddition = additions.codeAdditions.get(0);
}
+
+ // Include the header for C/C++ files (.c/.cc/.cpp)
+ String name = file.getName();
+ if (name.endsWith(".c") || name.endsWith(".cc") || name.endsWith(".cpp")) {
+ newCode.addLine(CodeGeneratorUtils.Comment("Add the" + SpecNaming.CDSSpecGeneratedHeader + " header file"));
+ newCode.addLine(CodeGeneratorUtils.IncludeHeader(SpecNaming.CDSSpecGeneratedHeader));
+ newCode.addLine("");
+ }
try {
br = new BufferedReader(new FileReader(file));
}
static public void main(String[] args) {
- String[] dirNames = { Environment.REGISTER, Environment.MS_QUEUE,
- Environment.LINUXRWLOCKS, Environment.MCS_LOCK,
- Environment.DEQUE };
+// String[] dirNames = {
+// Environment.REGISTER,
+// Environment.MS_QUEUE,
+// Environment.LINUXRWLOCKS,
+// Environment.MCS_LOCK,
+// Environment.DEQUE,
+// Environment.TREIBER_STACK };
+ String[] dirNames = args;
for (int i = 0; i < dirNames.length; i++) {
String dirName = dirNames[i];
- System.out.println("/********** Processing " + dirName
+ System.out.println("/********** Generating CDSSpec files for " + dirName
+ " **********/");
CodeGenerator generator = new CodeGenerator(dirName);
generator.generateCode();