summaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile34
1 files changed, 29 insertions, 5 deletions
diff --git a/Makefile b/Makefile
index 7ae9575..936ed35 100644
--- a/Makefile
+++ b/Makefile
@@ -1,9 +1,33 @@
-CFLAGS = -g -O0
-LDFLAGS = -lusb-1.0
+# uhubctl Makefile
+#
+UNAME_S := $(shell uname -s)
+
+DESTDIR ?=
+prefix ?= /usr
+sbindir ?= $(prefix)/sbin
+
+INSTALL := install
+INSTALL_DIR := $(INSTALL) -m 755 -d
+INSTALL_PROGRAM := $(INSTALL) -m 755
+RM := rm -rf
+
+CC ?= gcc
+CFLAGS ?= -g -O0
+
+CFLAGS += -Wall -Wextra
+
+ifeq ($(UNAME_S),Linux)
+ LDFLAGS += -Wl,-z,relro
+endif
+
PROGRAM = uhubctl
-$(PROGRAM): $(PROGRAM).o
- cc $(CFLAGS) $@.c -o $@ $(LDFLAGS)
+$(PROGRAM): $(PROGRAM).c
+ $(CC) $(CFLAGS) $@.c -o $@ -lusb-1.0 $(LDFLAGS)
+
+install:
+ $(INSTALL_DIR) $(DESTDIR)$(sbindir)
+ $(INSTALL_PROGRAM) $(PROGRAM) $(DESTDIR)$(sbindir)
clean:
- rm -rf $(PROGRAM).o $(PROGRAM).dSYM $(PROGRAM)
+ $(RM) $(PROGRAM).o $(PROGRAM).dSYM $(PROGRAM)