diff --git a/obl_main.f90 b/obl_main.f90 index 2ae82ed7b510ebb5410b66f471f67291d7d8aba2..0706637117f883f227b781d37b233ab4736f631f 100644 --- a/obl_main.f90 +++ b/obl_main.f90 @@ -98,7 +98,6 @@ program obl_main character(len = 128) :: arg character(len = 128), parameter :: arg_key_help = '--help' - character(len = 128), parameter :: arg_key_setup = '--setup' character(len = 128), parameter :: arg_key_config = "--config" integer :: i, status @@ -143,9 +142,9 @@ program obl_main return end if - if (trim(arg) == trim(arg_key_setup)) then + if (trim(arg) == trim(arg_key_config)) then if (i == num_args) then - write(*, *) ' FAILURE! > missing setup [key] argument' + write(*, *) ' FAILURE! > missing config [key] argument' ierr = 1 ! signal ERROR return end if @@ -153,29 +152,23 @@ program obl_main call get_command_argument(i + 1, arg) obl_setup = get_setup_id(arg) if (obl_setup == -1) then - write(*, *) ' FAILURE! > unknown setup [key]: ', trim(arg) - ierr = 1 ! signal ERROR - return - end if - else if (trim(arg) == trim(arg_key_config)) then - if (i == num_args) then - write(*, *) ' FAILURE! > missing configuration file [key] argument' - ierr = 1 ! signal ERROR - return - end if - - call get_command_argument(i + 1, arg) #ifdef USE_CONFIG_PARSER - call c_config_run(trim(arg)//C_NULL_CHAR, status) - if (status == 0) then - write(*, *) ' FAILURE! > unable to parse configuration file: ', trim(arg) + !< try reading configuration file + call c_config_run(trim(arg)//C_NULL_CHAR, status) + if (status == 0) then + write(*, *) ' FAILURE! > unable to parse configuration file: ', trim(arg) + ierr = 1 ! signal ERROR + return + end if + + !< forcing configuration file setup + obl_setup = 999 +#else + write(*, *) ' FAILURE! > unknown config [key]: ', trim(arg) ierr = 1 ! signal ERROR return - end if - - !< forcing configuration file setup - obl_setup = 999 #endif + end if endif enddo