Print this page
3971 remove EXPORT_RELEASE_BUILD


  20 #
  21 
  22 #
  23 # Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
  24 # Copyright (c) 2012 by Delphix. All rights reserved.
  25 #
  26 
  27 #
  28 # Makefile.master, global definitions for system source
  29 #
  30 ROOT=           /proto
  31 
  32 #
  33 # RELEASE_BUILD should be cleared for final release builds.
  34 # NOT_RELEASE_BUILD is exactly what the name implies.
  35 #
  36 # INTERNAL_RELEASE_BUILD is a subset of RELEASE_BUILD. It mostly controls
  37 # identification strings. Enabling RELEASE_BUILD automatically enables
  38 # INTERNAL_RELEASE_BUILD.
  39 #
  40 # EXPORT_RELEASE_BUILD controls whether binaries are built in a form that
  41 # can be released for export under a binary license.  It is orthogonal to
  42 # the other *RELEASE_BUILD settings.  ("#" means do an export release
  43 # build, "" means do a normal build.)
  44 #
  45 # CLOSED_BUILD controls whether we try to build files under
  46 # usr/closed.  ("" means to build closed code, "#" means don't try to
  47 # build it.)  Skipping the closed code implies doing an export release
  48 # build.
  49 #
  50 # STRIP_COMMENTS toggles comment section striping. Generally the same setting
  51 # as INTERNAL_RELEASE_BUILD.
  52 #
  53 # __GNUC toggles the building of ON components using gcc and related tools.
  54 # Normally set to `#', set it to `' to do gcc build.
  55 #
  56 # The declaration POUND_SIGN is always '#'. This is needed to get around the
  57 # make feature that '#' is always a comment delimiter, even when escaped or
  58 # quoted. We use this macro expansion method to get POUND_SIGN rather than
  59 # always breaking out a shell because the general case can cause a noticable
  60 # slowdown in build times when so many Makefiles include Makefile.master.
  61 #
  62 # While the majority of users are expected to override the setting below
  63 # with an env file (via nightly or bldenv), if you aren't building that way
  64 # (ie, you're using "ws" or some other bootstrapping method) then you need
  65 # this definition in order to avoid the subshell invocation mentioned above.
  66 #
  67 
  68 PRE_POUND=                              pre\#
  69 POUND_SIGN=                             $(PRE_POUND:pre\%=%)
  70 
  71 NOT_RELEASE_BUILD=
  72 INTERNAL_RELEASE_BUILD=                 $(POUND_SIGN)
  73 RELEASE_BUILD=                          $(POUND_SIGN)
  74 $(RELEASE_BUILD)NOT_RELEASE_BUILD=      $(POUND_SIGN)
  75 $(RELEASE_BUILD)INTERNAL_RELEASE_BUILD=
  76 PATCH_BUILD=                            $(POUND_SIGN)
  77 
  78 # If CLOSED_IS_PRESENT is not set, assume the closed tree is present.
  79 CLOSED_BUILD_1= $(CLOSED_IS_PRESENT:yes=)
  80 CLOSED_BUILD=   $(CLOSED_BUILD_1:no=$(POUND_SIGN))
  81 
  82 EXPORT_RELEASE_BUILD=                   $(POUND_SIGN)
  83 $(CLOSED_BUILD)EXPORT_RELEASE_BUILD=
  84 
  85 # SPARC_BLD is '#' for an Intel build.
  86 # INTEL_BLD is '#' for a Sparc build.
  87 SPARC_BLD_1=    $(MACH:i386=$(POUND_SIGN))
  88 SPARC_BLD=      $(SPARC_BLD_1:sparc=)
  89 INTEL_BLD_1=    $(MACH:sparc=$(POUND_SIGN))
  90 INTEL_BLD=      $(INTEL_BLD_1:i386=)
  91 
  92 STRIP_COMMENTS= $(INTERNAL_RELEASE_BUILD)
  93 
  94 # Are we building tonic closedbins? Unless you have used the
  95 # -O flag to nightly or bldenv, leave the definition of TONICBUILD
  96 # as $(POUND_SIGN).
  97 #
  98 # IF YOU CHANGE CLOSEDROOT, you MUST change install.bin
  99 # to match the new definition.
 100 TONICBUILD=     $(POUND_SIGN)
 101 $(TONICBUILD)CLOSEDROOT= $(ROOT)-closed
 102 
 103 
 104 # The variables below control the compilers used during the build.


 882 
 883 AS_PICFLAGS=            $(C_PICFLAGS)
 884 AS_BIGPICFLAGS=         $(C_BIGPICFLAGS)
 885 
 886 #
 887 # Default label for CTF sections
 888 #
 889 CTFCVTFLAGS=            -i -L VERSION
 890 
 891 #
 892 # Override to pass module-specific flags to ctfmerge.  Currently used
 893 # only by krtld to turn on fuzzy matching.
 894 #
 895 CTFMRGFLAGS=
 896 
 897 CTFCONVERT_O            = $(CTFCONVERT) $(CTFCVTFLAGS) $@
 898 
 899 ELFSIGN_O=      $(TRUE)
 900 ELFSIGN_CRYPTO= $(ELFSIGN_O)
 901 ELFSIGN_OBJECT= $(ELFSIGN_O)
 902 $(EXPORT_RELEASE_BUILD)ELFSIGN_O =      $(ELFSIGN)
 903 $(EXPORT_RELEASE_BUILD)ELFSIGN_CFNAME = SUNWosnetCF
 904 $(EXPORT_RELEASE_BUILD)ELFSIGN_KEY =    \
 905                         $(CLOSED)/cmd/cmd-crypto/etc/keys/$(ELFSIGN_CFNAME)
 906 $(EXPORT_RELEASE_BUILD)ELFSIGN_CERT=    \
 907                         $(CLOSED)/cmd/cmd-crypto/etc/certs/$(ELFSIGN_CFNAME)
 908 $(EXPORT_RELEASE_BUILD)ELFSIGN_SENAME = SUNWosnetSE
 909 $(EXPORT_RELEASE_BUILD)ELFSIGN_SEKEY =  \
 910                         $(CLOSED)/cmd/cmd-crypto/etc/keys/$(ELFSIGN_SENAME)
 911 $(EXPORT_RELEASE_BUILD)ELFSIGN_SECERT=  \
 912                         $(CLOSED)/cmd/cmd-crypto/etc/certs/$(ELFSIGN_SENAME)
 913 $(EXPORT_RELEASE_BUILD)ELFSIGN_CRYPTO=  $(ELFSIGN_O) sign \
 914                         $(ELFSIGN_FORMAT_OPTION) \
 915                         -k $(ELFSIGN_KEY) -c $(ELFSIGN_CERT) -e $@
 916 $(EXPORT_RELEASE_BUILD)ELFSIGN_OBJECT=  $(ELFSIGN_O) sign \
 917                         $(ELFSIGN_FORMAT_OPTION) \
 918                         -k $(ELFSIGN_SEKEY) -c $(ELFSIGN_SECERT) -e $@
 919 
 920 # Rules (normally from make.rules) and macros which are used for post
 921 # processing files. Normally, these do stripping of the comment section
 922 # automatically.
 923 #    RELEASE_CM:        Should be editted to reflect the release.
 924 #    POST_PROCESS_O:    Post-processing for `.o' files.
 925 #    POST_PROCESS_A:    Post-processing for `.a' files (currently null).
 926 #    POST_PROCESS_SO:   Post-processing for `.so' files.
 927 #    POST_PROCESS:      Post-processing for executable files (no suffix).
 928 # Note that these macros are not completely generalized as they are to be
 929 # used with the file name to be processed following.
 930 #
 931 # It is left as an exercise to Release Engineering to embellish the generation
 932 # of the release comment string.
 933 #
 934 #       If this is a standard development build:
 935 #               compress the comment section (mcs -c)
 936 #               add the standard comment (mcs -a $(RELEASE_CM))
 937 #               add the development specific comment (mcs -a $(DEV_CM))
 938 #




  20 #
  21 
  22 #
  23 # Copyright (c) 1989, 2010, Oracle and/or its affiliates. All rights reserved.
  24 # Copyright (c) 2012 by Delphix. All rights reserved.
  25 #
  26 
  27 #
  28 # Makefile.master, global definitions for system source
  29 #
  30 ROOT=           /proto
  31 
  32 #
  33 # RELEASE_BUILD should be cleared for final release builds.
  34 # NOT_RELEASE_BUILD is exactly what the name implies.
  35 #
  36 # INTERNAL_RELEASE_BUILD is a subset of RELEASE_BUILD. It mostly controls
  37 # identification strings. Enabling RELEASE_BUILD automatically enables
  38 # INTERNAL_RELEASE_BUILD.
  39 #





  40 # CLOSED_BUILD controls whether we try to build files under
  41 # usr/closed.  ("" means to build closed code, "#" means don't try to
  42 # build it.)  Skipping the closed code implies doing an export release
  43 # build.
  44 #
  45 # STRIP_COMMENTS toggles comment section striping. Generally the same setting
  46 # as INTERNAL_RELEASE_BUILD.
  47 #
  48 # __GNUC toggles the building of ON components using gcc and related tools.
  49 # Normally set to `#', set it to `' to do gcc build.
  50 #
  51 # The declaration POUND_SIGN is always '#'. This is needed to get around the
  52 # make feature that '#' is always a comment delimiter, even when escaped or
  53 # quoted. We use this macro expansion method to get POUND_SIGN rather than
  54 # always breaking out a shell because the general case can cause a noticable
  55 # slowdown in build times when so many Makefiles include Makefile.master.
  56 #
  57 # While the majority of users are expected to override the setting below
  58 # with an env file (via nightly or bldenv), if you aren't building that way
  59 # (ie, you're using "ws" or some other bootstrapping method) then you need
  60 # this definition in order to avoid the subshell invocation mentioned above.
  61 #
  62 
  63 PRE_POUND=                              pre\#
  64 POUND_SIGN=                             $(PRE_POUND:pre\%=%)
  65 
  66 NOT_RELEASE_BUILD=
  67 INTERNAL_RELEASE_BUILD=                 $(POUND_SIGN)
  68 RELEASE_BUILD=                          $(POUND_SIGN)
  69 $(RELEASE_BUILD)NOT_RELEASE_BUILD=      $(POUND_SIGN)
  70 $(RELEASE_BUILD)INTERNAL_RELEASE_BUILD=
  71 PATCH_BUILD=                            $(POUND_SIGN)
  72 
  73 # If CLOSED_IS_PRESENT is not set, assume the closed tree is present.
  74 CLOSED_BUILD_1= $(CLOSED_IS_PRESENT:yes=)
  75 CLOSED_BUILD=   $(CLOSED_BUILD_1:no=$(POUND_SIGN))
  76 



  77 # SPARC_BLD is '#' for an Intel build.
  78 # INTEL_BLD is '#' for a Sparc build.
  79 SPARC_BLD_1=    $(MACH:i386=$(POUND_SIGN))
  80 SPARC_BLD=      $(SPARC_BLD_1:sparc=)
  81 INTEL_BLD_1=    $(MACH:sparc=$(POUND_SIGN))
  82 INTEL_BLD=      $(INTEL_BLD_1:i386=)
  83 
  84 STRIP_COMMENTS= $(INTERNAL_RELEASE_BUILD)
  85 
  86 # Are we building tonic closedbins? Unless you have used the
  87 # -O flag to nightly or bldenv, leave the definition of TONICBUILD
  88 # as $(POUND_SIGN).
  89 #
  90 # IF YOU CHANGE CLOSEDROOT, you MUST change install.bin
  91 # to match the new definition.
  92 TONICBUILD=     $(POUND_SIGN)
  93 $(TONICBUILD)CLOSEDROOT= $(ROOT)-closed
  94 
  95 
  96 # The variables below control the compilers used during the build.


 874 
 875 AS_PICFLAGS=            $(C_PICFLAGS)
 876 AS_BIGPICFLAGS=         $(C_BIGPICFLAGS)
 877 
 878 #
 879 # Default label for CTF sections
 880 #
 881 CTFCVTFLAGS=            -i -L VERSION
 882 
 883 #
 884 # Override to pass module-specific flags to ctfmerge.  Currently used
 885 # only by krtld to turn on fuzzy matching.
 886 #
 887 CTFMRGFLAGS=
 888 
 889 CTFCONVERT_O            = $(CTFCONVERT) $(CTFCVTFLAGS) $@
 890 
 891 ELFSIGN_O=      $(TRUE)
 892 ELFSIGN_CRYPTO= $(ELFSIGN_O)
 893 ELFSIGN_OBJECT= $(ELFSIGN_O)

















 894 
 895 # Rules (normally from make.rules) and macros which are used for post
 896 # processing files. Normally, these do stripping of the comment section
 897 # automatically.
 898 #    RELEASE_CM:        Should be editted to reflect the release.
 899 #    POST_PROCESS_O:    Post-processing for `.o' files.
 900 #    POST_PROCESS_A:    Post-processing for `.a' files (currently null).
 901 #    POST_PROCESS_SO:   Post-processing for `.so' files.
 902 #    POST_PROCESS:      Post-processing for executable files (no suffix).
 903 # Note that these macros are not completely generalized as they are to be
 904 # used with the file name to be processed following.
 905 #
 906 # It is left as an exercise to Release Engineering to embellish the generation
 907 # of the release comment string.
 908 #
 909 #       If this is a standard development build:
 910 #               compress the comment section (mcs -c)
 911 #               add the standard comment (mcs -a $(RELEASE_CM))
 912 #               add the development specific comment (mcs -a $(DEV_CM))
 913 #