Changeset 2189

Show
Ignore:
Timestamp:
12/24/03 00:13:38 (9 years ago)
Author:
mds
Message:

remove -o and -g args to install

Date: Thu, 18 Dec 2003 22:42:36 +0100
From: Haakon Riiser <haakon.riiser@…>
To: sensors@…
Subject: lm_sensors 2.8.2 / DESTDIR / root

The reason for this email is that I always try to avoid running
Makefiles as root, even during 'make install'. Therefore, I
always use the DESTDIR feature, when it's available. Until today,
I always built i2c and lm_sensors by doing

$ make
$ make -i install DESTDIR=/foo
$ cd /foo && su root && fix permissions/ownership && install

The -i flag to make install is a kludge to avoid having to be root
while installing to the DESTDIR, and it's only required because
the files are installed with "-o root -g root". Using the -i
flag is of course not a good idea, since more fatal errors can
easily fly by undetected.

Today, I upgraded to Linux 2.6.0, and tried a similar install
procedure for lm_sensors, except that the make target is now "user"
and the install target is "user_install". I now noticed that the
DESTDIR variable is not used everywhere in "user_install", so I
couldn't use the -i kludge anymore. Instead, I wrote a patch that
removes the "-o root -g root" arguments to install everywhere, and
I also tried to add DESTDIR to all files/directories installed.
(The patch only applies to lm_sensors, not i2c, since only
lm_sensors is required in Linux 2.6.0.)

There's really no reason to say -o root -g root anyway, since if you
do install directly with make install, you have to be logged in as
root, and then the files will get the right ownership by default.
Much of the point of installing to a temporary DESTDIR is that you
don't have to be root, and that you can prepare the installation
by hand. Fixing the ownership is trivial:

chown -R root.root $DESTDIR

Location:
lm-sensors/trunk
Files:
13 modified

Legend:

Unmodified
Added
Removed
  • lm-sensors/trunk/Makefile

    r2179 r2189  
    122122MANDIR := $(PREFIX)/man 
    123123 
    124 # You should not need to change this. It defines the manual owner and group 
    125 # as which manual pages are installed. 
    126 MANOWN := root 
    127 MANGRP := root 
    128  
    129124MACHINE := $(shell uname -m) 
    130125 
  • lm-sensors/trunk/etc/Module.mk

    r1822 r2189  
    3030        $(MKDIR) $(DESTDIR)$(ETCDIR) 
    3131        if [ ! -e $(DESTDIR)$(ETCINSTALL) ] ; then \ 
    32           $(INSTALL) -o  root -g root -m 644 $(ETCTARGET) $(DESTDIR)$(ETCINSTALL); \ 
     32          $(INSTALL) -m 644 $(ETCTARGET) $(DESTDIR)$(ETCINSTALL); \ 
    3333        fi 
    3434user_install :: install-etc 
  • lm-sensors/trunk/kernel/busses/Module.mk

    r1787 r2189  
    106106        if [ -n "$(KERNELBUSSESTARGETS)" ] ; then \ 
    107107          $(MKDIR) $(DESTDIR)$(MODPREF)/kernel/drivers/i2c/busses ; \ 
    108           $(INSTALL) -o root -g root -m 644 $(KERNELBUSSESTARGETS) $(DESTDIR)$(MODPREF)/kernel/drivers/i2c/busses ; \ 
     108          $(INSTALL) -m 644 $(KERNELBUSSESTARGETS) $(DESTDIR)$(MODPREF)/kernel/drivers/i2c/busses ; \ 
    109109          for i in $(KERNELBUSSESTARGETS) ; do \ 
    110110            $(RM) $(DESTDIR)$(MODPREF)/misc/`basename $$i` $(DESTDIR)$(MODPREF)/kernel/drivers/i2c/`basename $$i` \ 
  • lm-sensors/trunk/kernel/chips/Module.mk

    r2174 r2189  
    161161        if [ -n "$(KERNELCHIPSTARGETS)" ] ; then \ 
    162162          $(MKDIR) $(DESTDIR)$(MODPREF)/kernel/drivers/i2c/chips ; \ 
    163           $(INSTALL) -o root -g root -m 644 $(KERNELCHIPSTARGETS) $(DESTDIR)$(MODPREF)/kernel/drivers/i2c/chips ; \ 
     163          $(INSTALL) -m 644 $(KERNELCHIPSTARGETS) $(DESTDIR)$(MODPREF)/kernel/drivers/i2c/chips ; \ 
    164164          for i in $(KERNELCHIPSTARGETS) ; do \ 
    165165            $(RM) $(DESTDIR)$(MODPREF)/misc/`basename $$i` $(DESTDIR)$(MODPREF)/kernel/drivers/sensors/`basename $$i` \ 
  • lm-sensors/trunk/kernel/include/Module.mk

    r2085 r2189  
    4040        if [ -n "$(KERNELINCLUDEFILES)" ] ; then \ 
    4141          $(MKDIR) $(DESTDIR)$(SYSINCLUDEDIR) ; \ 
    42           $(INSTALL) -o root -g root -m 644 $(KERNELINCLUDEFILES) $(DESTDIR)$(SYSINCLUDEDIR) ; \ 
     42          $(INSTALL) -m 644 $(KERNELINCLUDEFILES) $(DESTDIR)$(SYSINCLUDEDIR) ; \ 
    4343        fi 
    4444 
  • lm-sensors/trunk/lib/Module.mk

    r2163 r2189  
    111111             echo '******************************************************************************' ; \ 
    112112        fi 
    113         $(INSTALL) -o root -g root -m 644 $(LIBTARGETS) $(DESTDIR)$(LIBDIR) 
     113        $(INSTALL) -m 644 $(LIBTARGETS) $(DESTDIR)$(LIBDIR) 
    114114        $(LN) $(LIBSHLIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBSHSONAME) 
    115115        $(LN) $(LIBSHSONAME) $(DESTDIR)$(LIBDIR)/$(LIBSHBASENAME) 
     
    133133                  echo '******************************************************************************' ) ; \ 
    134134        fi 
    135         $(INSTALL) -o root -g root -m 644 $(LIBHEADERFILES) $(DESTDIR)$(LIBINCLUDEDIR) 
    136         $(INSTALL) -o $(MANOWN) -g $(MANGRP) -m 644 $(LIBMAN3FILES) $(DESTDIR)$(LIBMAN3DIR) 
    137         $(INSTALL) -o $(MANOWN) -g $(MANGRP) -m 644 $(LIBMAN5FILES) $(DESTDIR)$(LIBMAN5DIR) 
     135        $(INSTALL) -m 644 $(LIBHEADERFILES) $(DESTDIR)$(LIBINCLUDEDIR) 
     136        $(INSTALL) -m 644 $(LIBMAN3FILES) $(DESTDIR)$(LIBMAN3DIR) 
     137        $(INSTALL) -m 644 $(LIBMAN5FILES) $(DESTDIR)$(LIBMAN5DIR) 
    138138 
    139139 
  • lm-sensors/trunk/prog/detect/Module.mk

    r2185 r2189  
    4040 
    4141install-prog-detect: all-prog-detect 
    42         mkdir -p $(DESTDIR)$(SBINDIR) 
    43         $(INSTALL) -o root -g root -m 755 $(PROGDETECTSBININSTALL) $(DESTDIR)$(SBINDIR) 
     42        $(MKDIR) $(DESTDIR)$(SBINDIR) 
     43        $(INSTALL) -m 755 $(PROGDETECTSBININSTALL) $(DESTDIR)$(SBINDIR) 
    4444user_install :: install-prog-detect 
    4545 
  • lm-sensors/trunk/prog/dump/Module.mk

    r2185 r2189  
    4545 
    4646install-prog-dump: all-prog-dump 
    47         mkdir -p $(DESTDIR)$(SBINDIR) 
    48         $(INSTALL) -o root -g root -m 755 $(PROGDUMPBININSTALL) $(DESTDIR)$(SBINDIR) 
     47        $(MKDIR) $(DESTDIR)$(SBINDIR) 
     48        $(INSTALL) -m 755 $(PROGDUMPBININSTALL) $(DESTDIR)$(SBINDIR) 
    4949user_install :: install-prog-dump 
    5050 
  • lm-sensors/trunk/prog/eeprom/Module.mk

    r2164 r2189  
    2525install-prog-eeprom: $(PROGEEPROMTARGETS) 
    2626        $(MKDIR) $(DESTDIR)$(BINDIR) 
    27         $(INSTALL) -o root -g root -m 755 $(PROGEEPROMTARGETS) $(DESTDIR)$(BINDIR) 
     27        $(INSTALL) -m 755 $(PROGEEPROMTARGETS) $(DESTDIR)$(BINDIR) 
    2828 
    2929user_install :: install-prog-eeprom 
  • lm-sensors/trunk/prog/pwm/Module.mk

    r2164 r2189  
    2424install-prog-pwm: $(PROGPWMTARGETS) 
    2525        $(MKDIR) $(DESTDIR)$(SBINDIR) 
    26         $(INSTALL) -o root -g root -m 755 $(PROGPWMTARGETS) $(DESTDIR)$(SBINDIR) 
     26        $(INSTALL) -m 755 $(PROGPWMTARGETS) $(DESTDIR)$(SBINDIR) 
    2727 
    2828user_install :: install-prog-pwm 
  • lm-sensors/trunk/prog/sensord/Module.mk

    r2185 r2189  
    4646install-prog-sensord: all-prog-sensord 
    4747        $(MKDIR) $(DESTDIR)$(SBINDIR) $(DESTDIR)$(PROGSENSORDMAN1DIR) 
    48         $(INSTALL) -o root -g root -m 755 $(PROGSENSORDTARGETS) $(DESTDIR)$(SBINDIR) 
    49         $(INSTALL) -o $(MANOWN) -g $(MANGRP) -m 644 $(PROGSENSORDMAN1FILES) $(DESTDIR)$(PROGSENSORDMAN1DIR) 
     48        $(INSTALL) -m 755 $(PROGSENSORDTARGETS) $(DESTDIR)$(SBINDIR) 
     49        $(INSTALL) -m 644 $(PROGSENSORDMAN1FILES) $(DESTDIR)$(PROGSENSORDMAN1DIR) 
    5050user_install :: install-prog-sensord 
    5151 
  • lm-sensors/trunk/prog/sensors/Module.mk

    r2185 r2189  
    4141 
    4242install-prog-sensors: all-prog-sensors 
    43         mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(PROGSENSORSMAN1DIR) 
    44         $(INSTALL) -o root -g root -m 755 $(PROGSENSORSTARGETS) $(DESTDIR)$(BINDIR) 
    45         $(INSTALL) -o $(MANOWN) -g $(MANGRP) -m 644 $(PROGSENSORSMAN1FILES) $(DESTDIR)$(PROGSENSORSMAN1DIR) 
     43        $(MKDIR) $(DESTDIR)$(BINDIR) $(DESTDIR)$(PROGSENSORSMAN1DIR) 
     44        $(INSTALL) -m 755 $(PROGSENSORSTARGETS) $(DESTDIR)$(BINDIR) 
     45        $(INSTALL) -m 644 $(PROGSENSORSMAN1FILES) $(DESTDIR)$(PROGSENSORSMAN1DIR) 
    4646user_install :: install-prog-sensors 
    4747 
  • lm-sensors/trunk/prog/xeon/Module.mk

    r2164 r2189  
    2323install-prog-xeon: $(PROGXEONTARGETS) 
    2424        $(MKDIR) $(DESTDIR)$(BINDIR) 
    25         $(INSTALL) -o root -g root -m 755 $(PROGXEONTARGETS) $(DESTDIR)$(BINDIR) 
     25        $(INSTALL) -m 755 $(PROGXEONTARGETS) $(DESTDIR)$(BINDIR) 
    2626 
    2727user_install :: install-prog-xeon