| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
| |
- Updated and reworded module documentation.
- Synced a bit with other similar find modules.
- Added separate examples section.
- Added `versionadded` directives for some components when they got
introduced in the module.
|
| |
|
|
|
|
|
|
|
|
| |
```
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
```
|
| |
|
|
|
|
|
| |
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`.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
* versions are sorted in correct order
* EXACT keyword is taken into account
Fixes: #23479
|
| |
|
|
| |
Issue: #19715
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
| |
Fixes: #19765
|
| | |
|
| | |
|
| |\
| |
| |
| |
| |
| |
| | |
b4e1569315 FindJava, FindJNI: fix erroneous regex, enhance registry lookup
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2042
|
| | | |
|
| |\ \
| |/
| |
| |
| |
| |
| | |
1013560a6a FindJava, FindJNI: Ensure most recent version is searched first
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !2016
|
| | | |
|
| |\ \
| |/
| |
| | |
Fix conflicts by combining the changes from both sides.
|
| | |
| |
| |
| |
| |
| |
| | |
* new version format
* new registry layout on Windows
Fixes: #17938
|
| |/
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
| |
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
|
| |\
| |
| |
| |
| |
| |
| | |
5479074b FindJava: fix hint for windows jre 1.6
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1079
|
| | |
| |
| |
| |
| | |
Fix typo in commit v3.8.0-rc1~112^2 (FindJava: add hints for jre,
2017-01-11).
|
| |/
|
|
|
| |
The original regex was expecting to match strings like "ea", but it has
been reported that other strings like "Debian" are also possible.
|
| |
|
|
|
|
|
|
| |
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.
|
| | |
|
| |
|
|
|
| |
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).
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
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.
|
| |
|
|
|
| |
The Debian package checker tool (lintian) detected several typos in
CMake.
|
| |
|
|
|
|
| |
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.
|
| | |
|
| |
|
|
|
|
| |
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.
|
| |\
| |
| |
| |
| | |
dd378258 FindJava: Do not accept OS X stub 'java' as Java
|
| | |
| |
| |
| |
| |
| |
| |
| | |
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>
|
| |/
|
|
| |
Help format the blocks better for display without a wide screen.
|
| |
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
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.
|
| | |
|
| |
|
|
|
|
|
|
| |
Run the convert-help.bash script to convert documentation:
./convert-help.bash "/path/to/CMake-build/bin"
Then remove it.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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/ \+$//'
|
| | |
|
| |
|
|
|
| |
FPHSA already prints out the version number. And this line was printed on
every subsequent CMake run.
|
| |\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | | |
|