Initial commit

This commit is contained in:
Bassem Girgis
2018-12-20 17:34:07 -06:00
parent 7a2d899662
commit 81b4b9e273
34743 changed files with 5940233 additions and 0 deletions

View File

@@ -0,0 +1,17 @@
TOP = ../..
SWIGEXE = $(TOP)/../swig
SWIG_LIB_DIR = $(TOP)/../$(TOP_BUILDDIR_TO_TOP_SRCDIR)Lib
SRCS =
TARGET = my-guile
INTERFACE = example.i
check: build
$(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' TARGET='$(TARGET)' guile_augmented_run
build:
$(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' SRCS='$(SRCS)' \
SWIG_LIB_DIR='$(SWIG_LIB_DIR)' SWIGEXE='$(SWIGEXE)' \
TARGET='$(TARGET)' INTERFACE='$(INTERFACE)' guile_augmented
clean:
$(MAKE) -f $(TOP)/Makefile SRCDIR='$(SRCDIR)' TARGET='$(TARGET)' guile_clean

View File

@@ -0,0 +1,27 @@
/* File : example.i */
%module example
/* A few preprocessor macros */
#define ICONST 42
#define FCONST 2.1828
#define CCONST 'x'
#define CCONST2 '\n'
#define SCONST "Hello World"
#define SCONST2 "\"Hello World\""
/* This should work just fine */
#define EXPR ICONST + 3*(FCONST)
/* This shouldn't do anything */
#define EXTERN extern
/* Neither should this (BAR isn't defined) */
#define FOO (ICONST + BAR)
/* The following directives also produce constants */
%constant int iconst = 37;
%constant double fconst = 3.14;
%include guilemain.i

View File

@@ -0,0 +1,19 @@
(or (= (ICONST) 42) (exit 1))
(display "ICONST = ")(display (ICONST))(display " (should be 42)\n")
(or (< (abs (- (FCONST) 2.1828)) 0.00001) (exit 1))
(display "FCONST = ")(display (FCONST))(display " (should be 2.1828)\n")
(or (char=? (CCONST) #\x) (exit 1))
(display "CCONST = ")(display (CCONST))(display " (should be 'x')\n")
(or (char=? (CCONST2) #\newline) (exit 1))
(display "CCONST2 = ")(display (CCONST2))(display " (this should be on a new line)\n")
(or (string=? (SCONST) "Hello World") (exit 1))
(display "SCONST = ")(display (SCONST))(display " (should be 'Hello World')\n")
(or (string=? (SCONST2) "\"Hello World\"") (exit 1))
(display "SCONST2 = ")(display (SCONST2))(display " (should be \"Hello World\")\n")
(or (< (abs (- (EXPR) (+ (ICONST) (* 3 (FCONST))))) 0.00001) (exit 1))
(display "EXPR = ")(display (abs (- (EXPR) (+ (ICONST) (* 3 (FCONST))))))(display " (should round to 0.0)\n")
(or (= (iconst) 37) (exit 1))
(display "iconst = ")(display (iconst))(display " (should be 37)\n")
(or (< (abs (- (fconst) 3.14)) 0.00001) (exit 1))
(display "fconst = ")(display (fconst))(display " (should be 3.14)\n")
(exit 0)