8003274: build-infra: Makefile changes needed for sjavac

Tue, 13 Nov 2012 15:54:33 -0800

author
tbell
date
Tue, 13 Nov 2012 15:54:33 -0800
changeset 507
f2ac4d0edaae
parent 506
78bb27faf889
child 508
b772de306dc2
child 510
a2df4ee40ecb

8003274: build-infra: Makefile changes needed for sjavac
Summary: changes left in build-infra that are related to sjavac
Reviewed-by: ohair, tbell
Contributed-by: erik.joelsson@oracle.com, fredrik.ohrstrom@oracle.com

common/autoconf/spec.gmk.in file | annotate | diff | comparison | revisions
common/makefiles/JavaCompilation.gmk file | annotate | diff | comparison | revisions
common/makefiles/MakeHelpers.gmk file | annotate | diff | comparison | revisions
     1.1 --- a/common/autoconf/spec.gmk.in	Mon Nov 12 12:34:11 2012 -0800
     1.2 +++ b/common/autoconf/spec.gmk.in	Tue Nov 13 15:54:33 2012 -0800
     1.3 @@ -246,12 +246,6 @@
     1.4  # Store sjavac server synchronization files here, and
     1.5  # the sjavac server log files.
     1.6  SJAVAC_SERVER_DIR:=@SJAVAC_SERVER_DIR@
     1.7 -# We can block the Javac server to never use more cores than this.
     1.8 -# This is not for performance reasons, but for memory usage, since each
     1.9 -# core requires its own JavaCompiler. We might have 64 cores and 4GB
    1.10 -# of memory, 64 JavaCompilers will currently not fit in a 3GB heap.
    1.11 -# Since there is no sharing of data between the JavaCompilers.
    1.12 -SJAVAC_SERVER_CORES:=@SJAVAC_SERVER_CORES@
    1.13  
    1.14  # The OpenJDK makefiles should be changed to using the standard
    1.15  # configure output ..._CFLAGS and ..._LIBS. In the meantime we
    1.16 @@ -496,7 +490,14 @@
    1.17  # Where the build output is stored for your convenience.
    1.18  BUILD_LOG:=@BUILD_LOG@
    1.19  BUILD_LOG_PREVIOUS:=@BUILD_LOG_PREVIOUS@
    1.20 -BUILD_LOG_WRAPPER:=@BUILD_LOG_WRAPPER@
    1.21 +# Disable the build log wrapper on sjavac+winapi until
    1.22 +# we have solved how to prevent the log wrapper to wait
    1.23 +# for the background sjavac server process.
    1.24 +ifeq (@ENABLE_SJAVAC@X@OPENJDK_BUILD_OS_API@,yesXwinapi)
    1.25 +    BUILD_LOG_WRAPPER:=
    1.26 +else
    1.27 +    BUILD_LOG_WRAPPER:=@BUILD_LOG_WRAPPER@
    1.28 +endif
    1.29  
    1.30  # Build setup
    1.31  ENABLE_JFR=@ENABLE_JFR@
     2.1 --- a/common/makefiles/JavaCompilation.gmk	Mon Nov 12 12:34:11 2012 -0800
     2.2 +++ b/common/makefiles/JavaCompilation.gmk	Tue Nov 13 15:54:33 2012 -0800
     2.3 @@ -170,9 +170,10 @@
     2.4      # tells us what to remove from the jar-file.
     2.5      $1_CAPTURE_DELETES=$$(foreach src,$$($1_SRCS),($(FIND) $$(src) -name _the.package.deleted -newer $$@ -exec $(SED) 's|$$(src)||g' \{\} >> $$($1_DELETES_FILE) \;) $$(NEWLINE))
     2.6      # The update contents macro updates the jar file with the previously capture contents.
     2.7 +    # xargs is used to trim the whitespace from the contents file, to see if it is empty.
     2.8      $1_UPDATE_CONTENTS=$$(foreach src,$$($1_SRCS),\
     2.9                      (cd $$(src) && \
    2.10 -                     if [ -s _the.$$($1_JARNAME)_contents ]; then \
    2.11 +                     if [ -n "`$(CAT) _the.$$($1_JARNAME)_contents | $(XARGS)`" ]; then \
    2.12                           $(ECHO) "  updating" `$(WC) -l _the.$$($1_JARNAME)_contents | $(AWK) '{ print $$$$1 }'` files && \
    2.13                           $(JAR) $$($1_JAR_UPDATE_OPTIONS) $$@ @_the.$$($1_JARNAME)_contents; \
    2.14                       fi) $$(NEWLINE))
     3.1 --- a/common/makefiles/MakeHelpers.gmk	Mon Nov 12 12:34:11 2012 -0800
     3.2 +++ b/common/makefiles/MakeHelpers.gmk	Tue Nov 13 15:54:33 2012 -0800
     3.3 @@ -157,7 +157,7 @@
     3.4  
     3.5  # Hook to be called as the very last thing for targets that are "top level" targets
     3.6  define AtMakeEnd
     3.7 -    $(if $(SJAVAC_SERVER_DIR),@$(RM) -rf $(SJAVAC_SERVER_DIR)/*.port)
     3.8 +    [ -f $(SJAVAC_SERVER_DIR)/server.port ] && echo Stopping sjavac server && $(TOUCH) $(SJAVAC_SERVER_DIR)/server.port.stop; true
     3.9      $(call StopGlobalTimer)
    3.10      $(call ReportBuildTimes)
    3.11      @$(PRINTF) "Finished building $(PRODUCT_NAME) for target '$(call GetRealTarget)'\n"
    3.12 @@ -174,8 +174,8 @@
    3.13  define ParseLogLevel
    3.14      ifeq ($$(origin VERBOSE),undefined)
    3.15          # Setup logging according to LOG (but only if VERBOSE is not given)
    3.16 -        
    3.17 -       # If the "nofile" argument is given, act on it and strip it away
    3.18 +
    3.19 +        # If the "nofile" argument is given, act on it and strip it away
    3.20          ifneq ($$(findstring nofile,$$(LOG)),)
    3.21            # Reset the build log wrapper, regardless of other values
    3.22            override BUILD_LOG_WRAPPER=

mercurial