transforms/generate-cleanup
author Norm Jacobs <Norm.Jacobs@Oracle.COM>
Sun, 03 Apr 2016 22:57:07 -0700
changeset 5787 c0615d62b41a
parent 5682 94c0ca64c022
permissions -rw-r--r--
23059439 open-fabrics should consistently use _XOPEN_SOURCE=600

#
# 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
# or http://www.opensolaris.org/os/licensing.
# 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>