Skip to content

Commit

Permalink
Add java options to build scripts (HDFGroup#3137)
Browse files Browse the repository at this point in the history
Previously, cmakehdf5 turned on compiling of the java interface
by default due to a value set in cacheinit.cmake.

Now, consistent with how Fortran and CPP interfaces are handled,
the script overwrites this default value to disable the libraries,
fixing HDFGroup#2958.

I also implemented the --enable-java/--disable java options for
cmakehdf5, and -java for buildhdf5.

Allen said these scripts should mention that
compilers are to be specified in environment variables, but missing
compilers causes errors at the CMake level, and
CMake's error messages are already pretty informative (See the one
in HDFGroup#2958 about JAVA_COMPILER).
  • Loading branch information
mattjala authored and brtnfld committed Oct 5, 2023
1 parent e09b341 commit 898850f
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 3 deletions.
6 changes: 5 additions & 1 deletion bin/buildhdf5
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ can continue from a previous build.
Command Syntax
==============
buildhdf5 [-config] [-szlib] [-help] [-n] [-srcdir dir] [-fortran] [-cxx] [-pp] config-arguments ...
buildhdf5 [-config] [-szlib] [-help] [-n] [-srcdir dir] [-fortran] [-cxx] [-java] [-pp] config-arguments ...
-config: run configure only. [default to do build too]
-szlib: configure in the szlib option
-help: show this help page
Expand All @@ -35,6 +35,7 @@ buildhdf5 [-config] [-szlib] [-help] [-n] [-srcdir dir] [-fortran] [-cxx] [-pp]
which will be passed to configure]
-fortran: add --enable-fortran
-cxx: add --enable-cxx
-java: add --enable-java
-pp: add --enable-parallel
all other arguments are passed to configure
Expand Down Expand Up @@ -251,6 +252,9 @@ while [ $# -gt 0 ]; do
-cxx)
CONFIG_OP="$CONFIG_OP --enable-cxx"
;;
-java)
CONFIG_OP="$CONFIG_OP --enable-java"
;;
-fortran)
CONFIG_OP="$CONFIG_OP --enable-fortran"
;;
Expand Down
11 changes: 11 additions & 0 deletions bin/cmakehdf5
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ fi
cacheinit=$srcdir/config/cmake/cacheinit.cmake
build_cpp_lib=-DHDF5_BUILD_CPP_LIB:BOOL=OFF # C++ interface default off
build_fortran=-DHDF5_BUILD_FORTRAN:BOOL=OFF # Fortran interface default off
build_java=-DHDF5_BUILD_JAVA:BOOL=OFF # Java interface default off
build_hl_lib=-DHDF5_BUILD_HL_LIB:BOOL=ON # High Level interface default on
build_threadsafe=-DHDF5_ENABLE_THREADSAFE:BOOL=OFF # Threadsafe feature default off
build_testing=-DBUILD_TESTING:BOOL=ON # Build tests default on
Expand Down Expand Up @@ -82,6 +83,8 @@ Usage: $progname [<options>]
enable or disable fortran API. Default is off.
--enable-cxx | --disable-cxx:
enable or disable c++ API. Default is off.
--enable-java | --disable-java:
enable or disable Java API. Default is off.
--enable-hl | --disable-hl:
enable or disable high level API. Default is on.
--enable-threadsafe | --disable-threadsafe:
Expand Down Expand Up @@ -210,6 +213,7 @@ fi
# XXX can be:
# fortran Fortran interface
# cxx C++ interface
# java Java interface
# hl Highlevel interface
# testing Build tests
# tools Build tools
Expand All @@ -227,6 +231,12 @@ while [ $# -gt 0 ]; do
--disable-cxx)
build_cpp_lib=-DHDF5_BUILD_CPP_LIB:BOOL=OFF
;;
--enable-java)
build_java=-DHDF5_BUILD_JAVA:BOOL=ON
;;
--disable-java)
build_java=-DHDF5_BUILD_JAVA:BOOL=OFF
;;
--enable-hl)
build_hl_lib=-DHDF5_BUILD_HL_LIB:BOOL=ON
;;
Expand Down Expand Up @@ -345,6 +355,7 @@ STEP "Configure..." \
-C $cacheinit \
$build_cpp_lib \
$build_fortran \
$build_java \
$build_hl_lib \
$build_threadsafe \
$shared_lib \
Expand Down
2 changes: 1 addition & 1 deletion test/dt_arith.c
Original file line number Diff line number Diff line change
Expand Up @@ -2847,7 +2847,7 @@ test_conv_flt_1(const char *name, int run_test, hid_t src, hid_t dst)
int status; /*child exit status */

/*
* Some systems generage SIGFPE during floating point overflow and we
* Some systems generate SIGFPE during floating point overflow and we
* cannot assume that we can continue from such a signal. Therefore, we
* fork here and let the child run the test and return the number of
* failures with the exit status.
Expand Down
2 changes: 1 addition & 1 deletion test/testerror.sh.in
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

srcdir=@srcdir@

# Determine backward compatibility options eneabled
# Check if backward compatibility options are enabled
DEPRECATED_SYMBOLS="@DEPRECATED_SYMBOLS@"

CMP='cmp -s'
Expand Down

0 comments on commit 898850f

Please sign in to comment.