b53 non-debug encumbered binaries (and new usr/src/Makefile diff) available

The encumbered binaries for Build 53 of OpenSolaris are now available at The Download Centre along with the updated MD5 Checksums.

In order to put the usr/src/Makefile changes back into ON I've made a couple of minor changes to the diffs that I previously posted. The Makefile is now a little more clear about what it's doing with it's logging and error messages for doing the open build.

OK, the reason for this is that I managed to get caught out "testing" the Makefile change and forgot to copy the new Makefile into place. The logging that was in there didn't allow me to see that I was doing a non-debug build with the debug encumbered binaries (because it didn't have the new code in there). It now is clear about where it is copying the encumbered binaries from and about what it expected to find if it can't find them.

As such, it's probably time to re-do the instructions for how to build a non-debug ON tree, not forgetting to mention Dennis Clarke's great step by step guide.

First off, as the current usr/src/Makefile does not know about the directory name that the non-debug binaries extract in to, we have two options.

  1. Extract the encumbered binaries and then rename it such that the '-nd' suffix is now longer in the directory name.

    e.g.

    • closed/root_sparc (instead of closed/root_sparc-nd)
    • closed/root_i386 (instead of closed/root_i386-nd)
  2. Modify usr/src/Makefile as per the following diff output. This tells make to grab the non-debug encumbered binaries from the directory that the tarball extracts into. The upside of this is that it then anables you to build bfu archives for both debug and non-debug from nightly.

    ------- usr/src/Makefile -------
    
    Index: usr/src/Makefile
    --- /ws/onnv-gate/usr/src/Makefile      Mon Oct 16 15:10:55 2006
    +++ /export5/ah89892/onnv-6495870/usr/src/Makefile      Tue Nov 21 14:44:20 2006@@ -22,7 +22,7 @@
     # Copyright 2006 Sun Microsystems, Inc.  All rights reserved.
     # Use is subject to license terms.
     #
    -# ident        "@(#)Makefile   1.224   06/10/16 SMI"
    +# ident        "@(#)Makefile   1.225   06/11/21 SMI"
     #
     # Makefile for system source
     #
    @@ -117,14 +117,17 @@
            @cd lib; pwd; $(MAKE) install
    
     closedbins: FRC $(ROOTDIRS)
    -       @if [ "$$CLOSED_IS_PRESENT" = no ]; then \\
    -               if [ ! -d "$$ON_CLOSED_BINS/root_$(MACH)" ]; then \\
    +       @CLOSED_ROOT="$$ON_CLOSED_BINS/root_$(MACH)$${RELEASE_BUILD+-nd}"; \\
    +       if [ "$$CLOSED_IS_PRESENT" = no ]; then \\
    +               if [ ! -d "$$CLOSED_ROOT" ]; then \\
                            $(ECHO) "Error: if closed sources are not present," \\
                                "ON_CLOSED_BINS must point to closed binaries."; \\
    +                       $(ECHO) "root_$(MACH)$${RELEASE_BUILD+-nd} is not" \\
    +                           "present in $$ON_CLOSED_BINS."; \\
                            exit 1; \\
                    fi; \\
    -               $(ECHO) "Copying closed binaries from $$ON_CLOSED_BINS"; \\
    -               (cd $$ON_CLOSED_BINS/root_$(MACH); tar cf - .) | \\
    +               $(ECHO) "Copying closed binaries from $$CLOSED_ROOT"; \\
    +               (cd $$CLOSED_ROOT; tar cf - .) | \\
                        (cd $(ROOT); tar xBpf -); \\
            fi
        

The next part is to modify the environment file. In my case this is generally called opensolaris.sh and I keep my copy in the directory that contains usr and proto, often referred to as $CODEMGR_WS.

In order to only do a non-debug build go to the line that defines NIGHTLY_FLAGS and remove the D and F options. If you want nightly to build both, only remove the D option.

Make sure that you have all of the encumbered-binaries files extracted into the right place and kick off the nightly as you normally would.

Technorati Tags: ,

Comments:

Post a Comment:
Comments are closed for this entry.
About

* - Solaris and Network Domain, Technical Support Centre


Alan is a kernel and performance engineer based in Australia who tends to have the nasty calls gravitate towards him

Search

Archives
« April 2014
SunMonTueWedThuFriSat
  
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
   
       
Today
Links
Blogroll

No bookmarks in folder

Sun Folk

No bookmarks in folder

Non-Sun Folk
Non-Sun Folks

No bookmarks in folder