summaryrefslogtreecommitdiffstats
path: root/Modules/FindJava.cmake
Commit message (Collapse)AuthorAgeFilesLines
* LICENSE: Replace references to Copyright.txt with LICENSE.rstKitware Robot2025-03-031-1/+1
| | | | | | | | | | ``` git grep -lz 'Copyright.txt or https://cmake.org/licensing ' | while IFS= read -r -d $'\0' f ; do sed -i '/Copyright.txt or https:\/\/cmake.org\/licensing / { s/Copyright.txt/LICENSE.rst/ }' "$f" ; done ```
* Modules/Find*: Include FindPackageHandleStandardArgs normallyBrad King2025-01-301-1/+1
| | | | | | | Since commit d74210a8bd (CMP0017: Remove support for OLD behavior, 2024-11-17) we can rely on CMP0017's NEW behavior unconditionally. Calling `include(FindPackageHandleStandardArgs)` in a builtin module will always get the builtin `FindPackageHandleStandardArgs`.
* Help: More syntax highlighting for literal blocksNikita Nemkin2025-01-291-1/+1
| | | | | | | | | | | | | | | Covers almost all blocks containing actual code, except: * Parsed-literal blocks can't be highlighted, including many command summaries and substitution-heavy docs like find_... commands. This is a Sphinx limitation. * Code with errors, like CMP0049, DEPLOYMENT_ADDITIONAL_FILES, DEPLOYMENT_REMOTE_DIRECTORY, @PACKAGE_INIT@ substitution in the tutorial, bracket arguments/comments in cmake-language.7 and cmake-developer.7. * FindQt4 module, which needs reformatting.
* FindJava: use cmake_host_system_info to query registryscivision2023-09-201-7/+6
|
* FindJava: use modern foreach() syntaxscivision2023-09-201-3/+3
|
* FindJava: improve failure/verbosity when 'java -version' failsSeth R Johnson2022-05-311-20/+26
| | | | | | | | | | | | | | | On macOS monterey, `java -version` returns ``` The operation couldn’t be completed. Unable to locate a Java Runtime. Please visit http://www.java.com for information on installing Java. ``` which does not match the existing regex. Instead of hitting a fatal error if required, reset the variable and let FindPackage handle the result. If `QUIET` is requested, don't print anything if the version query fails. Otherwise, print the message. Additionally, clean up temporary variables set by the execute_process commands.
* FindJava, FindJNI: ensure correct handling of versions on WindowsMarc Chevrier2022-05-051-32/+17
| | | | | | | * versions are sorted in correct order * EXACT keyword is taken into account Fixes: #23479
* Help: Add `.. versionadded` directives to module docsNikita Nemkin2020-12-021-1/+6
| | | | Issue: #19715
* FindJava: Update check to avoid accepting macOS stub 'java' as JavaBrad King2020-07-081-3/+2
| | | | | | | | | | | | | | | | | Since commit dd378258f1 (FindJava: Do not accept OS X stub 'java' as Java, 2014-10-24, v3.1.0-rc3~29^2) we try to avoid using the macOS `/usr/bin/java` stub if no underlying implementation of Java is actually installed. However, the message that `/usr/bin/java` prints when there is no Java available has changed since then. Update our check to also look for the new message. While at it, revise the way we suppress `Java_JAVA_EXECUTABLE`. Previously we set its cache entry to `Java_JAVA_EXECUTABLE-NOTFOUND`, but that would cause the same find-and-reject sequence to be followed every time CMake runs in a build tree. Instead, use the approach from commit 2c0db404d1 (FindSubversion: Do not accept macOS stub without Xcode implementation, 2020-05-28, v3.18.0-rc1~67^2). Leave the cache entry alone and just set a normal variable of the same name to hide it.
* FindJava: ensure all versions can be foundMarc Chevrier2019-10-021-2/+2
| | | | Fixes: #19765
* Help: Convert remaining modules to block-style commentsKitware Robot2018-10-221-73/+74
|
* FindJava: Update module documentationBartosz Kosiorek2018-10-031-10/+15
|
* Merge topic 'java-new-packaging-fixes'Brad King2018-05-081-1/+1
|\ | | | | | | | | | | | | b4e1569315 FindJava, FindJNI: fix erroneous regex, enhance registry lookup Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2042
| * FindJava, FindJNI: fix erroneous regex, enhance registry lookupMarc Chevrier2018-05-071-1/+1
| |
* | Merge topic 'java-new-packaging-version-sort'Brad King2018-04-301-4/+16
|\ \ | |/ | | | | | | | | | | 1013560a6a FindJava, FindJNI: Ensure most recent version is searched first Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !2016
| * FindJava, FindJNI: Ensure most recent version is searched firstMarc Chevrier2018-04-271-4/+16
| |
* | Merge branch 'backport-java-new-packaging' into java-new-packagingBrad King2018-04-251-5/+39
|\ \ | |/ | | | | Fix conflicts by combining the changes from both sides.
| * FindJava, FindJNI, UseJava: update for version 10 supportMarc Chevrier2018-04-251-5/+39
| | | | | | | | | | | | | | * new version format * new registry layout on Windows Fixes: #17938
* | FindJava: Add Java_JAR_EXECUTABLE to a component: DevelopmentGiel van Schijndel2018-02-271-4/+4
|/ | | | | | | All discovered executables were placed in a component, except for 'jar'. This forced the use of find_package(Java) without any component specification. This commit adds 'jar' to the 'Development' component, because that's what it's used for.
* FindJava: ignore javah for JDK 10, it has been removedStefan Brüns2018-01-191-9/+25
| | | | | | | | | The standalone javah tool has been removed, header generation happens during execution of javac. `javac -h` allows generation of headers only. See http://openjdk.java.net/projects/jdk/10/ and http://openjdk.java.net/jeps/313 for details. Fixes: #17613
* FindJava: Revise version parsing to support Java 9Brad King2017-10-061-25/+42
| | | | | | | | Java 9 has only one component. Revise the logic to tolerate any number of version components 1 through 4. Fix the parsing of individual components. Fixes: #17325
* Merge topic 'FindJava-fix-1.6-registry'Brad King2017-08-021-1/+1
|\ | | | | | | | | | | | | 5479074b FindJava: fix hint for windows jre 1.6 Acked-by: Kitware Robot <kwrobot@kitware.com> Merge-request: !1079
| * FindJava: fix hint for windows jre 1.6Rechi Rechi2017-08-021-1/+1
| | | | | | | | | | Fix typo in commit v3.8.0-rc1~112^2 (FindJava: add hints for jre, 2017-01-11).
* | Allow early access version trailing string to be mixed caseCraig Scott2017-07-251-1/+1
|/ | | | | The original regex was expecting to match strings like "ea", but it has been reported that other strings like "Debian" are also possible.
* FindJava: Add support for OpenJDK early access buildsBryan Donlan2017-05-041-0/+3
| | | | | | | | OpenJDK 9 early access builds use a version string of "9-ea", and locally built installations use "9-internal", neither of which is currently accepted by the FindJava macro. Map those versions to "1.9". If the final released version is "9.0" the version interpretation could be changed to match at that time.
* FindJava: add hints for jreRechi Rechi2017-01-111-0/+8
|
* Find*.cmake: drop the comments before including FPHSARolf Eike Beer2016-11-281-1/+0
| | | | | No need to explain this over and over again. While at it, do some other minor cleanups to whitespace and comments (i.e. delete them).
* Simplify CMake per-source license noticesBrad King2016-09-271-14/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | Per-source copyright/license notice headers that spell out copyright holder names and years are hard to maintain and often out-of-date or plain wrong. Precise contributor information is already maintained automatically by the version control tool. Ultimately it is the receiver of a file who is responsible for determining its licensing status, and per-source notices are merely a convenience. Therefore it is simpler and more accurate for each source to have a generic notice of the license name and references to more detailed information on copyright holders and full license terms. Our `Copyright.txt` file now contains a list of Contributors whose names appeared source-level copyright notices. It also references version control history for more precise information. Therefore we no longer need to spell out the list of Contributors in each source file notice. Replace CMake per-source copyright/license notice headers with a short description of the license and links to `Copyright.txt` and online information available from "https://cmake.org/licensing". The online URL also handles cases of modules being copied out of our source into other projects, so we can drop our notices about replacing links with full license text. Run the `Utilities/Scripts/filter-notices.bash` script to perform the majority of the replacements mechanically. Manually fix up shebang lines and trailing newlines in a few files. Manually update the notices in a few files that the script does not handle.
* FindJava: Do not document variables we do not provideBrad King2016-07-051-2/+1
| | | | | | Drop Java_INCLUDE_DIRS and Java_LIBRARIES from the documentation since we do not provide them. Also add a link to FindJNI to help users find it. Fixes #16180.
* Fix spelling typos in comments and documentation (#16037)Felix Geyer2016-03-291-1/+1
| | | | | The Debian package checker tool (lintian) detected several typos in CMake.
* FindJava: Fix typos in IdlJ and JarSigner component implementationMarc Chevrier2015-12-031-3/+3
| | | | | | Fix typos introduced by commit v3.4.0-rc1~257^2~2 (FindJava: Add support for idlj and jarsigner tools, 2015-07-31) to correctly report when these components are found.
* FindJava: Add support for idlj and jarsigner toolsMarc Chevrier2015-08-041-23/+71
|
* FindJava: Fix OpenJDK 8 version detection (#15565)Felix Geyer2015-05-121-1/+1
| | | | | | The openjdk-8 (8u45-b14-2) package on Debian unstable has extra text after the version number components. Match this and add it to the reported version string.
* Merge topic 'FindJava-no-osx-stub'Brad King2014-11-201-1/+4
|\ | | | | | | | | dd378258 FindJava: Do not accept OS X stub 'java' as Java
| * FindJava: Do not accept OS X stub 'java' as JavaBrad King2014-11-191-1/+4
| | | | | | | | | | | | | | | | OS X provides a stub 'java' to inform callers that Java is not present. When checking the 'java -version' output, look for such a message and if found pretend 'java' was not found. Suggested-by: Sean McBride <sean@rogue-research.com>
* | Modules: Wrap long lines in pre-formatted documentation blocksBrad King2014-11-061-1/+1
|/ | | | Help format the blocks better for display without a wide screen.
* Clean up usage of if(... MATCHES regex) followed string(REGEX REPLACE regex)Rolf Eike Beer2014-04-141-9/+6
| | | | | | The matches have already been calculated and can simply be taken from CMAKE_MATCH_n variables. This avoids multiple compilations of the same or very similar regular expressions.
* Find{Java,JNI}: Consider JAVA_HOME before ENV{JAVA_HOME}Brad King2014-01-291-3/+5
| | | | | | Add a helper module CMakeFindJavaCommon shared between FindJava and FindJNI to select a JAVA_HOME value. Prefer a CMake variable or cache entry first, then an environment variable.
* Find{Java,JNI}: Use ENV{JAVA_HOME} first when setBrad King2014-01-291-2/+7
| | | | | | Use list(APPEND) instead of set() to append to lists. When ENV{JAVA_HOME} is set explicitly place values based on it at the front their lists.
* FindJava: fix message output (#14502)Rolf Eike Beer2013-10-221-1/+1
|
* Convert builtin help to reStructuredText source filesKitware Robot2013-10-151-30/+41
| | | | | | | | Run the convert-help.bash script to convert documentation: ./convert-help.bash "/path/to/CMake-build/bin" Then remove it.
* OpenBSD: Add paths for Java 1.6.0/1.7.0 JRE/JDKAmit Kulkarni2012-12-041-0/+7
|
* Remove CMake-language block-end command argumentsKitware Robot2012-08-131-5/+5
| | | | | | | | | | | | | | | | | Ancient versions of CMake required else(), endif(), and similar block termination commands to have arguments matching the command starting the block. This is no longer the preferred style. Run the following shell code: for c in else endif endforeach endfunction endmacro endwhile; do echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | egrep -z -v 'Tests/CMakeTests/While-Endwhile-' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Convert CMake-language commands to lower caseKitware Robot2012-08-131-38/+38
| | | | | | | | | | | | | | | | | Ancient CMake versions required upper-case commands. Later command names became case-insensitive. Now the preferred style is lower-case. Run the following shell code: cmake --help-command-list | grep -v "cmake version" | while read c; do echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g' done >convert.sed && git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' | egrep -z -v '^(Utilities/cm|Source/kwsys/)' | xargs -0 sed -i -f convert.sed && rm convert.sed
* Remove trailing whitespace from most CMake and C/C++ codeKitware Robot2012-08-131-2/+2
| | | | | | | | | | | | | | | | | Our Git commit hooks disallow modification or addition of lines with trailing whitespace. Wipe out all remnants of trailing whitespace everywhere except third-party code. Run the following shell code: git ls-files -z -- \ bootstrap doxygen.config '*.readme' \ '*.c' '*.cmake' '*.cpp' '*.cxx' \ '*.el' '*.f' '*.f90' '*.h' '*.in' '*.in.l' '*.java' \ '*.mm' '*.pike' '*.py' '*.txt' '*.vim' | egrep -z -v '^(Utilities/cm|Source/(kwsys|CursesDialog/form)/)' | egrep -z -v '^(Modules/CPack\..*\.in)' | xargs -0 sed -i 's/ \+$//'
* FindJava: improve version matching (#12878)Rolf Eike Beer2012-06-251-3/+3
|
* remove extra output message from FindJava.cmakeRolf Eike Beer2011-08-031-5/+0
| | | | | FPHSA already prints out the version number. And this line was printed on every subsequent CMake run.
* Merge topic 'asn_java_support'Brad King2011-07-261-0/+18
|\ | | | | | | | | | | | | | | | | | | | | | | | | 1417a55 Java: Fix documentation format and indentation 0b7627d Java: Use set_property/get_property for target variables. b01a505 Java: Create correct jar archive dependencies. f99c312 Java: Added some dependency magic to avoid recompilations. f3233ba Java: Create java_class_filelist only if it does't exist. a22ed3d Tests: Check for the new Java exeutable variables. c177c8e Tests: Java tests should test UseJava.cmake 5c2106c Modules: Added CMake Java support. a4b6275 FindJava: Find missing java development executables.
| * FindJava: Find missing java development executables.Andreas Schneider2011-03-291-0/+18
| |
* | Add support for Java on HPMathieu Malaterre2011-04-081-4/+4
|/ | | | | This commit fixes Bug: 0011676 by adding support for version numbering of JRE used on HP: 1.6.0.06-jinteg_20_jan_2010_05_50-b00