4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
22 # Copyright (c) 2006, 2010, Oracle and/or its affiliates. All rights reserved.
30 "buildksh93.sh" is a small build script used to build the AT&T "ast-ksh"
31 and "ast-open" packages using its native (nmake-based) build system
32 which is needed to build the iffe-generated (header) files (each time
33 for { 32bit SPARC, 64bit SPARC, 32bit i386, 64bit AMD64, 32bit S390,
34 64bit S390x }) which are moved later to their matching OS/Net build
37 THIS SCRIPT IS NOT INTENDED FOR NORMAL USAGE.
40 * Note that buildksh93.sh modifies the build behaviour of the AST build
41 system, including enforcing C99/XPG6 semantics (which is MANDATORY!!)
42 and feeding additional libraries (like libnsl, libsocket, librt etc.)
43 to the feature look system (called "iffe" (="if feature exists")) to
44 ensure all features needed for the Solaris version of ksh93 are
48 * Example usage of the script (more information can be found in the
50 ## Download AT&T ksh93 sources
51 $ wget --http-user="I accept www.opensource.org/licenses/cpl" --http-passwd="." 'http://www.research.att.com/sw/download/beta/INIT.2010-03-09.tgz'
52 $ wget --http-user="I accept www.opensource.org/licenses/cpl" --http-passwd="." 'http://www.research.att.com/sw/download/beta/ast-ksh.2010-03-09.tgz'
54 ## Unpack the sources (32bit SPARC):
55 $ mkdir build_sparc_32bit
56 $ cd build_sparc_32bit
57 $ gunzip -c <../INIT.2010-03-09.tgz | tar -xf -
58 $ gunzip -c <../ast-ksh.2010-03-09.tgz | tar -xf -
60 ## Build ast-ksh for 32bit SPARC
61 # (build other build flags are:
62 # - "build.solaris.sparc.32bit.suncc" - 32bit SPARC
63 # - "build.solaris.sparc.64bit.suncc" - 64bit SPARC
64 # - "build.solaris.i386.32bit.suncc" - 32bit x86/i386
65 # - "build.solaris.i386.64bit.suncc" - 64bit x86/AMD64
66 # - "build.solaris.s390.32bit.gcc" - 32bit SystemZ/S390
67 # - "build.solaris.s390.64bit.gcc" - 64bit SystemZ/S390x
69 $ time nice ksh ../buildksh93.sh "build.solaris.sparc.32bit.suncc" 2>&1 | tee -a buildlog.log
72 $ time nice ksh ../buildksh93.sh "testshell" 2>&1 | tee -a buildlog.log
74 ## Generated binaries and headers can be found in the arch/$(PLATFORM)/