macro(_psb_read_const) file(READ "${CMAKE_CURRENT_SOURCE_DIR}/base/modules/psb_const_mod.F90" _psb_const_mod) string(REGEX MATCH "psb_version_major_[ \t]+=[ \t]+([0-9]+)" _psb_version_major_match "${_psb_const_mod}") set(PSBLASMAJOR "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_version_minor_[ \t]+=[ \t]+([0-9]+)" _psb_version_minor_match "${_psb_const_mod}") set(PSBLASMINOR "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_patchlevel_[ \t]+=[ \t]+([0-9]+)" _psb_patchlevel_match "${_psb_const_mod}") set(PSBLASPATCH "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_version_string_[ \t]+=[ \t]+([^ \t]+)" _psb_version_string_match "${_psb_const_mod}") set(PSBLASSTRING "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_dupl_null_[ \t]+=[ \t]+([0-9]+)" _psb_dupl_null_match "${_psb_const_mod}") set(PSBLASDUPNUL "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_dupl_add_[ \t]+=[ \t]+([0-9]+)" _psb_dupl_add_match "${_psb_const_mod}") set(PSBLASDUPADD "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_dupl_err_[ \t]+=[ \t]+([0-9]+)" _psb_dupl_err_match "${_psb_const_mod}") set(PSBLASDUPERR "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_dupl_ovwrt_[ \t]+=[ \t]+([0-9]+)" _psb_dupl_ovw_match "${_psb_const_mod}") set(PSBLASDUPOVW "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_dupl_def_[ \t]+=[ \t]+([^ \t]+)_" _psb_dupl_def_match "${_psb_const_mod}") set(PSBLASDUPDEF "${CMAKE_MATCH_1}") string(TOUPPER ${PSBLASDUPDEF} PSBLASDUPDEF) string(REGEX MATCH "psb_upd_srch_[ \t]+=[ \t]+([0-9]+)" _psb_upd_srch_match "${_psb_const_mod}") set(PSBLASUPDSRC "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_upd_perm_[ \t]+=[ \t]+([0-9]+)" _psb_upd_perm_match "${_psb_const_mod}") set(PSBLASUPDPRM "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_upd_dflt_[ \t]+=[ \t]+([^ \t]+)_" _psb_upd_dflt_match "${_psb_const_mod}") set(PSBLASUPDDEF "${CMAKE_MATCH_1}") string(TOUPPER ${PSBLASUPDDEF} PSBLASUPDDEF) string(REGEX MATCH "psb_matbld_noremote_[ \t]+=[ \t]+([0-9]+)" _psb_matbld_noremote_match "${_psb_const_mod}") set(PSBLASBLDNOR "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_matbld_remote_[ \t]+=[ \t]+([0-9]+)" _psb_matbld_remote_match "${_psb_const_mod}") set(PSBLASBLDRMT "${CMAKE_MATCH_1}") endmacro(_psb_read_const) macro(_psb_read_desc_const) file(READ "${CMAKE_CURRENT_SOURCE_DIR}/base/modules/desc/psb_desc_const_mod.f90" _psb_const_mod) string(REGEX MATCH "psb_swap_send_[ \t]+=[ \t]+([0-9]+)" _psb_swap_send_match "${_psb_const_mod}") set(PSBSWPSND "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_swap_recv_[ \t]+=[ \t]+([0-9]+)" _psb_swap_recv_match "${_psb_const_mod}") set(PSBSWPRCV "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_swap_sync_[ \t]+=[ \t]+([0-9]+)" _psb_swap_sync_match "${_psb_const_mod}") set(PSBSWPSYN "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_swap_mpi_[ \t]+=[ \t]+([0-9]+)" _psb_swap_mpi_match "${_psb_const_mod}") set(PSBSWPMPI "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_collective_start_[ \t]+=[ \t]+([0-9]+)" _psb_collective_start_match "${_psb_const_mod}") set(PSBCLCSTR "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_collective_end_[ \t]+=[ \t]+([0-9]+)" _psb_collective_end_match "${_psb_const_mod}") set(PSBCLCEND "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_collective_sync_[ \t]+=[ \t]+([0-9]+)" _psb_collective_sync_match "${_psb_const_mod}") set(PSBCLCSYN "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_none_[ \t]+=[ \t]+([0-9]+)" _psb_none_match "${_psb_const_mod}") set(PSBNONE "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_sum_[ \t]+=[ \t]+([0-9]+)" _psb_sum_match "${_psb_const_mod}") set(PSBSUM "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_avg_[ \t]+=[ \t]+([0-9]+)" _psb_avg_match "${_psb_const_mod}") set(PSBAVG "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_square_root_[ \t]+=[ \t]+([0-9]+)" _psb_square_root_match "${_psb_const_mod}") set(PSBSQRT "${CMAKE_MATCH_1}") string(REGEX MATCH "psb_setzero_[ \t]+=[ \t]+([0-9]+)" _psb_setzero_match "${_psb_const_mod}") set(PSBSETZ "${CMAKE_MATCH_1}") endmacro(_psb_read_desc_const)