Properly fix make clean under windows (#2341)

* Properly fix make clean under sh.exe

* Ensure make clean works properly under Windows if RAYLIB_RELEASE_PATH is modified
This commit is contained in:
Peter0x44 2022-02-12 16:59:48 +00:00 committed by GitHub
parent ddba8478c5
commit dd15531e25
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -728,24 +728,24 @@ else
@echo "Error: Root permissions needed for uninstallation. Try sudo make uninstall"
endif
.PHONY: clean_LINUX clean_WINDOWS clean_ANDROID clean_BSD clean_OSX
# Clean everything
clean:
ifeq ($(PLATFORM_OS),WINDOWS)
# Make always tries to run build rules under sh.exe by default
# So if sh.exe is present in the PATH on windows, the del commands will fail
# see README.W32 of GNU Make for more details
# It is not specified earlier in the Makefile, because then cross-compilation
# will also fail.
SHELL = cmd
del *.o /s
cd $(RAYLIB_RELEASE_PATH)
del lib$(RAYLIB_LIB_NAME).a /s
del lib$(RAYLIB_LIB_NAME)dll.a /s
del $(RAYLIB_LIB_NAME).dll /s
else
rm -fv *.o $(RAYLIB_RELEASE_PATH)/lib$(RAYLIB_LIB_NAME).a $(RAYLIB_RELEASE_PATH)/lib$(RAYLIB_LIB_NAME).bc $(RAYLIB_RELEASE_PATH)/lib$(RAYLIB_LIB_NAME).so*
endif
ifeq ($(PLATFORM),PLATFORM_ANDROID)
rm -rf $(ANDROID_TOOLCHAIN) $(NATIVE_APP_GLUE)/android_native_app_glue.o
endif
clean: clean_$(PLATFORM_OS)
@echo "removed all generated files!"
clean_LINUX clean_BSD clean_OSX:
rm -fv *.o $(RAYLIB_RELEASE_PATH)/lib$(RAYLIB_LIB_NAME).a $(RAYLIB_RELEASE_PATH)/lib$(RAYLIB_LIB_NAME).bc $(RAYLIB_RELEASE_PATH)/lib$(RAYLIB_LIB_NAME).so*
clean_ANDROID:
rm -fv *.o $(RAYLIB_RELEASE_PATH)/lib$(RAYLIB_LIB_NAME).a $(RAYLIB_RELEASE_PATH)/lib$(RAYLIB_LIB_NAME).bc $(RAYLIB_RELEASE_PATH)/lib$(RAYLIB_LIB_NAME).so*
rm -rf $(ANDROID_TOOLCHAIN) $(NATIVE_APP_GLUE)/android_native_app_glue.o
clean_WINDOWS: SHELL := cmd.exe
clean_WINDOWS:
del *.o /s
cd $(RAYLIB_RELEASE_PATH) & \
del lib$(RAYLIB_LIB_NAME).a /s & \
del lib$(RAYLIB_LIB_NAME)dll.a /s & \
del $(RAYLIB_LIB_NAME).dll /s