1 # 2 # CDDL HEADER START 3 # 4 # The contents of this file are subject to the terms of the 5 # Common Development and Distribution License (the "License"). 6 # You may not use this file except in compliance with the License. 7 # 8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 # or http://www.opensolaris.org/os/licensing. 10 # See the License for the specific language governing permissions 11 # and limitations under the License. 12 # 13 # When distributing Covered Code, include this CDDL HEADER in each 14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 # If applicable, add the following below this CDDL HEADER, with the 16 # fields enclosed by brackets "[]" replaced with your own identifying 17 # information: Portions Copyright [yyyy] [name of copyright owner] 18 # 19 # CDDL HEADER END 20 # 21 # 22 # Copyright 2007 Sun Microsystems, Inc. All rights reserved. 23 # Use is subject to license terms. 24 # 25 #ident "%Z%%M% %I% %E% SMI" 26 # 27 # cmd/pools/poolbind/Makefile 28 29 PROG = poolcfg 30 OBJS = poolcfg_lex.o poolcfg_grammar.o 31 SRCS = $(OBJS:%.o=%.c) $(COMMON_SRCS) 32 POFILES = $(OBJS:.o=.po) 33 POFILE = poolcfg.po 34 35 include ../../Makefile.cmd 36 include ../Makefile.pools 37 38 # poolcf has a name clash with main() and libl.so.1. However, poolcfg must 39 # still export a number of "yy*" (libl) interfaces. Reduce all other symbols 40 # to local scope. 41 MAPFILES += $(MAPFILE.LEX) $(MAPFILE.NGB) 42 MAPOPTS = $(MAPFILES:%=-M%) 43 44 LFLAGS = -t 45 YFLAGS = -d 46 CFLAGS += -I$(POOLSCOMMONDIR) 47 LDFLAGS += $(MAPOPTS) 48 LDLIBS += -lpool -ll 49 XGETFLAGS = -a 50 CLOBBERFILES += poolcfg_lex.c poolcfg_grammar.c poolcfg_grammar.h 51 52 .KEEP_STATE: 53 54 all: $(PROG) 55 56 $(PROG): $(OBJS) $(COMMON_OBJS) $(MAPFILES) 57 $(LINK.c) -o $@ $(OBJS) $(COMMON_OBJS) $(LDLIBS) 58 $(POST_PROCESS) 59 60 %.o : $(POOLSCOMMONDIR)/%.c 61 $(COMPILE.c) -o $@ $< 62 $(POST_PROCESS_O) 63 64 install: all $(ROOTUSRSBINPROG) 65 66 poolcfg_lex.c: poolcfg.l poolcfg_grammar.h 67 $(LEX) $(LFLAGS) poolcfg.l > $@ 68 69 poolcfg_grammar.h poolcfg_grammar.c: poolcfg.y 70 $(YACC) $(YFLAGS) poolcfg.y 71 @$(MV) y.tab.h poolcfg_grammar.h 72 @$(MV) y.tab.c poolcfg_grammar.c 73 74 poolcfg_lex.o poolcfg_grammar.o := CCVERBOSE = 75 76 clean: 77 $(RM) $(OBJS) $(COMMON_OBJS) $(POFILES) 78 79 $(POFILE): $(POFILES) 80 $(RM) $@; cat $(POFILES) > $@ 81 82 # 83 # We don't do lint of lex- and yacc- generated source files 84 # 85 lint: 86 87 include ../../Makefile.targ