[releng] Add Compiles tracing option
diff --git a/examples/org.eclipse.ocl.examples.codegen/.options b/examples/org.eclipse.ocl.examples.codegen/.options
index 1c397b8..f413438 100644
--- a/examples/org.eclipse.ocl.examples.codegen/.options
+++ b/examples/org.eclipse.ocl.examples.codegen/.options
@@ -15,3 +15,5 @@
 
 # Turn on tracing of the classpath synthesis 
 org.eclipse.ocl.examples.codegen/classPath=false
+# Turn on tracing of the explicit compilations 
+org.eclipse.ocl.examples.codegen/compiles=false
diff --git a/examples/org.eclipse.ocl.examples.codegen/src/org/eclipse/ocl/examples/codegen/dynamic/JavaFileUtil.java b/examples/org.eclipse.ocl.examples.codegen/src/org/eclipse/ocl/examples/codegen/dynamic/JavaFileUtil.java
index 546ebf0..68a6d92 100644
--- a/examples/org.eclipse.ocl.examples.codegen/src/org/eclipse/ocl/examples/codegen/dynamic/JavaFileUtil.java
+++ b/examples/org.eclipse.ocl.examples.codegen/src/org/eclipse/ocl/examples/codegen/dynamic/JavaFileUtil.java
@@ -57,6 +57,7 @@
 public abstract class JavaFileUtil
 {
 	public static final @NonNull TracingOption CLASS_PATH = new TracingOption(CodeGenConstants.PLUGIN_ID, "classPath");
+	public static final @NonNull TracingOption COMPILES = new TracingOption(CodeGenConstants.PLUGIN_ID, "compiles");
 
 	/**
 	 * When running maven/tycho tests locally a bin folder may leave helpful content hiding what will fail
@@ -133,7 +134,36 @@
 				compilationOptions.add("-cp");
 				compilationOptions.add(classpath.getClasspath());
 			}
-
+			if (COMPILES.isActive()) {
+				StringBuilder s = new StringBuilder();
+				s.append("java");
+				boolean isCP = false;
+				for (String compilationOption : compilationOptions) {
+					if (compilationOption.startsWith("-")) {
+						s.append("\n\t");
+					}
+					if (isCP) {
+						boolean isFirst = true;
+						for (String entry : compilationOption.split(System.getProperty("path.separator"))) {
+							if (!isFirst) {
+								s.append("\n\t\t");
+							}
+							s.append(entry);
+							isFirst = false;
+						}
+					}
+					else {
+						s.append(compilationOption);
+					}
+					s.append(" ");
+					isCP = "-cp".equals(compilationOption);
+				}
+				for (JavaFileObject compilationUnit : compilationUnits) {
+					s.append("\n\t");
+					s.append(compilationUnit.toUri().toString());
+				}
+				COMPILES.println(s.toString());
+			}
 			//			System.out.printf("%6.3f getTask\n", 0.001 * (System.currentTimeMillis()-base));
 			CompilationTask compilerTask = compiler2.getTask(null, stdFileManager2, diagnostics, compilationOptions, null, compilationUnits);
 			//			System.out.printf("%6.3f call\n", 0.001 * (System.currentTimeMillis()-base));