transforms/generate-cleanup
author Shawn Walker-Salas <shawn.walker@oracle.com>
Mon, 23 Nov 2015 15:33:43 -0800
changeset 5125 34cc580c62c2
parent 26 8a9f4e791832
child 5331 9c955076ffe3
permissions -rw-r--r--
21029732 PKG_CONFIG_PATH should be included in CONFIGURE_ENV and BUILD_ENV 21029735 shared-macros should define service manifest and method macros 21093823 sample-manifest should omit or comment "standard" directories and certain files 21144358 configure scripts usually detect wrong host for 64-bit builds 21157847 shared-macros.mk instructions have a typo for studio c99 mode 22067225 common make-rules desired for simplifying makefiles 22067806 transforms needs expanding for desktop services
#
# 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, 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 plartform 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_VERSION)" "$!(COMPONENT_VERSION)">
<transform dir file link hardlink -> \
    edit target "$(COMPONENT_VERSION)" "$!(COMPONENT_VERSION)">

<transform dir file link hardlink -> \
    edit path "$(IPS_VERSION)" "$!(IPS_VERSION)">
<transform dir file link hardlink -> \
    edit target "$(IPS_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>