Merge branch 'master' of git://github.com/illumos/illumos-gate
[unleashed.git] / tools / mkconfig / Makefile
blob9b7374a8e5041f8ebdb50c9d21dc7598287a76af
2 # Copyright (c) 2016 Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
4 # Permission is hereby granted, free of charge, to any person obtaining a copy
5 # of this software and associated documentation files (the "Software"), to deal
6 # in the Software without restriction, including without limitation the rights
7 # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 # copies of the Software, and to permit persons to whom the Software is
9 # furnished to do so, subject to the following conditions:
11 # The above copyright notice and this permission notice shall be included in
12 # all copies or substantial portions of the Software.
14 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
20 # SOFTWARE.
23 CONTRDIR=${.CURDIR}/../../contrib/libjeffpc
24 .PATH: ${CONTRDIR}
26 CONFIG_SRCS=main.c
28 LIBJEFFPC_SRCS=error.c \
29 hexdump.c \
30 init.c \
31 io.c \
32 padding.c \
33 rand.c \
34 sexpr.c \
35 sexpr.lex.c \
36 sexpr.tab.c \
37 sexpr_eval.c \
38 sock.c \
39 str.c \
40 synch.c \
41 uuid.c \
42 val.c
44 PROG=mkconfig
45 SRCS=$(CONFIG_SRCS) $(LIBJEFFPC_SRCS)
47 CLEANFILES+=sexpr.lex.c \
48 sexpr.tab.c \
49 sexpr.tab.h
51 LEX=flex
52 YACC=bison
53 CFLAGS=-D_GNU_SOURCE -D_POSIX_C_SOURCE=200112L -D_REENTRANT -D__EXTENSIONS__ \
54 -Wall -O2 -g -std=gnu99 \
55 -fno-omit-frame-pointer \
56 -I${CONTRDIR}/include \
57 -I${CONTRDIR}
58 LFLAGS=-P sexpr_reader_
59 YFLAGS=-p sexpr_reader_ -d
60 LDFLAGS=-lumem -lavl -luuid -lsocket /usr/lib/libcmdutils.so.1
62 .include <bsd.prog.mk>
64 sexpr.lex.c: sexpr.l
65 $(LEX) -P sexpr_reader_ -o ${.TARGET} ${.ALLSRC}
67 sexpr.tab.c sexpr.tab.h: sexpr.y
68 $(YACC) -p sexpr_reader_ -d -o sexpr.tab.c ${.ALLSRC}
70 sexpr.lex.o: sexpr.tab.h