root/lm-sensors/trunk/prog/dump/Module.mk @ 2899

Revision 2899, 3.0 KB (checked in by khali, 8 years ago)

Handle keys/passwords needed to access most Super-I/O chips.
This should let us dump Winbond Super-I/O chips past the few first
dozens registers.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1#  Module.mk - Makefile for a Linux module for reading sensor data.
2#  Copyright (c) 1998, 1999  Frodo Looijaard <frodol@dds.nl>
3#
4#  This program is free software; you can redistribute it and/or modify
5#  it under the terms of the GNU General Public License as published by
6#  the Free Software Foundation; either version 2 of the License, or
7#  (at your option) any later version.
8#
9#  This program is distributed in the hope that it will be useful,
10#  but WITHOUT ANY WARRANTY; without even the implied warranty of
11#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12#  GNU General Public License for more details.
13#
14#  You should have received a copy of the GNU General Public License
15#  along with this program; if not, write to the Free Software
16#  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
17
18# Note that MODULE_DIR (the directory in which this file resides) is a
19# 'simply expanded variable'. That means that its value is substituted
20# verbatim in the rules, until it is redefined.
21MODULE_DIR := prog/dump
22PROGDUMPDIR := $(MODULE_DIR)
23
24PROGDUMPMAN8DIR := $(MANDIR)/man8
25PROGDUMPMAN8FILES := $(MODULE_DIR)/i2cdump.8 $(MODULE_DIR)/i2cset.8
26
27# Regrettably, even 'simply expanded variables' will not put their currently
28# defined value verbatim into the command-list of rules...
29PROGDUMPTARGETS := $(MODULE_DIR)/i2cdump $(MODULE_DIR)/i2cset
30PROGDUMPSOURCES := $(MODULE_DIR)/i2cdump.c $(MODULE_DIR)/i2cset.c \
31                   $(MODULE_DIR)/i2cbusses.c
32PROGDUMPBININSTALL := $(MODULE_DIR)/i2cdump $(MODULE_DIR)/i2cset
33
34# Only build isadump and isaset on x86 machines.
35ifneq (,$(findstring $(MACHINE), i386 i486 i586 i686 x86_64))
36PROGDUMPMAN8FILES += $(MODULE_DIR)/isadump.8 $(MODULE_DIR)/isaset.8
37PROGDUMPTARGETS += $(MODULE_DIR)/isadump $(MODULE_DIR)/isaset
38PROGDUMPSOURCES += $(MODULE_DIR)/isadump.c $(MODULE_DIR)/isaset.c \
39                   $(MODULE_DIR)/superio.c
40PROGDUMPBININSTALL += $(MODULE_DIR)/isadump $(MODULE_DIR)/isaset
41endif
42
43# Include all dependency files. We use '.rd' to indicate this will create
44# executables.
45INCLUDEFILES += $(PROGDUMPSOURCES:.c=.rd)
46
47REMOVEDUMPBIN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(SBINDIR)/%,$(PROGDUMPBININSTALL))
48REMOVEDUMPMAN := $(patsubst $(MODULE_DIR)/%,$(DESTDIR)$(PROGDUMPMAN8DIR)/%,$(PROGDUMPMAN8FILES))
49
50all-prog-dump: $(PROGDUMPTARGETS)
51user :: all-prog-dump
52
53$(MODULE_DIR)/i2cdump: $(MODULE_DIR)/i2cdump.ro $(MODULE_DIR)/i2cbusses.ro
54        $(CC) $(EXLDFLAGS) -o $@ $^
55
56$(MODULE_DIR)/i2cset: $(MODULE_DIR)/i2cset.ro $(MODULE_DIR)/i2cbusses.ro
57        $(CC) $(EXLDFLAGS) -o $@ $^
58
59$(MODULE_DIR)/isadump: $(MODULE_DIR)/isadump.ro $(MODULE_DIR)/superio.ro
60        $(CC) $(EXLDFLAGS) -o $@ $^
61
62install-prog-dump: all-prog-dump
63        $(MKDIR) $(DESTDIR)$(SBINDIR) $(DESTDIR)$(PROGDUMPMAN8DIR)
64        $(INSTALL) -m 755 $(PROGDUMPBININSTALL) $(DESTDIR)$(SBINDIR)
65        $(INSTALL) -m 644 $(PROGDUMPMAN8FILES) $(DESTDIR)$(PROGDUMPMAN8DIR)
66user_install :: install-prog-dump
67
68user_uninstall::
69        $(RM) $(REMOVEDUMPBIN)
70        $(RM) $(REMOVEDUMPMAN)
71
72clean-prog-dump:
73        $(RM) $(PROGDUMPDIR)/*.rd $(PROGDUMPDIR)/*.ro $(PROGDUMPTARGETS)
74clean :: clean-prog-dump
Note: See TracBrowser for help on using the browser.