I need to implement a subset of the make build tool using Node.js. Also, the expected output has been made as close to the make tool as possible -- when in doubt, compare your output against make.
Download jsmake.js. Complete the functions for Target.prototype. You may modify the code as you see fit.
This assignment is organized in terms of increasingly difficult Makefiles. Make sure that code produces the correct output for the simpler version before moving on to harder variants.
Your code handles example1. This version uses dependencies and executes some commands to build a Java program. The output of your code should match output_EXPECTED exactly
Code handles example2 as well. This version makes use of 'phony' targets -- that is, targets that do not create any files on the file system. The test script also includes an example where you must compare the age of the target and its dependencies.
Code handles example3 in addition to example1 and example2. This version includes support for handling errors more gracefully and makes use of variables. Once again, the output should match exactly.
Finally, (and only if you can perfectly handle the first 3 examples), add support to handle Make's special automatic variables, described at [login to view URL] For every 2 automatic variables you support, you can earn 1 point of extra credit, up to a total of 5 points.