# Cyclone Scheme # Copyright (c) 2014, Justin Ethier # All rights reserved. # # Makefile for bootstrapping cyclone from generated C files. CC = gcc CFLAGS = -g -I. LIBS = -lcyclone -lm COBJ = scheme/base scheme/read scheme/write scheme/char scheme/eval scheme/file scheme/cyclone/common scheme/cyclone/libraries scheme/cyclone/transforms scheme/cyclone/cgen scheme/cyclone/util CFILES = $(addsuffix .c, $(COBJ)) COBJECTS=$(CFILES:.c=.o) %.o: %.c %.h $(CC) $(CFLAGS) $< -c -o $@ all: cyclone icyc unit-tests libcyclone.a: runtime.c runtime.h $(CC) -g -c runtime.c -o runtime.o ar rcs libcyclone.a runtime.o cyclone: $(COBJECTS) libcyclone.a $(CC) cyclone.c $(CFLAGS) -c -o cyclone.o $(CC) cyclone.o $(COBJECTS) -L. $(LIBS) $(CFLAGS) -o cyclone icyc: cyclone ./cyclone icyc.scm unit-tests: unit-tests.scm ./cyclone unit-tests.scm && ./unit-tests #.PHONY: clean #clean: # rm -rf a.out http stack-watch stack-tests *.o