diff options
Diffstat (limited to 'mk')
-rw-r--r-- | mk/plist/plist-locale.awk | 56 | ||||
-rw-r--r-- | mk/plist/plist.mk | 4 | ||||
-rw-r--r-- | mk/plist/print-plist.mk | 5 |
3 files changed, 62 insertions, 3 deletions
diff --git a/mk/plist/plist-locale.awk b/mk/plist/plist-locale.awk new file mode 100644 index 00000000000..0cd95f87a1b --- /dev/null +++ b/mk/plist/plist-locale.awk @@ -0,0 +1,56 @@ +# $NetBSD: plist-locale.awk,v 1.1 2006/04/17 06:12:46 jlam Exp $ +# +# Copyright (c) 2006 The NetBSD Foundation, Inc. +# All rights reserved. +# +# This code is derived from software contributed to The NetBSD Foundation +# by Johnny C. Lam. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions +# are met: +# 1. Redistributions of source code must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. All advertising materials mentioning features or use of this software +# must display the following acknowledgement: +# This product includes software developed by the NetBSD +# Foundation, Inc. and its contributors. +# 4. Neither the name of The NetBSD Foundation nor the names of its +# contributors may be used to endorse or promote products derived +# from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS +# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS +# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS +# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +# POSSIBILITY OF SUCH DAMAGE. + +### This awk script handles locale entries in PLISTs. +### +### Certain environment variables must be set prior to running this script: +### +### PKGLOCALEDIR is the ${PREFIX}-relative path to the "locale" directory +### under which all locale files are installed. +### +BEGIN { + PKGLOCALEDIR = ENVIRON["PKGLOCALEDIR"] ? ENVIRON["PKGLOCALEDIR"] : "share" +} + +### +### Convert share/locale to ${PKGLOCALEDIR}/locale for all locale entries. +### +/^share\/locale\// { + sub("^share", PKGLOCALEDIR) +} +/^@dirrm share\/locale\// { + sub("^@dirrm share", "@dirrm " PKGLOCALEDIR) +} diff --git a/mk/plist/plist.mk b/mk/plist/plist.mk index b52c3adac65..2e91a5b501d 100644 --- a/mk/plist/plist.mk +++ b/mk/plist/plist.mk @@ -1,4 +1,4 @@ -# $NetBSD: plist.mk,v 1.9 2006/04/16 04:27:18 jlam Exp $ +# $NetBSD: plist.mk,v 1.10 2006/04/17 06:12:46 jlam Exp $ # # This Makefile fragment handles the creation of PLISTs for use by # pkg_create(8). @@ -90,6 +90,7 @@ MAKEVARS+= _IGNORE_INFO_PATH # that does post-processing of the PLIST. See the individual *.awk # scripts for information on each of the variable set in the environment. # +_PLIST_AWK_ENV+= PKGLOCALEDIR=${PKGLOCALEDIR:Q} _PLIST_AWK_ENV+= IMAKE_MANINSTALL=${_IMAKE_MANINSTALL:Q} _PLIST_AWK_ENV+= IGNORE_INFO_PATH=${_IGNORE_INFO_PATH:Q} _PLIST_AWK_ENV+= PKGINFODIR=${PKGINFODIR:Q} @@ -141,6 +142,7 @@ _PLIST_AWK_ENV+= PLIST_SUBST_VARS=${PLIST_SUBST:S/^/PLIST_/:C/=.*//:M*:Q} _PLIST_AWK+= -f ${.CURDIR}/../../mk/plist/plist-functions.awk _PLIST_AWK+= -f ${.CURDIR}/../../mk/plist/plist-subst.awk +_PLIST_AWK+= -f ${.CURDIR}/../../mk/plist/plist-locale.awk _PLIST_AWK+= -f ${.CURDIR}/../../mk/plist/plist-info.awk _PLIST_AWK+= -f ${.CURDIR}/../../mk/plist/plist-man.awk _PLIST_AWK+= -f ${.CURDIR}/../../mk/plist/plist-libtool.awk diff --git a/mk/plist/print-plist.mk b/mk/plist/print-plist.mk index 7df9dad78aa..6e0c18b2816 100644 --- a/mk/plist/print-plist.mk +++ b/mk/plist/print-plist.mk @@ -1,4 +1,4 @@ -# $NetBSD: print-plist.mk,v 1.5 2006/03/20 01:48:58 jlam Exp $ +# $NetBSD: print-plist.mk,v 1.6 2006/04/17 06:12:46 jlam Exp $ ### ### Automatic PLIST generation @@ -27,7 +27,8 @@ _PRINT_PLIST_AWK_SUBST+= \ gsub(/${LOWER_OPSYS}/, "$${LOWER_OPSYS}"); \ gsub(/${PKGNAME_NOREV}/, "$${PKGNAME}"); \ gsub(/${PKGVERSION:S/./\./g:C/nb[0-9]*$$//}/, "$${PKGVERSION}");\ - gsub(/${PKGLOCALEDIR}\/locale/, "$${PKGLOCALEDIR}/locale"); \ + gsub(/^${PKGLOCALEDIR}\/locale/, "share/locale"); \ + gsub(/^@dirrm ${PKGLOCALEDIR}\/locale/, "@dirrm share/locale"); \ gsub("^${PKGINFODIR}\/", "info/"); \ gsub("^${PKGMANDIR}\/", "man/"); \ } |