Skip to content

Commit 84d6f4f

Browse files
jlconlinpartofthething
andauthoredDec 14, 2020
Bugfix release v1.2.1 (#126)
* Create ContinuousIntegration.yml (#124) * Adding GCC pragma back in to make GCC compile in release mode. * Fixes to issues #106 and #116. * ContinuousIntegration make is now verbose (sorry). * Fixing up some command-line flags. * Removing signature command-line option. This addresses issue #125. * Put command line option in wrong place. * Adding catch-adapter to target_link_libraries of select tests. * Adding catch-adapter to njoy21 library * Changing to g++-8 (#135) * Update installation hyperlink in readme (#134) * Updating ReleaseNotes. Co-authored-by: Nick Touran <contact@partofthething.com>
1 parent d40447f commit 84d6f4f

16 files changed

+66
-29
lines changed
 
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# GitHub workflow to enable continuous integration
2+
name: Continuous Integration
3+
4+
# This workflow is triggered on pushes and pull requests to the repository.
5+
on:
6+
push:
7+
branches: '**'
8+
pull_request:
9+
branches: 'master'
10+
11+
jobs:
12+
build:
13+
runs-on: ${{matrix.os}}
14+
strategy:
15+
matrix:
16+
os: [ ubuntu-18.04, macos-10.15 ]
17+
cxx: [ g++-8, clang++ ]
18+
vFortran: [ gfortran-8 ]
19+
build_type: [ Debug, Release ]
20+
21+
steps:
22+
- name: which CXX
23+
run: |
24+
which ${{matrix.cxx}}
25+
${{matrix.cxx}} --version
26+
- name: which gfortran
27+
run: |
28+
which ${{matrix.vFortran}}
29+
${{matrix.vFortran}} --version
30+
- uses: actions/checkout@v2
31+
- name: mkdir bin
32+
run: mkdir bin
33+
- name: cmake
34+
run: cmake -D CMAKE_Fortran_COMPILER=`which ${{matrix.vFortran}}` -D CMAKE_CXX_COMPILER=`which ${{matrix.cxx}}` -D CMAKE_BUILD_TYPE=${{matrix.build_type}} ..
35+
working-directory: ./bin
36+
- name: make
37+
run: make -j2 VERBOSE=1
38+
working-directory: ./bin
39+
- name: ctest
40+
run: ctest -j2 -R njoy21*
41+
working-directory: ./bin
42+

‎.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
subprojects
2-
bin
2+
bin*
33
build
44
__pycache__
55
*.pyc

‎CMakeLists.txt

+2-4
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ option( strict_compile
2222

2323
# Compile flags
2424
set( common_flags "-Wall" "-Wextra" "-Wpedantic" )
25-
set( strict_flags "-Werror" )
25+
set( strict_flags "-Werror" "-Wno-unknown-warning-option" )
2626
set( release_flags "-O3" )
2727
set( debug_flags "-O0" "-g" )
2828

@@ -52,9 +52,6 @@ endif()
5252
# Project targets
5353
########################################################################
5454

55-
configure_file( "${CMAKE_CURRENT_SOURCE_DIR}/src/njoy21/Signature.hpp.in"
56-
"${CMAKE_CURRENT_BINARY_DIR}/src/njoy21/Signature.hpp" @ONLY )
57-
5855
add_library( njoy21_library INTERFACE
5956
)
6057
target_include_directories( njoy21_library
@@ -68,6 +65,7 @@ target_link_libraries( njoy21_library
6865
INTERFACE njoy_c_bindings
6966
INTERFACE tclap-adapter
7067
INTERFACE utility
68+
INTERFACE catch-adapter
7169
)
7270

7371
#######################################################################

‎README.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ NJOY21 is primarily written in modern C++. It consists of many subprojects that
2222
Please refer to the [Release Notes](ReleaseNotes.md) to see what has changed from one version to the next.
2323
2424
## Installation
25-
Instructions for building and installing NJOY21---as well as any of the subprojects---are found on our [website](https://docs.github.io/install.html).
25+
Instructions for building and installing NJOY21---as well as any of the subprojects---are
26+
found on our [website](https://docs.njoy21.io/install.html).
2627
2728
## Version
2829
To see the version number for NJOY21, simply execute (after building):

‎ReleaseNotes.md

+3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
# Release Notes&mdash;NJOY21
22
Given here are some release notes for NJOY21. Each release is made through a formal [Pull Request](https://github.com/njoy/NJOY21/pulls) made on GitHub. There are links in this document that point to each of those Pull Requests, where you can see in great details the changes that were made. Often the Pull Requests are made in response to an [issue](https://github.com/njoy/NJOY21/issues). In such cases, links to those issues are also given.
33

4+
## [NJOY21 1.2.1](https://github.com/njoy/NJOY21/pull/126)
5+
This update removes the `--signature` command-line option as that was a feature of the previous build system. This also updates the GitHub Actions such that they now test all of the NJOY21 stuff, but not the integration tests.
6+
47
## [NJOY21 1.2.0](https://github.com/njoy/NJOY21/pull/122)
58
This update makes significant changes to the build system. Instead of using a [homegrown](https://github.com/njoy/metaconfigure) method for handling dependencies, we now use the [`FetchContent`](https://cmake.org/cmake/help/v3.16/module/FetchContent.html) capabilities in CMake. We now require CMake 3.16 to configure and build NJOY21.
69

‎cmake/develop_dependencies.cmake

+6
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,12 @@ FetchContent_Declare( tclap-adapter
3535
GIT_SHALLOW TRUE
3636
)
3737

38+
FetchContent_Declare( catch-adapter
39+
GIT_REPOSITORY https://github.com/njoy/catch-adapter
40+
GIT_TAG origin/master
41+
GIT_SHALLOW TRUE
42+
)
43+
3844
FetchContent_Declare( utility
3945
GIT_REPOSITORY https://github.com/njoy/utility
4046
GIT_TAG origin/master

‎src/njoy21.hpp

+4-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,11 @@
1818
#include "Log.hpp"
1919
#include "utility.hpp"
2020

21+
22+
#pragma GCC diagnostic push
23+
#pragma GCC diagnostic ignored "-Wmaybe-uninitialized"
2124
#include "lipservice.hpp"
25+
#pragma GCC diagnostic pop
2226

2327
#include "njoy_c.h"
2428

@@ -37,7 +41,6 @@ struct CommandLine;
3741
#include "njoy21/interface.hpp"
3842
#include "njoy21/legacy.hpp"
3943
#include "njoy21/Version.hpp"
40-
#include "njoy21/Signature.hpp"
4144

4245
}
4346
}

‎src/njoy21/CommandLine.hpp

-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ struct njoy::njoy21::CommandLine {
1616
std::optional< std::string > errorPath;
1717
bool legacySwitch;
1818
bool verifyOnly;
19-
bool signature;
2019

2120
/* methods */
2221
#include "njoy21/CommandLine/src/ctor.hpp"

‎src/njoy21/CommandLine/src/ctor.hpp

-6
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,6 @@ CommandLine( int argc, char* argv[] ){
1818
"path to file where NJOY21 error ought to be directed. (defaults to standard error)",
1919
false, std::optional< std::string >(), " error path", cmd );
2020

21-
TCLAP::SwitchArg
22-
signature( "", "signature",
23-
"Write signature to standard output",
24-
cmd );
25-
2621
TCLAP::SwitchArg
2722
legacySwitch( "L", "legacy",
2823
"Call to Fortran routines even if C++ routines are available", cmd );
@@ -43,6 +38,5 @@ CommandLine( int argc, char* argv[] ){
4338
this->errorPath = errorPath.getValue();
4439
this->legacySwitch = legacySwitch.getValue();
4540
this->verifyOnly = verifyOnly.getValue();
46-
this->signature = signature.getValue();
4741
}
4842

‎src/njoy21/CommandLine/test/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,5 @@ $<$<BOOL:${link_time_optimization}>:${${PREFIX}_link_time_optimization_flags}>
1010
$<$<BOOL:${nonportable_optimization}>:${${PREFIX}_nonportable_optimization_flags}>>
1111

1212
${CXX_appended_flags} ${njoy21_appended_flags} )
13-
target_link_libraries( njoy21.CommandLine.test PUBLIC njoy21_library )
13+
target_link_libraries( njoy21.CommandLine.test PUBLIC njoy21_library catch-adapter )
1414
add_test( NAME njoy21.CommandLine COMMAND njoy21.CommandLine.test )

‎src/njoy21/CommandLine/test/CommandLine.test.cpp

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ SCENARIO( "Parsing a command-line interface for options and flags" ){
2020
REQUIRE( not CL.outputPath );
2121
REQUIRE( not CL.legacySwitch );
2222
REQUIRE( not CL.verifyOnly );
23-
REQUIRE( not CL.signature );
2423
}
2524
GIVEN( "An instance of the Commandline with an input path" ){
2625
std::vector< std::string > arguments = { "njoy21", "--input", "/my/path" };

‎src/njoy21/Driver/Factory/src/setupManager.hpp

-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
static io::Manager setupManager( CommandLine& commandLine ){
22
io::Manager::Builder builder;
3-
if( commandLine.signature ){
4-
std::cout << Signature::signature() << std::endl;
5-
std::exit( 0 );
6-
}
73

84
if ( commandLine.inputPath ){
95
builder.input( *(commandLine.inputPath) );

‎src/njoy21/Driver/test/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ $<$<BOOL:${link_time_optimization}>:${${PREFIX}_link_time_optimization_flags}>
1010
$<$<BOOL:${nonportable_optimization}>:${${PREFIX}_nonportable_optimization_flags}>>
1111

1212
${CXX_appended_flags} ${njoy21_appended_flags} )
13-
target_link_libraries( njoy21.Driver.test PUBLIC njoy21_library )
13+
target_link_libraries( njoy21.Driver.test PUBLIC njoy21_library catch-adapter )
1414
file( GLOB resources "resources/*" )
1515
foreach( resource ${resources})
1616
file( COPY "${resource}" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}" )

‎src/njoy21/Signature.hpp.in

-6
This file was deleted.

‎src/njoy21/io/Manager/test/CMakeLists.txt

+2-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ $<$<BOOL:${link_time_optimization}>:${${PREFIX}_link_time_optimization_flags}>
1010
$<$<BOOL:${nonportable_optimization}>:${${PREFIX}_nonportable_optimization_flags}>>
1111

1212
${CXX_appended_flags} ${njoy21_appended_flags} )
13-
target_link_libraries( njoy21.io.Manager.test PUBLIC njoy21_library )
13+
target_link_libraries( njoy21.io.Manager.test PUBLIC njoy21_library
14+
catch-adapter )
1415
file( GLOB resources "resources/*" )
1516
foreach( resource ${resources})
1617
file( COPY "${resource}" DESTINATION "${CMAKE_CURRENT_BINARY_DIR}" )

‎src/njoy21/legacy/Sequence/test/CMakeLists.txt

+2-1
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,6 @@ $<$<BOOL:${link_time_optimization}>:${${PREFIX}_link_time_optimization_flags}>
1010
$<$<BOOL:${nonportable_optimization}>:${${PREFIX}_nonportable_optimization_flags}>>
1111

1212
${CXX_appended_flags} ${njoy21_appended_flags} )
13-
target_link_libraries( njoy21.legacy.Sequence.test PUBLIC njoy21_library )
13+
target_link_libraries( njoy21.legacy.Sequence.test PUBLIC njoy21_library
14+
catch-adapter )
1415
add_test( NAME njoy21.legacy.Sequence COMMAND njoy21.legacy.Sequence.test )

0 commit comments

Comments
 (0)
Please sign in to comment.