summaryrefslogtreecommitdiffstats
path: root/src/com/craftinginterpreters/lox/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/craftinginterpreters/lox/CMakeLists.txt')
-rw-r--r--src/com/craftinginterpreters/lox/CMakeLists.txt16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/com/craftinginterpreters/lox/CMakeLists.txt b/src/com/craftinginterpreters/lox/CMakeLists.txt
new file mode 100644
index 0000000..d2807e6
--- /dev/null
+++ b/src/com/craftinginterpreters/lox/CMakeLists.txt
@@ -0,0 +1,16 @@
+get_target_property(GENERATE_AST_JAR GenerateAst JAR_FILE)
+
+set(EXPR_JAVA_FILENAME ${CMAKE_CURRENT_BINARY_DIR}/Expr.java CACHE INTERNAL "")
+
+add_custom_command(OUTPUT ${EXPR_JAVA_FILENAME}
+ COMMAND java -jar ${GENERATE_AST_JAR} ${CMAKE_CURRENT_BINARY_DIR}
+ DEPENDS GenerateAst)
+
+add_jar(Lox
+ Lox.java
+ TokenType.java
+ Token.java
+ Scanner.java
+ ${EXPR_JAVA_FILENAME}
+ AstPrinter.java
+ ENTRY_POINT com/craftinginterpreters/lox/Lox)