17c478bd9Sstevel@tonic-gate# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 50aea4b19SMatthew Ahrens# Common Development and Distribution License (the "License"). 60aea4b19SMatthew Ahrens# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 217c478bd9Sstevel@tonic-gate# 22*6f5e8346SJan Friedel# Copyright 2010 Sun Microsystems, Inc. All rights reserved. 237c478bd9Sstevel@tonic-gate# Use is subject to license terms. 247c478bd9Sstevel@tonic-gate# 257c478bd9Sstevel@tonic-gate# Makefile.msg.targ 267c478bd9Sstevel@tonic-gate# 277c478bd9Sstevel@tonic-gate 287c478bd9Sstevel@tonic-gate# 297c478bd9Sstevel@tonic-gate# This file contains common targets for building message catalogues. 307c478bd9Sstevel@tonic-gate# Over time, existing Makefiles should be rewritten to include this file 317c478bd9Sstevel@tonic-gate# rather than use their own private copy of these rules. 327c478bd9Sstevel@tonic-gate# 337c478bd9Sstevel@tonic-gate 347c478bd9Sstevel@tonic-gate.PARALLEL: $(POFILES) $(MSGFILES) 357c478bd9Sstevel@tonic-gate 36*6f5e8346SJan Friedel$(MSGDOMAIN)% $(DCMSGDOMAIN)%: 377c478bd9Sstevel@tonic-gate $(INS.dir) 387c478bd9Sstevel@tonic-gate 397c478bd9Sstevel@tonic-gate$(MSGDOMAINPOFILE): $(MSGDOMAIN) $(POFILE) 407c478bd9Sstevel@tonic-gate $(RM) $@; $(CP) $(POFILE) $@ 417c478bd9Sstevel@tonic-gate 427c478bd9Sstevel@tonic-gate$(DCMSGDOMAINPOFILE): $(DCMSGDOMAIN) $(DCFILE) 437c478bd9Sstevel@tonic-gate $(RM) $@; $(CP) $(DCFILE) $@ 447c478bd9Sstevel@tonic-gate 457c478bd9Sstevel@tonic-gateBUILDPO.msgfiles = \ 467c478bd9Sstevel@tonic-gate $(RM) messages.po $(TEXT_DOMAIN).po; \ 477c478bd9Sstevel@tonic-gate $(TOUCH) $(TEXT_DOMAIN).po; \ 487c478bd9Sstevel@tonic-gate $(XGETTEXT) $(XGETFLAGS) $(MSGFILES); \ 497c478bd9Sstevel@tonic-gate $(SED) -e '/^\# msgid/,/^\# msgstr/d' -e '/^domain/d' \ 500aea4b19SMatthew Ahrens -e '/^\#$$/d' -e '/^\#, /d' \ 517c478bd9Sstevel@tonic-gate messages.po $(TEXT_DOMAIN).po > $(POFILE); \ 527c478bd9Sstevel@tonic-gate $(RM) messages.po $(TEXT_DOMAIN).po 537c478bd9Sstevel@tonic-gate 547c478bd9Sstevel@tonic-gateBUILDPO.pofiles = \ 557c478bd9Sstevel@tonic-gate $(RM) $(POFILE); \ 567c478bd9Sstevel@tonic-gate $(NAWK) '\ 577c478bd9Sstevel@tonic-gate FNR == 1 { print "\# Messages from " FILENAME; } \ 587c478bd9Sstevel@tonic-gate /^domain/ { next; } \ 597c478bd9Sstevel@tonic-gate /^msgid/, /^msgstr/ { msg = msg "\n" $$0; \ 607c478bd9Sstevel@tonic-gate if ( $$0 !~ /^msgstr/ ) next; \ 617c478bd9Sstevel@tonic-gate if (msg in messages) { \ 627c478bd9Sstevel@tonic-gate gsub(/\n/, "\n\# ", msg); \ 637c478bd9Sstevel@tonic-gate } else { \ 647c478bd9Sstevel@tonic-gate messages[msg] = 1; \ 657c478bd9Sstevel@tonic-gate } \ 667c478bd9Sstevel@tonic-gate sub(/^\n/, "", msg); \ 677c478bd9Sstevel@tonic-gate print msg; \ 687c478bd9Sstevel@tonic-gate msg = ""; \ 697c478bd9Sstevel@tonic-gate next; \ 707c478bd9Sstevel@tonic-gate } \ 717c478bd9Sstevel@tonic-gate /^\# [\.]*Messages/ { sub(/Messages/, "...Messages"); } \ 727c478bd9Sstevel@tonic-gate { print; }' $(POFILES) > $(POFILE) 737c478bd9Sstevel@tonic-gate 747c478bd9Sstevel@tonic-gatepofile_MSGFILES: 757c478bd9Sstevel@tonic-gate $(BUILDPO.msgfiles) 767c478bd9Sstevel@tonic-gate 777c478bd9Sstevel@tonic-gatepofile_POFILES: 787c478bd9Sstevel@tonic-gate $(BUILDPO.pofiles) 79