I just stumbled on this problem. I tried to write a very basic Makefile target:
Makefile
core: myprogram ulimit -c 10000 ./myprogram
Short answer: add a semicolon (;) on the end of the command. In this way you will invoke FULL shell with builtin tools.
ulimit -c 10000;
instead of
ulimit -c 10000