From e9aa9a52371d6c77ffc567e74581e58b0a79485f Mon Sep 17 00:00:00 2001 From: sfilippone Date: Sun, 10 Nov 2024 10:59:28 +0100 Subject: [PATCH] Restructuring linsolve. --- linsolve/Makefile | 25 ++++++++++----------- linsolve/impl/Makefile | 30 +++++++++++++++++++++++++ linsolve/{ => impl}/psb_cbicg.f90 | 0 linsolve/{ => impl}/psb_ccg.F90 | 0 linsolve/{ => impl}/psb_ccgs.f90 | 0 linsolve/{ => impl}/psb_ccgstab.f90 | 0 linsolve/{ => impl}/psb_ccgstabl.f90 | 0 linsolve/{ => impl}/psb_cfcg.F90 | 0 linsolve/{ => impl}/psb_cgcr.f90 | 0 linsolve/{ => impl}/psb_ckrylov.f90 | 0 linsolve/{ => impl}/psb_crgmres.f90 | 0 linsolve/{ => impl}/psb_crichardson.f90 | 0 linsolve/{ => impl}/psb_dbicg.f90 | 0 linsolve/{ => impl}/psb_dcg.F90 | 0 linsolve/{ => impl}/psb_dcgs.f90 | 0 linsolve/{ => impl}/psb_dcgstab.f90 | 0 linsolve/{ => impl}/psb_dcgstabl.f90 | 0 linsolve/{ => impl}/psb_dfcg.F90 | 0 linsolve/{ => impl}/psb_dgcr.f90 | 0 linsolve/{ => impl}/psb_dkrylov.f90 | 0 linsolve/{ => impl}/psb_drgmres.f90 | 0 linsolve/{ => impl}/psb_drichardson.f90 | 0 linsolve/{ => impl}/psb_sbicg.f90 | 0 linsolve/{ => impl}/psb_scg.F90 | 0 linsolve/{ => impl}/psb_scgs.f90 | 0 linsolve/{ => impl}/psb_scgstab.f90 | 0 linsolve/{ => impl}/psb_scgstabl.f90 | 0 linsolve/{ => impl}/psb_sfcg.F90 | 0 linsolve/{ => impl}/psb_sgcr.f90 | 0 linsolve/{ => impl}/psb_skrylov.f90 | 0 linsolve/{ => impl}/psb_srgmres.f90 | 0 linsolve/{ => impl}/psb_srichardson.f90 | 0 linsolve/{ => impl}/psb_zbicg.f90 | 0 linsolve/{ => impl}/psb_zcg.F90 | 0 linsolve/{ => impl}/psb_zcgs.f90 | 0 linsolve/{ => impl}/psb_zcgstab.f90 | 0 linsolve/{ => impl}/psb_zcgstabl.f90 | 0 linsolve/{ => impl}/psb_zfcg.F90 | 0 linsolve/{ => impl}/psb_zgcr.f90 | 0 linsolve/{ => impl}/psb_zkrylov.f90 | 0 linsolve/{ => impl}/psb_zrgmres.f90 | 0 linsolve/{ => impl}/psb_zrichardson.f90 | 0 42 files changed, 42 insertions(+), 13 deletions(-) create mode 100644 linsolve/impl/Makefile rename linsolve/{ => impl}/psb_cbicg.f90 (100%) rename linsolve/{ => impl}/psb_ccg.F90 (100%) rename linsolve/{ => impl}/psb_ccgs.f90 (100%) rename linsolve/{ => impl}/psb_ccgstab.f90 (100%) rename linsolve/{ => impl}/psb_ccgstabl.f90 (100%) rename linsolve/{ => impl}/psb_cfcg.F90 (100%) rename linsolve/{ => impl}/psb_cgcr.f90 (100%) rename linsolve/{ => impl}/psb_ckrylov.f90 (100%) rename linsolve/{ => impl}/psb_crgmres.f90 (100%) rename linsolve/{ => impl}/psb_crichardson.f90 (100%) rename linsolve/{ => impl}/psb_dbicg.f90 (100%) rename linsolve/{ => impl}/psb_dcg.F90 (100%) rename linsolve/{ => impl}/psb_dcgs.f90 (100%) rename linsolve/{ => impl}/psb_dcgstab.f90 (100%) rename linsolve/{ => impl}/psb_dcgstabl.f90 (100%) rename linsolve/{ => impl}/psb_dfcg.F90 (100%) rename linsolve/{ => impl}/psb_dgcr.f90 (100%) rename linsolve/{ => impl}/psb_dkrylov.f90 (100%) rename linsolve/{ => impl}/psb_drgmres.f90 (100%) rename linsolve/{ => impl}/psb_drichardson.f90 (100%) rename linsolve/{ => impl}/psb_sbicg.f90 (100%) rename linsolve/{ => impl}/psb_scg.F90 (100%) rename linsolve/{ => impl}/psb_scgs.f90 (100%) rename linsolve/{ => impl}/psb_scgstab.f90 (100%) rename linsolve/{ => impl}/psb_scgstabl.f90 (100%) rename linsolve/{ => impl}/psb_sfcg.F90 (100%) rename linsolve/{ => impl}/psb_sgcr.f90 (100%) rename linsolve/{ => impl}/psb_skrylov.f90 (100%) rename linsolve/{ => impl}/psb_srgmres.f90 (100%) rename linsolve/{ => impl}/psb_srichardson.f90 (100%) rename linsolve/{ => impl}/psb_zbicg.f90 (100%) rename linsolve/{ => impl}/psb_zcg.F90 (100%) rename linsolve/{ => impl}/psb_zcgs.f90 (100%) rename linsolve/{ => impl}/psb_zcgstab.f90 (100%) rename linsolve/{ => impl}/psb_zcgstabl.f90 (100%) rename linsolve/{ => impl}/psb_zfcg.F90 (100%) rename linsolve/{ => impl}/psb_zgcr.f90 (100%) rename linsolve/{ => impl}/psb_zkrylov.f90 (100%) rename linsolve/{ => impl}/psb_zrgmres.f90 (100%) rename linsolve/{ => impl}/psb_zrichardson.f90 (100%) diff --git a/linsolve/Makefile b/linsolve/Makefile index 5c6445f5..c8fa3ac7 100644 --- a/linsolve/Makefile +++ b/linsolve/Makefile @@ -10,32 +10,29 @@ MODOBJS= psb_base_linsolve_conv_mod.o \ psb_s_linsolve_conv_mod.o psb_c_linsolve_conv_mod.o \ psb_d_linsolve_conv_mod.o psb_z_linsolve_conv_mod.o \ psb_linsolve_mod.o -F90OBJS=psb_dkrylov.o psb_skrylov.o psb_ckrylov.o psb_zkrylov.o \ - psb_drichardson.o psb_srichardson.o psb_crichardson.o psb_zrichardson.o \ - psb_dcgstab.o psb_dcg.o psb_dfcg.o psb_dgcr.o psb_dcgs.o \ - psb_dbicg.o psb_dcgstabl.o psb_drgmres.o\ - psb_scgstab.o psb_scg.o psb_sfcg.o psb_sgcr.o psb_scgs.o \ - psb_sbicg.o psb_scgstabl.o psb_srgmres.o\ - psb_ccgstab.o psb_ccg.o psb_cfcg.o psb_cgcr.o psb_ccgs.o \ - psb_cbicg.o psb_ccgstabl.o psb_crgmres.o\ - psb_zcgstab.o psb_zcg.o psb_zfcg.o psb_zgcr.o psb_zcgs.o \ - psb_zbicg.o psb_zcgstabl.o psb_zrgmres.o -OBJS=$(F90OBJS) $(MODOBJS) + +OBJS=$(MODOBJS) LOCAL_MODS=$(MODOBJS:.o=$(.mod)) LIBNAME=$(METHDLIBNAME) FINCLUDES=$(FMFLAG). $(FMFLAG)$(MODDIR) -objs: $(OBJS) +objs: $(OBJS) impld /bin/cp -p $(CPUPDFLAG) *$(.mod) $(MODDIR) lib: objs + $(MAKE) -C impl lib $(AR) $(HERE)/$(LIBNAME) $(OBJS) $(RANLIB) $(HERE)/$(LIBNAME) /bin/cp -p $(CPUPDFLAG) $(HERE)/$(LIBNAME) $(LIBDIR) +$(OBJS): $(MODDIR)/$(BASEMODNAME)$(.mod) + +impld: $(OBJS) + $(MAKE) -C impl objs + psb_s_linsolve_conv_mod.o psb_c_linsolve_conv_mod.o psb_d_linsolve_conv_mod.o psb_z_linsolve_conv_mod.o: psb_base_linsolve_conv_mod.o psb_linsolve_conv_mod.o: psb_s_linsolve_conv_mod.o psb_c_linsolve_conv_mod.o psb_d_linsolve_conv_mod.o psb_z_linsolve_conv_mod.o $(F90OBJS): $(MODOBJS) @@ -44,6 +41,8 @@ $(OBJS): $(MODDIR)/$(PRECMODNAME)$(.mod) $(MODDIR)/$(BASEMODNAME)$(.mod) veryclean: clean /bin/rm -f $(HERE)/$(LIBNAME) -clean: +iclean: + cd impl && $(MAKE) clean +clean: iclean /bin/rm -f $(OBJS) *$(.mod) diff --git a/linsolve/impl/Makefile b/linsolve/impl/Makefile new file mode 100644 index 00000000..62444af7 --- /dev/null +++ b/linsolve/impl/Makefile @@ -0,0 +1,30 @@ +include ../../Make.inc + +LIBDIR=../../lib +INCDIR=../../include +MODDIR=../../modules +HERE=.. +OBJS=psb_dkrylov.o psb_skrylov.o psb_ckrylov.o psb_zkrylov.o \ + psb_drichardson.o psb_srichardson.o psb_crichardson.o psb_zrichardson.o \ + psb_dcgstab.o psb_dcg.o psb_dfcg.o psb_dgcr.o psb_dcgs.o \ + psb_dbicg.o psb_dcgstabl.o psb_drgmres.o\ + psb_scgstab.o psb_scg.o psb_sfcg.o psb_sgcr.o psb_scgs.o \ + psb_sbicg.o psb_scgstabl.o psb_srgmres.o\ + psb_ccgstab.o psb_ccg.o psb_cfcg.o psb_cgcr.o psb_ccgs.o \ + psb_cbicg.o psb_ccgstabl.o psb_crgmres.o\ + psb_zcgstab.o psb_zcg.o psb_zfcg.o psb_zgcr.o psb_zcgs.o \ + psb_zbicg.o psb_zcgstabl.o psb_zrgmres.o + +LIBNAME=$(METHDLIBNAME) +COBJS= +FINCLUDES=$(FMFLAG).. $(FMFLAG)$(MODDIR) + +objs: $(OBJS) +lib: objs + $(AR) $(HERE)/$(LIBNAME) $(OBJS) + $(RANLIB) $(HERE)/$(LIBNAME) + +veryclean: clean + +clean: + /bin/rm -f $(OBJS) $(LOCAL_MODS) diff --git a/linsolve/psb_cbicg.f90 b/linsolve/impl/psb_cbicg.f90 similarity index 100% rename from linsolve/psb_cbicg.f90 rename to linsolve/impl/psb_cbicg.f90 diff --git a/linsolve/psb_ccg.F90 b/linsolve/impl/psb_ccg.F90 similarity index 100% rename from linsolve/psb_ccg.F90 rename to linsolve/impl/psb_ccg.F90 diff --git a/linsolve/psb_ccgs.f90 b/linsolve/impl/psb_ccgs.f90 similarity index 100% rename from linsolve/psb_ccgs.f90 rename to linsolve/impl/psb_ccgs.f90 diff --git a/linsolve/psb_ccgstab.f90 b/linsolve/impl/psb_ccgstab.f90 similarity index 100% rename from linsolve/psb_ccgstab.f90 rename to linsolve/impl/psb_ccgstab.f90 diff --git a/linsolve/psb_ccgstabl.f90 b/linsolve/impl/psb_ccgstabl.f90 similarity index 100% rename from linsolve/psb_ccgstabl.f90 rename to linsolve/impl/psb_ccgstabl.f90 diff --git a/linsolve/psb_cfcg.F90 b/linsolve/impl/psb_cfcg.F90 similarity index 100% rename from linsolve/psb_cfcg.F90 rename to linsolve/impl/psb_cfcg.F90 diff --git a/linsolve/psb_cgcr.f90 b/linsolve/impl/psb_cgcr.f90 similarity index 100% rename from linsolve/psb_cgcr.f90 rename to linsolve/impl/psb_cgcr.f90 diff --git a/linsolve/psb_ckrylov.f90 b/linsolve/impl/psb_ckrylov.f90 similarity index 100% rename from linsolve/psb_ckrylov.f90 rename to linsolve/impl/psb_ckrylov.f90 diff --git a/linsolve/psb_crgmres.f90 b/linsolve/impl/psb_crgmres.f90 similarity index 100% rename from linsolve/psb_crgmres.f90 rename to linsolve/impl/psb_crgmres.f90 diff --git a/linsolve/psb_crichardson.f90 b/linsolve/impl/psb_crichardson.f90 similarity index 100% rename from linsolve/psb_crichardson.f90 rename to linsolve/impl/psb_crichardson.f90 diff --git a/linsolve/psb_dbicg.f90 b/linsolve/impl/psb_dbicg.f90 similarity index 100% rename from linsolve/psb_dbicg.f90 rename to linsolve/impl/psb_dbicg.f90 diff --git a/linsolve/psb_dcg.F90 b/linsolve/impl/psb_dcg.F90 similarity index 100% rename from linsolve/psb_dcg.F90 rename to linsolve/impl/psb_dcg.F90 diff --git a/linsolve/psb_dcgs.f90 b/linsolve/impl/psb_dcgs.f90 similarity index 100% rename from linsolve/psb_dcgs.f90 rename to linsolve/impl/psb_dcgs.f90 diff --git a/linsolve/psb_dcgstab.f90 b/linsolve/impl/psb_dcgstab.f90 similarity index 100% rename from linsolve/psb_dcgstab.f90 rename to linsolve/impl/psb_dcgstab.f90 diff --git a/linsolve/psb_dcgstabl.f90 b/linsolve/impl/psb_dcgstabl.f90 similarity index 100% rename from linsolve/psb_dcgstabl.f90 rename to linsolve/impl/psb_dcgstabl.f90 diff --git a/linsolve/psb_dfcg.F90 b/linsolve/impl/psb_dfcg.F90 similarity index 100% rename from linsolve/psb_dfcg.F90 rename to linsolve/impl/psb_dfcg.F90 diff --git a/linsolve/psb_dgcr.f90 b/linsolve/impl/psb_dgcr.f90 similarity index 100% rename from linsolve/psb_dgcr.f90 rename to linsolve/impl/psb_dgcr.f90 diff --git a/linsolve/psb_dkrylov.f90 b/linsolve/impl/psb_dkrylov.f90 similarity index 100% rename from linsolve/psb_dkrylov.f90 rename to linsolve/impl/psb_dkrylov.f90 diff --git a/linsolve/psb_drgmres.f90 b/linsolve/impl/psb_drgmres.f90 similarity index 100% rename from linsolve/psb_drgmres.f90 rename to linsolve/impl/psb_drgmres.f90 diff --git a/linsolve/psb_drichardson.f90 b/linsolve/impl/psb_drichardson.f90 similarity index 100% rename from linsolve/psb_drichardson.f90 rename to linsolve/impl/psb_drichardson.f90 diff --git a/linsolve/psb_sbicg.f90 b/linsolve/impl/psb_sbicg.f90 similarity index 100% rename from linsolve/psb_sbicg.f90 rename to linsolve/impl/psb_sbicg.f90 diff --git a/linsolve/psb_scg.F90 b/linsolve/impl/psb_scg.F90 similarity index 100% rename from linsolve/psb_scg.F90 rename to linsolve/impl/psb_scg.F90 diff --git a/linsolve/psb_scgs.f90 b/linsolve/impl/psb_scgs.f90 similarity index 100% rename from linsolve/psb_scgs.f90 rename to linsolve/impl/psb_scgs.f90 diff --git a/linsolve/psb_scgstab.f90 b/linsolve/impl/psb_scgstab.f90 similarity index 100% rename from linsolve/psb_scgstab.f90 rename to linsolve/impl/psb_scgstab.f90 diff --git a/linsolve/psb_scgstabl.f90 b/linsolve/impl/psb_scgstabl.f90 similarity index 100% rename from linsolve/psb_scgstabl.f90 rename to linsolve/impl/psb_scgstabl.f90 diff --git a/linsolve/psb_sfcg.F90 b/linsolve/impl/psb_sfcg.F90 similarity index 100% rename from linsolve/psb_sfcg.F90 rename to linsolve/impl/psb_sfcg.F90 diff --git a/linsolve/psb_sgcr.f90 b/linsolve/impl/psb_sgcr.f90 similarity index 100% rename from linsolve/psb_sgcr.f90 rename to linsolve/impl/psb_sgcr.f90 diff --git a/linsolve/psb_skrylov.f90 b/linsolve/impl/psb_skrylov.f90 similarity index 100% rename from linsolve/psb_skrylov.f90 rename to linsolve/impl/psb_skrylov.f90 diff --git a/linsolve/psb_srgmres.f90 b/linsolve/impl/psb_srgmres.f90 similarity index 100% rename from linsolve/psb_srgmres.f90 rename to linsolve/impl/psb_srgmres.f90 diff --git a/linsolve/psb_srichardson.f90 b/linsolve/impl/psb_srichardson.f90 similarity index 100% rename from linsolve/psb_srichardson.f90 rename to linsolve/impl/psb_srichardson.f90 diff --git a/linsolve/psb_zbicg.f90 b/linsolve/impl/psb_zbicg.f90 similarity index 100% rename from linsolve/psb_zbicg.f90 rename to linsolve/impl/psb_zbicg.f90 diff --git a/linsolve/psb_zcg.F90 b/linsolve/impl/psb_zcg.F90 similarity index 100% rename from linsolve/psb_zcg.F90 rename to linsolve/impl/psb_zcg.F90 diff --git a/linsolve/psb_zcgs.f90 b/linsolve/impl/psb_zcgs.f90 similarity index 100% rename from linsolve/psb_zcgs.f90 rename to linsolve/impl/psb_zcgs.f90 diff --git a/linsolve/psb_zcgstab.f90 b/linsolve/impl/psb_zcgstab.f90 similarity index 100% rename from linsolve/psb_zcgstab.f90 rename to linsolve/impl/psb_zcgstab.f90 diff --git a/linsolve/psb_zcgstabl.f90 b/linsolve/impl/psb_zcgstabl.f90 similarity index 100% rename from linsolve/psb_zcgstabl.f90 rename to linsolve/impl/psb_zcgstabl.f90 diff --git a/linsolve/psb_zfcg.F90 b/linsolve/impl/psb_zfcg.F90 similarity index 100% rename from linsolve/psb_zfcg.F90 rename to linsolve/impl/psb_zfcg.F90 diff --git a/linsolve/psb_zgcr.f90 b/linsolve/impl/psb_zgcr.f90 similarity index 100% rename from linsolve/psb_zgcr.f90 rename to linsolve/impl/psb_zgcr.f90 diff --git a/linsolve/psb_zkrylov.f90 b/linsolve/impl/psb_zkrylov.f90 similarity index 100% rename from linsolve/psb_zkrylov.f90 rename to linsolve/impl/psb_zkrylov.f90 diff --git a/linsolve/psb_zrgmres.f90 b/linsolve/impl/psb_zrgmres.f90 similarity index 100% rename from linsolve/psb_zrgmres.f90 rename to linsolve/impl/psb_zrgmres.f90 diff --git a/linsolve/psb_zrichardson.f90 b/linsolve/impl/psb_zrichardson.f90 similarity index 100% rename from linsolve/psb_zrichardson.f90 rename to linsolve/impl/psb_zrichardson.f90