39 lines
1.0 KiB
Makefile
39 lines
1.0 KiB
Makefile
UNAME_S := $(shell uname -s)
|
|
ifeq ($(UNAME_S),Linux)
|
|
HIDAPI = hidapi-hidraw
|
|
else
|
|
HIDAPI = hidapi
|
|
endif
|
|
|
|
CFLAGS += -Wall -Wextra -g -std=gnu99 $(shell pkg-config --cflags $(HIDAPI))
|
|
LDFLAGS += $(shell pkg-config --libs $(HIDAPI))
|
|
outputs = eizoctl compile_commands.json
|
|
ifeq ($(OS),Windows_NT)
|
|
outputs += eizoctltray.png eizoctltray.ico eizoctltray.o eizoctltray.exe
|
|
LDFLAGS += -static
|
|
endif
|
|
|
|
all: $(outputs)
|
|
compile_commands.json:
|
|
>$@ echo '[{'
|
|
>>$@ echo '"directory": "'"$$(pwd)"'",'
|
|
>>$@ echo '"command": "$(CC) $(CFLAGS) eizoctl.c",'
|
|
>>$@ echo '"file": "'"$$(pwd)"'/eizoctl.c"'
|
|
>>$@ echo '}]'
|
|
eizoctl: eizoctl.c
|
|
$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $^ $(LDFLAGS)
|
|
clean:
|
|
rm -f $(outputs)
|
|
|
|
ifeq ($(OS),Windows_NT)
|
|
eizoctltray.png: eizoctltray.svg
|
|
rsvg-convert --output=$@ -- $<
|
|
eizoctltray.ico: eizoctltray.png
|
|
icotool -c -o $@ -- $<
|
|
eizoctltray.o: eizoctltray.rc eizoctltray.ico
|
|
windres -o $@ $<
|
|
eizoctltray.exe: eizoctl.c eizoctltray.o
|
|
$(CC) $(CFLAGS) $(CPPFLAGS) -DUNICODE -D_UNICODE -DTRAY \
|
|
-o $@ $^ $(LDFLAGS) -mwindows -municode -lPowrProf
|
|
endif
|