2003-10-17 12:40:02 +04:00
# Makefile for udev
2005-04-27 07:59:47 +04:00
#
2004-10-06 06:01:12 +04:00
# Copyright (C) 2003,2004 Greg Kroah-Hartman <greg@kroah.com>
2005-03-06 12:15:51 +03:00
# Copyright (C) 2004-2005 Kay Sievers <kay.sievers@vrfy.org>
2005-04-27 07:59:47 +04:00
#
# 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; version 2 of the License.
#
# 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
2005-12-04 05:01:48 +03:00
VERSION = 077
2005-08-30 19:03:25 +04:00
# set this to make use of syslog
2004-01-16 09:00:58 +03:00
USE_LOG = true
[PATCH] add udev logging to info log
On Thu, Jan 15, 2004 at 05:14:16AM +0100, Kay Sievers wrote:
> On Wed, Jan 14, 2004 at 01:10:43PM -0800, Greg KH wrote:
> > On Wed, Jan 14, 2004 at 02:34:26PM -0600, Clay Haapala wrote:
> > > On Wed, 14 Jan 2004, Chris Friesen spake thusly:
> > > >
> > > > Maybe for ones with a matching rule, you could print something like:
> > > >
> > > >
> > > Is the act of printing/syslogging a rule in an of itself?
> >
> > No, as currently the only way stuff ends up in the syslog is if
> > DEBUG=true is used on the build line.
> >
> > But it's sounding like we might want to change that... :)
>
> How about this in the syslog after connect/disconnect?
>
> Jan 15 05:07:45 pim udev[28007]: configured rule in '/etc/udev/udev.rules' at line 17 applied, 'video*' becomes 'video/webcam%n'
> Jan 15 05:07:45 pim udev[28007]: creating device node '/udev/video/webcam0'
> Jan 15 05:07:47 pim udev[28015]: removing device node '/udev/video/webcam0'
Here is a slightly better version. I've created a logging.h file and
moved the debug macros from udev.h in there.
If you type:
'make' - you will get a binary that prints one or two lines to syslog
if a device node is created or deleted
'make LOG=false' - you get a binary that prints asolutely nothing
'make DEBUG=true' - the same as today, it will print all debug lines
2004-01-16 08:53:20 +03:00
2005-08-30 19:03:25 +04:00
# compile-in development debug messages
# (export UDEV_LOG="debug" or set udev_log="debug" in udev.conf
# to print the debug messages to syslog)
2003-12-03 05:41:29 +03:00
DEBUG = false
2005-04-27 07:59:47 +04:00
2005-09-12 17:26:33 +04:00
# compile with gcc's code coverage option
USE_GCOV = false
2005-08-30 19:03:25 +04:00
# include Security-Enhanced Linux support
2004-10-06 10:39:05 +04:00
USE_SELINUX = false
2005-04-27 07:59:47 +04:00
2005-08-30 19:03:25 +04:00
# comile with klibc instead of glibc
2005-03-06 12:15:51 +03:00
USE_KLIBC = false
2005-08-30 19:03:25 +04:00
# set this to create statically linked binaries
2005-03-06 12:15:51 +03:00
USE_STATIC = false
2005-08-30 19:03:25 +04:00
# to build any of the extras programs pass:
# make EXTRAS="extras/<extra1> extras/<extra2>"
2005-10-27 20:20:58 +04:00
EXTRAS =
2005-03-06 12:15:51 +03:00
# make the build silent. Set this to something else to make it noisy again.
2005-10-27 20:20:58 +04:00
V = false
2005-03-06 12:15:51 +03:00
2005-08-30 19:03:25 +04:00
PROGRAMS = \
udev \
udevd \
udevsend \
udevcontrol \
udevmonitor \
udevinfo \
udevtest \
udevstart
HEADERS = \
udev.h \
udev_utils.h \
udev_rules.h \
logging.h \
udev_libc_wrapper.h \
udev_selinux.h \
list.h
UDEV_OBJS = \
udev_event.o \
udev_device.o \
udev_config.o \
udev_add.o \
udev_remove.o \
udev_db.o \
udev_rules.o \
udev_rules_parse.o \
udev_utils.o \
udev_utils_string.o \
udev_utils_file.o \
udev_utils_run.o \
udev_libc_wrapper.o
LIBUDEV = libudev.a
MAN_PAGES = \
2005-08-31 01:30:52 +04:00
udev.8 \
2005-08-30 19:03:25 +04:00
udevmonitor.8 \
udevd.8 \
2005-08-31 01:30:52 +04:00
udevsend.8 \
2005-08-30 19:03:25 +04:00
udevtest.8 \
udevinfo.8 \
udevstart.8
SYSFS_OBJS = \
libsysfs/sysfs_class.o \
libsysfs/sysfs_device.o \
libsysfs/sysfs_dir.o \
libsysfs/sysfs_driver.o \
libsysfs/sysfs_utils.o \
libsysfs/dlist.o
LIBSYSFS = libsysfs/libsysfs.a
# config files automatically generated
GEN_CONFIGS = \
$( LOCAL_CFG_DIR) /udev.conf
GEN_HEADERS = \
udev_version.h
2004-02-03 11:51:51 +03:00
2003-10-17 08:18:40 +04:00
prefix =
etcdir = ${ prefix } /etc
2005-11-16 06:35:37 +03:00
sbindir = ${ prefix } /sbin
usrbindir = ${ prefix } /usr/bin
usrsbindir = ${ prefix } /usr/sbin
libudevdir = ${ prefix } /lib/udev
2003-10-17 08:18:40 +04:00
mandir = ${ prefix } /usr/share/man
2004-04-24 08:50:27 +04:00
configdir = ${ etcdir } /udev
2005-08-30 19:03:25 +04:00
udevdir = /dev
LOCAL_CFG_DIR = etc/udev
DESTDIR =
2003-10-17 08:18:40 +04:00
INSTALL = /usr/bin/install -c
INSTALL_PROGRAM = ${ INSTALL }
INSTALL_DATA = ${ INSTALL } -m 644
INSTALL_SCRIPT = ${ INSTALL_PROGRAM }
2004-02-28 11:30:24 +03:00
PWD = $( shell pwd )
2005-10-27 20:20:58 +04:00
CROSS =
2005-04-27 07:59:47 +04:00
CC = $( CROSS) gcc
2003-11-25 09:10:23 +03:00
LD = $( CROSS) gcc
2005-04-27 07:59:47 +04:00
AR = $( CROSS) ar
2003-08-05 12:10:01 +04:00
RANLIB = $( CROSS) ranlib
2004-10-14 09:28:06 +04:00
HOSTCC = gcc
2005-10-27 21:14:21 +04:00
STRIP = $( CROSS) strip
STRIPCMD = $( STRIP) -s
2005-04-27 07:59:47 +04:00
2005-02-05 04:44:37 +03:00
# check if compiler option is supported
2005-07-06 23:36:21 +04:00
cc-supports = ${ shell if $( CC) ${ 1 } -S -o /dev/null -xc /dev/null > /dev/null 2>&1; then echo " $( 1) " ; else echo " $( 2) " ; fi; }
2005-02-05 04:44:37 +03:00
2005-10-27 21:14:21 +04:00
CFLAGS = -g -Wall -pipe -D_GNU_SOURCE -D_FILE_OFFSET_BITS= 64
WARNINGS = -Wstrict-prototypes -Wsign-compare -Wshadow \
-Wchar-subscripts -Wmissing-declarations -Wnested-externs \
-Wpointer-arith -Wcast-align -Wsign-compare -Wmissing-prototypes
WARNINGS += $( call cc-supports, -Wdeclaration-after-statement, )
CFLAGS += $( WARNINGS)
2004-10-07 10:40:35 +04:00
2005-10-27 20:20:58 +04:00
LDFLAGS = -Wl,-warn-common
2005-10-27 21:14:21 +04:00
# use -Os optimization if available, else use -O2
2005-07-06 23:36:21 +04:00
OPTFLAGS := $( call cc-supports, -Os, -O2)
2005-10-27 21:14:21 +04:00
CFLAGS += $( OPTFLAGS)
2005-07-06 23:36:21 +04:00
2005-08-30 19:03:25 +04:00
# include our local copy of libsysfs
2005-07-22 20:35:58 +04:00
CFLAGS += -I$( PWD) /libsysfs/sysfs \
2005-02-05 04:43:16 +03:00
-I$( PWD) /libsysfs
2004-01-16 09:00:58 +03:00
i f e q ( $( strip $ ( USE_LOG ) ) , t r u e )
2005-03-06 12:15:51 +03:00
CFLAGS += -DUSE_LOG
[PATCH] add udev logging to info log
On Thu, Jan 15, 2004 at 05:14:16AM +0100, Kay Sievers wrote:
> On Wed, Jan 14, 2004 at 01:10:43PM -0800, Greg KH wrote:
> > On Wed, Jan 14, 2004 at 02:34:26PM -0600, Clay Haapala wrote:
> > > On Wed, 14 Jan 2004, Chris Friesen spake thusly:
> > > >
> > > > Maybe for ones with a matching rule, you could print something like:
> > > >
> > > >
> > > Is the act of printing/syslogging a rule in an of itself?
> >
> > No, as currently the only way stuff ends up in the syslog is if
> > DEBUG=true is used on the build line.
> >
> > But it's sounding like we might want to change that... :)
>
> How about this in the syslog after connect/disconnect?
>
> Jan 15 05:07:45 pim udev[28007]: configured rule in '/etc/udev/udev.rules' at line 17 applied, 'video*' becomes 'video/webcam%n'
> Jan 15 05:07:45 pim udev[28007]: creating device node '/udev/video/webcam0'
> Jan 15 05:07:47 pim udev[28015]: removing device node '/udev/video/webcam0'
Here is a slightly better version. I've created a logging.h file and
moved the debug macros from udev.h in there.
If you type:
'make' - you will get a binary that prints one or two lines to syslog
if a device node is created or deleted
'make LOG=false' - you get a binary that prints asolutely nothing
'make DEBUG=true' - the same as today, it will print all debug lines
2004-01-16 08:53:20 +03:00
e n d i f
2005-10-27 21:14:21 +04:00
# if DEBUG is enabled, then we do not strip
2005-04-27 07:59:47 +04:00
i f e q ( $( strip $ ( DEBUG ) ) , t r u e )
2005-10-27 20:20:58 +04:00
CFLAGS += -DDEBUG
2005-10-27 23:49:13 +04:00
STRIPCMD =
2005-04-27 07:59:47 +04:00
e n d i f
2005-09-12 17:26:33 +04:00
i f e q ( $( strip $ ( USE_GCOV ) ) , t r u e )
CFLAGS += -fprofile-arcs -ftest-coverage
2005-10-27 20:20:58 +04:00
LDFLAGS += -fprofile-arcs
2005-09-12 17:26:33 +04:00
e n d i f
2005-08-30 19:03:25 +04:00
# if our own version of klibc is used, we need to build it
2003-12-17 10:41:59 +03:00
i f e q ( $( strip $ ( USE_KLIBC ) ) , t r u e )
2005-11-09 17:42:07 +03:00
KLCC = /usr/bin/$( CROSS) klcc
2005-03-17 13:02:53 +03:00
CC = $( KLCC)
LD = $( KLCC)
2005-10-27 20:42:52 +04:00
V = true
2005-04-27 07:59:47 +04:00
e n d i f
2004-10-06 10:39:05 +04:00
i f e q ( $( strip $ ( USE_SELINUX ) ) , t r u e )
2005-02-05 04:43:16 +03:00
UDEV_OBJS += udev_selinux.o
2005-10-16 16:16:43 +04:00
LIB_OBJS += -lselinux -lsepol
2005-02-05 04:43:16 +03:00
CFLAGS += -DUSE_SELINUX
2004-10-06 10:39:05 +04:00
e n d i f
2005-03-06 12:15:51 +03:00
i f e q ( $( strip $ ( USE_STATIC ) ) , t r u e )
CFLAGS += -DUSE_STATIC
LDFLAGS += -static
e n d i f
2005-02-05 04:43:16 +03:00
i f e q ( $( strip $ ( V ) ) , f a l s e )
QUIET = @$( PWD) /ccdv
HOST_PROGS = ccdv
e l s e
QUIET =
HOST_PROGS =
e n d i f
2003-12-07 20:04:49 +03:00
2005-11-09 17:42:07 +03:00
all : $( PROGRAMS ) $( MAN_PAGES )
2005-08-30 19:03:25 +04:00
@extras= " $( EXTRAS) " ; for target in $$ extras; do \
echo $$ target; \
2005-10-27 20:42:52 +04:00
$( MAKE) CC = " $( CC) " \
2005-09-14 19:00:02 +04:00
CFLAGS = " $( CFLAGS) " \
2004-02-03 11:51:51 +03:00
LD = " $( LD) " \
2005-09-14 19:00:02 +04:00
LDFLAGS = " $( LDFLAGS) " \
STRIPCMD = " $( STRIPCMD) " \
LIB_OBJS = " $( LIB_OBJS) " \
2005-08-30 19:03:25 +04:00
LIBUDEV = " $( PWD) / $( LIBUDEV) " \
LIBSYSFS = " $( PWD) / $( LIBSYSFS) " \
2004-12-09 06:30:41 +03:00
QUIET = " $( QUIET) " \
2005-11-22 18:33:25 +03:00
-C $$ target $@ || exit 1; \
2005-08-30 19:03:25 +04:00
done ;
.PHONY : all
2005-09-12 16:21:14 +04:00
.DEFAULT : all
2005-04-27 07:59:47 +04:00
2005-09-11 01:35:30 +04:00
# clear implicit rules
.SUFFIXES :
# build the objects
2005-09-14 19:00:02 +04:00
%.o : %.c $( GEN_HEADERS )
2005-09-11 01:35:30 +04:00
$( QUIET) $( CC) -c $( CFLAGS) $< -o $@
# "Static Pattern Rule" to build all programs
2005-11-09 17:42:07 +03:00
$(PROGRAMS) : %: $( HOST_PROGS ) $( HEADERS ) $( GEN_HEADERS ) $( LIBSYSFS ) $( LIBUDEV ) %.o
2005-09-11 01:35:30 +04:00
$( QUIET) $( LD) $( LDFLAGS) $@ .o -o $@ $( LIBUDEV) $( LIBSYSFS) $( LIB_OBJS)
2005-10-28 03:49:22 +04:00
i f n e q ( $( STRIPCMD ) , )
2005-08-30 19:03:25 +04:00
$( QUIET) $( STRIPCMD) $@
2005-10-27 23:49:13 +04:00
e n d i f
2005-08-30 19:03:25 +04:00
2005-11-09 17:42:07 +03:00
$(UDEV_OBJS) :
2005-08-30 19:03:25 +04:00
$(LIBUDEV) : $( HOST_PROGS ) $( HEADERS ) $( GEN_HEADERS ) $( UDEV_OBJS )
@rm -f $@
2004-11-25 10:38:06 +03:00
$( QUIET) $( AR) cq $@ $( UDEV_OBJS)
$( QUIET) $( RANLIB) $@
2005-11-09 17:42:07 +03:00
$(SYSFS_OBJS) :
2005-08-30 19:03:25 +04:00
$(LIBSYSFS) : $( HOST_PROGS ) $( SYSFS_OBJS )
@rm -f $@
2004-11-25 10:38:06 +03:00
$( QUIET) $( AR) cq $@ $( SYSFS_OBJS)
$( QUIET) $( RANLIB) $@
2005-08-30 19:03:25 +04:00
# generate config files
$(GEN_CONFIGS) :
sed -e " s:@udevdir@: $( udevdir) : " -e " s:@configdir@: $( configdir) : " < $@ .in > $@
2004-10-14 09:28:06 +04:00
2005-08-30 19:03:25 +04:00
# generate config header file
2005-04-27 07:59:47 +04:00
udev_version.h :
2004-10-14 09:33:09 +04:00
@echo "Creating udev_version.h"
2004-04-24 08:50:27 +04:00
@echo \# define UDEV_VERSION \" $( VERSION) \" > $@
2004-11-06 16:28:01 +03:00
@echo \# define UDEV_ROOT \" $( udevdir) \" >> $@
2004-04-24 08:50:27 +04:00
@echo \# define UDEV_CONFIG_FILE \" $( configdir) /udev.conf\" >> $@
@echo \# define UDEV_RULES_FILE \" $( configdir) /rules.d\" >> $@
2005-04-27 07:59:47 +04:00
2005-08-30 06:41:42 +04:00
# man pages
%.8 : docs /%.xml
xmlto man $?
2005-08-30 19:03:25 +04:00
.PRECIOUS : %.8
2005-03-07 02:01:34 +03:00
2005-08-30 19:03:25 +04:00
ccdv : ccdv .c
@$( HOSTCC) -O1 ccdv.c -o ccdv
.SILENT : ccdv
2005-04-27 07:59:47 +04:00
clean :
2005-09-12 16:21:14 +04:00
- find . \( -not -type d \) -and \( -name '*~' -o -name '*.[oas]' \) -type f -print0 | xargs -0rt rm -f
2005-09-12 17:26:33 +04:00
- find -name "*.gcno" -print0 | xargs -0rt rm -f
- find -name "*.gcda" -print0 | xargs -0rt rm -f
- find -name "*.gcov" -print0 | xargs -0rt rm -f
- rm -f udev_gcov.txt
2005-09-12 16:21:14 +04:00
- rm -f core $( PROGRAMS) $( GEN_HEADERS) $( GEN_CONFIGS)
2005-10-27 21:38:36 +04:00
- rm -f udev-$( VERSION) .tar.gz
2005-08-30 19:03:25 +04:00
@extras= " $( EXTRAS) " ; for target in $$ extras; do \
echo $$ target; \
2005-11-22 18:33:25 +03:00
$( MAKE) -C $$ target $@ || exit 1; \
2005-08-30 19:03:25 +04:00
done ;
2005-10-27 20:42:52 +04:00
.PHONY : clean
2004-03-13 10:52:21 +03:00
2005-10-27 20:42:52 +04:00
release :
2005-10-27 21:38:36 +04:00
git-tar-tree HEAD udev-$( VERSION) | gzip -9v > udev-$( VERSION) .tar.gz
@echo " udev- $( VERSION) .tar.gz created "
2005-08-30 19:03:25 +04:00
.PHONY : release
2003-11-19 08:35:44 +03:00
2005-08-30 19:03:25 +04:00
install-config : $( GEN_CONFIGS )
2004-04-24 08:50:27 +04:00
$( INSTALL) -d $( DESTDIR) $( configdir) /rules.d
@if [ ! -r $( DESTDIR) $( configdir) /udev.conf ] ; then \
2004-01-01 07:35:02 +03:00
echo $( INSTALL_DATA) $( LOCAL_CFG_DIR) /udev.conf $( DESTDIR) $( configdir) ; \
$( INSTALL_DATA) $( LOCAL_CFG_DIR) /udev.conf $( DESTDIR) $( configdir) ; \
2003-12-20 05:29:05 +03:00
fi
2004-04-24 08:50:27 +04:00
@if [ ! -r $( DESTDIR) $( configdir) /rules.d/50-udev.rules ] ; then \
2005-08-30 19:03:25 +04:00
echo; \
2005-08-12 04:07:50 +04:00
echo "pick a udev rules file from the etc/udev directory that matches your distribution" ; \
2005-08-30 19:03:25 +04:00
echo; \
2003-12-20 05:29:05 +03:00
fi
2005-09-14 16:27:28 +04:00
@extras= " $( EXTRAS) " ; for target in $$ extras; do \
echo $$ target; \
2005-11-22 18:33:25 +03:00
$( MAKE) -C $$ target $@ || exit 1; \
2005-09-14 16:27:28 +04:00
done ;
2005-08-30 19:03:25 +04:00
.PHONY : install -config
2003-12-20 05:29:05 +03:00
2004-04-02 12:01:58 +04:00
install-man :
2004-04-02 11:47:23 +04:00
$( INSTALL_DATA) -D udev.8 $( DESTDIR) $( mandir) /man8/udev.8
$( INSTALL_DATA) -D udevinfo.8 $( DESTDIR) $( mandir) /man8/udevinfo.8
$( INSTALL_DATA) -D udevtest.8 $( DESTDIR) $( mandir) /man8/udevtest.8
$( INSTALL_DATA) -D udevstart.8 $( DESTDIR) $( mandir) /man8/udevstart.8
$( INSTALL_DATA) -D udevd.8 $( DESTDIR) $( mandir) /man8/udevd.8
2005-08-31 01:30:52 +04:00
$( INSTALL_DATA) -D udevsend.8 $( DESTDIR) $( mandir) /man8/udevsend.8
2005-08-30 06:41:42 +04:00
$( INSTALL_DATA) -D udevmonitor.8 $( DESTDIR) $( mandir) /man8/udevmonitor.8
- ln -f -s udevd.8 $( DESTDIR) $( mandir) /man8/udevcontrol.8
2005-09-14 16:27:28 +04:00
@extras= " $( EXTRAS) " ; for target in $$ extras; do \
echo $$ target; \
2005-11-22 18:33:25 +03:00
$( MAKE) -C $$ target $@ || exit 1; \
2005-09-14 16:27:28 +04:00
done ;
2005-08-30 19:03:25 +04:00
.PHONY : install -man
2004-04-02 11:47:23 +04:00
uninstall-man :
2005-10-27 20:42:52 +04:00
- rm -f $( DESTDIR) $( mandir) /man8/udev.8
- rm -f $( DESTDIR) $( mandir) /man8/udevinfo.8
- rm -f $( DESTDIR) $( mandir) /man8/udevtest.8
- rm -f $( DESTDIR) $( mandir) /man8/udevstart.8
- rm -f $( DESTDIR) $( mandir) /man8/udevd.8
- rm -f $( DESTDIR) $( mandir) /man8/udevmonitor.8
- rm -f $( DESTDIR) $( mandir) /man8/udevsend.8
- rm -f $( DESTDIR) $( mandir) /man8/udevcontrol.8
2005-09-14 16:27:28 +04:00
@extras= " $( EXTRAS) " ; for target in $$ extras; do \
echo $$ target; \
2005-11-22 18:33:25 +03:00
$( MAKE) -C $$ target $@ || exit 1; \
2005-09-14 16:27:28 +04:00
done ;
2005-08-30 19:03:25 +04:00
.PHONY : uninstall -man
2004-04-02 11:47:23 +04:00
2005-09-12 16:21:14 +04:00
install-bin :
2003-12-20 05:29:05 +03:00
$( INSTALL) -d $( DESTDIR) $( udevdir)
2005-08-30 19:03:25 +04:00
$( INSTALL_PROGRAM) -D udev $( DESTDIR) $( sbindir) /udev
$( INSTALL_PROGRAM) -D udevd $( DESTDIR) $( sbindir) /udevd
$( INSTALL_PROGRAM) -D udevsend $( DESTDIR) $( sbindir) /udevsend
$( INSTALL_PROGRAM) -D udevcontrol $( DESTDIR) $( sbindir) /udevcontrol
$( INSTALL_PROGRAM) -D udevmonitor $( DESTDIR) $( usrsbindir) /udevmonitor
$( INSTALL_PROGRAM) -D udevinfo $( DESTDIR) $( usrbindir) /udevinfo
$( INSTALL_PROGRAM) -D udevtest $( DESTDIR) $( usrbindir) /udevtest
$( INSTALL_PROGRAM) -D udevstart $( DESTDIR) $( sbindir) /udevstart
2005-09-14 19:00:02 +04:00
@extras= " $( EXTRAS) " ; for target in $$ extras; do \
echo $$ target; \
2005-11-22 18:33:25 +03:00
$( MAKE) -C $$ target $@ || exit 1; \
2005-09-14 19:00:02 +04:00
done ;
2004-03-02 09:23:35 +03:00
i f n d e f D E S T D I R
2005-08-30 19:03:25 +04:00
- killall udevd
2005-11-16 06:14:15 +03:00
- rm -rf /dev/.udev
2005-08-30 19:03:25 +04:00
- $( sbindir) /udevd --daemon
2004-03-02 09:23:35 +03:00
e n d i f
2005-09-12 16:21:14 +04:00
.PHONY : install -bin
2003-10-17 11:19:04 +04:00
2005-09-12 16:21:14 +04:00
uninstall-bin :
2005-10-27 20:42:52 +04:00
- rm -f $( DESTDIR) $( sbindir) /udev
- rm -f $( DESTDIR) $( sbindir) /udevd
- rm -f $( DESTDIR) $( sbindir) /udevsend
- rm -f $( DESTDIR) $( sbindir) /udevcontrol
- rm -f $( DESTDIR) $( sbindir) /udevstart
- rm -f $( DESTDIR) $( usrsbindir) /udevmonitor
2005-09-14 19:29:27 +04:00
- rm -f $( usrbindir) /udevinfo
2005-10-27 20:42:52 +04:00
- rm -f $( DESTDIR) $( DESTDIR) $( usrbindir) /udevtest
i f n d e f D E S T D I R
2005-08-30 19:03:25 +04:00
- killall udevd
2005-11-16 06:14:15 +03:00
- rm -rf /dev/.udev
2005-10-27 20:42:52 +04:00
e n d i f
2005-08-30 19:03:25 +04:00
@extras= " $( EXTRAS) " ; for target in $$ extras; do \
echo $$ target; \
2005-11-22 18:33:25 +03:00
$( MAKE) -C $$ target $@ || exit 1; \
2005-08-30 19:03:25 +04:00
done ;
2005-09-12 16:21:14 +04:00
.PHONY : uninstall -bin
install : all install -bin install -config install -man
.PHONY : install
uninstall : uninstall -bin uninstall -man
.PHONY : uninstall
2005-08-30 19:03:25 +04:00
test tests : all
2004-11-11 05:11:40 +03:00
@ cd test && ./udev-test.pl
2005-04-12 00:38:41 +04:00
@ cd test && ./udevstart-test.pl
2005-08-30 19:03:25 +04:00
.PHONY : test tests
2005-07-15 02:27:30 +04:00
2005-09-12 16:21:14 +04:00
buildtest :
2005-12-04 04:31:38 +03:00
test/simple-build-check.sh
2005-09-12 17:26:33 +04:00
.PHONY : buildtest
2005-12-04 04:31:38 +03:00
ChangeLog : Makefile
@ mv $@ $@ .tmp
2005-12-04 05:01:48 +03:00
@ echo " Summary of changes from v $( shell printf '%03i' $$ ( expr $( VERSION) - 1) ) to v $( VERSION) " >> $@
2005-12-04 04:31:38 +03:00
@ echo "============================================" >> $@
2005-12-04 05:01:48 +03:00
@ echo >> $@
@ git log --pretty= short $( shell printf '%03i' $$ ( expr $( VERSION) - 1) ) ..HEAD | git shortlog >> $@
2005-12-04 04:31:38 +03:00
@ echo >> $@
@ cat $@
@ cat $@ .tmp >> $@
@ rm $@ .tmp
2005-09-12 17:26:33 +04:00
gcov-all :
2005-10-27 21:14:21 +04:00
$( MAKE) clean all STRIPCMD = USE_GCOV = true
2005-09-12 17:26:33 +04:00
@echo
@echo "binaries built with gcov support."
@echo "run the tests and analyze with 'make udev_gcov.txt'"
.PHONY : gcov -all
# see docs/README-gcov_for_udev
udev_gcov.txt : $( wildcard *.gcda ) $( wildcard *.gcno )
for file in ` find -maxdepth 1 -name "*.gcno" ` ; do \
name = ` basename $$ file .gcno` ; \
echo "################" >> $@ ; \
echo " $$ name.c " >> $@ ; \
echo "################" >> $@ ; \
if [ -e " $$ name.gcda " ] ; then \
gcov -l " $$ name.c " >> $@ 2>& 1; \
else \
echo " code for $$ name.c was never executed " >> $@ 2>& 1; \
fi ; \
echo >> $@ ; \
done ; \
echo " view $@ for the result "
2005-09-12 16:21:14 +04:00