@@ -209,8 +209,8 @@ LIBS += $(TYPE_LIBS)
209209ORIG_LIBS: = $(LIBS )
210210
211211comma: =,
212- space : =
213- space+ =
212+ empty : =
213+ space: = $( empty ) $( empty )
214214
215215STATIC_NIFS =@STATIC_NIFS@
216216ifneq ($(STATIC_NIFS ) ,no)
@@ -351,7 +351,7 @@ endif
351351
352352CS_CFLAGS_ = $(TYPE_FLAGS ) $(DEFS ) $(WFLAGS )
353353ifeq ($(GCC ) ,yes)
354- CS_CFLAGS = $(subst -O2, $(GEN_OPT_FLGS ) $(UNROLL_FLG ) , $(CS_CFLAGS_ ) )
354+ CS_CFLAGS = $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) $(UNROLL_FLG ) , $(CS_CFLAGS_ ) )
355355else
356356CS_CFLAGS = $(CS_CFLAGS_ )
357357endif
@@ -856,28 +856,28 @@ endif
856856# Usually the same as the default rule, but certain platforms (e.g. win32) mix
857857# different compilers
858858$(OBJDIR ) /beam_emu.o : beam/emu/beam_emu.c
859- $(V_EMU_CC ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
859+ $(V_EMU_CC ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
860860
861861$(OBJDIR ) /beam_emu.S : beam/emu/beam_emu.c
862- $(V_EMU_CC ) -S -fverbose-asm $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
862+ $(V_EMU_CC ) -S -fverbose-asm $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
863863
864864$(OBJDIR ) /% _pg.o : beam/% .c
865- $(V_CC ) $(PROFILE_GENERATE ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
865+ $(V_CC ) $(PROFILE_GENERATE ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
866866
867867$(OBJDIR ) /% _pg.o : beam/emu/% .c
868- $(V_CC ) $(PROFILE_GENERATE ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
868+ $(V_CC ) $(PROFILE_GENERATE ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
869869
870870$(OBJDIR ) /% _pu.o : beam/% .c $(PROFILE_USE_DEPS )
871- $(V_CC ) $(PROFILE_USE ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
871+ $(V_CC ) $(PROFILE_USE ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
872872
873873$(OBJDIR ) /% _pu.o : beam/emu/% .c $(PROFILE_USE_DEPS )
874- $(V_CC ) $(PROFILE_USE ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
874+ $(V_CC ) $(PROFILE_USE ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
875875
876876$(OBJDIR ) /% _pu.S : beam/% .c $(PROFILE_USE_DEPS )
877- $(V_CC ) -S -fverbose-asm $(PROFILE_USE ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
877+ $(V_CC ) -S -fverbose-asm $(PROFILE_USE ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
878878
879879$(OBJDIR ) /% _pu.S : beam/emu/% .c $(PROFILE_USE_DEPS )
880- $(V_CC ) -S -fverbose-asm $(PROFILE_USE ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
880+ $(V_CC ) -S -fverbose-asm $(PROFILE_USE ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
881881
882882$(OBJDIR ) /PROFILE : $(BINDIR ) /$(PROFILE_EXECUTABLE )
883883 $(V_at ) echo " PROFILE ${PROFILE_EXECUTABLE} "
@@ -903,29 +903,29 @@ ifeq ($(ERTS_BUILD_FALLBACK_POLL),yes)
903903# Have to treat erl_poll differently as the same .c file is used
904904# twice for kernel poll builds.
905905$(OBJDIR ) /erl_poll.o : sys/common/erl_poll.c
906- $(V_CC ) -DERTS_KERNEL_POLL_VERSION $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
906+ $(V_CC ) -DERTS_KERNEL_POLL_VERSION $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
907907
908908# Do a copy in order to make debuggers less confused
909909$(TTF_DIR ) /erl_poll.flbk.c : sys/common/erl_poll.c
910910 $(V_at ) cp $< $@
911911 @touch $@
912912
913913$(OBJDIR ) /erl_poll.flbk.o : $(TTF_DIR ) /erl_poll.flbk.c
914- $(V_CC ) -DERTS_NO_KERNEL_POLL_VERSION $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
914+ $(V_CC ) -DERTS_NO_KERNEL_POLL_VERSION $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
915915endif
916916
917917
918918# ----------------------------------------------------------------------
919919# General targets
920920#
921921$(OBJDIR ) /% .o : beam/% .c
922- $(V_CC ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
922+ $(V_CC ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
923923
924924$(OBJDIR ) /% .o : beam/emu/% .c
925- $(V_CC ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
925+ $(V_CC ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
926926
927927$(OBJDIR ) /% .o : beam/jit/% .c
928- $(V_CC ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
928+ $(V_CC ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
929929
930930$(OBJDIR ) /% .o : $(TARGET ) /% .c
931931 $(V_CC ) $(CFLAGS ) $(INCLUDES ) -Idrivers/common -c $< -o $@
@@ -937,7 +937,7 @@ $(OBJDIR)/%.o: sys/$(ERLANG_OSTYPE)/%.c
937937 $(V_CC ) $(CFLAGS ) $(INCLUDES ) -c $< -o $@
938938
939939$(OBJDIR ) /% .o : sys/common/% .c
940- $(V_CC ) $(subst -O2, $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
940+ $(V_CC ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
941941
942942$(OBJDIR ) /% .o : drivers/common/% .c
943943 $(V_CC ) $(CFLAGS ) -DLIBSCTP=$(LIBSCTP ) $(INCLUDES ) -Idrivers/common -Idrivers/$(ERLANG_OSTYPE ) -c $< -o $@
@@ -968,24 +968,24 @@ ASMJIT_PCH_SRC=$(TTF_DIR)/asmjit/asmjit.hpp
968968
969969$(OBJDIR ) /% .o : beam/jit/% .cpp $(ASMJIT_PCH_OBJ )
970970 $(V_CXX ) $(ASMJIT_FLAGS ) $(INCLUDES ) \
971- $(subst -O2, $(GEN_OPT_FLGS), $(CXXFLAGS)) \
971+ $(subst $(space) -O2$(space) , $(GEN_OPT_FLGS) , $(CXXFLAGS)) \
972972 -include $(ASMJIT_PCH_SRC ) -c $< -o $@
973973
974974$(OBJDIR ) /% .o : beam/jit/$(JIT_ARCH ) /% .cpp beam/jit/$(JIT_ARCH ) /beam_asm.hpp $(ASMJIT_PCH_OBJ )
975975 $(V_CXX ) $(ASMJIT_FLAGS ) $(INCLUDES ) \
976- $(subst -O2, $(GEN_OPT_FLGS), $(CXXFLAGS)) \
976+ $(subst $(space) -O2$(space) , $(GEN_OPT_FLGS) , $(CXXFLAGS)) \
977977 -include $(ASMJIT_PCH_SRC ) -c $< -o $@
978978
979979$(OBJDIR ) /asmjit/% .o : asmjit/% .cpp $(ASMJIT_PCH_OBJ ) $(dir $@ )
980980 $(V_CXX ) $(ASMJIT_FLAGS ) $(INCLUDES ) \
981- $(subst -O2, $(GEN_OPT_FLGS), $(ASMJIT_CXXFLAGS)) \
981+ $(subst $(space) -O2$(space) , $(GEN_OPT_FLGS) , $(ASMJIT_CXXFLAGS)) \
982982 -include $(ASMJIT_PCH_SRC ) -c $< -o $@
983983
984984# # The dependency on erl_bif_info.c is in order to trigger a rebuild when
985985# # the git sha define on the command line argument changes
986986$(ASMJIT_PCH_OBJ ) : $(ASMJIT_PCH_SRC ) $(ASMJIT_TTF_H ) beam/erl_bif_info.c
987987 $(V_CXX ) $(ASMJIT_FLAGS ) $(INCLUDES ) \
988- $(subst -O2, $(GEN_OPT_FLGS), $(CXXFLAGS)) \
988+ $(subst $(space) -O2$(space) , $(GEN_OPT_FLGS) , $(CXXFLAGS)) \
989989 -I$(TTF_DIR) -c $< -o $@
990990
991991# # We copy all asmjit headers into TTF_DIR in order for cross-compilation
@@ -1017,7 +1017,7 @@ $(BINDIR)/$(CS_EXECUTABLE): $(TTF_DIR)/GENERATED $(PRELOAD_SRC) $(CS_OBJ) $(ERTS
10171017ifeq ($(GCC ) ,yes)
10181018
10191019$(OBJDIR ) /erl_goodfit_alloc.o : beam/erl_goodfit_alloc.c
1020- $(V_CC ) $(subst -O2, $(GEN_OPT_FLGS ) $(UNROLL_FLG ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
1020+ $(V_CC ) $(subst $( space ) -O2$( space ) , $(GEN_OPT_FLGS ) $(UNROLL_FLG ) , $(CFLAGS ) ) $(INCLUDES ) -c $< -o $@
10211021endif
10221022
10231023# ----------------------------------------------------------------------
@@ -1384,8 +1384,8 @@ DEP_CXX=$(CXX)
13841384DEP_INCLUDES =$(INCLUDES ) -I../etc/win32 \
13851385 -Idrivers/common -Idrivers/$(ERLANG_OSTYPE ) \
13861386 -Inifs/common -Inifs/$(ERLANG_OSTYPE )
1387- DEP_FLAGS =-MM $(subst -O2, ,$(CFLAGS ) ) $(INCLUDES )
1388- DEP_CXXFLAGS =-MM $(subst -O2, ,$(CXXFLAGS ) ) $(DEP_INCLUDES ) $(ASMJIT_FLAGS )
1387+ DEP_FLAGS =-MM $(subst $( space ) -O2$( space ) , $( GEN_OPT_FLGS ) ,$(CFLAGS ) ) $(INCLUDES )
1388+ DEP_CXXFLAGS =-MM $(subst $( space ) -O2$( space ) , $( GEN_OPT_FLGS ) ,$(CXXFLAGS ) ) $(DEP_INCLUDES ) $(ASMJIT_FLAGS )
13891389
13901390# ifeq ($(USING_VC),yes)
13911391# VC++ used for compiling. If __GNUC__ is defined we will include
0 commit comments