* sysdeps/gnu/Makefile: Make sure the correct errlist.c file is
[glibc.git] / sysdeps / gnu / Makefile
blob2b3194f04af6580b3e2663e383da3d3bee847164
1 # Copyright (C) 1996,1997,1998,1999,2001,2002,2003,2004, 2005
2 # Free Software Foundation, Inc.
3 # This file is part of the GNU C Library.
5 # The GNU C Library is free software; you can redistribute it and/or
6 # modify it under the terms of the GNU Lesser General Public
7 # License as published by the Free Software Foundation; either
8 # version 2.1 of the License, or (at your option) any later version.
10 # The GNU C Library is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 # Lesser General Public License for more details.
15 # You should have received a copy of the GNU Lesser General Public
16 # License along with the GNU C Library; if not, write to the Free
17 # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18 # 02111-1307 USA.
20 # Generate the list of strings for errno codes from the section of the
21 # manual which documents the codes.
23 $(..)sysdeps/gnu/errlist.c: $(..)sysdeps/gnu/errlist.awk \
24 $(..)manual/errno.texi
25 $(AWK) -f $^ > $@-tmp
26 # Make it unwritable so noone will edit it by mistake.
27 -chmod a-w $@-tmp
28 mv -f $@-tmp $@
29 ifeq ($(with-cvs),yes)
30 test ! -d CVS || cvs commit -m'Regenerated from $^' $@
31 endif
33 ifeq ($(subdir),stdio-common)
35 errlist-c = $(firstword $(wildcard $(addsuffix /errlist.c, \
36 $(full_config_sysdirs) .)))
38 ifeq ($(versioning),yes)
39 $(objpfx)errlist-compat.c: $(errlist-c) $(..)sysdeps/gnu/errlist-compat.awk \
40 $(common-objpfx)Versions.v.i $(before-compile)
41 else
42 $(objpfx)errlist-compat.c: $(errlist-c) $(..)sysdeps/gnu/errlist-compat.awk \
43 $(before-compile)
44 endif
45 $(make-target-directory)
46 $(AWK) -v maxerr=`\
47 $(CC) -S $(CPPFLAGS) $(CFLAGS) -DNOT_IN_libc -DEMIT_ERR_MAX $< -o - \
48 | sed -n 's/^.*@@@[^0-9]*\([0-9]*\)[^0-9]*@@@.*$$/\1/p'` \
49 -f $(..)sysdeps/gnu/errlist-compat.awk \
50 $(wildcard $(patsubst %,$(..)%/Versions,\
51 $(config-sysdirs) $(add-ons))) > $@T
52 # Make it unwritable so noone will edit it by mistake.
53 -chmod a-w $@T
54 mv -f $@T $@
55 $(objpfx)errlist-compat.h: $(objpfx)errlist-compat.c
56 sed -n '1p;/ERR_MAX/p' $< > $@T
57 -chmod a-w $@T
58 mv -f $@T $@
59 generated += errlist-compat.c errlist-compat.h
61 # This will force the generation above to happy if need be.
62 $(foreach o,.d $(object-suffixes),$(objpfx)errlist$o):$(objpfx)errlist-compat.h
63 endif
65 ifeq ($(subdir),login)
66 sysdep_routines += setutxent getutxent endutxent getutxid getutxline \
67 pututxline utmpxname updwtmpx getutmpx getutmp
69 sysdep_headers += utmpx.h bits/utmpx.h
70 endif
73 ifeq ($(subdir),inet)
74 sysdep_headers += netinet/udp.h netinet/ip_icmp.h
75 endif
78 ifeq ($(subdir),misc)
79 sysdep_headers += sys/mtio.h
80 endif