diff --git a/tools/BigProject/.gitignore b/tools/BigProject/.gitignore
new file mode 100644
index 0000000000..eddb1b57d6
--- /dev/null
+++ b/tools/BigProject/.gitignore
@@ -0,0 +1,5 @@
+# Default ignored files
+/shelf/
+.idea
+.mps
+_spreferences
\ No newline at end of file
diff --git a/tools/BigProject/.idea/modules.xml b/tools/BigProject/.idea/modules.xml
new file mode 100644
index 0000000000..eee099c388
--- /dev/null
+++ b/tools/BigProject/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tools/BigProject/.idea/vcs.xml b/tools/BigProject/.idea/vcs.xml
new file mode 100644
index 0000000000..b2bdec2d71
--- /dev/null
+++ b/tools/BigProject/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tools/BigProject/.mps/libraries.xml b/tools/BigProject/.mps/libraries.xml
new file mode 100644
index 0000000000..4c06cebed0
--- /dev/null
+++ b/tools/BigProject/.mps/libraries.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tools/BigProject/.mps/vcs.xml b/tools/BigProject/.mps/vcs.xml
new file mode 100644
index 0000000000..b4275b6f03
--- /dev/null
+++ b/tools/BigProject/.mps/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tools/BigProject/.run/BigProjectGenerator.run.xml b/tools/BigProject/.run/BigProjectGenerator.run.xml
new file mode 100644
index 0000000000..7615e80b09
--- /dev/null
+++ b/tools/BigProject/.run/BigProjectGenerator.run.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tools/BigProject/BigProject.iml b/tools/BigProject/BigProject.iml
new file mode 100644
index 0000000000..c90834f2d6
--- /dev/null
+++ b/tools/BigProject/BigProject.iml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/tools/generateBigProject/src/com/mbeddr/BigProjectGenerator.java b/tools/BigProject/src/com/mbeddr/BigProjectGenerator.java
similarity index 77%
rename from tools/generateBigProject/src/com/mbeddr/BigProjectGenerator.java
rename to tools/BigProject/src/com/mbeddr/BigProjectGenerator.java
index dee938dd93..491d20057f 100644
--- a/tools/generateBigProject/src/com/mbeddr/BigProjectGenerator.java
+++ b/tools/BigProject/src/com/mbeddr/BigProjectGenerator.java
@@ -6,20 +6,30 @@
public class BigProjectGenerator {
- private static File projectDir = new File("P:\\mbeddr.core-2020.1");
- private static File modulesXml = new File(projectDir + "/tmp/allProject/.mps/modules.xml");
+ private static final String MODULES_XML_PATH = "/tools/BigProject/.mps/modules.xml";
private static int totalLanguages = 0;
private static int totalSolutions = 0;
private static int totalDevkits = 0;
public static void main(String[] args) throws Exception {
- modulesXml.getParentFile().mkdirs();
+ File projectDir = new File(System.getProperty("user.dir"));
+ while (!new File(projectDir, ".git").exists()) {
+ projectDir = projectDir.getParentFile();
+ if (projectDir == null) {
+ System.err.print("Error: could not determine project directory root");
+ System.exit(-1);
+ }
+ }
+
+ System.out.println("Searching for modules under " + projectDir);
File langDir = new File(projectDir + "/code/languages");
File testsDir = new File(projectDir + "/code/tests");
+ File modulesXml = new File(projectDir + MODULES_XML_PATH);
+ modulesXml.getParentFile().mkdirs();
BufferedWriter w = new BufferedWriter(new FileWriter(modulesXml));
w.write("\n" +
@@ -38,6 +48,7 @@ public static void main(String[] args) throws Exception {
w.close();
+ System.out.println("Updated " + modulesXml);
System.out.println("=== TOTAL ===");
System.out.println("Languages: " + totalLanguages);
System.out.println("Solutions: " + totalSolutions);