--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/transforms/generate-cleanup Fri Jul 16 00:58:56 2010 -0500
@@ -0,0 +1,110 @@
+#
+# 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)">