Skip to content

Commit 387ce37

Browse files
AmitVadhavana14rafaeljw
authored andcommitted
pm-graph: Update directory handling and installation process in Makefile
- Standardize directory variables to support more flexible installations. - Add copyright and licensing information to the Makefile. - Introduce ".PHONY" declarations to ensure that specific targets are always executed, regardless of the presence of files with matching names. - Add a help target to provide usage instructions. Signed-off-by: Amit Vadhavana <[email protected]> Acked-by: Todd Brandt <[email protected]> Link: https://patch.msgid.link/Update directory handling and installation process in Makefile [ rjw: Changelog edits ] Signed-off-by: Rafael J. Wysocki <[email protected]>
1 parent dd7c445 commit 387ce37

File tree

1 file changed

+73
-38
lines changed

1 file changed

+73
-38
lines changed

tools/power/pm-graph/Makefile

Lines changed: 73 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1,51 +1,86 @@
11
# SPDX-License-Identifier: GPL-2.0
2-
PREFIX ?= /usr
3-
DESTDIR ?=
2+
#
3+
# Copyright (c) 2013, Intel Corporation.
4+
#
5+
# This program is free software; you can redistribute it and/or modify it
6+
# under the terms and conditions of the GNU General Public License,
7+
# version 2, as published by the Free Software Foundation.
8+
#
9+
# This program is distributed in the hope it will be useful, but WITHOUT
10+
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11+
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
12+
# more details.
13+
#
14+
# Authors:
15+
# Todd Brandt <[email protected]>
16+
17+
# Prefix to the directories we're installing to
18+
DESTDIR ?=
19+
20+
# Directory definitions. These are default and most probably
21+
# do not need to be changed. Please note that DESTDIR is
22+
# added in front of any of them
23+
24+
BINDIR ?= /usr/bin
25+
MANDIR ?= /usr/share/man
26+
LIBDIR ?= /usr/lib
27+
28+
# Toolchain: what tools do we use, and what options do they need:
29+
INSTALL = /usr/bin/install
30+
INSTALL_DATA = ${INSTALL} -m 644
431

532
all:
633
@echo "Nothing to build"
734

835
install : uninstall
9-
install -d $(DESTDIR)$(PREFIX)/lib/pm-graph
10-
install sleepgraph.py $(DESTDIR)$(PREFIX)/lib/pm-graph
11-
install bootgraph.py $(DESTDIR)$(PREFIX)/lib/pm-graph
12-
install -d $(DESTDIR)$(PREFIX)/lib/pm-graph/config
13-
install -m 644 config/cgskip.txt $(DESTDIR)$(PREFIX)/lib/pm-graph/config
14-
install -m 644 config/freeze-callgraph.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
15-
install -m 644 config/freeze.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
16-
install -m 644 config/freeze-dev.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
17-
install -m 644 config/standby-callgraph.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
18-
install -m 644 config/standby.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
19-
install -m 644 config/standby-dev.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
20-
install -m 644 config/suspend-callgraph.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
21-
install -m 644 config/suspend.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
22-
install -m 644 config/suspend-dev.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
23-
install -m 644 config/suspend-x2-proc.cfg $(DESTDIR)$(PREFIX)/lib/pm-graph/config
24-
25-
install -d $(DESTDIR)$(PREFIX)/bin
26-
ln -s ../lib/pm-graph/bootgraph.py $(DESTDIR)$(PREFIX)/bin/bootgraph
27-
ln -s ../lib/pm-graph/sleepgraph.py $(DESTDIR)$(PREFIX)/bin/sleepgraph
28-
29-
install -d $(DESTDIR)$(PREFIX)/share/man/man8
30-
install bootgraph.8 $(DESTDIR)$(PREFIX)/share/man/man8
31-
install sleepgraph.8 $(DESTDIR)$(PREFIX)/share/man/man8
36+
$(INSTALL) -d $(DESTDIR)$(LIBDIR)/pm-graph
37+
$(INSTALL) sleepgraph.py $(DESTDIR)$(LIBDIR)/pm-graph
38+
$(INSTALL) bootgraph.py $(DESTDIR)$(LIBDIR)/pm-graph
39+
$(INSTALL) -d $(DESTDIR)$(LIBDIR)/pm-graph/config
40+
$(INSTALL_DATA) config/cgskip.txt $(DESTDIR)$(LIBDIR)/pm-graph/config
41+
$(INSTALL_DATA) config/freeze-callgraph.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
42+
$(INSTALL_DATA) config/freeze.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
43+
$(INSTALL_DATA) config/freeze-dev.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
44+
$(INSTALL_DATA) config/standby-callgraph.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
45+
$(INSTALL_DATA) config/standby.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
46+
$(INSTALL_DATA) config/standby-dev.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
47+
$(INSTALL_DATA) config/suspend-callgraph.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
48+
$(INSTALL_DATA) config/suspend.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
49+
$(INSTALL_DATA) config/suspend-dev.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
50+
$(INSTALL_DATA) config/suspend-x2-proc.cfg $(DESTDIR)$(LIBDIR)/pm-graph/config
51+
52+
$(INSTALL) -d $(DESTDIR)$(BINDIR)
53+
ln -s ../lib/pm-graph/bootgraph.py $(DESTDIR)$(BINDIR)/bootgraph
54+
ln -s ../lib/pm-graph/sleepgraph.py $(DESTDIR)$(BINDIR)/sleepgraph
55+
56+
$(INSTALL) -d $(DESTDIR)$(MANDIR)/man8
57+
$(INSTALL) bootgraph.8 $(DESTDIR)$(MANDIR)/man8
58+
$(INSTALL) sleepgraph.8 $(DESTDIR)$(MANDIR)/man8
3259

3360
uninstall :
34-
rm -f $(DESTDIR)$(PREFIX)/share/man/man8/bootgraph.8
35-
rm -f $(DESTDIR)$(PREFIX)/share/man/man8/sleepgraph.8
61+
rm -f $(DESTDIR)$(MANDIR)/man8/bootgraph.8
62+
rm -f $(DESTDIR)$(MANDIR)/man8/sleepgraph.8
3663

37-
rm -f $(DESTDIR)$(PREFIX)/bin/bootgraph
38-
rm -f $(DESTDIR)$(PREFIX)/bin/sleepgraph
64+
rm -f $(DESTDIR)$(BINDIR)/bootgraph
65+
rm -f $(DESTDIR)$(BINDIR)/sleepgraph
3966

40-
rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/config/*
41-
if [ -d $(DESTDIR)$(PREFIX)/lib/pm-graph/config ] ; then \
42-
rmdir $(DESTDIR)$(PREFIX)/lib/pm-graph/config; \
67+
rm -f $(DESTDIR)$(LIBDIR)/pm-graph/config/*
68+
if [ -d $(DESTDIR)$(LIBDIR)/pm-graph/config ] ; then \
69+
rmdir $(DESTDIR)$(LIBDIR)/pm-graph/config; \
4370
fi;
44-
rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/__pycache__/*
45-
if [ -d $(DESTDIR)$(PREFIX)/lib/pm-graph/__pycache__ ] ; then \
46-
rmdir $(DESTDIR)$(PREFIX)/lib/pm-graph/__pycache__; \
71+
rm -f $(DESTDIR)$(LIBDIR)/pm-graph/__pycache__/*
72+
if [ -d $(DESTDIR)$(LIBDIR)/pm-graph/__pycache__ ] ; then \
73+
rmdir $(DESTDIR)$(LIBDIR)/pm-graph/__pycache__; \
4774
fi;
48-
rm -f $(DESTDIR)$(PREFIX)/lib/pm-graph/*
49-
if [ -d $(DESTDIR)$(PREFIX)/lib/pm-graph ] ; then \
50-
rmdir $(DESTDIR)$(PREFIX)/lib/pm-graph; \
75+
rm -f $(DESTDIR)$(LIBDIR)/pm-graph/*
76+
if [ -d $(DESTDIR)$(LIBDIR)/pm-graph ] ; then \
77+
rmdir $(DESTDIR)$(LIBDIR)/pm-graph; \
5178
fi;
79+
80+
help:
81+
@echo 'Building targets:'
82+
@echo ' all - Nothing to build'
83+
@echo ' install - Install the program and create necessary directories'
84+
@echo ' uninstall - Remove installed files and directories'
85+
86+
.PHONY: all install uninstall help

0 commit comments

Comments
 (0)