Shake
SHell mAKE
NOTE:
shake
has been depricated by bake
.
@COMPILECMD
has been replaced by @BAKE
.
The bake repository tracks the most up to date
versions of all implementations.
Bake mirrors:
Usage: ./shake <input_file>
./skake runs the value of @COMPILECMD.
The value of @COMPILECMD is read from <input_file> in is whatever comes after '@COMPILECMD ' until the end of the line.
Inside the value of @COMPILECMD all mentions of '$@' are replaced with <input_file>.
The point of this script is ease to compialation of singe source file (toy) programs.
Rationale
I make many example/test files, many require linking and trying to remember which libraries are dependencies and copying the right command from the source file gets old, fast.
Example
$ cat test/hw.c
// @COMPILECMD gcc $@ -o hw.out
#include <stdio.h>
void main(){
puts("Hello world");
}
$ ./shake test/hw.c
$ ./hw.out
Hello world
Description
Languages
Shell
91%
C
9%