From ce7aea9a5ae215ccc9e97b1d1a95c2717d25cc90 Mon Sep 17 00:00:00 2001 From: Philip Edelbrock Date: Wed, 27 Jan 1999 06:10:00 +0000 Subject: [PATCH] (Phil) Made slight adjustments so the new file arrangement will build. I added two new make file 'includes': busses/Module.mk and chips/Module.mk Frodo- You may want to review the makefile structure to make sure that the system works as you intended. Note: The docs still need to be updated to reflect the new file arrangement, but at least it builds! git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@176 7894878c-1315-0410-8ee3-d5d059ff63e0 --- Makefile | 4 ++-- kernel/Module.mk | 25 ++++++++++++--------- kernel/busses/Module.mk | 44 +++++++++++++++++++++++++++++++++++++ kernel/chips/Module.mk | 48 +++++++++++++++++++++++++++++++++++++++++ lib/chips.c | 2 +- lib/proc.c | 2 +- prog/detect/i2cdetect.c | 2 +- prog/dump/i2cdetect.c | 2 +- prog/dump/i2cdump.c | 2 +- prog/sensors/chips.c | 2 +- 10 files changed, 115 insertions(+), 18 deletions(-) create mode 100644 kernel/busses/Module.mk create mode 100644 kernel/chips/Module.mk diff --git a/Makefile b/Makefile index d9887457..a051341b 100644 --- a/Makefile +++ b/Makefile @@ -102,7 +102,7 @@ LIBINCLUDEDIR := $(INCLUDEDIR)/sensors # to do this. # The subdirectories we need to build things in -SRCDIRS := src lib prog/sensors prog/dump etc +SRCDIRS := kernel lib prog/sensors prog/dump etc ifeq ($(I2C),1) SRCDIRS += i2c i2c/detect i2c/drivers i2c/eeprom endif @@ -122,7 +122,7 @@ LN := ln -sfn # create non-kernel object files (which are linked into executables). # ARCFLAGS are used to create archive object files (static libraries), and # LIBCFLAGS are for shared library objects. -CFLAGS := -I. -Ii2c -O2 -DLM_SENSORS +CFLAGS := -I. -Ii2c -Ikernel -Ikernel/include -O2 -DLM_SENSORS ifeq ($(DEBUG),1) CFLAGS += -DDEBUG diff --git a/kernel/Module.mk b/kernel/Module.mk index c03259b9..53c2906a 100644 --- a/kernel/Module.mk +++ b/kernel/Module.mk @@ -18,21 +18,18 @@ # Note that MODULE_DIR (the directory in which this file resides) is a # 'simply expanded variable'. That means that its value is substituted # verbatim in the rules, until it is redefined. -MODULE_DIR := src +MODULE_DIR := kernel + +SRCDIRS := kernel/busses kernel/chips # Regrettably, even 'simply expanded variables' will not put their currently # defined value verbatim into the command-list of rules... -SRCTARGETS := $(MODULE_DIR)/smbus.o $(MODULE_DIR)/piix4.o $(MODULE_DIR)/isa.o \ - $(MODULE_DIR)/lm78.o $(MODULE_DIR)/sensors.o \ - $(MODULE_DIR)/i2c-proc.o $(MODULE_DIR)/lm75.o \ - $(MODULE_DIR)/i2c-proc.o $(MODULE_DIR)/gl518sm.o \ - $(MODULE_DIR)/eeprom.o $(MODULE_DIR)/w83781d.o \ - $(MODULE_DIR)/lm80.o $(MODULE_DIR)/adm1021.o \ - $(MODULE_DIR)/adm9240.o $(MODULE_DIR)/ltc1710.o \ +SRCTARGETS := $(MODULE_DIR)/smbus.o \ + $(MODULE_DIR)/i2c-proc.o \ $(MODULE_DIR)/i2c-dev.o -SRCHEADERFILES := $(MODULE_DIR)/sensors.h $(MODULE_DIR)/isa.h \ - $(MODULE_DIR)/smbus.h $(MODULE_DIR)/i2c-dev.h +SRCHEADERFILES := $(MODULE_DIR)/include/sensors.h $(MODULE_DIR)/include/isa.h \ + $(MODULE_DIR)/include/smbus.h $(MODULE_DIR)/include/i2c-dev.h # Include all dependency files INCLUDEFILES += $(SRCTARGETS:.o=.d) @@ -40,6 +37,14 @@ INCLUDEFILES += $(SRCTARGETS:.o=.d) all-src: $(SRCTARGETS) all :: all-src +# Include all makefiles for sub-modules +INCLUDEFILES := +include $(patsubst %,%/Module.mk,$(SRCDIRS)) +ifneq ($(MAKECMDGOALS),clean) +include $(INCLUDEFILES) +endif + + install-src: all-src $(MKDIR) $(MODDIR) $(SYSINCLUDEDIR) $(INSTALL) -o root -g root -m 644 $(SRCTARGETS) $(MODDIR) diff --git a/kernel/busses/Module.mk b/kernel/busses/Module.mk new file mode 100644 index 00000000..d79b024d --- /dev/null +++ b/kernel/busses/Module.mk @@ -0,0 +1,44 @@ +# Module.mk - Makefile for a Linux module for reading sensor data. +# Copyright (c) 1998 Frodo Looijaard +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +# Note that MODULE_DIR (the directory in which this file resides) is a +# 'simply expanded variable'. That means that its value is substituted +# verbatim in the rules, until it is redefined. +MODULE_DIR := kernel/busses + +# Regrettably, even 'simply expanded variables' will not put their currently +# defined value verbatim into the command-list of rules... +SRCTARGETS := $(MODULE_DIR)/i2c-piix4.o $(MODULE_DIR)/i2c-isa.o + +SRCHEADERFILES := $(MODULE_DIR)/../include/sensors.h $(MODULE_DIR)/../include/isa.h \ + $(MODULE_DIR)/../include/smbus.h $(MODULE_DIR)/../include/i2c-dev.h + +# Include all dependency files +INCLUDEFILES += $(SRCTARGETS:.o=.d) + +all-src: $(SRCTARGETS) +all :: all-src + +install-src-busses: all-src + $(MKDIR) $(MODDIR) $(SYSINCLUDEDIR) + $(INSTALL) -o root -g root -m 644 $(SRCTARGETS) $(MODDIR) + $(INSTALL) -o root -g root -m 644 $(SRCHEADERFILES) $(SYSINCLUDEDIR) +install :: install-src-busses + +clean-src-busses: + $(RM) $(SRCTARGETS) $(SRCTARGETS:.o=.d) +clean :: clean-src-busses diff --git a/kernel/chips/Module.mk b/kernel/chips/Module.mk new file mode 100644 index 00000000..25f33914 --- /dev/null +++ b/kernel/chips/Module.mk @@ -0,0 +1,48 @@ +# Module.mk - Makefile for a Linux module for reading sensor data. +# Copyright (c) 1998 Frodo Looijaard +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +# Note that MODULE_DIR (the directory in which this file resides) is a +# 'simply expanded variable'. That means that its value is substituted +# verbatim in the rules, until it is redefined. +MODULE_DIR := kernel/chips + +# Regrettably, even 'simply expanded variables' will not put their currently +# defined value verbatim into the command-list of rules... +SRCTARGETS := $(MODULE_DIR)/adm1021.o $(MODULE_DIR)/adm9240.o \ + $(MODULE_DIR)/eeprom.o $(MODULE_DIR)/gl518sm.o \ + $(MODULE_DIR)/lm75.o $(MODULE_DIR)/lm78.o \ + $(MODULE_DIR)/lm80.o $(MODULE_DIR)/ltc1710.o \ + $(MODULE_DIR)/w83781d.o + +SRCHEADERFILES := $(MODULE_DIR)/../include/sensors.h $(MODULE_DIR)/../include/isa.h \ + $(MODULE_DIR)/../include/smbus.h $(MODULE_DIR)/../include/i2c-dev.h + +# Include all dependency files +INCLUDEFILES += $(SRCTARGETS:.o=.d) + +all-src: $(SRCTARGETS) +all :: all-src + +install-src-chips: all-src + $(MKDIR) $(MODDIR) $(SYSINCLUDEDIR) + $(INSTALL) -o root -g root -m 644 $(SRCTARGETS) $(MODDIR) + $(INSTALL) -o root -g root -m 644 $(SRCHEADERFILES) $(SYSINCLUDEDIR) +install :: install-src-chips + +clean-src-chips: + $(RM) $(SRCTARGETS) $(SRCTARGETS:.o=.d) +clean :: clean-src-chips diff --git a/lib/chips.c b/lib/chips.c index 22b4756d..69c2ab2e 100644 --- a/lib/chips.c +++ b/lib/chips.c @@ -20,7 +20,7 @@ #include "chips.h" #include "data.h" #include "sensors.h" -#include "src/sensors.h" +#include "kernel/include/sensors.h" /* For each chip, a list of features; For each feature, the number, its name, the logical mapping (for example, diff --git a/lib/proc.c b/lib/proc.c index 9d3a5b48..06733609 100644 --- a/lib/proc.c +++ b/lib/proc.c @@ -22,7 +22,7 @@ #include #include #include -#include "src/sensors.h" +#include "kernel/include/sensors.h" #include "data.h" #include "error.h" #include "access.h" diff --git a/prog/detect/i2cdetect.c b/prog/detect/i2cdetect.c index 33a24134..b8bd58f2 100644 --- a/prog/detect/i2cdetect.c +++ b/prog/detect/i2cdetect.c @@ -24,7 +24,7 @@ #include #include #include -#include "src/i2c-dev.h" +#include "kernel/include/i2c-dev.h" void help(void) { diff --git a/prog/dump/i2cdetect.c b/prog/dump/i2cdetect.c index 33a24134..b8bd58f2 100644 --- a/prog/dump/i2cdetect.c +++ b/prog/dump/i2cdetect.c @@ -24,7 +24,7 @@ #include #include #include -#include "src/i2c-dev.h" +#include "kernel/include/i2c-dev.h" void help(void) { diff --git a/prog/dump/i2cdump.c b/prog/dump/i2cdump.c index 53ff6b29..42ba766f 100644 --- a/prog/dump/i2cdump.c +++ b/prog/dump/i2cdump.c @@ -23,7 +23,7 @@ #include #include #include -#include "src/i2c-dev.h" +#include "kernel/include/i2c-dev.h" void help(void) { diff --git a/prog/sensors/chips.c b/prog/sensors/chips.c index 06d0f8df..64ef4424 100644 --- a/prog/sensors/chips.c +++ b/prog/sensors/chips.c @@ -23,7 +23,7 @@ #include "chips.h" #include "lib/sensors.h" #include "lib/chips.h" -#include "src/sensors.h" +#include "kernel/include/sensors.h" static char *spacestr(int n); static void print_label(const char *label, int space);