kDefs.h: GNU hurd.
[kstuff-mirror.git] / kErr / Makefile.kmk
blob6b6b8b9340c697cb41c2ad03205ae090ea3b790d
1 # $Id$
2 ## @file
3 # kErr - The Status Code API, sub-makefile.
7 # Copyright (c) 2006-2007 Knut St. Osmundsen <bird-kStuff-spamix@anduin.net>
9 # Permission is hereby granted, free of charge, to any person
10 # obtaining a copy of this software and associated documentation
11 # files (the "Software"), to deal in the Software without
12 # restriction, including without limitation the rights to use,
13 # copy, modify, merge, publish, distribute, sublicense, and/or sell
14 # copies of the Software, and to permit persons to whom the
15 # Software is furnished to do so, subject to the following
16 # conditions:
18 # The above copyright notice and this permission notice shall be
19 # included in all copies or substantial portions of the Software.
21 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
22 # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
23 # OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
24 # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
25 # HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
26 # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
27 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
28 # OTHER DEALINGS IN THE SOFTWARE.
31 DEPTH ?= ..
32 SUB_DEPTH = ..
33 include $(PATH_KBUILD)/subheader.kmk
36 # kHlpBaseStatic
38 LIBRARIES += kErrStatic
39 kErrStatic_TEMPLATE = kStuffLIB
40 kErrStatic_SOURCES = \
41 kErrName.c
43 kErrName.c_DEPS = $(PATH_TARGET)/kErrNameConsts.h
44 kErrName.c_INCS = $(PATH_TARGET)
47 # Generate case statements for kErrName().
49 $(PATH_TARGET)/kErrNameConsts.h: $(PATH_SUB_ROOT)/include/k/kErrors.h $(MAKEFILE_CURRENT) | $(call DIRDEP,$(PATH_TARGET))
50 $(RM) -f $@
51 $(SED) \
52 -e '/^#define *\(K[A-Z_]*ERR_[^ ()]*\) .*$$/!d' \
53 -e 's/^#define *\(K[A-Z_]*ERR_[^ ()]*\) .*$$/ERR_CONST(\1)/' \
54 -e '/K[A-Z_]*ERR_[A-Z0-9_]*BASE/d' \
55 -e '/K[A-Z_]*ERR_[A-Z0-9_]*END/d' \
56 $< > $@
59 # Generate the rules
60 include $(PATH_KBUILD)/subfooter.kmk