minimal black window

This commit is contained in:
2025-07-17 20:48:04 +02:00
parent b2af48e346
commit 036c5be9bf
5 changed files with 38 additions and 12 deletions
+2 -2
View File
@@ -16,9 +16,9 @@ depcomp
Makefile.in
configure~
config.status
margen
forge
*.tar.gz
configure
src/margen*
src/forge*
*.pkg.tar.zst
pkg
+2 -2
View File
@@ -1,4 +1,4 @@
AUTOMAKE_OPTIONS = foreign subdir-objects -Wall
bin_PROGRAMS = forge
forge_SOURCES = src/main.c src/args.c
include_HEADERS = src/main.h src/args.h src/config.h src/types.h
forge_SOURCES = src/main.c src/args.c src/forge.c
include_HEADERS = src/main.h src/args.h src/config.h src/types.h src/forge.h
+1 -5
View File
@@ -9,16 +9,12 @@ clean:
build:
@mkdir -p build
gcc -Wall src/*.c src/*.h -lm -o build/$(TARGET)
gcc -Wall src/*.c src/*.h -lglfw -lGL -lm -o build/$(TARGET)
.PHONY: install
install: build
cp -f build/$(TARGET) $(INSTALL_DIR)/$(TARGET)
.PHONY: time
time: build
time ./build/$(TARGET) $(TEST_ARGS)
.PHONY: valgrind
valgrind: build
valgrind --leak-check=full -s ./build/$(TARGET) $(TEST_ARGS)
+26 -1
View File
@@ -6,6 +6,11 @@ TODO
## Install
### Prerequisites
* libglfw
* libGL
### From release
See [Releases](https://github.com/klemek/forge/releases)
@@ -73,4 +78,24 @@ git commit -am "update arch sha256"
## Roadmap
TODO
- [ ] Basics
- [x] Create GLSL Window
- [ ] Load fragment shader into GLSL
- [ ] Read fragment shader from file
- [ ] Minimal working fragment sample
- [ ] Hot-reload fragment shader
- [ ] Force fullscreen
- [ ] Select screen as argument
- [ ] Midi
- [ ] Read Midi events
- [ ] Read midi mapping config file
- [ ] Write Midi events
- [ ] MVP
- [ ] Add required libraries in target build
- [ ] Include fragments with special directive
- [ ] Source mixing
- [ ] Save midi state
- [ ] Advanced
- [ ] Video input
- [ ] Feedback input
- [ ] Tap-tempo feature
+7 -2
View File
@@ -1,8 +1,13 @@
#include "args.h"
#include "config.h"
#include "forge.h"
#include <stdbool.h>
#include <stdio.h>
int main(int argc, char **argv) {
parameters params;
params = parse_args(argc, argv);
// TODO
puts(PACKAGE " " VERSION);
forge_run(params);
return 0;
}
}