ikarus/bin/Makefile

64 lines
1.6 KiB
Makefile

CFLAGS = -I/opt/local/include -Wall -DNDEBUG -O3
#CFLAGS = -I/opt/local/include -Wall -g
LDFLAGS = -L/opt/local/lib -g -ldl -lgmp -lz -lm
CC = gcc
ifeq ($(shell /usr/bin/uname), "Linux")
LDFLAGS += -rdynamic # dlsym(local_symbol) won't work otherwise
endif
objects = ikarus-collect.o ikarus-runtime.o ikarus-main.o ikarus-fasl.o \
ikarus-exec.o ikarus-print.o ikarus-enter.o ikarus-symbol-table.o \
ikarus-weak-pairs.o ikarus-numerics.o ikarus-flonums.o verify-integrity.o
all: ikarus
ikarus: $(objects)
$(CC) $(LDFLAGS) -o ikarus $(objects)
ikarus-main.o: ikarus-main.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-main.c
ikarus-enter.o: ikarus-enter.s ikarus.h
$(CC) $(CFLAGS) -c ikarus-enter.s
ikarus-runtime.o: ikarus-runtime.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-runtime.c
ikarus-fasl.o: ikarus-fasl.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-fasl.c
verify-integrity.o: verify-integrity.c ikarus.h
$(CC) $(CFLAGS) -c verify-integrity.c
ikarus-exec.o: ikarus-exec.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-exec.c
ikarus-print.o: ikarus-print.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-print.c
ikarus-collect.o: ikarus-collect.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-collect.c
ikarus-weak-pairs.o: ikarus-weak-pairs.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-weak-pairs.c
ikarus-symbol-table.o: ikarus-symbol-table.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-symbol-table.c
ikarus-numerics.o: ikarus-numerics.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-numerics.c
ikarus-flonums.o: ikarus-flonums.c ikarus.h
$(CC) $(CFLAGS) -c ikarus-flonums.c
ikarus.h: ikarus-data.h
touch ikarus.h
clean:
rm -f $(obj)
realclean:
rm -f $(obj) ikarus