Commit Graph

31 Commits

Author SHA1 Message Date
Jim Chen
c02561a822 Bug 1116589 - Use templated JNI classes in generated bindings; r=snorp 2015-01-09 19:33:57 -05:00
James Willcox
251f0db29a Bug 1099345 - Add more descriptive debugging output to the Android SDK code generator r=nalexander
--HG--
extra : rebase_source : 47d675ebe19db1a488498a19834674fe2fd8dc4f
2014-11-26 15:16:08 -06:00
Nick Alexander
f16d77b0a2 Bug 1099501 - Export and use ANDROID_TOOLS where appropriate. r=snorp,bnicholson
In certain configurations, in particular when installing the Android SDK
using HomeBrew, one sees a configuration with symlinks like:

    [brian@brian-macbook git]$ ls -l /usr/local/Cellar/android-sdk/23.0.2/
    total 72
    ...
    lrwxr-xr-x   1 brian  admin    38 Nov 14 16:39 platforms -> ../../../var/lib/android-sdk/platforms
    ...
    drwxr-xr-x  26 brian  admin   884 Nov 14 17:43 tools

In this case, we have
ANDROID_SDK=/usr/local/Cellar/android-sdk/23.0.2/platforms/android-21.

It is an anti-pattern to use ANDORID_SDK/.. to find other paths in the
tree.  This pattern is used in at least two places:

1) When we try to find
/usr/local/Cellar/android-sdk/23.0.2/platforms/android-21/../../tools,
we end up in the /usr/local/var/lib subtree.  This patch works around
that by exporting and using ANDROID_TOOLS; ANDROID_TOOLS itself is
extracted using path matching, rather than following .. through the
filesystem.

2) We also need to use ANDROID_SDK_ROOT rather than
ANDROID_SDK/../.. through-out.

--HG--
extra : rebase_source : 5e0323a94f2b80550f17a624e16f338cdeec406d
2014-11-17 11:12:00 -08:00
James Willcox
92d6a7a2b2 Bug 1086693 - Part 5: Add a 'catchException' mode to JNI generator r=ckitching 2014-11-13 12:47:24 -06:00
James Willcox
ba277e178c Bug 1086693 - Part 4: Add a lazy initialization mode to CodeGenerator, and use it for SDK bindings r=ckitching 2014-11-13 12:47:24 -06:00
James Willcox
1c36972ff1 Bug 1086693 - Part 3: Don't generate members that are above a given API version r=ckitching 2014-11-13 12:47:23 -06:00
Nick Alexander
f71ebbe1e4 Bug 1086693 - Part 2: Generate and build Android SDK JNI wrappers. r=gps 2014-11-13 12:47:23 -06:00
James Willcox
24e85a4ca1 Bug 1086693 - Part 1: Add SDKProcessor r=ckitching 2014-11-13 12:47:22 -06:00
Chris Kitching
2a77d725c8 Bug 1067056: Remove JavaDomKeyLocation and GeneratorOptions annotation. r=jchen 2014-09-13 17:42:03 -07:00
Chris Kitching
4bd2a1a14e Bug 1049105: Make annotation processor compile with Xlint:all r=kats 2014-08-05 21:13:49 -07:00
Chris Kitching
6c62798b21 Bug 1049105: Remove generateStatic option from JNI wrapper generator r=kats 2014-08-05 15:04:38 -07:00
Kartikaya Gupta
905f96e254 Follow-up to bug 1019836 to replace tabs with spaces. r=me and DONTBUILD because whitespace changes only. 2014-08-05 15:52:43 -04:00
Brad Lassey
6c6fe8361b bug 1019836 - Support narrow char strings in android bridge r=snorp 2014-06-04 15:04:12 -04:00
Chris Peterson
e4f9386ea4 Bug 990764 - Replace MOZ_ASSUME_UNREACHABLE with MOZ_CRASH in widget/android. r=blassey 2014-04-27 18:56:46 -07:00
Jim Chen
bb02646fad Bug 958706 - Make generated JNI wrappers handle uncaught exceptions; r=blassey
This patch adds AndroidBridge::HandleUncaughtException calls to generated JNI wrappers. Also, the JNI annotation now accepts the noThrow flag to indicate that the JNI caller wishes to handle Exceptions manually.
2014-01-17 23:32:25 -06:00
Ehsan Akhgari
37b2774903 Bug 956783 - Stop using NULL in Fennec's JNI code; r=jchen 2014-01-06 15:21:27 -05:00
Chris Kitching
a59161e29e Bug 946083: Prevent the annotation processor from choking on stale classfiles in the objdir. r=rnewman 2013-12-18 02:30:57 +00:00
Chris Kitching
a053b765bb Bug 913985: Part 3 - Update the annotation processor to generate wrapper classes. r=kats
--HG--
rename : build/annotationProcessors/MethodWithAnnotationInfo.java => build/annotationProcessors/AnnotationInfo.java
rename : build/annotationProcessors/utils/AlphabeticMethodComparator.java => build/annotationProcessors/utils/AlphabeticAnnotatableEntityComparator.java
rename : build/annotationProcessors/utils/GeneratableEntryPointIterator.java => build/annotationProcessors/utils/GeneratableElementIterator.java
2013-11-21 20:41:28 +00:00
Chris Kitching
a566826c5d Bug 913985: Part 1.5 - Update the annotation processor to handle the renamed annotations. r=kats 2013-11-12 10:41:00 -08:00
Ryan VanderMeulen
99217d0d2e Backed out 7 changesets (bug 913985) for intermittent Android crashes.
Backed out changeset 53513a959cf0 (bug 913985)
Backed out changeset d23d1e678417 (bug 913985)
Backed out changeset a9c9187b4f4a (bug 913985)
Backed out changeset c6b02e4a3e35 (bug 913985)
Backed out changeset 895dae322e3c (bug 913985)
Backed out changeset 3d97e6a53313 (bug 913985)
Backed out changeset 892bb017f8ba (bug 913985)

--HG--
rename : build/annotationProcessors/AnnotationInfo.java => build/annotationProcessors/MethodWithAnnotationInfo.java
rename : build/annotationProcessors/utils/AlphabeticAnnotatableEntityComparator.java => build/annotationProcessors/utils/AlphabeticMethodComparator.java
rename : build/annotationProcessors/utils/GeneratableElementIterator.java => build/annotationProcessors/utils/GeneratableEntryPointIterator.java
rename : mobile/android/base/mozglue/generatorannotations/WrapElementForJNI.java => mobile/android/base/mozglue/GeneratableAndroidBridgeTarget.java
rename : mobile/android/base/mozglue/generatorannotations/OptionalGeneratedParameter.java => mobile/android/base/mozglue/OptionalGeneratedParameter.java
2013-11-19 10:56:09 -05:00
Chris Kitching
7a52179daa Bug 913985 - Part 3: update the annotation processor to generate wrapper classes. r=kats
--HG--
rename : build/annotationProcessors/MethodWithAnnotationInfo.java => build/annotationProcessors/AnnotationInfo.java
rename : build/annotationProcessors/utils/AlphabeticMethodComparator.java => build/annotationProcessors/utils/AlphabeticAnnotatableEntityComparator.java
rename : build/annotationProcessors/utils/GeneratableEntryPointIterator.java => build/annotationProcessors/utils/GeneratableElementIterator.java
2013-11-18 20:31:35 -08:00
Chris Kitching
33ea260f08 Bug 913985 - Part 1.5: update the annotation processor to handle the renamed annotations. r=kats 2013-11-12 10:41:00 -08:00
cewang
75320272c2 Bug 934359 - Solve endless loop problem in gecko/build/annotationProcessors/utils/Utils.java. r=kats 2013-11-18 09:11:35 -05:00
Nick Alexander
3360f7d3bf Bug 933300 - Write preprocessed Fennec code into generated/org/mozilla/*. r=glandium 2013-11-13 19:32:55 -08:00
Nick Alexander
fc061cca31 Backed out changeset ba9c8fcf76e6 (bug 933300) 2013-11-13 17:11:58 -08:00
Nick Alexander
4f14336bed Bug 933300 - Write preprocessed Fennec code into generated/org/mozilla/*. r=glandium
This writes source with preprocessed package names into
generated/org/mozilla/{firefox,firefox_beta,fennec,fennec_$USERID},
and the other preprocessed source into generated/org/mozilla/gecko.

This layout matches the Java package hierarchy and is what IDEs expect
when including $OBJDIR/generated as a source directory.

--HG--
extra : rebase_source : 5cc397e6808d21a662c1f718ef49ee148c15e465
2013-11-11 23:39:16 -05:00
Nick Alexander
a018f9dabc Bug 925185 - Part 2: Use add_java_jar and restrict JAVA_JAR_TARGETS to moz.build. r=gps 2013-10-24 15:38:22 -07:00
Nick Alexander
bfed676547 Bug 923306 - Build annotationProcessors with JAVA_JAR_TARGETS. r=glandium 2013-10-09 17:05:37 -07:00
Nick Alexander
c6b85c48fd Bug 923306 - Make annotationProcessors build with -Xlint:all. r=ckitching 2013-10-09 17:05:37 -07:00
Chris Kitching
9c51fc1d3e Bug 914760 - Generate less debugging code. r=rnewman 2013-09-10 21:10:47 -04:00
Chris Kitching
e005e6184b Bug 794981 - Part 8: Add an annotation processor to the build process to generate the contents of part 5. r=kats, r=glandium 2013-09-09 08:57:37 -04:00