make_release_packages revision 196
# Copyright 2007 Sun Microsystems, Inc. All rights reserved. # Permission is hereby granted, free of charge, to any person obtaining a # copy of this software and associated documentation files (the # "Software"), to deal in the Software without restriction, including # without limitation the rights to use, copy, modify, merge, publish, # distribute, and/or sell copies of the Software, and to permit persons # to whom the Software is furnished to do so, provided that the above # copyright notice(s) and this permission notice appear in all copies of # the Software and that both the above copyright notice(s) and this # permission notice appear in supporting documentation. # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT # OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR # HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL # INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING # FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, # NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION # WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. # Except as contained in this notice, the name of a copyright holder # shall not be used in advertising or otherwise to promote the sale, use # or other dealings in this Software without prior written authorization # of the copyright holder. # @(#)make_release_packages 1.52 07/08/06 # Create and fill a package staging area for X # This script should be run from the base of the build tree. # It takes no parameters. # ./make_release_packages # To build a subset of packages # env PACKAGE_LIST="packages" ./make_release_packages # Make sure that we aren't affected by the personal environment of # whoever is running this script # List of official (deliverable) X-window packages SUNWxwice SUNWxwopt SUNWxwpmn SUNWxwsrc SUNWxwacx SUNWxwdxm \ SUNWxwhl SUNWi1of SUNWxwfa SUNWxwpft SUNWxwsrv SUNWxwoft \ SUNWfontconfig SUNWfontconfig-root SUNWfontconfig-docs SUNWxwsvr \ SUNWxscreensaver-hacks SUNWfreetype2 SUNWxwxft \ SUNWxorg-clientlibs SUNWxorg-devel-docs SUNWxorg-headers \ SUNWxorg-client-docs SUNWxorg-client-programs SUNWxorg-compatlinks \ # L10N packages are normally only built on sparc since they only have text # files that are the same for both platforms # Which platform name do we use for 64-bit? if [
"$MACH" =
"sparc" ];
then if [
"$MACH" =
"i386" ];
then echo "Unknown architecture - not SPARC nor i386." # Trusted Extensions packages # Packages with platform-specific prototype files, including those with SUNWxwmod SUNWxscreensaver-hacks-gl SUNWxwman SUNWxwfsw \ SUNWxorg-server SUNWxorg-graphics-ddx SUNWxorg-doc SUNWxorg-cfg \ # Some packages are only built for certain platforms currently if [
"$MACH" =
"sparc" ];
then # To build a subset of packages # PACKAGE_LIST="packages" make_release_packages # Get build version from pkgversion if [
"x${VERSION}" =
"x" ] ;
then if [
"x${BUILD}" =
"x" ] ;
then echo "Building packages for X11 version ${VERSION} build ${DECIMAL_BUILD}" # Next, create the staging area. Make sure that the logs directory # is writeable by everyone because it is likely that we will need to # write into it as root across an NFS link... echo 'Removing old proto-packages and recreating' # Now copy the package description info echo 'Copying package descriptions' # We can't just use `sccs get SCCS' because it will punt if it hits # a file which is being edited (writeable). # See above about sccs usage # We keep the master copyright in the top-level copyright file # Packages that need additional copyright have copyright.add files # that we then merge here # Now move into the package staging area and build the packages. if [
"$MACH" =
"sparc" ];
then echo '---Building packages' # Variables to pass to pkgmk for use in prototype files # They must start with lowercase letters to be resolved at pkgmk time echo "******** Making the $package package ********" if [ ! -f prototype_$MACH ]; then ln -s prototype_com prototype_$MACH echo "******** Done Making the $package package ********" # Create an installdir with symlinks to SUNW* pkgs