aboutsummaryrefslogtreecommitdiff
path: root/test cases/java
AgeCommit message (Collapse)AuthorFilesLines
2022-03-22Add ability to add resources to jarsTristan Partin5-0/+48
Previously Meson lacked the ability to add resources to jar files. Fixes #9945
2022-03-07Fix @typed_pos_args on java.generate_native_headersTristan Partin5-17/+33
2022-03-04Add modules kwarg to JNI system depTristan Partin1-1/+1
This allows someone to link against libjvm.so and libjawt.so.
2022-03-02Rename JDK system dep to JNITristan Partin10-52/+52
JNI is a more apt name because it currently only supports the JNI. I also believe that CMake uses the terminology JNI here as well. JNI is currently the only way to interact with the JVM through native code, but there is a project called "Project Panama" which aims to be another way for native code to interact with the JVM.
2022-03-01Deprecate java.generate_native_header() in favor of ↵Tristan Partin2-2/+3
java.generate_native_headers() After implementing a much more extensive Java native module than what currently exists in the tests, I found shortcomings. 1. You need to be able to pass multiple Java files. 2. Meson needs more information to better track the generated native headers. 3. Meson wasn't tracking the header files generated from inner classes. This new function should fix all the issues the old function had with room to grow should more functionality need to be added. What I implemented here in this new function is essentially what I have done in the Heterogeneous-Memory Storage Engine's Java bindings.
2021-08-22Add Java moduleTristan Partin4-25/+13
The Java module will serve as a source for easing Java development within Meson. Currently it only supports generating native header files.
2021-08-15editorconfig: add setting to trim trailing whitespaceEli Schwartz4-7/+6
and clean up all outstanding issues Skip 'test cases/common/141 special characters/meson.build' since it intentionally uses trailing newlines.
2021-04-12dependency: Add JDK system dependencyTristan Partin7-0/+105
The JDK system dependency is important for detecting JDK include paths that may be useful when developing a JNI interface.
2020-07-12Decrease version requirement to work on Xenial.Jussi Pakkanen1-2/+2
2020-03-17docs: Add Environment variables for compiler/linker selectionDylan Baker1-0/+4
We really should be documenting these in an easy to find and reference place.
2020-02-25test: merge installed_files.txt into test.jsonDaniel Mensinger2-1/+5
2020-01-29Bump Java version in test program.Jussi Pakkanen1-2/+2
2018-11-07tests/java: force latency in generation to exercise raceDylan Baker1-1/+1
Because we are racing here. In reality *all* of the java in that target may rely on the generated file, so we need to block all of them, like we would for headers in C/C++.
2018-11-02ninjabackend: add generated source files to jar compile target source listAurélien Zanelli5-0/+54
Otherwise, passing result of custom_target() to jar() target is ignored and won't be compiled resulting in build fail.
2018-07-03java: add jar linking testNiclas Moeslund Overby4-0/+26
2018-05-16tests: Remove redundant test and include_directories('.')Niclas Moeslund Overby10-39/+1
2018-05-16ninja: add build dir to javac -sourcepathRobert Bragg5-0/+52
To allow the javac -implicit:class behaviour to know where to find generated .java files then the build directory for the target is also added to the -sourcefile path.
2018-05-16ninja: avoid needing include_directory('.') with jar()Robert Bragg3-0/+36
Although only one file is passed to javac at a time, if your code has any inter-file dependencies javac still needs to know how to find other source files for its -implicit:class feature to work whereby it will automatically also compile files that the given file depends on. -implicit:class is the default, practical, behaviour of javac since otherwise it would be necessary to declare the class dependencies for parallel java builds to be feasible. Passing "include_directory: include_directory('.')" to jar() causes -souredir <path/to/top/of/java/src> to be passed to javac which then enables your source code to have inter-file class dependencies - assuming none of your source code is generated. This ensures that '.' is included by default.
2018-05-16ninja: pass separated paths to javac -sourcepathRobert Bragg3-0/+37
The -sourcepath option can't be passed multiple times to javac, since it simply overrides prior arguments. Instead -sourcepath takes a colon (or semi-colon on windows) separated list of paths.
2017-02-06Do not strip jar targets. Closes #1343.Jussi Pakkanen2-1/+4
2016-12-12Make Java compilation work with inner classes. Closes #1157.Jussi Pakkanen2-0/+20
2016-11-20Can set compiler arguments in Java.Jussi Pakkanen2-0/+16
2016-01-10Build Java projects with multiple files and other cleanups.Jussi Pakkanen6-12/+30
2014-03-11Now with working subdirs for Java.Jussi Pakkanen3-0/+13
2014-03-11Can run built jar files.Jussi Pakkanen1-1/+2
2014-03-11A few tweaks.Jussi Pakkanen1-1/+1
2014-03-10Started work on Java support because why not.Jussi Pakkanen2-0/+11