#
# CDDL HEADER START
#
# The contents of this file are subject to the terms of the
# Common Development and Distribution License (the "License").
# You may not use this file except in compliance with the License.
#
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
# See the License for the specific language governing permissions
# and limitations under the License.
#
# When distributing Covered Code, include this CDDL HEADER in each
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
# If applicable, add the following below this CDDL HEADER, with the
# fields enclosed by brackets "[]" replaced with your own identifying
# information: Portions Copyright [yyyy] [name of copyright owner]
#
# CDDL HEADER END
#
#
# Copyright (c) 2010, 2015, Oracle and/or its affiliates. All rights reserved.
#
#
# This set of transforms is intended to be used to convert a set of actions
# generated by "pkgsend generate ..." into a more generic set of actions with
# most attributes removed and paths converted to use strategically placed
# macros to remove platform or version specifics.
#
# convert the "pkgsend generate" file "hash" to a common value
<transform file -> set action.hash 'NOHASH'>
# drop extra attribute data that "pkgsend generate" might have added
<transform dir file link hardlink license -> delete timestamp .*>
<transform dir file link hardlink license -> delete pkg.size .*>
<transform dir file link hardlink license -> delete owner .*>
<transform dir file link hardlink license -> delete group .*>
<transform dir file link hardlink license -> delete mode .*>
#<transform set name=pkg.fmri -> edit value "@[^ \t\n\r\f\v]*" "@$!(IPS_COMPONENT_VERSION),$!(BUILD_VERSION)">
<transform dir file link hardlink -> \
edit path "/(sparcv9|amd64)$" "/$!(MACH64)">
<transform dir file link hardlink -> \
edit path "/(sparcv9|amd64)/" "/$!(MACH64)/">
<transform dir file link hardlink -> \
edit path "/(sparcv7|i86)$" "/$!(MACH32)">
<transform dir file link hardlink -> \
edit path "/(sparcv7|i86)/" "/$!(MACH32)/">
<transform dir file link hardlink -> \
edit path "/(sparc|i386)$" "/$!(MACH)">
<transform dir file link hardlink -> \
edit path "/(sparc|i386)/" "/$!(MACH)/">
<transform dir file link hardlink -> \
edit path "/(sparc|i386)-(sun|pc)-solaris\d\.\d+" "/$!(MACH)-$!(PLAT)-solaris$!(SOLARIS_RELEASE)">
<transform dir file link hardlink -> \
edit target "/(sparcv9|amd64)$" "/$!(MACH64)">
<transform dir file link hardlink -> \
edit target "/(sparcv9|amd64)/" "/$!(MACH64)/">
<transform dir file link hardlink -> \
edit target "/(sparcv7|i86)$" "/$!(MACH32)">
<transform dir file link hardlink -> \
edit target "/(sparcv7|i86)/" "/$!(MACH32)/">
<transform dir file link hardlink -> \
edit target "/(sparc|i386)$" "/$!(MACH)">
<transform dir file link hardlink -> \
edit target "/(sparc|i386)/" "/$!(MACH)/">
<transform dir file link hardlink -> \
edit target "/(sparc|i386)-(sun|pc)-solaris\d\.\d+" "/$!(MACH)-$!(PLAT)-solaris$!(SOLARIS_RELEASE)">
# <transform dir file link hardlink -> \
# edit path "$(COMPONENT_NAME)" "$!(COMPONENT_NAME)">
# <transform dir file link hardlink -> \
# edit target "$(COMPONENT_NAME)" "$!(COMPONENT_NAME)">
<transform dir file link hardlink -> \
edit path "$(COMPONENT_RE_VERSION)" "$!(COMPONENT_VERSION)">
<transform dir file link hardlink -> \
edit target "$(COMPONENT_RE_VERSION)" "$!(COMPONENT_VERSION)">
<transform dir file link hardlink -> \
edit path "$(IPS_RE_VERSION)" "$!(IPS_VERSION)">
<transform dir file link hardlink -> \
edit target "$(IPS_RE_VERSION)" "$!(IPS_VERSION)">
# convert temporary macro names to their real name
<transform set -> \
edit value "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit path "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit target "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit path "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit target "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit path "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit target "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit path "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit target "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit path "\$!\((.*)\)" "$(\1)">
<transform dir file link hardlink -> \
edit target "\$!\((.*)\)" "$(\1)">
# Omit "standard" directories and files we never want to ship (such as
# libtool files).
<transform dir path=etc$ -> drop>
<transform dir path=etc/$\(MACH(32|64)\)$ -> drop>
<transform dir path=usr$ -> drop>
<transform dir path=usr/bin$ -> drop>
<transform dir path=usr/bin/\$\(MACH(32|64)\)$ -> drop>
<transform dir path=usr/include$ -> drop>
<transform dir path=usr/lib$ -> drop>
<transform dir path=usr/lib/pkgconfig$ -> drop>
<transform dir path=usr/lib/\$\(MACH(32|64)\)$ -> drop>
<transform dir path=usr/lib/\$\(MACH(32|64)\)/pkgconfig$ -> drop>
<transform dir path=usr/share$ -> drop>
<transform dir path=usr/share/aclocal$ -> drop>
<transform dir path=usr/share/locale$ -> drop>
<transform dir path=usr/share/locale/.*$ -> drop>
<transform dir path=usr/share/man$ -> drop>
<transform dir path=usr/share/man/.*$ -> drop>
<transform dir path=usr/sbin$ -> drop>
<transform dir path=usr/sbin/\$\(MACH(32|64)\)$ -> drop>
<transform file path=.*\.la$ -> drop>