diff --git a/libretroshare/src/libretroshare.pro b/libretroshare/src/libretroshare.pro index ab9a4c437..05c5af436 100644 --- a/libretroshare/src/libretroshare.pro +++ b/libretroshare/src/libretroshare.pro @@ -852,12 +852,28 @@ rs_jsonapi { no_rs_cross_compiling { DUMMYRESTBEDINPUT = FORCE CMAKE_GENERATOR_OVERRIDE="" - win32-g++|win32-clang-g++:CMAKE_GENERATOR_OVERRIDE="-G \"MSYS Makefiles\"" + win32-g++|win32-clang-g++ { + isEmpty(QMAKE_SH) { + CMAKE_GENERATOR_OVERRIDE="-G \"MinGW Makefiles\"" + } else { + CMAKE_GENERATOR_OVERRIDE="-G \"MSYS Makefiles\"" + } + } genrestbedlib.name = Generating librestbed. genrestbedlib.input = DUMMYRESTBEDINPUT genrestbedlib.output = $$clean_path($${RESTBED_BUILD_PATH}/librestbed.a) genrestbedlib.CONFIG += target_predeps combine genrestbedlib.variable_out = PRE_TARGETDEPS + win32-g++:isEmpty(QMAKE_SH) { + genrestbedlib.commands = \ + cd $$shell_path($${RS_SRC_PATH}) $$escape_expand(\\n\\t) \ + git submodule update --init supportlibs/restbed || cd . $$escape_expand(\\n\\t) \ + cd $$shell_path($${RESTBED_SRC_PATH}) $$escape_expand(\\n\\t) \ + git submodule update --init dependency/asio || cd . $$escape_expand(\\n\\t) \ + git submodule update --init dependency/catch || cd . $$escape_expand(\\n\\t )\ + git submodule update --init dependency/kashmir || cd . $$escape_expand(\\n\\t) \ + $(CHK_DIR_EXISTS) $$shell_path($$UDP_DISCOVERY_BUILD_PATH) $(MKDIR) $$shell_path($${UDP_DISCOVERY_BUILD_PATH}) $$escape_expand(\\n\\t) + } else { genrestbedlib.commands = \ cd $${RS_SRC_PATH} && ( \ git submodule update --init supportlibs/restbed ; \ @@ -866,7 +882,10 @@ rs_jsonapi { git submodule update --init dependency/catch ; \ git submodule update --init dependency/kashmir ; \ true ) && \ - mkdir -p $${RESTBED_BUILD_PATH} && cd $${RESTBED_BUILD_PATH} && \ + mkdir -p $${RESTBED_BUILD_PATH} && + } + genrestbedlib.commands += \ + cd $$shell_path($${RESTBED_BUILD_PATH}) && \ cmake \ -DCMAKE_CXX_COMPILER=$$QMAKE_CXX \ \"-DCMAKE_CXX_FLAGS=$${QMAKE_CXXFLAGS}\" \ @@ -882,7 +901,7 @@ rs_jsonapi { genrestbedheader.output = $${RESTBED_HEADER_FILE} genrestbedheader.CONFIG += target_predeps no_link genrestbedheader.variable_out = HEADERS - genrestbedheader.commands = cd $${RESTBED_BUILD_PATH} && $(MAKE) install + genrestbedheader.commands = cd $$shell_path($${RESTBED_BUILD_PATH}) && $(MAKE) install QMAKE_EXTRA_COMPILERS += genrestbedheader } @@ -898,13 +917,19 @@ rs_jsonapi { genjsonapi.clean = $${WRAPPERS_INCL_FILE} $${WRAPPERS_REG_FILE} genjsonapi.CONFIG += target_predeps combine no_link genjsonapi.variable_out = HEADERS - genjsonapi.commands = \ - mkdir -p $${JSONAPI_GENERATOR_OUT} && \ - cp $${DOXIGEN_CONFIG_SRC} $${DOXIGEN_CONFIG_OUT} && \ - echo OUTPUT_DIRECTORY=$${JSONAPI_GENERATOR_OUT} >> $${DOXIGEN_CONFIG_OUT} && \ - echo INPUT=$${DOXIGEN_INPUT_DIRECTORY} >> $${DOXIGEN_CONFIG_OUT} && \ - doxygen $${DOXIGEN_CONFIG_OUT} && \ - $${JSONAPI_GENERATOR_EXE} $${JSONAPI_GENERATOR_SRC} $${JSONAPI_GENERATOR_OUT}; + win32-g++:isEmpty(QMAKE_SH) { + genjsonapi.commands = \ + $(CHK_DIR_EXISTS) $$shell_path($$JSONAPI_GENERATOR_OUT) $(MKDIR) $$shell_path($${JSONAPI_GENERATOR_OUT}) $$escape_expand(\\n\\t) + } else { + genjsonapi.commands = \ + mkdir -p $${JSONAPI_GENERATOR_OUT} && \ + cp $${DOXIGEN_CONFIG_SRC} $${DOXIGEN_CONFIG_OUT} && \ + echo OUTPUT_DIRECTORY=$${JSONAPI_GENERATOR_OUT} >> $${DOXIGEN_CONFIG_OUT} && \ + echo INPUT=$${DOXIGEN_INPUT_DIRECTORY} >> $${DOXIGEN_CONFIG_OUT} && \ + doxygen $${DOXIGEN_CONFIG_OUT} && + } + genjsonapi.commands += \ + $${JSONAPI_GENERATOR_EXE} $${JSONAPI_GENERATOR_SRC} $${JSONAPI_GENERATOR_OUT} QMAKE_EXTRA_COMPILERS += genjsonapi # Force recalculation of libretroshare dependencies see https://stackoverflow.com/a/47884045