make_release_packages revision 663
286N/A# Copyright 2009 Sun Microsystems, Inc. All rights reserved. 70N/A# Permission is hereby granted, free of charge, to any person obtaining a 70N/A# copy of this software and associated documentation files (the 70N/A# "Software"), to deal in the Software without restriction, including 70N/A# without limitation the rights to use, copy, modify, merge, publish, 70N/A# distribute, and/or sell copies of the Software, and to permit persons 70N/A# to whom the Software is furnished to do so, provided that the above 70N/A# copyright notice(s) and this permission notice appear in all copies of 70N/A# the Software and that both the above copyright notice(s) and this 70N/A# permission notice appear in supporting documentation. 70N/A# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 70N/A# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 70N/A# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT 70N/A# OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR 70N/A# HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL 70N/A# INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING 70N/A# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, 70N/A# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION 70N/A# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 70N/A# Except as contained in this notice, the name of a copyright holder 70N/A# shall not be used in advertising or otherwise to promote the sale, use 70N/A# or other dealings in this Software without prior written authorization 70N/A# of the copyright holder. 70N/A# @(#)make_release_packages 1.69 09/03/09 70N/A# Create and fill a package staging area for X 70N/A# This script should be run from the base of the build tree. 359N/A# It takes no parameters. 321N/A# ./make_release_packages 213N/A# To build a subset of packages 304N/A# ./make_release_packages packages 320N/A# env PACKAGE_LIST="packages" ./make_release_packages 98N/A# Make sure that we aren't affected by the personal environment of 347N/A# whoever is running this script 332N/A# List of official (deliverable) X-window packages for all platforms 128N/A SUNWpciaccess SUNWpixman SUNWfreetype2 SUNWvncviewer SUNWxcursor-themes 326N/A SUNWxorg-cfg SUNWxorg-client-docs SUNWxorg-client-programs 335N/A SUNWxorg-clientlibs SUNWxorg-compatlinks SUNWxorg-devel-docs 70N/A SUNWxorg-graphics-ddx SUNWxorg-headers 294N/A SUNWxorg-server SUNWxorg-tsol-module 98N/A SUNWxscreensaver-hacks SUNWxscreensaver-hacks-gl SUNWxsun-server 277N/A SUNWxvnc SUNWxwacx SUNWxwcft SUNWxwdem SUNWxwdxm 356N/A SUNWxwfnt SUNWxwfs SUNWxwfsw SUNWxwice SUNWxwinc 289N/A SUNWxwman SUNWxwmod SUNWxwoft SUNWxwopt SUNWxwplr 326N/A SUNWxwplt SUNWxwpmn SUNWxwrtl SUNWxwslb SUNWxwsrv SUNWxwsvr 90N/A# Some packages are only built for certain platforms currently 319N/A# Localization template packages for delivery to translation teams 359N/A SUNW0xwplt SUNW0xwopt SUNW0xwsvr" 231N/A# FSW* packages are built for the OpenSolaris (Project Indiana) deliveries 98N/A FSWxorg-fonts-daewoo 70N/A FSWxorg-fonts-ethiopic 70N/A FSWxorg-fonts-iso8859-2 70N/A FSWxorg-fonts-iso8859-3 70N/A FSWxorg-fonts-iso8859-4 70N/A FSWxorg-fonts-iso8859-9 70N/A FSWxorg-fonts-iso8859-10 70N/A FSWxorg-fonts-iso8859-13 70N/A FSWxorg-fonts-iso8859-14 70N/A FSWxorg-fonts-iso8859-16 70N/A FSWxorg-fonts-jiskan 70N/A FSWxorg-fonts-syriac 253N/A# To build a subset of packages: 70N/A# make_release_packages packages # env PACKAGE_LIST="packages" make_release_packages ### Functions for use later print -u2 "${progname}: ERROR: $*" # Which platform name do we use for 64-bit? *)
fatal_error "Unknown architecture - not SPARC nor i386." ;;
# Get build version from pkgversion fatal_error "${PKG_SOURCE_DIR}/pkgversion not found. Cannot continue." if [[ -z
"${VERSION}" ]] ;
then fatal_error "VERSION not set in ${PKG_SOURCE_DIR}/pkgversion - run newPkRev" if [[ -z
"${BUILD}" ]] ;
then fatal_error "BUILD not set in ${PKG_SOURCE_DIR}/pkgversion - run newPkRev" print "Building packages for X11 version ${VERSION} build ${DECIMAL_BUILD}" if [[
"${MACH}" =
"sparc" ]];
then # Next, create the staging area. print 'Removing old proto-packages and recreating' # Now copy the package description info print 'Copying package descriptions' print "packages/${package} not found ; skipping" # 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. print --
'---Building packages' # Variables to pass to pkgmk for use in prototype files # They must start with lowercase letters to be resolved at pkgmk time print "******** Making the ${package} package ********" print "${PACKAGE_DIR}/${package} was not found ; skipping" # build filename from the .tmpl if [[ -f
"${pf}.tmpl" && ! -f
"${pf}" ]] ;
then # build filename from the .tmpl if [[ -f
"${df}.tmpl" && ! -f
"${df}" ]] ;
then # Simple package with the same prototype on all platforms # Package with some platform-specific settings in prototype print "******** Done Making the ${package} package ********" print -n
"Packages built: " print -n
"Packages failed: " # Create an installdir with symlinks to built packages