guile: fix matrix example

- add missing library in link phase
- empty true path () for if is not allowed
This commit is contained in:
Geert Janssens 2013-04-26 16:52:38 +02:00
commit 7b9c302fa1
3 changed files with 20 additions and 14 deletions

View file

@ -7,6 +7,7 @@ SWIG = ../$(top_srcdir)/preinst-swig
CC = @CC@ CC = @CC@
CXX = @CXX@ CXX = @CXX@
CFLAGS = @PLATFLAGS@ CFLAGS = @PLATFLAGS@
LIBS =
GUILE_CFLAGS = @GUILE_CFLAGS@ GUILE_CFLAGS = @GUILE_CFLAGS@
GUILE_LIBS = @GUILE_LIBS@ GUILE_LIBS = @GUILE_LIBS@
SWIGOPT = SWIGOPT =
@ -31,10 +32,10 @@ guile_clean:
sub-all: sub-all:
$(SWIG) -guile $(SWIGOPT) $(IFILE) $(SWIG) -guile $(SWIGOPT) $(IFILE)
$(CC) $(CFLAGS) -o $(TARGET) $(SRCS) $(WRAP) $(GUILE_CFLAGS) $(GUILE_LIBS) $(CC) $(CFLAGS) -o $(TARGET) $(SRCS) $(WRAP) $(GUILE_CFLAGS) $(GUILE_LIBS) $(LIBS)
sub-all-cxx: sub-all-cxx:
$(SWIG) -c++ -guile $(SWIGOPT) $(IFILE) $(SWIG) -c++ -guile $(SWIGOPT) $(IFILE)
$(CXX) $(CFLAGS) -o $(TARGET) $(SRCS) $(CXXWRAP) $(GUILE_CFLAGS) $(GUILE_LIBS) $(CXX) $(CFLAGS) -o $(TARGET) $(SRCS) $(CXXWRAP) $(GUILE_CFLAGS) $(GUILE_LIBS) $(LIBS)
# Makefile ends here # Makefile ends here

View file

@ -12,6 +12,7 @@ build:
TARGET=$(TARGET) \ TARGET=$(TARGET) \
IFILE=$(IFILE) \ IFILE=$(IFILE) \
MODULE=$(MODULE) \ MODULE=$(MODULE) \
LIBS="-lm" \
sub-all sub-all
clean: clean:

View file

@ -138,24 +138,28 @@
(set-m m1 i j (+ (get-m m1 i j) (get-m m2 i j))) (set-m m1 i j (+ (get-m m1 i j) (get-m m2 i j)))
(add-two m1 m2 i (+ j 1))) (add-two m1 m2 i (+ j 1)))
(add-two m1 m2 (+ i 1) 0)))) (add-two m1 m2 (+ i 1) 0))))
(if (null? ML) () (begin (if (null? ML) *unspecified*
(add-two M (car ML) 0 0) (begin
(add-mat M (cdr ML))))) (add-two M (car ML) 0 0)
(add-mat M (cdr ML)))))
(define (cleanup ML) (define (cleanup ML)
(if (null? ML) () (begin (if (null? ML) *unspecified*
(destroy-matrix (car ML)) (begin
(cleanup (cdr ML))))) (destroy-matrix (car ML))
(cleanup (cdr ML)))))
(define (make-random ML) ; Put random values in them (define (make-random ML) ; Put random values in them
(if (null? ML) () (begin (if (null? ML) *unspecified*
(randmat (car ML)) (begin
(make-random (cdr ML))))) (randmat (car ML))
(make-random (cdr ML)))))
(define (mul-mat m ML) (define (mul-mat m ML)
(if (null? ML) () (begin (if (null? ML) *unspecified*
(mat-mult m (car ML) m) (begin
(mul-mat m (cdr ML))))) (mat-mult m (car ML) m)
(mul-mat m (cdr ML)))))
;;; Now we'll hammer on things a little bit just to make ;;; Now we'll hammer on things a little bit just to make
;;; sure everything works. ;;; sure everything works.