Browse Source

apply makedep to emscripten/wii/gph/dingux; 3ds already have it, PSP uses a customized make system so not needed

Pal Lockheart 7 years ago
parent
commit
26d848dc57
5 changed files with 93 additions and 59 deletions
  1. 22 7
      dingux/Makefile
  2. 28 11
      emscripten/Makefile
  3. 0 29
      emscripten/Makefile.wasm
  4. 19 4
      gph/Makefile
  5. 24 8
      wii/Makefile

+ 22 - 7
dingux/Makefile

@@ -2,23 +2,38 @@ TARGET = sdlpal.dge
 
 HOST = mipsel-linux-uclibc-
 
+DEPFLAGS = -MT $@ -MMD -MP -MF $*.Td
+
 SOURCES = . ./adplug
 CFILES = $(foreach dir, $(SOURCES), $(wildcard $(dir)/*.c))
 CPPFILES = $(foreach dir, $(SOURCES), $(wildcard $(dir)/*.cpp))
 OFILES = $(CFILES:.c=.o) $(CPPFILES:.cpp=.o)
+DEPFILES = $(OFILES:.o=.d) 
 
-CFLAGS = -g -Wall -O2 `sdl-config --cflags` -DDINGOO -DPAL_CLASSIC -DPAL_HAS_PLATFORM_SPECIFIC_UTILS -I.
+CFLAGS = -g -Wall -O2 `sdl-config --cflags` -DDINGOO -DPAL_CLASSIC -DPAL_HAS_PLATFORM_SPECIFIC_UTILS  -I. -I../ -I../liboggvorbis/include -I../liboggvorbis/src $(DEPFLAGS) 
 CXXFLAGS = $(CFLAGS)
 LDFLAGS = `sdl-config --libs`
 
+POSTCOMPILE = @mv -f $*.Td $*.d && touch $@
+
 $(TARGET): $(OFILES)
-	$(HOST)g++ $(OFILES) -o $@ $(LDFLAGS)
+	@echo [LD] $@
+	@$(HOST)g++ $(OFILES) -o $@ $(LDFLAGS)
 
-%.o: %.c
-	$(HOST)gcc $(CFLAGS) -c $< -o $@
+%.o: %.c %.d
+	@echo [CC] $<
+	@$(HOST)gcc $(CFLAGS) -c $< -o $@
+	$(POSTCOMPILE)
 
-%.o: %.cpp
-	$(HOST)g++ $(CXXFLAGS) -c $< -o $@
+%.o: %.cpp %.d
+	@echo [CC] $<
+	@$(HOST)g++ $(CXXFLAGS) -c $< -o $@
+	$(POSTCOMPILE)
 
 clean:
-	rm -f $(TARGET) $(OFILES)
+	rm -f $(TARGET) $(OFILES) $(DEPFILES)
+
+%.d: ;
+.PRECIOUS: %.d
+
+-include $(DEPFILES)

+ 28 - 11
emscripten/Makefile

@@ -1,29 +1,46 @@
 # Adapted from Makefile for Dingux by palxex
+# note: only works in chrome now, and audio not works now.
 
 TARGET = sdlpal.html
+EMFILES = sdlpal.{html,js,mem,data,bc,wast,wasm}
 
 HOST =
 
+DEPFLAGS = -MT $@ -MMD -MP -MF $*.Td
 
 CFILES = $(wildcard ../adplug/*.c) $(wildcard ../libmad/*.c) $(wildcard ../liboggvorbis/src/*.c) $(wildcard ../*.c) em.c
 CPPFILES = $(wildcard ../adplug/*.cpp) $(wildcard ../*.cpp) $(wildcard ./*.cpp)
 OBJFILES = $(CFILES:.c=.o) $(CPPFILES:.cpp=.o)
+DEPFILES = $(OBJFILES:.o=.d)
 
-CFLAGS = -I${EMSCRIPTEN_TOOLCHAIN}/include/SDL2 -g -Wall -O2 -fno-strict-aliasing -I. -I../ -I../liboggvorbis/include -I../liboggvorbis/src -DPAL_HAS_PLATFORM_SPECIFIC_UTILS
-LDFLAGS = -L${EMSCRIPTEN_TOOLCHAIN}/lib -lSDL2 -lm -lstdc++ --preload-file data -s TOTAL_MEMORY=134217728 -s TOTAL_STACK=5242880 --emrun -s DEMANGLE_SUPPORT=1 -s EMTERPRETIFY=1 -s EMTERPRETIFY_ASYNC=1 -s 'EMTERPRETIFY_FILE="sdlpal.bc"'
+CFLAGS = -I${EMSCRIPTEN_TOOLCHAIN}/include/SDL2 -g -Wall -Oz -fno-strict-aliasing -I. -I../ -I../liboggvorbis/include -I../liboggvorbis/src -DPAL_HAS_PLATFORM_SPECIFIC_UTILS $(DEPFLAGS) 
+CPPFLAGS = $(CFLAGS)
+override LDFLAGS += -Oz -L${EMSCRIPTEN_TOOLCHAIN}/lib -lSDL2 -lm -lstdc++ --preload-file data -s TOTAL_MEMORY=134217728 -s TOTAL_STACK=5242880 --emrun -s DEMANGLE_SUPPORT=1 -s EMTERPRETIFY=1 -s EMTERPRETIFY_ASYNC=1 -s 'EMTERPRETIFY_FILE="sdlpal.bc"' -s WASM=1
 
-.c.o:
-	emcc -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
-.cpp.o:
-	em++ -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
+POSTCOMPILE = @mv -f $*.Td $*.d && touch $@
+
+%.o: %.c %.d
+	@echo [CC] $<
+	@emcc -c $(CFLAGS) -o $@ $<
+	$(POSTCOMPILE)
+
+%.o: %.cpp %.d
+	@echo [CC] $<
+	@em++ -c $(CPPFLAGS) -o $@ $<
+	$(POSTCOMPILE)
 	
 $(TARGET):$(OBJFILES)
-	em++ $(CFLAGS) -o $(TARGET) $(OBJFILES) $(LDFLAGS)
+	@echo [LD] $@
+	@em++ -o $(TARGET) $(OBJFILES) $(LDFLAGS)
 
 clean:
-	rm -f $(OBJFILES)
-	rm -f $(TARGET) *.bc *.mem *.js *.data *.wast *.wasm
+	rm -f $(TARGET) $(EMFILES) $(OBJFILES) $(DEPFILES)
 
 repackage:
-	rm -f $(TARGET) *.bc *.mem *.js *.data *.wast *.wasm
-	em++ $(CFLAGS) -o $(TARGET) $(OBJFILES) $(LDFLAGS)
+	rm -f $(TARGET) $(EMFILES)
+	em++ -o $(TARGET) $(OBJFILES) $(LDFLAGS)
+
+%.d: ;
+.PRECIOUS: %.d
+
+-include $(DEPFILES)

+ 0 - 29
emscripten/Makefile.wasm

@@ -1,29 +0,0 @@
-# Adapted from Makefile for Dingux by palxex
-
-TARGET = sdlpal.html
-
-HOST =
-
-
-CFILES = $(wildcard ../adplug/*.c) $(wildcard ../libmad/*.c) $(wildcard ../liboggvorbis/src/*.c) $(wildcard ../*.c) em.c
-CPPFILES = $(wildcard ../adplug/*.cpp) $(wildcard ../*.cpp) $(wildcard ./*.cpp)
-OBJFILES = $(CFILES:.c=.o) $(CPPFILES:.cpp=.o)
-
-CFLAGS = -I${EMSCRIPTEN_TOOLCHAIN}/include/SDL2 -g -Wall -O2 -fno-strict-aliasing -I. -I../ -I../liboggvorbis/include -I../liboggvorbis/src -DPAL_HAS_PLATFORM_SPECIFIC_UTILS
-LDFLAGS = -L${EMSCRIPTEN_TOOLCHAIN}/lib -lSDL2 -lm -lstdc++ --preload-file data -s TOTAL_MEMORY=134217728 -s TOTAL_STACK=5242880 --emrun -s DEMANGLE_SUPPORT=1 -s WASM=1 -s ASYNCIFY=1
-
-.c.o:
-	emcc -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
-.cpp.o:
-	em++ -c $(CFLAGS) $(CPPFLAGS) -o $@ $<
-	
-$(TARGET):$(OBJFILES)
-	em++ $(CFLAGS) -o $(TARGET) $(OBJFILES) $(LDFLAGS)
-
-clean:
-	rm -f $(OBJFILES)
-	rm -f $(TARGET) *.bc *.mem *.js *.data *.wast *.wasm
-
-repackage:
-	rm -f $(TARGET) *.bc *.mem *.js *.data *.wast *.wasm
-	em++ $(CFLAGS) -o $(TARGET) $(OBJFILES) $(LDFLAGS)

+ 19 - 4
gph/Makefile

@@ -13,23 +13,38 @@ DEVICE = -DCAANOO
 endif
 endif
 
+DEPFLAGS = -MT $@ -MMD -MP -MF $*.Td
+
 SOURCES = . .. ../adplug
 CFILES = $(foreach dir, $(SOURCES), $(wildcard $(dir)/*.c))
 CPPFILES = $(foreach dir, $(SOURCES), $(wildcard $(dir)/*.cpp))
 OFILES = $(CFILES:.c=.o) $(CPPFILES:.cpp=.o)
+DEPFILES = $(OFILES:.o=.d) 
 
-CFLAGS = -g -Wall -O2 `sdl-config --cflags` -DGPH $(DEVICE) -DPAL_HAS_PLATFORM_SPECIFIC_UTILS -I.
+CFLAGS = -g -Wall -O2 `sdl-config --cflags` -DGPH $(DEVICE) -DPAL_HAS_PLATFORM_SPECIFIC_UTILS -I. -I../ -I../liboggvorbis/include -I../liboggvorbis/src $(DEPFLAGS)
 CXXFLAGS = $(CFLAGS)
 LDFLAGS = `sdl-config --libs`
 
+POSTCOMPILE = @mv -f $*.Td $*.d && touch $@
+
 $(TARGET): $(OFILES)
-	$(HOST)g++ $(OFILES) -o $@ $(LDFLAGS)
+	@echo [LD] $@
+	@$(HOST)g++ $(OFILES) -o $@ $(LDFLAGS)
 
 %.o: %.c
-	$(HOST)gcc $(CFLAGS) -c $< -o $@
+	@echo [CC] $<
+	@$(HOST)gcc $(CFLAGS) -c $< -o $@
+	$(POSTCOMPILE)
 
 %.o: %.cpp
-	$(HOST)g++ $(CXXFLAGS) -c $< -o $@
+	@echo [CC] $<
+	@$(HOST)g++ $(CXXFLAGS) -c $< -o $@
+	$(POSTCOMPILE)
 
 clean:
 	rm -f $(TARGET) $(OFILES)
+
+%.d: ;
+.PRECIOUS: %.d
+
+-include $(DEPFILES)

+ 24 - 8
wii/Makefile

@@ -2,24 +2,40 @@ TARGET = boot
 
 HOST = powerpc-eabi-
 
+DEPFLAGS = -MT $@ -MMD -MP -MF $*.Td
+
 SOURCES = . .. ../adplug
 CFILES = $(foreach dir, $(SOURCES), $(wildcard $(dir)/*.c)) 
 CPPFILES = $(foreach dir, $(SOURCES), $(wildcard $(dir)/*.cpp))
 OFILES = $(CFILES:.c=.o) $(CPPFILES:.cpp=.o)
+DEPFILES = $(OFILES:.o=.d) 
 
-CFLAGS = -g -Wall -O2 `sdl-config --cflags` -DGEKKO -DPAL_HAS_PLATFORM_SPECIFIC_UTILS -I.
+CFLAGS = -g -Wall -O2 `sdl-config --cflags` -DGEKKO -DPAL_HAS_PLATFORM_SPECIFIC_UTILS -I. -I../ -I../liboggvorbis/include -I../liboggvorbis/src $(DEPFLAGS) 
 CXXFLAGS = $(CFLAGS)
 LDFLAGS = `sdl-config --libs` -DGEKKO -mrvl
 
+POSTCOMPILE = @mv -f $*.Td $*.d && touch $@
+
 $(TARGET): $(OFILES)
-	$(HOST)g++ $(OFILES) -o $@.elf $(LDFLAGS)
-	elf2dol $(TARGET).elf $(TARGET).dol
+	@echo [LD] $@
+	@$(HOST)g++ $(OFILES) -o $@.elf $(LDFLAGS)
+	@elf2dol $(TARGET).elf $(TARGET).dol
 
-%.o: %.c
-	$(HOST)gcc $(CFLAGS) -c $< -o $@
+%.o: %.c %.d
+	@echo [CC] $<
+	@$(HOST)gcc $(CFLAGS) -c $< -o $@
+	$(POSTCOMPILE)
 
-%.o: %.cpp
-	$(HOST)g++ $(CXXFLAGS) -c $< -o $@
+%.o: %.cpp %.d
+	@echo [CC] $<
+	@$(HOST)g++ $(CXXFLAGS) -c $< -o $@
+	$(POSTCOMPILE)
 
 clean:
-	rm -f $(TARGET).elf $(TARGET).dol $(OFILES)
+	rm -f $(TARGET).elf $(TARGET).dol $(OFILES) $(DEPFILES)
+
+%.d: ;
+.PRECIOUS: %.d
+
+-include $(DEPFILES)
+