makefile (572B)


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
CC = gcc
BIN = pong

SHELL := /bin/bash
LIBS = -lraylib -lm
OBJS = $(BIN).o

CFLAGS = -Wall -Wextra

# Only used for WASM compilation
RAYLIB_PATH = ~/Programming/raylib
EMCC_FLAGS = -Wall -DPLATFORM_WEB -s GL_ENABLE_GET_PROC_ADDRESS -s USE_GLFW=3
EMCC_SHELL_FILE = --shell-file $(RAYLIB_PATH)/src/minshell.html

.PHONY: all
all: $(BIN) $(BIN).html

$(BIN): $(OBJS)
	$(CC) -o $@ $^ $(CFLAGS) $(LIBS)

%.o: %.c
	$(CC) -c -o $@ $< $(CFLAGS)

%.html: %.c
	emcc -o $@ $< $(EMCC_FLAGS) lib/libraylib.a $(EMCC_SHELL_FILE)

%.js: %.c
	emcc -o $@ $< $(EMCC_FLAGS) lib/libraylib.a