2023-10-03 15:01:24 +02:00
2023-10-03 15:01:38 +02:00
2023-10-03 15:01:12 +02:00

Shake

SHell mAKE

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 or 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
No description provided
Readme 39 KiB
Languages
Shell 91%
C 9%