Changes to use commands from variables.

This commit is contained in:
John Schneiderman 2024-08-04 17:32:13 +02:00
parent 7350b11001
commit fb5b69ae5c

View File

@ -5,6 +5,7 @@ srcdir := $(if $(srcdir),$(srcdir),$(project_dir)/build)
CXX = c++
CPPFLAGS = -g -O2 -std=c++11 -Wno-switch
SED = /usr/bin/sed
$(shell mkdir -p $(project_dir)/bin)
@ -29,10 +30,11 @@ endif
@$(CXX) -c $(CPPFLAGS) $< -o $(srcdir)/$@
%.d: $(project_dir)/oscar64/%.cpp
@set -e; rm -f $(srcdir)/$@; \
@echo "Transforming file" $@ "..."
@set -e; $(RM) $(srcdir)/$@; \
$(CC) -MM $(CPPFLAGS) $< > $(srcdir)/$@.$$$$; \
sed 's,\($*\)\.o[ :]*,\1.o $(srcdir)/$@ : ,g' < $(srcdir)/$@.$$$$ > $(srcdir)/$@; \
rm -f $(srcdir)/$@.$$$$
$(SED) 's,\($*\)\.o[ :]*,\1.o $(srcdir)/$@ : ,g' < $(srcdir)/$@.$$$$ > $(srcdir)/$@; \
$(RM) $(srcdir)/$@.$$$$
$(project_dir)/bin/oscar64 : $(objects)
@echo "Linking compiler" $@ "..."
@ -40,7 +42,9 @@ $(project_dir)/bin/oscar64 : $(objects)
.PHONY : clean
clean :
-rm *.o *.d $(project_dir)/bin/oscar64
@$(RM) $(srcdir)/*.o
@$(RM) $(srcdir)/*.d
@$(RM) $(project_dir)/bin/oscar64
ifeq ($(UNAME_S), Darwin)