Commit Graph

138 Commits

Author SHA1 Message Date
Larry Knox
11dfa25910
Update copyright headers (#2184)
* Updated source file copyright headers to remove "Copyright by the Board of Trustees
of the University of Illinois", which is kept in the top-level COPYING file.
2022-11-01 16:02:27 -05:00
David Young
779ab44aa0
Re-promote some GNU warnings to errors (#1508)
* Promote some GCC warnings back to errors and deal with build breakage.
I tested configuring and building with GCC 8.3.0 with

`.../configure --prefix=$HOME/wrk/install/manydsets --enable-build-mode=production --enable-symbols=-gdwarf-4 --enable-warnings-as-errors --enable-java --enable-hl --enable-fortran --enable-cxx --enable-mirror-vfd --enable-ros3-vfd --enable-direct-vfd`

and with the same options but `--enable-build-mode=debug`.

* Promote -Wrestrict to -Werror=restrict to help catch overlapping
arguments to strcpy, memcpy, et cetera, at compile time.

* NFCI: sort lines.

* Committing clang-format changes

* NFCI: remove whitespace at EOL.

* Re-use temporary variable `shared`.

* Remove merge oopsie.

* Mention that no op codes are understood per review comment.

* Change this back to the develop branch's way, since this change isn't
integral to the PR.

* Committing clang-format changes

* NFCI: reduce differences with `develop` branch in the hope that that
also kicks off CI.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2022-05-06 16:26:48 -07:00
Scot Breitenfeld
f859cb732b
Fixed Spelling Errors (#1166)
* fixed missed closing of a dataset

* fixed missed closing of a dataset

* fixed typo in error return

* Committing clang-format changes

* minor edits

* code format

* Committing clang-format changes

* code format

* minor edit

* switched from using MPI_count, to actual bytes written for H5FD_mpio_debug rw debugging

* Committing clang-format changes

* changed size_i in printf to reflect the I/O.

* Committing clang-format changes

* Fixed seg fault with xlf on BE with -qintsize=8

* fixed error function string

* spelling corrections via codespell, added new spell check github actions

* Committing clang-format changes

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* misc

* Committing clang-format changes

* misc

* misc

* misc

* misc

* misc

* misc

* Committing clang-format changes

* misc

* work around for https://github.com/codespell-project/codespell/issues/2137

* misc

* added missing file

* misc

* misc.

* misc

* switch to using Codespell with GitHub Actions

* misc.

* misc.

* fixed more sp errors

* Fix new typos found by codespell.

* fixed proceed with precede

* fixed variable in fortran test

* fixed minnum

* updated spelling list

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Larry Knox <lrknox@hdfgroup.org>
2021-12-07 08:27:29 -06:00
David Young
174f4275ba
To reduce maintenance effort, delete the noerror- variants of the compiler flags files (#1033)
* Avoid maintenance headaches: delete the `noerror-` variants of the
compiler flags files, since they essentially duplicate the `error-`
files modulo the replacement of `-Werror=` with `-W` and any changes in
comments.  (I verified the duplication with a script.)

For autoconf, reinstate the use of the `demote_errors` shell function to
derive the `noerror-` content from the `error-` content.  `demote_errors`
replaces `-Werror=` with `-W` when `WARNINGS_AS_ERRORS` is `no`.

Slightly reorder `configure.ac` so that the setting of
`WARNINGS_AS_ERRORS` takes effect before the `error-` files are sourced.

* Take a stab at updating the CMake files to match the changes I made to
the autoconf files to remove `noerror-` files.  I'm not much of a CMake
user so these changes are quite rough.

Looks like the duplication can be reduced with the introduction of a new
macro.

* Delete `noerror-` files from the MANIFEST.

* Reduce duplication in the CMake files: perform the
HDF5_ENABLE_WARNINGS_AS_ERRORS test once in the ADD_H5_FLAGS macro.

* Add a release note.
2021-10-06 16:24:22 -05:00
Allen Byrne
5173cce0a9
Organize and align compiler flags (#741)
* OESS-98 convert plugin option to FetchContent, add tests

* Fixes for pkcfg files because of plugin option

* OESS-98 fix tools test for plugins

* Keep doxygen comments under 100 chars long - format hint

* Whitespace

* HDFFV-11144 - Reclassify CMake messages

* HDFFV-11099/11100 added help text

* Reworked switch statement to compare string instead

* Fix typo

* Update CDash mode

* Correct name of threadsafe

* Correct option name

* Undo accidental commit

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

* # WARNING: head commit changed in the meantime

HDFFV-11229 Fix long double usage in tools and java

Changed h5dump and h5ls to just print 128-bit for long double type.
Added test and file for dataset and attributes with all three float
types.

* Committing clang-format changes

* HDFFV-11229 Add release note

* HDFFV-11229 windows testfile needed

* fix typo

* Remove non supported message text

* HDFFV-11229 - change ldouble test to check both native and general

* HDFFV-11229 add second file compare

* HDFFV-11229 fix reference file

* HDFFV-11229 autotools check two refs

* HDFFV-11229 revert back to removal of NATIVE_LDOUBLE in tools output

* Committing clang-format changes

* Update release note

* Update attribute type of ref file

* Change source of ninja for macs

* try port instead of brew

* Recommended is to use brew.

* Undo non long double changes

* remove unneeded file

* Fix perl and doxygen CMake code

* Add "option" command for clang options

* Rework CMake add_custom to use the BYPRODUCTS argument

* Add stamp files to BYPRODUCTS

* Only one copy of file exists

* Fix custom cmmand depends targets

* Fix fortran custom command DEPENDS

* Add LD_LIBRARY_PATH to tests

* Add custom target for DEPENDS

* Add h5detect conditionaly to generated target DEPENDS

* Correct DEPENDS targets

* Parallel builds need the mpi compiler for pkgconfig scripts.

* install only if MPI build

* Fortran target depends

* Remove incorrect source attribute

* doxygen adjustments

* doxygen build updates

* Correct version

* Correct function version - function has been merged to 1.12

* Correct version string for map functions

* Cleanup warnings for tools debug builds

* TRILAB-227 - fix indexing for h5diff selections

* Correct location of pos to index function call

* TRILAB-227 Enable test

* Quote subset args

* Use MATCHES because of AppleClang

* if blocks needed for build modes

* Update list of DT platforms

* VS2019 correctly displays float values

* revert VS2019 change

* Issue #669 remove version from pkgcfg filename

* remove version from h5cc script

* Java reference functions updated

enabled fortran in cmake gcc action yaml file
java reference test changed to correctly test refs
jni reference functions that create ids changed to use jni id logging

* Correct BYPRODUCTS argument

* Correct more genereated files BYPRODUCTS

* BYPRODUCTS must have unique locations

* Fix typo

* Fix fortran configure checks

* Rework H5_PAC_C_MAX_REAL_PRECISION setting logic

* Add note about fortran configure change

* Adds a quick for for some egregious chunk_info badness (#722)

* Fixes issue with ccmake that prevents building Fortran (#723)

ccmake runs iteratively, and the check_fortran_source_runs
macros were clobbering a single output file that did not
get updated on further configure iterations

* Fix conflicts with merge

* Move MAX_PRECISION back to HDF5UseFortran.cmake

* Use STREQUAL to test macro argument

* Move C language test to ConfigureChecks from HDF5UseFortran

* MAX_PRECISION defines must be defined

* Organize flags and align autotools and cmake

* Fix comment in no-error-general warnings files.

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
2021-06-10 22:51:15 -05:00
Larry Knox
2ea165efd0
Update license url part2 (#333)
* Modify temporary rpath for testing in java example scripts.

* Update URL in source file Copyright headers for web copy of COPYING
    file - files not in src or test.
2021-02-17 08:52:36 -06:00
Allen Byrne
bccf5b5c08
Add option to control gcc 10 warnings diagnostics (#321)
* OESS-98 convert plugin option to FetchContent, add tests

* Fixes for pkcfg files because of plugin option

* OESS-98 fix tools test for plugins

* Keep doxygen comments under 100 chars long - format hint

* Whitespace

* HDFFV-11144 - Reclassify CMake messages

* HDFFV-11099/11100 added help text

* Reworked switch statement to compare string instead

* Fix typo

* Update CDash mode

* Correct name of threadsafe

* Correct option name

* Undo accidental commit

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics
2021-02-08 17:23:09 -06:00
Quincey Koziol
71440cef1c
Add compiler flags for GCC 10, along with updating warnhist script to accommodate them. (#217) 2020-12-21 12:57:18 -06:00
Allen Byrne
0b54c556a0
Add else choice to error flags option (#128) 2020-11-25 11:50:21 -06:00
Dana Robinson
ffcb354237
Minor/solaris gcc fix (#126)
* Adds gnu99 as the standard when building with gcc on Solaris

* Adds a note to RELEASE.txt and improves comments

For Solaris + gcc fix (HDFFV-11191)
2020-11-25 09:26:35 -06:00
Larry Knox
fcd87d2569 Revise gnu-*flags and cmake/HDF*CompilerFlags.cmake files to add warning
flags for GCC compilers version 4.8 and above.
Removed files from gnu-warnings that only apply to versions < 4.8.
Consolidated warnings from versions < 4.8 that apply to versions >= 4.8
into the 4.8 warnings files.
2020-05-18 14:28:51 -05:00
Allen Byrne
ae9dc2d5f9 Restrict errors to gcc 4.8 and above. 2020-04-24 16:25:51 -05:00
Allen Byrne
f9a3ae5081 TRILAB-244 separate CXX warnings and errors from C 2020-04-23 14:32:29 -05:00
Larry Knox
5c87b06d9d Don't add general warnings flags for unsupported old versions of gcc and
g++ (older than gcc/g++ 4.2).
Correct gnu-cxxflags to determine warnings flags to be added based on
C++ compiler version instead of C compiler version.
2020-04-20 16:03:08 -05:00
Larry Knox
fffe3b8dbd Update all load_gcc_arguments to load_gnu_arguments.
Fixes TRILAB-212.
2020-04-08 21:31:29 -05:00
Allen Byrne
57f5d00a43 TRILAB-192 add c++ and fortran warnings build systems one file 2020-04-05 10:50:08 -05:00
David Young
e916acd018 Merge pull request #2402 in HDFFV/hdf5 from ~DYOUNG/werror:break-out-warnings to develop
* commit '2f09d8f3c8a4a44932c1b8ffb0f6ea2219059a5c':
  Move the GNU warnings configuration under config/gnu-warnings/ and trim the filename prefixes.  Update config/gnu-flags to suit.
  By default, demote warnings promoted to errors back to warnings.
  Incorporate the H5_ECFLAGS into the library CFLAGS.  Now a bunch of errors will occur.  Next commit will demote the warnings promoted to errors back to warnings again.
  Break out warnings into more files that autoconf and CMake can share.  This change temporarily disables the warnings that were promoted to errors, but I will add those warnings back as warnings, not errors, in the next commit.
2020-03-23 11:55:07 -05:00
David Young
2f09d8f3c8 Move the GNU warnings configuration under config/gnu-warnings/ and trim
the filename prefixes.  Update config/gnu-flags to suit.

I also made changes to config/cmake/HDFCompilerFlags.cmake, but I'm not
sure they're correct.
2020-03-18 21:12:53 -05:00
Larry Knox
811988f82c Modfy expression to match mpicc build with Intel as intel compiler, not
gcc.
2020-02-27 17:06:41 -06:00
David Young
0f32728f72 By default, demote warnings promoted to errors back to warnings. 2020-02-25 12:02:07 -06:00
David Young
d8e5995f6d Break out warnings into more files that autoconf and CMake can share. This
change temporarily disables the warnings that were promoted to errors, but I
will add those warnings back as warnings, not errors, in the next commit.
2020-02-25 11:38:15 -06:00
Allen Byrne
5b92b4d362 Merging in latest from upstream (HDFFV/hdf5:refs/heads/develop)
* commit '590aaff33046df99a4d88ba59e4b461e060b36e4':
  Optimized the floating point comparisons a little bit.
  Fix for failing h5diff tests involving floating-point compares.
  Removed H5_DEC_ENUM
  Revert "Revert "Moved -Wunsuffixed-float-constants to the developer warnings.""
  Revert "Moved -Wunsuffixed-float-constants to the developer warnings."
  Moved -Wunsuffixed-float-constants to the developer warnings.
  Fixed a bug in testpar/t_cache.c concerning checking expected vs. actual cache entry reads and writes.
2020-01-24 09:57:39 -06:00
Dana Robinson
492d186a5c Revert "Revert "Moved -Wunsuffixed-float-constants to the developer warnings.""
This reverts commit 6486e06545.
2020-01-23 14:40:47 -08:00
Allen Byrne
cf84882b3c Create common build system files for warnings 2020-01-17 13:14:06 -06:00
Dana Robinson
4fd5a3e00b Changed -Wformat-truncation's level from 2 to 1. 2020-01-01 10:12:52 -08:00
Dana Robinson
1ad02a4459 Yanked -Wc++-compat from the flags used to build the C library in both
the Autotools and CMake.
2019-12-04 00:49:52 -08:00
David Young
0108072f7a Revert "Make a squash commit of 'Quiet some warnings by adjusting warnings level and fixing some code.' (commit 5c911d8baf)" 2019-11-27 11:26:02 -06:00
David Young
6d5ec83fc3 Always warn on maybe-uninitialized. -Wincompatible-pointer-types was not
available until GCC 5, so enable it only if that's the GCC version we're using.
2019-11-22 14:34:42 -06:00
David Young
fa1dfbbd8d Only promote maybe-uninitialized warnings to errors on GCC 8. Even on
GCC 8, there may be false positives at low optimization levels?  I need
to check.
2019-11-22 14:23:07 -06:00
David Young
dde718ad51 Only use -Werror=cast-function-type with GCC 8 and later. 2019-11-22 13:49:59 -06:00
David Young
edb6f34440 Put all of the -W options back into the order I found them in so that it's
easier to compare old and new config/gnu-flags.
2019-11-22 13:41:45 -06:00
David Young
29561bac95 Promote decleration-after-statement warnings to errors. 2019-11-13 14:39:12 -06:00
David Young
560db03d66 Make errors of some more warnings. Move disabled warnings to
DEVELOPER_WARNING_CFLAGS.  Put just one warning option on a line, and
sort some of the options.
2019-11-13 13:33:46 -06:00
David Young
34eff2aae5 Change some GCC warnings to errors. Fix code to quiet some warnings. 2019-11-05 12:14:26 -06:00
Dana Robinson
438935557e Fixed a couple of typos. 2019-07-31 22:16:50 -05:00
Dana Robinson
d7144b2fa4 Restored warnings for older gcc so jam can continue to creak along. 2019-07-16 03:49:50 -05:00
Dana Robinson
d5031a5519 Removed support for gcc 4.3 and earlier. 2019-07-14 10:46:03 -07:00
Dana Robinson
3fa1cc4700 Fix errant quotes 2019-07-10 13:40:09 -07:00
Dana Robinson
40b63bffb7 * Fixed a bug in the gcc warning parsing
* Changed version parsing from == gcc 4.x to < to handle ancient
compilers.
2019-07-10 13:05:50 -07:00
Dana Robinson
924d4c01a8 Reworked the config/gnu-flags file to be more organized and robust. 2019-07-10 10:49:55 -07:00
Dana Robinson
52f0622bfe Converted duplicated flags code to a set of if statements. 2019-07-10 09:09:59 -07:00
Quincey Koziol
7509c2c4fc Added GCC9 flags to CMake build 2019-07-02 23:49:35 -05:00
Quincey Koziol
3b594992d6 Add support for GCC9, update warnhist script, and clean up warnings. 2019-07-02 23:43:45 -05:00
Quincey Koziol
6ced6457c3 Move the -Wformat-nonliteral warning to the developer flags. Fix bugs
I introduced in the last commit.
2019-06-28 19:26:47 -05:00
Quincey Koziol
d5130bb573 Updated configure & CMake compiler flags for GCC 8.x, along with corresponding
changes to warnhist script (and some extra improvements for condensing C++
and Java warnings), and fixed a bunch of warnings.
2019-06-28 09:10:43 -05:00
Quincey Koziol
4e3a0c505c Move -Wnormalized down into GCC 6.x flags 2019-06-22 11:41:33 -05:00
Quincey Koziol
1ccbdfee58 Add support for GCC 7.x warnings, update warnhist script to account for them,
clean up warnings.
2019-06-21 10:05:34 -05:00
Allen Byrne
87e491da88 HDFFV-10776 missing compiler flags 2019-04-30 16:42:08 -05:00
Larry Knox
ab31eafa2e Correct typo in comment in config/gnu-flags. 2018-07-24 15:21:55 -05:00
Larry Knox
892252106a Apply Cygwin pathches from Marco Atzeri.
Commit Joe Lee's typo corrections for src/H5MF.c.
2018-07-18 17:01:53 -05:00