Is it possible for a team to make the correct work in Windows if there is .../ Makefile?



  • I work for Windows, PowerShell terminal. I've been thinking, with if there's a clear problem with on the Windows and Linux tracks. Container Makefile:

    install:
        ./gradlew clean install
    

    Team ./gradlew clean install It works in the terminal, but make install - No, and the terminal makes:

    "." не является внутренней или внешней
    командой, исполняемой программой или пакетным файлом.
    

    If Makefile changes the tracks to the back, the team. make install start working. The contents of Makefile will be as follows:

    install:
        .\gradlew clean install
    

    The main question is, is there any way to force a team to work with the original contents? Because Makefile is no use to the Windows user. He'll have to be redesigned. I'd like to find a way to reduce temporal costs so that the file can work both on UNIX systems and on Windows. The multi-hour giggle and the use of git bash instead of PowerShell did not have an effect.


  • QA Engineer

    instead of writing every time

    ./gradlew
    

    You have to do that.

    GRADLEW=./gradlew
    

    And now the teams will be like this.

    install:
        $(GRADLEW) clean install
    

    Now you'll only have one place where the team's full name is.

    Now the second half of the quest. Look. https://stackoverflow.com/questions/714100/os-detecting-makefile And write somewhere like that.

    ifeq ($(OS),Windows_NT)
      GRADLEW=.\gradlew
    else
      GRADLEW=./gradlew
    endif
    

    If anything, you sign the right conditions under your needs. And ready.



Suggested Topics

  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2
  • 2