make/linux/makefiles/top.make

Print this page




   7 # published by the Free Software Foundation.
   8 #
   9 # This code is distributed in the hope that it will be useful, but WITHOUT
  10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12 # version 2 for more details (a copy is included in the LICENSE file that
  13 # accompanied this code).
  14 #
  15 # You should have received a copy of the GNU General Public License version
  16 # 2 along with this work; if not, write to the Free Software Foundation,
  17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18 #
  19 # Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
  20 # CA 95054 USA or visit www.sun.com if you need additional information or
  21 # have any questions.
  22 #  
  23 #
  24 
  25 # top.make is included in the Makefile in the build directories.
  26 # It DOES NOT include the vm dependency info in order to be faster.
  27 # It's main job is to implement the incremental form of make lists.
  28 # It also:
  29 #   -builds and runs adlc via adlc.make
  30 #   -generates JVMTI source and docs via jvmti.make (JSR-163)
  31 #   -generate sa-jdi.jar (JDI binding to core files)
  32 
  33 # It assumes the following flags are set:
  34 # CFLAGS Platform_file, Src_Dirs, SYSDEFS, AOUT, Obj_Files
  35 
  36 # -- D. Ungar (5/97) from a file by Bill Bush
  37 
  38 # Don't override the built-in $(MAKE).
  39 # Instead, use "gmake" (or "gnumake") from the command line.  --Rose
  40 #MAKE = gmake
  41 
  42 TOPDIR      = $(shell echo `pwd`)
  43 GENERATED   = $(TOPDIR)/../generated
  44 VM          = $(GAMMADIR)/src/share/vm
  45 Plat_File   = $(Platform_file)
  46 CDG         = cd $(GENERATED); 
  47 


  97 
  98 # Wierd argument adjustment for "gnumake -j..."
  99 adjust-mflags   = $(GENERATED)/adjust-mflags
 100 MFLAGS-adjusted = -r `$(adjust-mflags) "$(MFLAGS)" "$(HOTSPOT_BUILD_JOBS)"`
 101 
 102 
 103 # default target: make makeDeps, update lists, make vm
 104 # done in stages to force sequential order with parallel make
 105 #
 106 
 107 default: vm_build_preliminaries the_vm
 108         @echo All done.
 109 
 110 # This is an explicit dependency for the sake of parallel makes.
 111 vm_build_preliminaries:  checks $(Incremental_Lists) $(AD_Files_If_Required) jvmti_stuff sa_stuff
 112         @# We need a null action here, so implicit rules don't get consulted.
 113 
 114 # make makeDeps: (and zap the cached db files to force a nonincremental run)
 115 
 116 $(GENERATED)/$(MakeDepsClass): $(MakeDepsSources)
 117         @$(REMOTE) $(COMPILE.JAVAC) -classpath $(GAMMADIR)/src/share/tools/MakeDeps -g -d $(GENERATED) $(MakeDepsSources)
 118         @echo Removing $(Incremental_Lists) to force regeneration.
 119         @rm -f $(Incremental_Lists)
 120         @$(CDG) echo >$(Cached_plat)
 121 
 122 # make incremental_lists, if cached files out of date, run makeDeps
 123 
 124 $(Incremental_Lists): $(Include_DBs) $(Plat_File) $(GENERATED)/$(MakeDepsClass)
 125         $(CDG) cat $(Include_DBs) > $(GENERATED)/includeDB
 126         $(CDG) if [ ! -r incls ] ; then \
 127         mkdir incls ; \
 128         fi
 129         $(CDG) (echo $(CDG) echo $(MakeDeps) diffs UnixPlatform $(Cached_plat) $(Cached_db) $(Plat_File) $(GENERATED)/includeDB $(MakeDepsOptions)) > makeDeps.sh
 130         $(CDG) $(REMOTE) sh $(GENERATED)/makeDeps.sh
 131         $(CDG) cp includeDB    $(Cached_db)
 132         $(CDG) cp $(Plat_File) $(Cached_plat)
 133 
 134 # symbolic target for command lines
 135 lists: $(Incremental_Lists)
 136         @: lists are now up to date
 137 




   7 # published by the Free Software Foundation.
   8 #
   9 # This code is distributed in the hope that it will be useful, but WITHOUT
  10 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12 # version 2 for more details (a copy is included in the LICENSE file that
  13 # accompanied this code).
  14 #
  15 # You should have received a copy of the GNU General Public License version
  16 # 2 along with this work; if not, write to the Free Software Foundation,
  17 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  18 #
  19 # Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
  20 # CA 95054 USA or visit www.sun.com if you need additional information or
  21 # have any questions.
  22 #  
  23 #
  24 
  25 # top.make is included in the Makefile in the build directories.
  26 # It DOES NOT include the vm dependency info in order to be faster.
  27 # Its main job is to implement the incremental form of make lists.
  28 # It also:
  29 #   -builds and runs adlc via adlc.make
  30 #   -generates JVMTI source and docs via jvmti.make (JSR-163)
  31 #   -generate sa-jdi.jar (JDI binding to core files)
  32 
  33 # It assumes the following flags are set:
  34 # CFLAGS Platform_file, Src_Dirs, SYSDEFS, AOUT, Obj_Files
  35 
  36 # -- D. Ungar (5/97) from a file by Bill Bush
  37 
  38 # Don't override the built-in $(MAKE).
  39 # Instead, use "gmake" (or "gnumake") from the command line.  --Rose
  40 #MAKE = gmake
  41 
  42 TOPDIR      = $(shell echo `pwd`)
  43 GENERATED   = $(TOPDIR)/../generated
  44 VM          = $(GAMMADIR)/src/share/vm
  45 Plat_File   = $(Platform_file)
  46 CDG         = cd $(GENERATED); 
  47 


  97 
  98 # Wierd argument adjustment for "gnumake -j..."
  99 adjust-mflags   = $(GENERATED)/adjust-mflags
 100 MFLAGS-adjusted = -r `$(adjust-mflags) "$(MFLAGS)" "$(HOTSPOT_BUILD_JOBS)"`
 101 
 102 
 103 # default target: make makeDeps, update lists, make vm
 104 # done in stages to force sequential order with parallel make
 105 #
 106 
 107 default: vm_build_preliminaries the_vm
 108         @echo All done.
 109 
 110 # This is an explicit dependency for the sake of parallel makes.
 111 vm_build_preliminaries:  checks $(Incremental_Lists) $(AD_Files_If_Required) jvmti_stuff sa_stuff
 112         @# We need a null action here, so implicit rules don't get consulted.
 113 
 114 # make makeDeps: (and zap the cached db files to force a nonincremental run)
 115 
 116 $(GENERATED)/$(MakeDepsClass): $(MakeDepsSources)
 117         @$(REMOTE) $(COMPILE.JAVAC) -classpath $(GAMMADIR)/src/share/tools/MakeDeps $(BOOTSTRAP_JAVAC_FLAGS) -d $(GENERATED) $(MakeDepsSources)
 118         @echo Removing $(Incremental_Lists) to force regeneration.
 119         @rm -f $(Incremental_Lists)
 120         @$(CDG) echo >$(Cached_plat)
 121 
 122 # make incremental_lists, if cached files out of date, run makeDeps
 123 
 124 $(Incremental_Lists): $(Include_DBs) $(Plat_File) $(GENERATED)/$(MakeDepsClass)
 125         $(CDG) cat $(Include_DBs) > $(GENERATED)/includeDB
 126         $(CDG) if [ ! -r incls ] ; then \
 127         mkdir incls ; \
 128         fi
 129         $(CDG) (echo $(CDG) echo $(MakeDeps) diffs UnixPlatform $(Cached_plat) $(Cached_db) $(Plat_File) $(GENERATED)/includeDB $(MakeDepsOptions)) > makeDeps.sh
 130         $(CDG) $(REMOTE) sh $(GENERATED)/makeDeps.sh
 131         $(CDG) cp includeDB    $(Cached_db)
 132         $(CDG) cp $(Plat_File) $(Cached_plat)
 133 
 134 # symbolic target for command lines
 135 lists: $(Incremental_Lists)
 136         @: lists are now up to date
 137