Add experimental flag to support OpenJDK builds.

bug: 8992787

(cherry picked from commit d1dbe7f5a23bacdff086b4992e1d31a96da706c3)

Conflicts:
	core/main.mk

Change-Id: Ie977d4f26ae8d3eee9d7b9cf2c0c270bee5b54b3
A few more Java7 related clean ups.

- Separate SDK checking from version checking and
  make messages clearer.
- Add explicit source & target versions for javac to
  make things clearer.
- Rename flag from EXPERIMENTAL_USE_JAVA7_OPENJDK to
  EXPERIMENTAL_USE_JAVA7.
- Allow Oracle JDK 1.7 to be used on Mac OS, since there's
  no official OpenJDK support for that platform.

Change-Id: I454d2c917ed78f03ec7559a99659fefe7e7d50f3
Add support for ALTERNATE_JAVAC

Bug: 12476356
Change-Id: Idd013031dc32a560bca76cca295bedcad55982b4
Increase the maximum javac heap size.

Java 7 needs more memory when you run some annotation tools.

Change-Id: Ia8b423244b9ce164500b24867fe2b3d10a5089ff
Add missing paren in "java -version" check

Change-Id: Id66e795423e8d25b48ac996956748a93060ea5db
Fix java version detection when _JAVA_OPTIONS is set.

_JAVA_OPTIONS is an environment variable that
can be used to affect the behavior of java and javac.
It is currently required to get Android to build on
some configurations, where the default Java heap size
is too small. Unfortunately, if _JAVA_OPTIONS is set,
both java and javac will output its value to the console
as the first line on every invocation, including trivial
ones like java -version. This will confuse main.mk’s
version detection, which only looks at the first line of
output. Tweak the version detection to run grep before
head, so that the _JAVA_OPTIONS line is filtered by the grep.

Change-Id: I69aee52b56d27711b7d3087ec6b3ebab07ffc3af
Call "java[c] -version" only once

and print out the full output if error occurs.
Bug: 11672548

(cherry picked from 7b66d366bf5c469130f71d0870424fcd265e0301)

Change-Id: I8e2f2ffa2f28146405273b04667efe3c8d1c03ad
Add warning message for java6 builds.

The instruction URL has been amended and a few additional
details have been added.

(cherry picked from 8c06afdea3d3c422d653b40fd19d5e3d4be64af2)

Change-Id: Icaffc3b13ed881ac7e29f2021ed31eb1f877a5ab

Conflicts:
	core/main.mk
Unset _JAVA_OPTIONS before running "java -version".

Unfortunately the previous approach of grepping out java version before
"head -n 1" clash with the effort of running "java -version" only once.

Change-Id: Ic78719c3bf1a54a45342d74bbbfa8e83bbc1bce1
Make envsetup.sh set JAVA_HOME correctly for java7.

Note that despite the location of this change, this function
is run only during "lunch" and not during ". build/envsetup.sh"

Also, make it easier to switch back and forth between java6 and 7
on the same session.

bug: 8992787

Change-Id: I56ec0ba8552b46c04204a8b96b9abc0180f7605f
Build with java7 by default.

All introduce a flag LEGACY_USE_JAVA6 to force java6 builds.
This is an unsupported configuration, and provided temporarily
to iron out regressions and compare build output (if required.).

- Increment the version check sequence number.
- Move a more specific check (OpenJDK vs non OpenJDK) after
  the more general version check.
- Update the link in the version check error message to the
  "initializing" page instead of the "download" page. The latter
  talks about repo, mainly.

bug: 8992787

Change-Id: I313e17b1911768d4f3bc318c4162c53dec6eaf0d

Conflicts:
	core/main.mk
Increase the maximum javac heap size again.

Change-Id: Ic3422650ea22977f3dcfd74505cb287ff6543c2d
javac: rename common_flags to avoid conflictions

 * Currently the flag conflicts with one seen in hardware/qcom
   rename to avoid issues.

Change-Id: I876fcd6a254f349dc5260509bcddb0367a7d49d8
Signed-off-by: Nick Reuter <nreuter85@gmail.com>
fix droiddoc.mk for building openjdk as default java

Change-Id: I0056fea5f6553156c14e63dec4f37b962cd7a73f