summaryrefslogtreecommitdiff
path: root/mk
diff options
context:
space:
mode:
Diffstat (limited to 'mk')
-rw-r--r--mk/plist/plist-locale.awk56
-rw-r--r--mk/plist/plist.mk4
-rw-r--r--mk/plist/print-plist.mk5
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/"); \
}