29 lines
852 B
Makefile
29 lines
852 B
Makefile
CC ?= gcc
|
|
CFLAGS ?= -O2 -Wall -Wextra -Wpedantic -std=c11
|
|
CPPFLAGS ?= -D_POSIX_C_SOURCE=200809L -Iinclude
|
|
THREAD_FLAGS ?= -pthread
|
|
LDFLAGS ?=
|
|
|
|
OBJ = src/mightywatt.o src/mightywatt_app.o src/mightywatt_controller.o src/mightywatt_log.o src/mightywatt_sequence.o src/mwcli.o
|
|
BIN = mwcli
|
|
EXAMPLE_BIN = mw_controller_example
|
|
|
|
all: $(BIN) $(EXAMPLE_BIN)
|
|
|
|
$(BIN): $(OBJ)
|
|
$(CC) $(CFLAGS) $(THREAD_FLAGS) $(OBJ) -o $@ $(LDFLAGS)
|
|
|
|
$(EXAMPLE_BIN): src/mightywatt.o src/mightywatt_app.o src/mightywatt_controller.o examples/mw_controller_example.o
|
|
$(CC) $(CFLAGS) $(THREAD_FLAGS) $^ -o $@ $(LDFLAGS)
|
|
|
|
src/%.o: src/%.c include/*.h
|
|
$(CC) $(CPPFLAGS) $(CFLAGS) $(THREAD_FLAGS) -c $< -o $@
|
|
|
|
examples/%.o: examples/%.c include/*.h
|
|
$(CC) $(CPPFLAGS) $(CFLAGS) $(THREAD_FLAGS) -c $< -o $@
|
|
|
|
clean:
|
|
rm -f $(OBJ) examples/*.o $(BIN) $(EXAMPLE_BIN)
|
|
|
|
.PHONY: all clean
|