37 lines
765 B
Makefile
37 lines
765 B
Makefile
TARGET = spnav
|
|
TARGET_LIB = libspnavhdi.so # target lib
|
|
|
|
CC = gcc
|
|
#CFLAGS = -Wall -Wextra -fPIC -pedantic -O2 # C flags for building library
|
|
CFLAGS = -Wall -Wextra -pedantic -g -DDEBUG # C flags for developpement
|
|
|
|
LDFLAGS = -Wall -Wextra -O2
|
|
|
|
LIBS = -Llib -lhidapi-libusb
|
|
RM = rm -f # rm command
|
|
|
|
.PHONY: all default
|
|
|
|
default: $(TARGET)
|
|
all: default
|
|
|
|
OBJECTS = $(patsubst %.c, %.o, $(wildcard *.c))
|
|
HEADERS = $(wildcard *.h)
|
|
|
|
%.o: %.c $(HEADERS)
|
|
$(CC) $(CFLAGS) -c $< -o $@
|
|
|
|
.PRECIOUS: $(TARGET) $(OBJECTS)
|
|
|
|
$(TARGET): $(OBJECTS)
|
|
$(CC) $(OBJECTS) -Wall -o $@ $(LIBS)
|
|
|
|
# Shared Libs
|
|
$(TARGET_LIB): $(OBJECTS)
|
|
$(CC) $(LDFLAGS) -shared -fpic -Wl,--no-undefined -o $@ $^ $(LIBS)
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
-${RM} ${TARGET}
|
|
-${RM} ${TARGET_LIB} ${OBJECTS} $(SRCS:.c=.d)
|