diff --git a/coupled_AM2_LM3_SIS2/Makefile b/coupled_AM2_LM3_SIS2/Makefile index b0871f6abc..7f6ec559e3 100644 --- a/coupled_AM2_LM3_SIS2/Makefile +++ b/coupled_AM2_LM3_SIS2/Makefile @@ -4,10 +4,11 @@ MOM_MEMORY ?= SIS_MEMORY ?= # Dependencies -FMS_BUILD ?= ../shared/fms/build +FMS_CODEBASE ?= ../src/FMS1 +FMS_BUILD ?= ../shared/fms/build_fms1 AM2_BUILD ?= ../shared/AM2/build -ICEBERGS_BUILD ?= ../shared/icebergs/build -ICE_PARAM_BUILD ?= ../shared/ice_param/build +ICEBERGS_BUILD ?= ../shared/icebergs/build_fms1 +ICE_PARAM_BUILD ?= ../shared/ice_param/build_fms1 LM3_BUILD ?= ../shared/LM3/build # Autoconf configuration @@ -32,6 +33,7 @@ EXTRA_SRC_DIRS = \ CONFIG_FLAGS := --config-cache CONFIG_FLAGS += --srcdir=$(abspath $(MOM_CODEBASE)) CONFIG_FLAGS += --with-driver=FMS_cap +CONFIG_FLAGS += --with-framework=fms1 ifdef MOM_MEMORY CONFIG_FLAGS += MOM_MEMORY=$(abspath $(MOM_MEMORY)) endif @@ -46,7 +48,7 @@ FCFLAGS ?= -g -O2 # Path to fms_platform.h # NOTE: Most libraries need an explicit path to this file. Someday, this could # be handled by library-specific autoconf tests. -FCFLAGS += -I$(abspath ../src/FMS/include) +FCFLAGS += -I$(abspath $(FMS_CODEBASE)/include) MOM_FCFLAGS = $(FCFLAGS) \ -I$(abspath $(FMS_BUILD)) \ @@ -170,7 +172,8 @@ $(ICEBERGS_BUILD)/libicebergs.a: FORCE $(FMS_BUILD)/libFMS.a $(FMS_BUILD)/libFMS.a: FORCE $(MAKE) -C ../shared/fms \ - BUILD=$(abspath $(FMS_BUILD)) + BUILD=$(abspath $(FMS_BUILD)) \ + CODEBASE=$(abspath $(FMS_CODEBASE)) FORCE: @@ -230,11 +233,16 @@ $(foreach expt,$(EXPTS),$(eval $(call EXPT_RULE,$(expt)))) .PHONY: clean clean: rm -rf $(BUILD) - $(MAKE) -C ../shared/AM2 clean + $(MAKE) -C ../shared/AM2 clean \ + BUILD=$(abspath $(AM2_BUILD)) $(MAKE) -C ../shared/LM3 clean - $(MAKE) -C ../shared/ice_param clean - $(MAKE) -C ../shared/icebergs clean - $(MAKE) -C ../shared/fms clean + BUILD=$(abspath $(LM3_BUILD)) + $(MAKE) -C ../shared/ice_param clean \ + BUILD=$(abspath $(ICE_PARAM_BUILD)) + $(MAKE) -C ../shared/icebergs clean \ + BUILD=$(abspath $(ICEBERGS_BUILD)) + $(MAKE) -C ../shared/fms clean \ + BUILD=$(abspath $(FMS_BUILD)) .PHONY: clean.runs clean.runs: $(foreach e,$(EXPTS),clean.$(e)) diff --git a/ice_ocean_SIS2/Makefile b/ice_ocean_SIS2/Makefile index 69ea3b7629..bfd1020c40 100644 --- a/ice_ocean_SIS2/Makefile +++ b/ice_ocean_SIS2/Makefile @@ -4,6 +4,7 @@ MOM_MEMORY ?= SIS_MEMORY ?= # Dependencies +FMS_CODEBASE ?= ../src/FMS2 FMS_BUILD ?= ../shared/fms/build ICEBERGS_BUILD ?= ../shared/icebergs/build ICE_PARAM_BUILD ?= ../shared/ice_param/build @@ -172,7 +173,8 @@ $(ICEBERGS_BUILD)/libicebergs.a: FORCE $(FMS_BUILD)/libFMS.a $(FMS_BUILD)/libFMS.a: FORCE $(MAKE) -C ../shared/fms \ - BUILD=$(abspath $(FMS_BUILD)) + BUILD=$(abspath $(FMS_BUILD)) \ + CODEBASE=$(abspath $(FMS_CODEBASE)) FORCE: diff --git a/ocean_only/Makefile b/ocean_only/Makefile index b3e72cf679..5ca3e909cb 100644 --- a/ocean_only/Makefile +++ b/ocean_only/Makefile @@ -3,6 +3,7 @@ BUILD ?= build MOM_MEMORY ?= # Dependencies +FMS_CODEBASE ?= ../src/FMS2 FMS_BUILD ?= ../shared/fms/build # Autoconf configuration @@ -104,7 +105,9 @@ $(BUILD): # Dependencies $(FMS_BUILD)/libFMS.a: FORCE - $(MAKE) -C ../shared/fms BUILD=$(abspath $(FMS_BUILD)) + $(MAKE) -C ../shared/fms \ + BUILD=$(abspath $(FMS_BUILD)) \ + CODEBASE=$(abspath $(FMS_CODEBASE)) FORCE: diff --git a/shared/AM2/Makefile b/shared/AM2/Makefile index 8540b8c7e5..a82c314215 100644 --- a/shared/AM2/Makefile +++ b/shared/AM2/Makefile @@ -1,6 +1,7 @@ # Configuration BUILD ?= build FMS_BUILD ?= ../fms/build +FMS_CODEBASE ?= ../../src/FMS1 TARGET = libAM2.a CODEBASE = ../../src/AM2 @@ -13,7 +14,7 @@ SRCDIRS = $(addprefix $(abspath $(CODEBASE))/, \ atmos_param_am3) FCFLAGS += -I$(abspath $(FMS_BUILD)) -FCFLAGS += -I$(abspath ../../src/FMS/include) +FCFLAGS += -I$(abspath $(FMS_CODEBASE)/include) LDFLAGS += -L$(abspath $(FMS_BUILD)) diff --git a/shared/config/Libs.mk b/shared/config/Libs.mk index d9d8c677c1..0d0cc354ca 100644 --- a/shared/config/Libs.mk +++ b/shared/config/Libs.mk @@ -10,6 +10,10 @@ MAKEPATH = $(realpath $(dir $(abspath $(lastword $(MAKEFILE_LIST))))) M4DIR ?= $(MAKEPATH)/../../src/MOM6/ac/m4 MAKEDEP = $(MAKEPATH)/../../src/MOM6/ac/makedep +# `export` disables autoconf defaults; this restores them +CFLAGS ?= -g -O2 +FCFLAGS ?= -g -O2 + # Autoconf configuration export CPPFLAGS export CC diff --git a/shared/fms/Makefile b/shared/fms/Makefile index e626737fd0..43f7ab7103 100644 --- a/shared/fms/Makefile +++ b/shared/fms/Makefile @@ -1,7 +1,7 @@ # Configuration BUILD ?= build +CODEBASE ?= ../../src/FMS2 -CODEBASE = ../../src/FMS TARGET = libFMS.a MAKEFILE_IN = ../../src/MOM6/ac/deps/Makefile.fms.in CONFIGURE_AC = ../../src/MOM6/ac/deps/configure.fms.ac diff --git a/src/MOM6 b/src/MOM6 index 5137442fc9..714d2da17e 160000 --- a/src/MOM6 +++ b/src/MOM6 @@ -1 +1 @@ -Subproject commit 5137442fc91aced5162e00f5b8d2a1b5906b8e32 +Subproject commit 714d2da17ed29d34f73e88513192acb9439e1061