blob: f1db097297ebbbe777428054fb9057bd53cf9ad2 (
plain) (
blame)
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
OS = LINUX
#OS = MACOSX
#OS = WINDOWS
PROG = rawhid_testinterface
# To set up Ubuntu Linux to cross compile for Windows:
#
# apt-get install mingw32 mingw32-binutils mingw32-runtime
#
# Just edit the variable above for WINDOWS, then use "make" to build rawhid.exe
ifeq ($(OS), LINUX)
TARGET = $(PROG)
CC = gcc
STRIP = strip
CFLAGS = -Wall -O2 -DOS_$(OS)
LIBS = -lusb
else ifeq ($(OS), MACOSX)
TARGET = $(PROG).dmg
SDK = /Developer/SDKs/MacOSX10.5.sdk
ARCH = -mmacosx-version-min=10.5 -arch ppc -arch i386
CC = gcc
STRIP = strip
CFLAGS = -Wall -O2 -DOS_$(OS) -isysroot $(SDK) $(ARCH)
LIBS = $(ARCH) -Wl,-syslibroot,$(SDK) -framework IOKit -framework CoreFoundation
else ifeq ($(OS), WINDOWS)
TARGET = $(PROG).exe
CC = i586-mingw32msvc-gcc
STRIP = i586-mingw32msvc-strip
CFLAGS = -Wall -O2 -DOS_$(OS)
LIBS = -lhid -lsetupapi
endif
OBJS = $(PROG).o hid.o
all: $(TARGET) reset
$(PROG): $(OBJS)
$(CC) -o $(PROG) $(OBJS) $(LIBS)
$(STRIP) $(PROG)
$(PROG).exe: $(PROG)
cp $(PROG) $(PROG).exe
$(PROG).dmg: $(PROG)
mkdir tmp
cp $(PROG) tmp
hdiutil create -ov -volname "Raw HID Test" -srcfolder tmp $(PROG).dmg
hid.o: hid_$(OS).c hid.h
$(CC) $(CFLAGS) -c -o $@ $<
reset: reset.o hid.o
$(CC) -o $@ $+ $(LIBS)
$(STRIP) $@
reset.o: reset.c
$(CC) $(CFLAGS) -c -o $@ $<
clean:
rm -f *.o $(PROG) $(PROG).exe $(PROG).dmg
rm -rf tmp reset
|