~ chicken-core (chicken-5) 7b083bfc42924b96489dc7dcd359d58182f7fc04
commit 7b083bfc42924b96489dc7dcd359d58182f7fc04 Author: felix <felix@call-with-current-continuation.org> AuthorDate: Tue May 10 11:02:47 2011 +0200 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Tue May 10 11:02:47 2011 +0200 disable -setup mode in deployment mode to handle problems reported by iraikov diff --git a/setup-api.scm b/setup-api.scm index 992e7968..e88dd302 100644 --- a/setup-api.scm +++ b/setup-api.scm @@ -242,6 +242,7 @@ (shellpath (find-program "csc")) "-feature" "compiling-extension" (if (and (feature? #:cross-chicken) + (not (deployment-mode)) (not (host-extension))) "" "-setup-mode") (if (keep-intermediates) "-k" "") diff --git a/tests/rev-app.scm b/tests/rev-app.scm new file mode 100644 index 00000000..a7dfb011 --- /dev/null +++ b/tests/rev-app.scm @@ -0,0 +1,3 @@ +(use reverser) +(assert (equal? "oof" (rev "foo"))) +(assert (equal? '(a b c) (rev '(c b a)))) diff --git a/tests/reverser/reverser.meta b/tests/reverser/reverser.meta new file mode 100644 index 00000000..6a452c18 --- /dev/null +++ b/tests/reverser/reverser.meta @@ -0,0 +1 @@ +() diff --git a/tests/reverser/reverser.scm b/tests/reverser/reverser.scm new file mode 100644 index 00000000..6af50656 --- /dev/null +++ b/tests/reverser/reverser.scm @@ -0,0 +1,9 @@ +(module reverser (rev) + (import scheme chicken) + (use srfi-13) + (define (rev x) + (cond ((string? x) (string-reverse x)) + ((symbol? x) (string->symbol (rev (symbol->string x)))) + ((list? x) (reverse x)) + ((vector? x) (list->vector (rev (vector->list x)))) + (else (error "can't reverse" x))))) diff --git a/tests/reverser/reverser.setup b/tests/reverser/reverser.setup new file mode 100644 index 00000000..68cc7a18 --- /dev/null +++ b/tests/reverser/reverser.setup @@ -0,0 +1 @@ +(standard-extension 'reverser) diff --git a/tests/runtests.sh b/tests/runtests.sh index fe2435e4..19e45245 100644 --- a/tests/runtests.sh +++ b/tests/runtests.sh @@ -26,12 +26,14 @@ for x in setup-api.so setup-api.import.so setup-download.so \ cp ../$x test-repository done -"${TEST_DIR}/../chicken-install" -init test-repository export CHICKEN_REPOSITORY=${TEST_DIR}/test-repository CHICKEN=../chicken +CHICKEN_INSTALL=${TEST_DIR}/../chicken-install ASMFLAGS= FAST_OPTIONS="-O5 -d0 -b -disable-interrupts" +$CHICKEN_INSTALL -init ${TEST_DIR}/test-repository + if test -n "$MSYSTEM"; then CHICKEN="..\\chicken.exe" ASMFLAGS=-Wa,-w @@ -40,6 +42,7 @@ if test -n "$MSYSTEM"; then fi compile="../csc -compiler $CHICKEN -v -I.. -L.. -include-path .. -o a.out" +compile2="../csc -compiler $CHICKEN -v -I.. -L.. -include-path .." compile_s="../csc -s -compiler $CHICKEN -v -I.. -L.. -include-path .." interpret="../csi -n -include-path .." @@ -292,4 +295,16 @@ tmp/xxx $PWD/tmp PATH=$PWD/tmp:$PATH xxx $PWD/tmp # this may crash, if the PATH contains a non-matching libchicken.dll on Windows: #PATH=$PATH:$PWD/tmp xxx $PWD/tmp + +echo "======================================== deployment tests" +rm -fr rev-app rev-app-2 reverser/*.import.* reverser/*.so +mkdir rev-app +CHICKEN_REPOSITORY=$CHICKEN_REPOSITORY $CHICKEN_INSTALL -t local -l $TEST_DIR reverser +CHICKEN_REPOSITORY=$CHICKEN_REPOSITORY $compile2 -deploy rev-app.scm +CHICKEN_REPOSITORY=$CHICKEN_REPOSITORY $CHICKEN_INSTALL -deploy -prefix rev-app -t local -l $TEST_DIR reverser +unset LD_LIBRARY_PATH DYLD_LIBRARY_PATH CHICKEN_REPOSITORY +rev-app/rev-app +mv rev-app rev-app-2 +rev-app-2/rev-app + echo "======================================== done."Trap