blob: 8bbf28ffa8b2b5e64b2488474249a3acf587ce67 [file] [log] [blame]
Brian Silverman20ce05e2017-06-24 14:27:26 -07001OS ?= LINUX
2#OS ?= WINDOWS
3#OS ?= MACOSX
4#OS ?= BSD
5
6# uncomment this to use libusb on Macintosh, instead of Apple's HID manager via IOKit
7# this is technically not the "correct" way to support Macs, but it's been reported to
8# work.
9#USE_LIBUSB ?= YES
10
11ifeq ($(OS), LINUX) # also works on FreeBSD
12CC ?= gcc
13CFLAGS ?= -O2 -Wall
14teensy_loader_cli: teensy_loader_cli.c
15 $(CC) $(CFLAGS) -s -DUSE_LIBUSB -o teensy_loader_cli teensy_loader_cli.c -lusb
16
17
18else ifeq ($(OS), WINDOWS)
19CC = i586-mingw32msvc-gcc
20CFLAGS ?= -O2 -Wall
21teensy_loader_cli.exe: teensy_loader_cli.c
22 $(CC) $(CFLAGS) -s -DUSE_WIN32 -o teensy_loader_cli.exe teensy_loader_cli.c -lhid -lsetupapi -lwinmm
23
24
25else ifeq ($(OS), MACOSX)
26ifeq ($(USE_LIBUSB), YES)
27CC ?= gcc
28CFLAGS ?= -O2 -Wall
29teensy_loader_cli: teensy_loader_cli.c
30 $(CC) $(CFLAGS) -s -DUSE_LIBUSB -DMACOSX -o teensy_loader_cli teensy_loader_cli.c -lusb -I /usr/local/include -L/usr/local/lib
31
32else
33CC ?= gcc
34SDK ?= $(shell xcrun --show-sdk-path)
35#SDK ?= /Developer/SDKs/MacOSX10.6.sdk # the old way...
36#SDK = /Developer_xcode32/SDKs/MacOSX10.5.sdk # the very old way!
37#CC = /Developer_xcode32/usr/bin/gcc-4.0
38#CFLAGS = -O2 -Wall -arch i386 -arch ppc
39CFLAGS ?= -O2 -Wall
40teensy_loader_cli: teensy_loader_cli.c
41ifeq ($(SDK),)
42 $(error SDK was not found. To use this type of compilation please install Xcode)
43endif
44 $(CC) $(CFLAGS) -DUSE_APPLE_IOKIT -isysroot $(SDK) -o teensy_loader_cli teensy_loader_cli.c -Wl,-syslibroot,$(SDK) -framework IOKit -framework CoreFoundation
45
46endif
47
48else ifeq ($(OS), BSD) # works on NetBSD and OpenBSD
49CC ?= gcc
50CFLAGS ?= -O2 -Wall
51teensy_loader_cli: teensy_loader_cli.c
52 $(CC) $(CFLAGS) -s -DUSE_UHID -o teensy_loader_cli teensy_loader_cli.c
53
54
55endif
56
57
58clean:
59 rm -f teensy_loader_cli teensy_loader_cli.exe*