diff --git a/build.sh b/build.sh
new file mode 100755
index 0000000..d0acb72
--- /dev/null
+++ b/build.sh
@@ -0,0 +1,8 @@
+#!/bin/bash
+
+export PATH=/usr/lib/jvm/java-13-openjdk-amd64/bin:$PATH
+export RAPIDWRIGHT_PATH=/usr/local/google/home/keithrothman/Downloads/RapidWright/RapidWright
+export CLASSPATH=${RAPIDWRIGHT_PATH}/bin:$(echo ${RAPIDWRIGHT_PATH}/jars/*.jar | tr ' ' ':')
+javac dump_features.java
+javac dump_clocking.java
+javac dump_bram.java
diff --git a/dump_bram.java b/dump_bram.java
index c2fbaeb..7391f92 100644
--- a/dump_bram.java
+++ b/dump_bram.java
@@ -301,7 +301,7 @@
                     }
                 }
             }
-            FileWriter vf = new FileWriter(f.replace(".dcp", ".features"), false);
+            FileWriter vf = new FileWriter(f.replace(".dcp", "_o3.features"), false);
             PrintWriter v = new PrintWriter(vf);
             for (Tile t : des.getDevice().getAllTiles()) {
                 TileTypeEnum tt = t.getTileTypeEnum();
diff --git a/dump_clocking.java b/dump_clocking.java
index d8ff310..d3d5a5d 100644
--- a/dump_clocking.java
+++ b/dump_clocking.java
@@ -430,7 +430,7 @@
                     tfeat.add("POD12_DCI_USED");
                 }
             }
-            FileWriter vf = new FileWriter(f.replace(".dcp", ".features"), false);
+            FileWriter vf = new FileWriter(f.replace(".dcp", "_o2.features"), false);
             PrintWriter v = new PrintWriter(vf);
             for (Tile t : des.getDevice().getAllTiles()) {
                 TileTypeEnum tt = t.getTileTypeEnum();
diff --git a/dump_features.java b/dump_features.java
index 4646846..3dbd107 100644
--- a/dump_features.java
+++ b/dump_features.java
@@ -375,7 +375,7 @@
                     }
                 }
             }
-            FileWriter vf = new FileWriter(f.replace(".dcp", ".features"), false);
+            FileWriter vf = new FileWriter(f.replace(".dcp", "_o1.features"), false);
             PrintWriter v = new PrintWriter(vf);
             for (Tile t : des.getDevice().getAllTiles()) {
                 TileTypeEnum tt = t.getTileTypeEnum();
