[darcs-users] Compile error on Solaris 10 Intel

Peter Mechlenborg peter at mu.dk
Tue Sep 5 09:37:15 UTC 2006


j3h wrote:
 > > Running bad_pending_after_pull.sh ...            FAILED!
 > > Output from failed bad_pending_after_pull.sh:
 > >
 > > [ -n "$DARCS" ] || DARCS=$PWD/../darcs
 > > export EMAIL=tester
 > > bad_pending_after_pull.sh: EMAIL=tester: is not an identifier
 >
 > I'm no expert, but it looks like the Solaris shell doesn't like the
 > syntax that the darcs tests are using. I think that pure Bourne shell
 > doesn't allow assignment in an export statement. This could be fixed
 > by running the tests with Bash or submitting a patch that separates
 > the export statement from the assignment statements.
 >
 > Josh

You were right that this was a problem with the shell.  Apparently sh
is not mapped to bash on Solaris.  I changed the tests so they used
bash instead of sh and the error above disappeared.

Unfortunately this did not remove all the test errors.  If anyone has
ideas as to how these errors can be fixed, I would very much
appreciate it.  Should this discussion be moved to the developer
mailing list?

Below is my current test results.

Cheers,

  --  Peter


[peter at arnold:~/tmp/darcs-1.0.8] make test
... [snip] ...
pull......................ok
        2/19 unexpectedly succeeded
... [snip] ...
whatsnew..................ok 1/0sh: date.t: not found
whatsnew..................ok
All tests successful (2 subtests UNEXPECTEDLY SUCCEEDED).
Files=30, Tests=257, 296 wallclock secs (56.94 cusr + 123.62 csys = 
180.56 CPU)
... [snip] ...
Running rmdir.sh ...                             FAILED!
Output from failed rmdir.sh:

test $DARCS || DARCS=$PWD/../darcs

rm -rf temp1
mkdir temp1
cd temp1
$DARCS init
mkdir foo
echo hello world > foo/bar
echo hello world > foo/baz
mkdir foo/dir
$DARCS add foo foo/bar foo/dir foo/baz
$DARCS record -a -m add -A x
Finished recording patch 'add'
rm -rf foo
test -e _darcs/pristine/foo/baz
test -d _darcs/pristine/foo/dir
test -e _darcs/pristine/foo/bar
test -d _darcs/pristine/foo
$DARCS record -a -m del -A x
Finished recording patch 'del'
test ! -e _darcs/pristine/foo/baz
test ! -d _darcs/pristine/foo/dir
test ! -e _darcs/pristine/foo/bar
test ! -d _darcs/pristine/foo
cd ..
rm -rf temp1

# it should be ok to apply a rmdir patch on a non-empty directory in working
mkdir temp1
cd temp1
$DARCS init
mkdir foo
echo hello world > foo/bar
$DARCS add foo foo/bar
$DARCS record -a -m add -A x
Finished recording patch 'add'
cd ..
# get temp2 and add some extra stuff to the directory
rm -rf temp2
$DARCS get temp1 temp2
Copying patch 1 of 1... done!
Finished getting.
cd temp2
echo hello world > foo/baz
cd ..
# create the darcs rmdir patch
cd temp1
rm -rf foo
$DARCS record -a -m del -A x
Finished recording patch 'del'
cd ..
# pull the rmdir patch into temp2
cd temp2
test -e foo/baz
test -e foo/bar
test -d foo
test -e _darcs/pristine/foo/bar
test -d _darcs/pristine/foo
$DARCS pull -a

darcs failed:  user error (Error applying patch to working dir:
./foo: removeDirectory: already exists (File exists))
This may have left your working directory an inconsistent
but recoverable state. If you had no un-recorded changes
by using 'darcs revert' you should be able to make your
working directory consistent again.


Pulling from "/export/home/peter/tmp/darcs-1.0.8/tests/temp1"...
Running sametwice.sh ...                         passed.
Running send.sh ...                              FAILED!
Output from failed send.sh:

test $DARCS || DARCS=$PWD/../darcs
export DARCS_EDITOR=echo

rm -rf temp1 temp2
mkdir temp1 temp2

cd temp2
$DARCS init

# setup test
cd ../temp1
$DARCS init
touch foo bar
$DARCS add foo bar
$DARCS record -a -m add_foo_bar -A x
Finished recording patch 'add_foo_bar'

# Test that a default preference value is not needed to send
$DARCS send --author=me -a --to=random at random --sendmail-command='grep 
-x "To: random at random" %<' ../temp2

darcs failed:  failed to send mail to: random at random
... [snip] ...
TESTS FAILED!
        rmdir.sh
        send.sh
make: *** [test_scripts] Error 1






More information about the darcs-users mailing list