Hi!

----

I've finished moving the ksh93-integration codebase ("prototype002")
from the old Solaris 11/B37-based tree to a new Solaris 11/B48-based
tree, now called "prototype003".

* Build instructions:
The new prototype003 sources can be build like this:

1. Pull sources and extract closed bin stuff (files can be
   obtained from opensolaris.org):
   $ mkdir test_x86 ; cd test_x86
   $ svn checkout
svn://svn.genunix.org/on/branches/ksh93/gisburn/prototype003/usr
   $ bzcat ../download/on-closed-bins-b48.i386.tar.bz2 | tar -xf -
   $ cd ..

2. Create "opensolaris.sh":
   This is the usual opensolaris.sh with the paths adjusted to
   match your location of the sources.

   Example for the changes applies to opensolaris.sh (for my
   workspace):
-- snip --
--- ./test1_x86/usr/src/tools/env/opensolaris.sh           Thu Sep 14 13:17:59
2006
+++ ./opensolaris.sh    Sun Jul 30 00:06:66 2006
@@ -43,10 +43,10 @@

 # This is a variable for the rest of the script - GATE doesn't matter
to
 # nightly itself
-GATE=testws;              export GATE
+GATE=test1_x86;           export GATE

 # CODEMGR_WS - where is your workspace at (or what should nightly name
it)
-CODEMGR_WS="/export/$GATE";               export CODEMGR_WS
+CODEMGR_WS="/home/test001/ksh93/on_build1/$GATE";                         
export
CODEMGR_WS

 # Location of encumbered binaries.
 ON_CLOSED_BINS="$CODEMGR_WS/closed";      export ON_CLOSED_BINS
-- snip --

3. Run "bldenv":
   $ env - SHELL=$SHELL TERM=$TERM HOME=$HOME LOGNAME=$LOGNAME
DISPLAY=$DISPLAY LANG=C LC_ALL=C PAGER=less MANPATH=$MANPATH
/opt/onbld/bin/bldenv opensolaris.sh #

4. Build it (the quick way):
   $ cd test_x86/usr/src
   $ time nice make setup 2>&1 | tee -a buildlog_setup.log
   $ time nice dmake install >buildlog.log 2>&1


* Misc notes:
- The "prototype002" source tree is now CLOSED and no further commits
will be made to this codebase. All new commits will be applied to
"prototype003".

- The Changelog can be found at
http://polaris.blastwave.org/log/on/branches/ksh93/gisburn/prototype003?verbose=on

- The update procedure was less difficult this time and more or less
worked like this (April: a similar procedure should be usefull to move
the changes into your workspace):
-- snip --
svn mkdir -m 'Adding subdir for prototype003 work'
svn://svn.genunix.org/on/branches/ksh93/gisburn/prototype003

# create patch diff
svn diff -r 178:451
svn://svn.genunix.org/on/branches/ksh93/gisburn/prototype002/m1_ast_ast_imported
>xxx.diff

# generate list of files which get patched
cat ../tmp/xxx.diff | egrep "^\+\+\+ " | awk "{ print \$2 }"
>patched_files.txt

# create list of dirs which get patched
cat patched_files.txt | while read i ; do dirname "$i" ; done | sort -u
>patched_dirs.txt

# checkout the initial tree
svn checkout
svn://svn.genunix.org/on/branches/ksh93/gisburn/prototype003/usr

# create dirs and add them to subversion
cat patched_dirs.txt | while read i ; do echo "## $i" ; mkdir -p "$i" ;
done
(cat patched_dirs.txt | while read i ; do echo "## $i" ; svn add "$i" ;
done) 2>&1 | tee -a svnadddirslog.txt
svn add usr/src/lib/libcmd/*
svn add usr/src/lib/libcmd/*/*

# apply the patch
gpatch -p0 <../tmp/xxx.diff >patch.log

# check for rejected patch hunks:
$ cat patch.log | fgrep .rej
1 out of 1 hunk FAILED -- saving rejects to file
usr/src/pkgdefs/SUNWcsu/prototype_sparc.rej
1 out of 2 hunks FAILED -- saving rejects to file
usr/src/pkgdefs/SUNWcsu/prototype_i386.rej
1 out of 1 hunk FAILED -- saving rejects to file
usr/src/pkgdefs/etc/exception_list_sparc.rej
1 out of 1 hunk FAILED -- saving rejects to file
usr/src/pkgdefs/etc/exception_list_i386.rej
1 out of 1 hunk FAILED -- saving rejects to file
usr/src/lib/libcmd/Makefile.com.rej
1 out of 2 hunks FAILED -- saving rejects to file
usr/src/lib/libcmd/Makefile.rej
2 out of 8 hunks FAILED -- saving rejects to file
usr/src/lib/Makefile.rej

# fix rejects by hand

# add patched files to subversion
(cat tmp/patched_files.txt | while read i ; do echo "## $i" ; svn add
"$i" ; done) 2>&1 | tee -a svnfileadd.log
# verify that the "svn add" worked properly
cat svnfileadd.log | egrep -v "## usr/|is already under version control"
| less
-- snip --


Comments/suggestions/rants etc. welcome...

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) roland.mainz at nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 7950090
 (;O/ \/ \O;)

Reply via email to