I am very new to make and have wanted to learn more about conditionals.
I want to check the result of whoami in a makefile but keep getting errors
ifeq ($(whoami), "John")
echo "PC"
else
echo "Server"
endif
Here it gives me an error on the line echo "Server" saying *** missing separator how do I fix it?
CodePudding user response:
You will want something like this:
#!/bin/bash
if [[ $(whoami) == "John" ]]; then
echo "PC"
else
echo "Server"
fi
As mentioned by Primitive, bash does not use ifeq and endif.
EDIT
As per chepner's comment, this question could be about Make and not Bash, in that case, this should work:
SHELL = /bin/sh
USER = $(shell whoami)
buildbegin:
ifeq ($(USER), John)
@echo PC
else
@echo Server
endif
Can be tested with make -f $MakeFile
