DPP_ROOT = . include Makefile.inc all: deps %.o: %.c $(Q)$(CC) -std=c99 $(CFLAGS) -c $< -o $@ @echo 'CC $@' %.opp: %.cpp $(Q)$(CXX) $(CFLAGS) $(CXXFLAGS) $(EASTL_CXXFLAGS) -c $< -o $@ @echo 'CXX $@' deps-print-local-notice: $(CC) ifeq ($(CC),$(LOCAL_MINGW64_CC)) @echo @echo "-- [Build Config]" @echo "-- CC : $(realpath $(CC))" @echo "-- CXX: $(realpath $(CXX))" @echo "-- DDK: $(realpath $(DDK_INCLUDE_DIR))" @echo endif $(LOCAL_MINGW64_BUILD_SCRIPT): ifeq ($(CC),$(LOCAL_MINGW64_CC)) @echo @echo "------------------------------------------------------------------------------" @echo "-- ./mingw-w64-build/mingw-w64-build does not exist, clonging git submodule --" @echo "------------------------------------------------------------------------------" @echo git submodule update --init mingw-w64-build endif $(LOCAL_MINGW64_CC): $(LOCAL_MINGW64_BUILD_SCRIPT) ifeq ($(CC),$(LOCAL_MINGW64_CC)) @echo @echo "----------------------------------------------------------------------------------------" @echo "-- ./x86_64-w64-mingw32/bin/x86_64-w64-mingw32-gcc does not exist, building toolchain --" @echo "----------------------------------------------------------------------------------------" @echo env -i ./mingw-w64-build/mingw-w64-build x86_64 endif deps-build: \ $(LOCAL_MINGW64_BUILD_SCRIPT) \ $(LOCAL_MINGW64_CC) \ $(EASTL_STATIC_LIB) \ $(DRIVER_ADDITIONAL_OBJS) \ $(DRIVER_CRT) \ $(DRIVER_CRTPLUSPLUS) \ $(USER_CRT) \ $(SIGNTOOL_PREFIX) deps: deps-print-local-notice deps-build $(EASTL_STATIC_LIB): $(EASTL_DEPS) mkdir -p EASTL-build cd EASTL-build && \ $(CMAKE) ../EASTL \ -DCMAKE_CXX_COMPILER="$(realpath $(CXX))" \ -DCMAKE_SYSTEM_NAME="Windows" \ -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY \ -DCMAKE_CXX_FLAGS='$(CFLAGS) $(CXXFLAGS) $(EASTL_CXXFLAGS)' && \ $(MAKE) $(CMAKE_Q) $(SIGNTOOL_PREFIX)-code.p12: ./create_codesign_ca.sh $(SIGNTOOL_PREFIX) $(SIGNTOOL_PREFIX): $(SIGNTOOL_PREFIX)-code.p12 distclean: clean rm -f $(SIGNTOOL_PREFIX)-ca-* $(SIGNTOOL_PREFIX)-code* rm -rf $(LOCAL_MINGW64_BUILD_DIR) git submodule deinit --all clean: rm -f $(DRIVER_CRT) $(DRIVER_CRTPLUSPLUS) $(USER_CRT) $(EASTL_STATIC_LIB) rm -f $(DRIVER_ADDITIONAL_OBJS) rm -rf EASTL-build .PHONY: all deps-print-local-notice deps-build deps distclean clean .DEFAULT_GOAL := all