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/print/Makefile 28# 29 30include ../Makefile.cmd 31 32JAVA_SUBDIRS = printmgr 33 34PRINT_SUBDIRS = \ 35 scripts \ 36 lpget \ 37 lpset \ 38 conv_fix \ 39 printer-info \ 40 ppdmgr \ 41 bsd-sysv-commands 42 43SUBDIRS = $(PRINT_SUBDIRS) $(JAVA_SUBDIRS) 44 45ROOTDIRS = $(ROOTLIB)/print 46 47all := TARGET= all 48install := TARGET= install 49clean := TARGET= clean 50clobber := TARGET= clobber 51lint := TARGET= lint 52strip := TARGET= strip 53_msg := TARGET = _msg 54 55# For testing message catalogs 56_msg_test:= TARGET = _msg_test 57 58POFILE= print.po 59 60.KEEP_STATE: 61 62all install: $(ROOTDIRS) $(SUBDIRS) 63 64# 65# We define our own definition for _msg here because most of these 66# commands have the same PROG names as their counterparts in 67# cmd/lp. Using the _msg rule defined in Makefile.cmd would 68# result in clobbering the cmd/lp message files. 69# To get around this we will define one message file "print.po" 70# for these commands (except java printmgr). To build 71# this file we find all of the .c files and run xgettext on them. 72# Then concatenate this with the scripts.po file. 73# 74_msg: $(MSGDOMAIN) scripts $(JAVA_SUBDIRS) 75 @$(RM) $(POFILE) 76 $(XGETTEXT) -s `/bin/find . -type d -name SCCS -prune -o -type f -name '*.c' -print` 77 @/bin/cat messages.po scripts/scripts.po | sed '/domain/d' > $(POFILE) 78 @$(RM) messages.po 79 $(RM) $(MSGDOMAIN)/$(POFILE) 80 /bin/cp $(POFILE) $(MSGDOMAIN) 81 82# 83# Create a message file to test with. 84# 85_msg_test: scripts 86 @$(RM) $(POFILE) 87 $(XGETTEXT) -s -m "xxx" `/bin/find . -print | grep '\.c$$' | sed '/SCCS/d'` 88 @/bin/cat messages.po scripts/scripts.po | sed '/domain/d' > $(POFILE) 89 echo 'domain "SUNW_OST_OSCMD"' > SUNW_OST_OSCMD.po 90 cat $(POFILE) >> SUNW_OST_OSCMD.po 91 msgfmt SUNW_OST_OSCMD.po 92 @$(RM) messages.po $(POFILE) SUNW_OST_OSCMD.po 93 94clean strip cstyle lint: $(SUBDIRS) 95 96clobber: $(SUBDIRS) 97 $(RM) $(POFILE) $(CLOBBERFILES) 98 99$(ROOTDIRS) $(MSGDOMAIN): 100 $(INS.dir) 101 102$(SUBDIRS): FRC 103 @cd $@; pwd; $(MAKE) $(TARGET) 104 105FRC: 106