Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make setup instructions more inclusive #108

Open
mturoci opened this issue Oct 3, 2022 · 2 comments
Open

Make setup instructions more inclusive #108

mturoci opened this issue Oct 3, 2022 · 2 comments

Comments

@mturoci
Copy link
Collaborator

mturoci commented Oct 3, 2022

Current setup instructions require make to be installed. However, this can be a showstopper for windows users which lacks make installation by default.

We could either:

  • Rewrite the instructions to plain python commands.
  • Find OS agnostic alternative to make.

cc @mtanco @geomodular for discussion

@geomodular
Copy link
Contributor

Would be great to find a typical user for this kind of use case and discuss it. From my perspective, I suggest to:

  • keep Makefile,
  • write a setup guide (this would be effectively the commands from Makefile) so the user can run commands by hand without Makefile,
  • create .bat files (if it makes sense) - I assume this is an alternative to scripts in Windows for a developer (sorry for my incompetence),
  • update README of several ways how to run the project (Makefile, by hand, .bat)

Rewrite the instructions to plain python commands.

I'd refrain from using Python as a build/setup tool. I think it's not necessary here.

@denzuko
Copy link
Contributor

denzuko commented Nov 20, 2023

Yes, make is rather ubiquitous in POSIX and absent (by design)™ in Microsoft. But what I have found over the years is that PyInvoke is the closes thing to an agnostic replacement for Make. Mind you that means one has to rewrite thier makefiles into a tasks.py file but it is a near one to one since each @task decorated function's context parameter has a method called .run() which calls a shell just like make does while the dependency of tasks is just a list passed to the pre parameter to the @task decorator.

That said, if one still wants to use Makefiles on non-POSIX systems then there is Cygwin, MSYS, Docker, and the newer WSL2. which ports a POSIX environment into Win64 systems.

My vote is for PyInvoke seeing how the ecosystem is mainly python based and developers can grok python easier than batch files or Makefiles.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants