Re: [pure-lang-users] Proposed syntax changes
Status: Beta
Brought to you by:
agraef
From: Ryan S. <rya...@us...> - 2008-08-19 10:57:50
|
On Aug 19, 2008, at 05:20, Albert Graef wrote: > Ryan Schmidt wrote: >>> DYLD_LIBRARY_PATH=. PURELIB=lib ./pure -n -v7 lib/prelude.pure | >>> diff >>> test/prelude.log -; echo $? >>> >>> (That should print just the exit code '0' if everything is all >>> right.) >> >> It does print 0. > > Then everything should be all right and make check should work ok, too > (all make check does is in fact checking the return code of that diff > command). > > I'm beginning to suspect that ./pure might pick up an old installed > libpure.dylib from somewhere. Can you please run 'sudo make > uninstall', > verify that all libpure's have been exorcised from your system and > recheck? No, that's not it: >> Perhaps this output is helpful: >> >> $ DYLD_LIBRARY_PATH=. PURELIB=./lib ./pure -v7 ./lib/prelude.pure >> 2>&1 | diff -u - ./test/prelude.log > > That won't work. You need to pass -n before -v7 there. You're not passing -n before -v7. You're passing $(ECHO_N), and you've set $(ECHO_N) to empty on Leopard. But I don't think you should: >> The first part ("-n" being >> printed out) has been fixed, the second (the result going to the >> second line) has not. > > Hmm, I'll probably have to append that \c thingy, too. Will see what I > can do. I don't know about this "\c" thing. The issue is that "echo -n" on Leopard works, by design, in bash but not in sh. And your Makefile sets SHELL=/bin/sh. If I set $(ECHO_N) to "-n" and SHELL to /bin/bash the printing works correctly. Or you could call /bin/echo -n instead of echo -n, but I think setting SHELL to bash if bash is available is the proper solution. Here is the documentation on echo in Leopard: http://developer.apple.com/releasenotes/Darwin/RN-Unix03Conformance/ index.html#//apple_ref/doc/uid/TP40004772-DontLinkElementID_5 |