Tue, 19 Sep 2023 19:29:19 +0200
check compilers before any dependency checks
0
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
1 | package de.unixwork.uwproj; |
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
2 | |
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
3 | import org.apache.velocity.VelocityContext; |
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
4 | import org.apache.velocity.app.VelocityEngine; |
42
becfbf7af928
add simple SLF4J provider - fixes #292
Mike Becker <universe@uap-core.de>
parents:
39
diff
changeset
|
5 | import org.slf4j.LoggerFactory; |
39
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
6 | |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
7 | import java.io.*; |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
8 | |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
9 | public class Main { |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
10 | |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
11 | static Project loadProjectFile(String fileName) { |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
12 | try { |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
13 | return new Project(new File(fileName)); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
14 | } catch (Exception e) { |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
15 | throw new RuntimeException(e); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
16 | } |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
17 | } |
0
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
18 | |
39
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
19 | static void writeConfigureScript(Writer out, String tplFileName, Project project) { |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
20 | var context = new VelocityContext(); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
21 | context.put("targets", project.getTargets()); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
22 | context.put("namedDependencies", project.getNamedDependencies()); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
23 | context.put("dependencies", project.getDependencies()); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
24 | context.put("options", project.getOptions()); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
25 | context.put("features", project.getFeatures()); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
26 | context.put("project", project); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
27 | context.put("vars", project.getVars()); |
67
e43d30273f74
check compilers before any dependency checks
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
42
diff
changeset
|
28 | context.put("languages", project.getLang()); |
39
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
29 | new VelocityEngine().getTemplate(tplFileName).merge(context, out); |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
30 | } |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
31 | |
42
becfbf7af928
add simple SLF4J provider - fixes #292
Mike Becker <universe@uap-core.de>
parents:
39
diff
changeset
|
32 | public static void main(String[] args) { |
39
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
33 | final var inFileName = "make/project.xml"; |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
34 | final var tplFileName = "make/configure.vm"; |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
35 | final var outFileName = "configure"; |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
36 | |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
37 | try (var out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(outFileName)))) { |
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
38 | writeConfigureScript(out, tplFileName, loadProjectFile(inFileName)); |
0
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
39 | } catch (Exception ex) { |
42
becfbf7af928
add simple SLF4J provider - fixes #292
Mike Becker <universe@uap-core.de>
parents:
39
diff
changeset
|
40 | LoggerFactory.getLogger(Main.class).error( |
becfbf7af928
add simple SLF4J provider - fixes #292
Mike Becker <universe@uap-core.de>
parents:
39
diff
changeset
|
41 | "Uncaught Exception", |
becfbf7af928
add simple SLF4J provider - fixes #292
Mike Becker <universe@uap-core.de>
parents:
39
diff
changeset
|
42 | ex |
becfbf7af928
add simple SLF4J provider - fixes #292
Mike Becker <universe@uap-core.de>
parents:
39
diff
changeset
|
43 | ); |
0
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
44 | } |
39
3ca85da78515
add RegressionTest - fixes #264
Mike Becker <universe@uap-core.de>
parents:
7
diff
changeset
|
45 | |
42
becfbf7af928
add simple SLF4J provider - fixes #292
Mike Becker <universe@uap-core.de>
parents:
39
diff
changeset
|
46 | System.out.println("Out: " + outFileName); |
0
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
47 | } |
38775db5fdf5
add existing source
Olaf Wintermann <olaf.wintermann@gmail.com>
parents:
diff
changeset
|
48 | } |