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 2006 Sun Microsystems, Inc. All rights reserved. 23# Use is subject to license terms. 24# 25 26LIBRARY= libdump.a 27 28# Has to be before include of Makefile.backup 29# This should be POFILE=libdump.po, but that causes make to 30# fall over due to some seriously weird interactions in the 31# various indirectly-included makefiles. So, since this works 32# and is otherwise harmless, we fake it. 33PROG= libdump 34 35# Include library definitions, then backup definitions, as in general 36# we want the flags and such from our tree. 37 38include ../../../lib/Makefile.lib 39include ../Makefile.backup 40 41SRCDIR = . 42 43# Specifically request the construction of a static library. 44# This library is not installed in the proto area. 45LIBS= $(LIBRARY) 46 47HDRS= ../include/byteorder.h \ 48 ../include/memutils.h ../include/myrcmd.h \ 49 ../../../head/protocols/dumprestore.h \ 50 ../include/rmt.h 51 52YFILE= getdate.y 53YSRC= getdate.c 54 55CLOBBERFILES += $(LIBS) $(GLIB) 56 57LOBJS= rmtlib.o myrcmd.o \ 58 $(YSRC:%.c=%.o) \ 59 byteorder.o memutils.o $(RPC_CLNT:%.c=%.o) $(RPC_XDR:%.c=%.o) 60 61OBJECTS= $(LOBJS) 62POFILES= $(OBJECTS:.o=.po) 63GENERAL= ../include 64GLOBAL= ../../../head 65CPPFLAGS= -I$(GENERAL) -I$(GLOBAL) $(CPPFLAGS.master) 66CERRWARN += -_gcc=-Wno-implicit-function-declaration 67CERRWARN += -_gcc=-Wno-parentheses 68CERRWARN += -_gcc=-Wno-unused-variable 69CLEANFILES= $(OBJECTS) $(DEBUGS) $(YSRC) $(LIBRARY) 70 71# because of labels from yacc 72objs/getdate.o := CERRWARN += -_gcc=-Wno-unused-label 73 74# support for -g library 75GLIB= libdump_g.a 76DEBUGS= $(OBJECTS:%=.debug/%) 77$(GLIB):= AROBJS = $(DEBUGS) 78$(GLIB):= DIR = .debug 79$(GLIB):= CFLAGS= $(CCGDEBUG) -DDEBUG -DYYDEBUG $(SBFLAGS) 80 81.KEEP_STATE: 82 83all: $(LIBS) 84 85debug: $(LIBS) $(GLIB) 86 87.debug: 88 -@mkdir -p $@ 89 90.debug/%.o: %.c 91 $(COMPILE.c) -o $@ $< 92 $(POST_PROCESS_O) 93 94$(GLIB): .debug $$(DEBUGS) 95 $(BUILD.AR) 96 $(POST_PROCESS_A) 97 98$(OBJECTS): $(HDRS) 99 100install: all 101 102$(POFILE): $(POFILES) 103 $(RM) $@; cat $(POFILES) > $@ 104 105check: $(HDRS) 106 $(CSTYLE) $(CSTYLEFLAGS) `echo $(SRCS) | sed -e s/getdate.c//` $(HDRS) 107 $(HDRCHK) $(HDRCHKFLAGS) $(HDRS) 108 109# include library targets 110include ../../../lib/Makefile.targ 111 112_msg: $(POFILE) 113