aboutsummaryrefslogtreecommitdiffstats
path: root/lib/hidflash/Makefile
blob: d03861504f270ccd2d04323ad1c42d165ca2a157 (plain)
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
CC=gcc
CFLAGS=-c -Wall
LDFLAGS=
SOURCES=main.c
INCLUDE_DIRS=-I .
CHECK=1

ifeq ($(OS),Windows_NT)
	SOURCES+=hid-win.c
	SOURCES+=rs232.c
	LIBS=-lsetupapi -lhid
else
	UNAME_S := $(shell uname -s)
	ifeq ($(UNAME_S),Darwin)
		SOURCES+=hid-mac.c
		SOURCES+=rs232.c
		LIBS=-framework IOKit -framework CoreFoundation
	else
		CHECK:=$(shell pkg-config --exists libusb-1.0 && echo 1)
		SOURCES+=hid-libusb.c
		SOURCES+=rs232.c
		LIBS=`pkg-config libusb-1.0 --libs` -lrt -lpthread
		INCLUDE_DIRS+=`pkg-config libusb-1.0 --cflags`
		CFLAGS+=-std=gnu99
		LDFLAGS+=-no-pie
	endif
endif

OBJECTS=$(SOURCES:.c=.o)

EXECUTABLE = hid-flash

ifeq ($(CHECK), 1)
all: $(SOURCES) $(EXECUTABLE)

$(EXECUTABLE): $(OBJECTS)
	$(CC) $(LDFLAGS) $(OBJECTS) $(LIBS) -o $@

.c.o:
	$(CC) $(CFLAGS) $(INCLUDE_DIRS) $< -o $@
else
all:
	@echo "    hid-flash requires libusb-1.0, please install with:"
	@echo "    sudo apt-get install libusb-1.0"
endif

clean:
	rm -f $(OBJECTS) $(EXECUTABLE) $(EXECUTABLE).exe