forked from bpupadhyaya/openjdk-8
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Open JDK 8 source code from http://hg.openjdk.java.net/jdk8
- Loading branch information
1 parent
1914a81
commit b00b705
Showing
40,703 changed files
with
10,079,535 additions
and
314 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
|
||
OPENJDK ASSEMBLY EXCEPTION | ||
|
||
The OpenJDK source code made available by Sun at openjdk.java.net and | ||
openjdk.dev.java.net ("OpenJDK Code") is distributed under the terms of the | ||
GNU General Public License <http://www.gnu.org/copyleft/gpl.html> version 2 | ||
only ("GPL2"), with the following clarification and special exception. | ||
|
||
Linking this OpenJDK Code statically or dynamically with other code | ||
is making a combined work based on this library. Thus, the terms | ||
and conditions of GPL2 cover the whole combination. | ||
|
||
As a special exception, Sun gives you permission to link this | ||
OpenJDK Code with certain code licensed by Sun as indicated at | ||
http://openjdk.java.net/legal/exception-modules-2007-05-08.html | ||
("Designated Exception Modules") to produce an executable, | ||
regardless of the license terms of the Designated Exception Modules, | ||
and to copy and distribute the resulting executable under GPL2, | ||
provided that the Designated Exception Modules continue to be | ||
governed by the licenses under which they were offered by Sun. | ||
|
||
As such, it allows licensees and sublicensees of Sun's GPL2 OpenJDK Code to | ||
build an executable that includes those portions of necessary code that Sun | ||
could not provide under GPL2 (or that Sun has provided under GPL2 with the | ||
Classpath exception). If you modify or add to the OpenJDK code, that new | ||
GPL2 code may still be combined with Designated Exception Modules if the | ||
new code is made subject to this exception by its copyright holder. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,134 @@ | ||
# | ||
# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. | ||
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | ||
# | ||
# This code is free software; you can redistribute it and/or modify it | ||
# under the terms of the GNU General Public License version 2 only, as | ||
# published by the Free Software Foundation. Oracle designates this | ||
# particular file as subject to the "Classpath" exception as provided | ||
# by Oracle in the LICENSE file that accompanied this code. | ||
# | ||
# This code is distributed in the hope that it will be useful, but WITHOUT | ||
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or | ||
# FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | ||
# version 2 for more details (a copy is included in the LICENSE file that | ||
# accompanied this code). | ||
# | ||
# You should have received a copy of the GNU General Public License version | ||
# 2 along with this work; if not, write to the Free Software Foundation, | ||
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. | ||
# | ||
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA | ||
# or visit www.oracle.com if you need additional information or have any | ||
# questions. | ||
# | ||
|
||
# This must be the first rule | ||
default: | ||
|
||
# Inclusion of this pseudo-target will cause make to execute this file | ||
# serially, regardless of -j. Recursively called makefiles will not be | ||
# affected, however. This is required for correct dependency management. | ||
.NOTPARALLEL: | ||
|
||
# The shell code below will be executed on /usr/ccs/bin/make on Solaris, but not in GNU make. | ||
# /usr/ccs/bin/make lacks basically every other flow control mechanism. | ||
TEST_FOR_NON_GNUMAKE:sh=echo You are not using GNU make/gmake, this is a requirement. Check your path. 1>&2 && exit 1 | ||
|
||
# Assume we have GNU make, but check version. | ||
ifeq ($(strip $(foreach v, 3.81% 3.82% 4.%, $(filter $v, $(MAKE_VERSION)))), ) | ||
$(error This version of GNU Make is too low ($(MAKE_VERSION)). Check your path, or upgrade to 3.81 or newer.) | ||
endif | ||
|
||
# Locate this Makefile | ||
ifeq ($(filter /%,$(lastword $(MAKEFILE_LIST))),) | ||
makefile_path:=$(CURDIR)/$(lastword $(MAKEFILE_LIST)) | ||
else | ||
makefile_path:=$(lastword $(MAKEFILE_LIST)) | ||
endif | ||
root_dir:=$(dir $(makefile_path)) | ||
|
||
# ... and then we can include our helper functions | ||
include $(root_dir)/make/MakeHelpers.gmk | ||
|
||
$(eval $(call ParseLogLevel)) | ||
$(eval $(call ParseConfAndSpec)) | ||
|
||
# Now determine if we have zero, one or several configurations to build. | ||
ifeq ($(SPEC),) | ||
# Since we got past ParseConfAndSpec, we must be building a global target. Do nothing. | ||
else | ||
ifeq ($(words $(SPEC)),1) | ||
# We are building a single configuration. This is the normal case. Execute the Main.gmk file. | ||
include $(root_dir)/make/Main.gmk | ||
else | ||
# We are building multiple configurations. | ||
# First, find out the valid targets | ||
# Run the makefile with an arbitrary SPEC using -p -q (quiet dry-run and dump rules) to find | ||
# available PHONY targets. Use this list as valid targets to pass on to the repeated calls. | ||
all_phony_targets=$(filter-out $(global_targets) bundles bundles-only final-images-only, $(strip $(shell \ | ||
cd $(root_dir) && $(MAKE) -p -q FRC SPEC=$(firstword $(SPEC)) | \ | ||
grep ^.PHONY: | head -n 1 | cut -d " " -f 2-))) | ||
|
||
$(all_phony_targets): | ||
@$(foreach spec,$(SPEC),(cd $(root_dir) && $(MAKE) SPEC=$(spec) \ | ||
$(VERBOSE) VERBOSE=$(VERBOSE) LOG_LEVEL=$(LOG_LEVEL) $@) &&) true | ||
|
||
.PHONY: $(all_phony_targets) | ||
|
||
endif | ||
endif | ||
|
||
# Include this after a potential spec file has been included so that the bundles target | ||
# has access to the spec variables. | ||
include $(root_dir)/make/Jprt.gmk | ||
|
||
# Here are "global" targets, i.e. targets that can be executed without specifying a single configuration. | ||
# If you addd more global targets, please update the variable global_targets in MakeHelpers. | ||
|
||
help: | ||
$(info ) | ||
$(info OpenJDK Makefile help) | ||
$(info =====================) | ||
$(info ) | ||
$(info Common make targets) | ||
$(info . make [default] # Compile all product in langtools, hotspot, jaxp, jaxws,) | ||
$(info . # corba and jdk) | ||
$(info . make all # Compile everything, all repos and images) | ||
$(info . make images # Create complete j2sdk and j2re images) | ||
$(info . make docs # Create javadocs) | ||
$(info . make overlay-images # Create limited images for sparc 64 bit platforms) | ||
$(info . make profiles # Create complete j2re compact profile images) | ||
$(info . make bootcycle-images # Build images twice, second time with newly build JDK) | ||
$(info . make install # Install the generated images locally) | ||
$(info . make clean # Remove all files generated by make, but not those) | ||
$(info . # generated by configure) | ||
$(info . make dist-clean # Remove all files, including configuration) | ||
$(info . make help # Give some help on using make) | ||
$(info . make test # Run tests, default is all tests (see TEST below)) | ||
$(info ) | ||
$(info Targets for specific components) | ||
$(info (Component is any of langtools, corba, jaxp, jaxws, hotspot, jdk, nashorn, images, overlay-images, docs or test)) | ||
$(info . make <component> # Build <component> and everything it depends on. ) | ||
$(info . make <component>-only # Build <component> only, without dependencies. This) | ||
$(info . # is faster but can result in incorrect build results!) | ||
$(info . make clean-<component> # Remove files generated by make for <component>) | ||
$(info ) | ||
$(info Useful make variables) | ||
$(info . make CONF= # Build all configurations (note, assignment is empty)) | ||
$(info . make CONF=<substring> # Build the configuration(s) with a name matching) | ||
$(info . # <substring>) | ||
$(info ) | ||
$(info . make LOG=<loglevel> # Change the log level from warn to <loglevel>) | ||
$(info . # Available log levels are:) | ||
$(info . # 'warn' (default), 'info', 'debug' and 'trace') | ||
$(info . # To see executed command lines, use LOG=debug) | ||
$(info ) | ||
$(info . make JOBS=<n> # Run <n> parallel make jobs) | ||
$(info . # Note that -jN does not work as expected!) | ||
$(info ) | ||
$(info . make test TEST=<test> # Only run the given test or tests, e.g.) | ||
$(info . # make test TEST="jdk_lang jdk_net") | ||
$(info ) | ||
|
||
.PHONY: help |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
README: | ||
This file should be located at the top of the OpenJDK Mercurial root | ||
repository. A full OpenJDK repository set (forest) should also include | ||
the following 6 nested repositories: | ||
"jdk", "hotspot", "langtools", "corba", "jaxws" and "jaxp". | ||
|
||
The root repository can be obtained with something like: | ||
hg clone http://hg.openjdk.java.net/jdk8/jdk8 openjdk8 | ||
|
||
You can run the get_source.sh script located in the root repository to get | ||
the other needed repositories: | ||
cd openjdk8 && sh ./get_source.sh | ||
|
||
People unfamiliar with Mercurial should read the first few chapters of | ||
the Mercurial book: http://hgbook.red-bean.com/read/ | ||
|
||
See http://openjdk.java.net/ for more information about OpenJDK. | ||
|
||
Simple Build Instructions: | ||
|
||
0. Get the necessary system software/packages installed on your system, see | ||
http://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html | ||
|
||
1. If you don't have a jdk7u7 or newer jdk, download and install it from | ||
http://java.sun.com/javase/downloads/index.jsp | ||
Add the /bin directory of this installation to your PATH environment | ||
variable. | ||
|
||
2. Configure the build: | ||
bash ./configure | ||
|
||
3. Build the OpenJDK: | ||
make all | ||
The resulting JDK image should be found in build/*/images/j2sdk-image | ||
|
||
where make is GNU make 3.81 or newer, /usr/bin/make on Linux usually | ||
is 3.81 or newer. Note that on Solaris, GNU make is called "gmake". | ||
|
||
Complete details are available in the file: | ||
http://hg.openjdk.java.net/jdk8/jdk8/raw-file/tip/README-builds.html |
Oops, something went wrong.