Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux
[sfrench/cifs-2.6.git] / tools / thermal / tmon / Makefile
1 # SPDX-License-Identifier: GPL-2.0
2 # We need this for the "cc-option" macro.
3 include ../../../scripts/Kbuild.include
4
5 VERSION = 1.0
6
7 BINDIR=usr/bin
8 WARNFLAGS=-Wall -Wshadow -W -Wformat -Wimplicit-function-declaration -Wimplicit-int
9 CFLAGS+= -O1 ${WARNFLAGS}
10 # Add "-fstack-protector" only if toolchain supports it.
11 CFLAGS+= $(call cc-option,-fstack-protector)
12 CC?= $(CROSS_COMPILE)gcc
13 PKG_CONFIG?= pkg-config
14
15 CFLAGS+=-D VERSION=\"$(VERSION)\"
16 LDFLAGS+=
17 TARGET=tmon
18
19 INSTALL_PROGRAM=install -m 755 -p
20 DEL_FILE=rm -f
21
22 # Static builds might require -ltinfo, for instance
23 ifneq ($(findstring -static, $(LDFLAGS)),)
24 STATIC := --static
25 endif
26
27 TMON_LIBS=-lm -lpthread
28 TMON_LIBS += $(shell $(PKG_CONFIG) --libs $(STATIC) panelw ncursesw 2> /dev/null || \
29                      $(PKG_CONFIG) --libs $(STATIC) panel ncurses 2> /dev/null || \
30                      echo -lpanel -lncurses)
31
32 CFLAGS    += $(shell $(PKG_CONFIG) --cflags $(STATIC) panelw ncursesw 2> /dev/null || \
33                      $(PKG_CONFIG) --cflags $(STATIC) panel ncurses 2> /dev/null)
34
35 OBJS = tmon.o tui.o sysfs.o pid.o
36 OBJS +=
37
38 tmon: $(OBJS) Makefile tmon.h
39         $(CC) $(CFLAGS) $(LDFLAGS) $(OBJS)  -o $(TARGET) $(TMON_LIBS)
40
41 valgrind: tmon
42          sudo valgrind -v --track-origins=yes --tool=memcheck --leak-check=yes --show-reachable=yes --num-callers=20 --track-fds=yes ./$(TARGET)  1> /dev/null
43
44 install:
45         - mkdir -p $(INSTALL_ROOT)/$(BINDIR)
46         - $(INSTALL_PROGRAM) "$(TARGET)" "$(INSTALL_ROOT)/$(BINDIR)/$(TARGET)"
47
48 uninstall:
49         $(DEL_FILE) "$(INSTALL_ROOT)/$(BINDIR)/$(TARGET)"
50
51 clean:
52         find . -name "*.o" | xargs $(DEL_FILE)
53         rm -f $(TARGET)
54
55 dist:
56         git tag v$(VERSION)
57         git archive --format=tar --prefix="$(TARGET)-$(VERSION)/" v$(VERSION) | \
58                 gzip > $(TARGET)-$(VERSION).tar.gz