Commit Graph

307 Commits

Author SHA1 Message Date
A Pottinger
cfd61a074a Fix windows javafx temp folder cleanup.
Remove the javafx expansion of the zip archive on windows after build completes.
2019-10-10 23:21:58 -07:00
A Pottinger
27836ac1a7 Started temp directory cleanup for JDK working files. 2019-10-10 22:38:12 -07:00
A Pottinger
c1077d993f Update naming convention for JDK downloads.
In response to https://github.com/processing/processing4/issues/6, fix up naming for JDK downloads and some leftover .gitignore edits.
2019-10-10 21:34:35 -07:00
A Samuel Pottinger
ee299ef935 Move to ANTLR 4 with Java 11 lang features and localization. (#5)
* Move to ANTLR 4 with Java 11 lang features and localization.

Introduces ANTLR4 and Java 8 language feature support within IDE while also adding additional hooks for localization of syntax error messages, addressing https://github.com/processing/processing/issues/3054 and https://github.com/processing/processing/issues/3055.

The PR is broadly a continuation of https://github.com/processing/processing/issues/3055, bringing it up to speed with the latest Processing master plus the changes introduced at https://github.com/processing/processing/pull/5753. **Requires https://github.com/processing/processing/pull/5753 as pre-requisite.** This introduces a number of edits beyond https://github.com/processing/processing/issues/3055 beyond compatibility with current Processing master and https://github.com/processing/processing/pull/5753 including:

 - Update to the grammar itself
 - Change ANTLR listeners to emit `TextTransform.Edit` to unify JDT-based `PreprocessingService` and `JavaBuild`, removing code with duplicate purpose.
 - Introduction of syntax error rewriting with support for localization.
 - Addition of complete localized strings set for English and Spanish.
 - Addition of partial localized strings set for other languages.
 - Refactor of ANTLR-related code for testability and readability
 - Expansion of tests including full parse tests for new Java features (type inference, lambdas).

* Ask travis for ant upgrade prior to run.

* Ask Travis for java11 update.

* Add openjdk ppa

* Travis no confirmation on add ppa.

* Force newer ant on travis.

* Swtich ant download to www-us mirror.

* Switch ant to 1.10.7

* Start x for unit tests in travis.

* More complete start x in travis.

* Revert x in travis.

* Try x in services.
2019-10-05 23:34:38 -07:00
A Pottinger
c14695476e Moves to Java11 and OpenJDK via AdoptOpenJDK within the processing4 train.
Moves to Java11 and OpenJDK via AdoptOpenJDK within the processing4 train using a squash of sampottinger processing fork's java11 branch.

**Primary required changes:**
Some changes directly support OpenJFX / OpenJDK 11:

 - Response to image loading changes caused by [JEP 320](https://openjdk.java.net/jeps/320)
 - Use of jmodules as necessitated by [JEP 261](https://openjdk.java.net/jeps/261)
 - Reponse to largely changed file paths caused by [JEP 220](https://openjdk.java.net/jeps/220).
 - Modifications in build system related to AdoptOpenJDK and Java 11 which have a different naming structure for downloads.
 - Allowing use of non-Oracle Java within internal Processing checks.

**Secondary required changes:**
There were some secondary required changes that impacted the usability of Processing after having moved to OpenJFX / OpenJDK 11:

 - Removal of com.apple.eawt calls related to [JEP 272](http://openjdk.java.net/jeps/272)
 - Response to HiDPI support on Windows and Linux in [JEP 263](https://openjdk.java.net/jeps/263)
- Removal of `java.ext.dirs`. Would be forced by [JEP 220](http://openjdk.java.net/jeps/220).
 - Due to bugs on Windows, updated the JNA jars.
 - Changes in downloader build tasks to support AdoptOpenJDK and OpenJFX.
 - Updated org.eclipse.* / equinox jars.
 - Some optimization around size of distribution.
 - Update of AppBundler.
 - Some changes in formulation of classpath and modifications in PreprocessingService given [JEP 261](https://openjdk.java.net/jeps/261).

**Incidental changes:**
This was (ahem) a bit of a larger PR with the above modifications. So, I wanted to introduce automated tests when possible and convenient along with a few changes for platform sustainability in order to support development:

 - Addition of cross-building capability (!) made possible by AdoptOpenJDK.
 - Addition of mockito for testing.
 - Upgrade of junit.
 - Addition of ant-contrib.
 - Standardized nomenclature around JRE / JDK in `build/build.xml`
 - Deduplication of code in `jre/build.xml`.
 - Addition of JavaDoc in a few places.
 - Some refactoring of PImage / Shape to support increased testing and readability in image manipulation code.
2019-10-05 20:49:33 -07:00
Ben Fry
4ab47d28f2 attempt to use 8u212, but Oracle has broken the download 2019-04-22 20:30:32 -04:00
Ben Fry
80eac720c7 preserve file attributes so things don't appear modified; fix some indents lost in tab conversion 2019-04-21 08:12:20 -04:00
Ben Fry
7236c84a63 update to Java 8u202 2019-01-18 11:05:54 -08:00
Ben Fry
db5cff7128 update to Java 8u192 2018-10-17 07:25:31 -04:00
gohai
342f0e60c0 Update Java to 8u181 2018-07-22 09:02:11 -07:00
gohai
1f2b9a3e47 Enable exporting of Windows applications on ARM
Steps to compile ld & windres:
sudo aptitude install mingw-w64
wget https://ftp.gnu.org/gnu/binutils/binutils-2.30.tar.bz2
cd binutils-2.30
./configure --target=i686-w64-mingw32
make -j4 -l4
sudo make install
2018-06-26 19:14:24 -07:00
Ben Fry
0a31aa2b71 update to Java 8u172 2018-04-23 18:11:34 -04:00
Ben Fry
ab738bd3e9 now macOS handles .pyde as well 2018-03-26 19:02:05 -04:00
Ben Fry
8d1d718028 move to Java 8u162, additional todo updates 2018-01-17 18:33:54 -05:00
Ben Fry
6aa8c62017 move to Java 8u152 (fixes #5284, broken JRE download) 2017-10-17 23:05:31 -04:00
Ben Fry
c05b1f3912 switch to Java 8u144 2017-07-28 18:53:42 -04:00
Ben Fry
99083756a6 who who who left the taaaaabs out 2017-06-03 09:56:16 -04:00
Ben Fry
a577d152ca incorporate slight edits to Linux install scripts from the Arduino guys 2017-06-03 09:55:17 -04:00
dcuartielles
2eabb3640a modified linux part of ant to add install files 2017-06-02 19:19:37 +02:00
Ben Fry
8c90a87c82 add "ant app" version that launches w/ os launcher 2017-05-04 13:44:56 -04:00
Ben Fry
10bd76d099 working on macOS Sierra signing issues seen in #4705 2017-05-04 07:07:50 -04:00
Ben Fry
cd75021bd4 more fixes to make the hash work in the JRE builder 2017-04-22 11:46:24 -04:00
Ben Fry
0260a71f81 move to Java 8u131 and update the JRE downloader 2017-04-22 10:19:05 -04:00
gohai
625a84d590 ARM: Add arm64 support to build.xml
Currently untested.
2017-04-11 14:37:58 +02:00
Ben Fry
15f0488d1c remove old debug folder, other cleanups 2016-11-09 21:25:28 -05:00
Ben Fry
e7b4d02c6a only require reference when building dist 2016-11-07 18:13:38 -05:00
Ben Fry
27d63065cd deal with version number weirdness from Oracle 2016-10-26 14:00:52 -04:00
Ben Fry
766722dd57 todo notes and switch to 8u112 2016-10-18 22:47:47 -04:00
gohai
37992c8683 Use fonts in lib/fonts instead of the JVM location for all OS 2016-08-28 16:31:15 +02:00
gohai
0e614bdd1a Decouple Editor fonts from JVM
This makes it easier to run Processing with a custom or globally installed copy of the the VM, where before Processing wouldn't start because of missing fonts (font sadness).

This proposal would add a second copy of the fonts to the Linux tar-ball, and fall back to this one as a last resort. I have only tested registerFont() on Linux, where it seems to be working (Font in TextAreaPainter.updateAppearance does not fall back to monospaced).

On OS X this does not seem to work currently (UnsatisfiedLinkError: sun.font.FreetypeFontScaler.initIDs).
2016-08-27 15:37:24 +02:00
Ben Fry
fa77cc4553 figuring out ClassLoader issues with new ext.dirs setup 2016-08-07 19:38:58 -04:00
Ben Fry
dbdb5416af remove java.ext.dirs on startup (fixes #4608) 2016-08-06 16:49:55 -04:00
Ben Fry
022761350c update to Java 8u102 2016-07-29 10:28:27 -04:00
Ben Fry
87f4409ed6 Merge pull request #4508 from gohai/arm-updates
ARM Updates
2016-06-02 16:33:33 -04:00
Ben Fry
c1f99d399f re-introduce slash in correct location 2016-06-02 16:22:57 -04:00
gohai
94e0c09fa5 Remove superfluous slash in rsync source path in build.xml
This didn't break anything, but I noticed the extra slash while looking at this (unrelated) error message:

rsync: change_dir "/home/pi/Downloads/processing-jvm-fonts/build/linux//jdk1.8.0_77/jre" failed: No such file or directory (2)
2016-05-27 07:40:25 +02:00
gohai
629c8de141 Revert "Switch back to JRE 8u77 on ARM"
The performance regression with 8u91 and above was figured out and worked around in version 1.0.2 of the GL Video library. See: 055a90cacd
2016-05-24 16:58:59 +02:00
Ben Fry
da8b95f723 fixes for ant clean 2016-05-16 17:53:37 -04:00
George Bateman
5767b086f6 Fix most Javadoc errors, except syntax 2016-05-10 19:13:20 +01:00
gohai
c9f8078a92 Switch back to JRE 8u77 on ARM
JRE 8u91 or higher cause performance problems with the GL Video library - specifically: SimpleCapture example doesn't show a texture from USB-attached webcam on Raspberry Pi 2, and TwoVideos example doesn't play two videos smoothly.

This was tested with Processing compiled on the Pi (JDK 8u65b17), and processing-glvideo 2d6de36a33fde3573b335e9a95cc3e380466f328.
2016-05-09 15:02:26 +02:00
gohai
f75fc3762a Update to JNA 4.2.0
The name of the subfolder containing jnidispatch.dll for 64-bit Windows changed as well.
2016-05-07 13:31:27 +02:00
Ben Fry
957f744d65 update Java version, other notes from bug reports 2016-04-24 20:20:02 -04:00
Ben Fry
80fe29e4a5 Merge pull request #4387 from JakubValtar/update-jdt
Update JDT to 4.5.2
2016-04-06 21:25:42 -07:00
Jakub Valtar
15cd2fab0b Update app to Java 8 - leftovers 2016-04-04 20:51:06 +02:00
Jakub Valtar
8cae611554 Update JDT to 4.5.2 2016-04-04 20:12:38 +02:00
Ben Fry
b46ae310bc update Java build for latest release 2016-03-26 18:35:02 -04:00
kfeuz
03e7b503e0 Fixes non-arm linux deb build process 2016-02-16 23:17:51 -07:00
gohai
433b5be64d Add a symlink to processing-java to deb target
Processing-java is extremely handy, especially on Linux.
2016-02-14 12:56:59 +01:00
gohai
5ee7f7b26c ARM: Add support to deb target 2016-02-14 12:56:51 +01:00
gohai
38c58d2e8e ARM: Remove special case for 8u51 and below from build.xml 2016-02-14 11:34:03 +01:00