Commit | Line | Data |
---|---|---|
b2441318 | 1 | # SPDX-License-Identifier: GPL-2.0 |
4f22ce70 | 2 | # Makefile for USB tools |
9ca325ff | 3 | include ../scripts/Makefile.include |
4f22ce70 | 4 | |
9ca325ff | 5 | bindir ?= /usr/bin |
4f22ce70 | 6 | |
9ca325ff HK |
7 | ifeq ($(srctree),) |
8 | srctree := $(patsubst %/,%,$(dir $(CURDIR))) | |
9 | srctree := $(patsubst %/,%,$(dir $(srctree))) | |
10 | endif | |
11 | ||
12 | # Do not use make's built-in rules | |
13 | # (this improves performance and avoids hard-to-debug behaviour); | |
14 | MAKEFLAGS += -r | |
15 | ||
16 | override CFLAGS += -O2 -Wall -Wextra -g -D_GNU_SOURCE -I$(OUTPUT)include -I$(srctree)/tools/include | |
17 | override LDFLAGS += -lpthread | |
18 | ||
19 | ALL_TARGETS := testusb ffs-test | |
20 | ALL_PROGRAMS := $(patsubst %,$(OUTPUT)%,$(ALL_TARGETS)) | |
21 | ||
22 | all: $(ALL_PROGRAMS) | |
23 | ||
24 | export srctree OUTPUT CC LD CFLAGS | |
25 | include $(srctree)/tools/build/Makefile.include | |
26 | ||
27 | TESTUSB_IN := $(OUTPUT)testusb-in.o | |
28 | $(TESTUSB_IN): FORCE | |
29 | $(Q)$(MAKE) $(build)=testusb | |
30 | $(OUTPUT)testusb: $(TESTUSB_IN) | |
31 | $(QUIET_LINK)$(CC) $(CFLAGS) $< -o $@ $(LDFLAGS) | |
32 | ||
33 | FFS_TEST_IN := $(OUTPUT)ffs-test-in.o | |
34 | $(FFS_TEST_IN): FORCE | |
35 | $(Q)$(MAKE) $(build)=ffs-test | |
36 | $(OUTPUT)ffs-test: $(FFS_TEST_IN) | |
37 | $(QUIET_LINK)$(CC) $(CFLAGS) $< -o $@ $(LDFLAGS) | |
4f22ce70 DB |
38 | |
39 | clean: | |
9ca325ff | 40 | rm -f $(ALL_PROGRAMS) |
5c816641 | 41 | find $(or $(OUTPUT),.) -name '*.o' -delete -o -name '\.*.d' -delete -o -name '\.*.o.cmd' -delete |
9ca325ff HK |
42 | |
43 | install: $(ALL_PROGRAMS) | |
44 | install -d -m 755 $(DESTDIR)$(bindir); \ | |
45 | for program in $(ALL_PROGRAMS); do \ | |
46 | install $$program $(DESTDIR)$(bindir); \ | |
47 | done | |
48 | ||
49 | FORCE: | |
50 | ||
51 | .PHONY: all install clean FORCE prepare |