我有以下Makefile,我想将其配置为默认生成调试版本并通过指定相应的目标发布版本。
我现在正在尝试解决的问题如下, - 项目包含单元测试,我希望它们包含在默认构建中,但从发布中排除,所以我将发布目标添加到 Makefile:
FC = ifort
FFLAGS = -c -free -module modules -g3 -warn all -warn nounused
LDFLAGS = -save-temps -dynamiclib
INTERFACES = src/Foundation.f units/UFoundation.f units/Asserts.f units/Report.f
EXCLUDES = $(patsubst %, ! -path './%', $(INTERFACES))
SOURCES = $(INTERFACES) \
$(shell find . -name '*.f' $(EXCLUDES) | sed 's/^\.\///' | sort)
OBJECTS = $(patsubst %.f, out/%.o, $(SOURCES))
EXECUTABLE = UFoundation
all: $(SOURCES) $(EXECUTABLE)
release: SOURCES := $(filter-out units/%.f, $(SOURCES))
release: OBJECTS := $(filter-out units/%.o, $(OBJECTS))
release: EXECUTABLE := 'Foundation.dlyb' …Run Code Online (Sandbox Code Playgroud)