diff --git a/Makefile b/Makefile index 16b1d4c77..2ea264355 100644 --- a/Makefile +++ b/Makefile @@ -386,11 +386,11 @@ clean: $(CLEAN_DEP_LIST) $(RM) $(call FIXPATH,$(CLEAN_LIST)) $(EXE): $(EXE_OBJS) $(EXE_LIBS) - $(CXX) $(CXXFLAGS) $(EXE_OBJS) -o '$@' $(EXE_LIBS) $(CXXLIBS) + $(CXX) $(CXXFLAGS) $(EXE_OBJS) -o "$@" $(EXE_LIBS) $(CXXLIBS) ifneq ($(filter-out osx,$(OS)),) ifneq ($(STRIP_SYMBOLS),n) - $(OBJCOPY) --only-keep-debug '$@' '$(PATH_INTERNAL_TEMP)/$(notdir $@).sym' - $(OBJCOPY) --strip-unneeded '$@' + $(OBJCOPY) --only-keep-debug "$@" "$(PATH_INTERNAL_TEMP)/$(notdir $@).sym" + $(OBJCOPY) --strip-unneeded "$@" endif endif diff --git a/source/qb64pe.bas b/source/qb64pe.bas index a25e7a6e5..5ec6573e1 100644 --- a/source/qb64pe.bas +++ b/source/qb64pe.bas @@ -12525,6 +12525,7 @@ CxxLibsExtra$ = CxxLibsExtra$ + " " + mylib$ + " " + mylibopt$ ' Make and the shell don't like certain characters in the file name, so we ' escape them to get them to handle them properly escapedExe$ = StrReplace$(path.exe$ + file$ + extension$, " ", "\ ") +escapedExe$ = StrReplace$(escapedExe$, CHR$(34), "\" + CHR$(34)) escapedExe$ = StrReplace$(escapedExe$, "$", "$$") makeline$ = make$ + makedeps$ + " EXE=" + AddQuotes$(escapedExe$) diff --git a/tests/compile_tests/single'quote'test/single'quote'test.bas b/tests/compile_tests/single'quote'test/single'quote'test.bas new file mode 100644 index 000000000..8375b1d38 --- /dev/null +++ b/tests/compile_tests/single'quote'test/single'quote'test.bas @@ -0,0 +1,4 @@ +$CONSOLE:ONLY + +Print "Hello, World!"; +SYSTEM diff --git a/tests/compile_tests/single'quote'test/single'quote'test.output b/tests/compile_tests/single'quote'test/single'quote'test.output new file mode 100644 index 000000000..8ab686eaf --- /dev/null +++ b/tests/compile_tests/single'quote'test/single'quote'test.output @@ -0,0 +1 @@ +Hello, World!