source isn't available while executing Makefile
furkansimsekli opened this issue · comments
Build Error
python3 -m venv .venv
source .venv/bin/activate && pip install -U -r requirements.txt
/bin/sh: 1: source: not found
make: *** [Makefile:12: .venv] Error 127
Details
GNU Make uses sh
by default, and as far as I know source
isn't available in there. Instead .
can be used, they are alias anyway.
Or SHELL can be changed to bash
Oh, that's an interesting find! Is your sh symlinked to dash perchance? (ls -la /bin/sh
)
The interesting part is that it does work on my system. My system has /bin/sh symlinked to /bin/bash and it seems that Bash's POSIX compatibility mode also includes the source builtin when it should not. Does that warrant a bug report to bash maintainers?
@furkansimsekli Can you check de34e55?
Yes it's now being built successfully!
Is your sh symlinked to dash perchance?
Yeah, /bin/bash
is symlinked to dash
.
...it seems that Bash's POSIX compatibility mode also includes the source builtin when it should not.
Maybe POSIX mode doesn't have to be exactly sh
compatible, i don't know... I'm not sure if it's enough for a bug report, but why not?