Makefile revision c81d47afd05baeb768e2f032636019b717899efd
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# CDDL HEADER START
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# The contents of this file are subject to the terms of the
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# Common Development and Distribution License (the "License").
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# You may not use this file except in compliance with the License.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# or http://www.opensolaris.org/os/licensing.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# See the License for the specific language governing permissions
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# and limitations under the License.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# When distributing Covered Code, include this CDDL HEADER in each
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# If applicable, add the following below this CDDL HEADER, with the
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# fields enclosed by brackets "[]" replaced with your own identifying
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# information: Portions Copyright [yyyy] [name of copyright owner]
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# CDDL HEADER END
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# Use is subject to license terms.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# ident "%Z%%M% %I% %E% SMI"
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# cmd/print/Makefile
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncinclude ../Makefile.cmd
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncJAVA_SUBDIRS = printmgr
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncPRINT_SUBDIRS = \
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync scripts \
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync lpget \
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync lpset \
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync conv_fix \
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync printer-info \
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync ppdmgr \
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync bsd-sysv-commands
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncSUBDIRS = $(PRINT_SUBDIRS) $(JAVA_SUBDIRS)
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncROOTDIRS = $(ROOTLIB)/print
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncall := TARGET= all
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncinstall := TARGET= install
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncclean := TARGET= clean
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncclobber := TARGET= clobber
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsynclint := TARGET= lint
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncstrip := TARGET= strip
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync_msg := TARGET = _msg
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# For testing message catalogs
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync_msg_test:= TARGET = _msg_test
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncPOFILE= print.po
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync.KEEP_STATE:
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncall install: $(ROOTDIRS) $(SUBDIRS)
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# We define our own definition for _msg here because most of these
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync# commands have the same PROG names as their counterparts in
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# cmd/lp. Using the _msg rule defined in Makefile.cmd would
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# result in clobbering the cmd/lp message files.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# To get around this we will define one message file "print.po"
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync# for these commands (except java printmgr). To build
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync# this file we find all of the .c files and run xgettext on them.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# Then concatenate this with the scripts.po file.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync_msg: $(MSGDOMAIN) scripts $(JAVA_SUBDIRS)
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync @$(RM) $(POFILE)
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync $(XGETTEXT) -s `/bin/find . -type d -name SCCS -prune -o -type f -name '*.c' -print`
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync @/bin/cat messages.po scripts/scripts.po | sed '/domain/d' > $(POFILE)
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync @$(RM) messages.po
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync $(RM) $(MSGDOMAIN)/$(POFILE)
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync /bin/cp $(POFILE) $(MSGDOMAIN)
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync#
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync# Create a message file to test with.
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync#
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync_msg_test: scripts
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync @$(RM) $(POFILE)
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync $(XGETTEXT) -s -m "xxx" `/bin/find . -print | grep '\.c$$' | sed '/SCCS/d'`
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync @/bin/cat messages.po scripts/scripts.po | sed '/domain/d' > $(POFILE)
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync echo 'domain "SUNW_OST_OSCMD"' > SUNW_OST_OSCMD.po
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync cat $(POFILE) >> SUNW_OST_OSCMD.po
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync msgfmt SUNW_OST_OSCMD.po
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync @$(RM) messages.po $(POFILE) SUNW_OST_OSCMD.po
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsyncclean strip cstyle lint: $(SUBDIRS)
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsyncclobber: $(SUBDIRS)
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync $(RM) $(POFILE) $(CLOBBERFILES)
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync$(ROOTDIRS) $(MSGDOMAIN):
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync $(INS.dir)
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync$(SUBDIRS): FRC
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync @cd $@; pwd; $(MAKE) $(TARGET)
9fc464631dc4a68fbb5eb6419d61fbe91b6b16bdvboxsync
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsyncFRC:
2b3dc93fedb4e72ac5b3cbaa89a9fc2f559be550vboxsync