X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=Makefile;h=2560edffac3bade1fde45492e063c4862c7cf018;hb=e22bdfa072479f7ea72081808c0b1fa3602e726c;hp=f3324efabc61a143f42e044148b85957ad7dd30b;hpb=95a676586942a2ddd1040503754d05ca91f6e3a7;p=dcpu16 diff --git a/Makefile b/Makefile index f3324ef..2560edf 100644 --- a/Makefile +++ b/Makefile @@ -1,18 +1,50 @@ #!make # -PROGRAMS = dcpu16 +ifeq "$(origin CC)" "default" +CC = clang +endif + +PROGRAMS = as-dcpu16 vm-dcpu16 +SOURCES = common.c dcpu16.c as-dcpu16.c vm-dcpu16.c \ + hw_clock.c hw_keyboard.c hw_lem1802.c hw_spc2000.c + +CPPFLAGS += -DDEBUG + +CPPFLAGS += -DHAVE_LIBPNG -I/usr/X11/include/ CFLAGS = -g -Wall -Wextra -pedantic -std=c99 -LDFLAGS = +LDFLAGS += -lreadline +LDFLAGS += -L/usr/X11/lib -lpng + +UNAME := $(shell uname) +ifeq ($(UNAME),Darwin) +CPPFLAGS += -DHAVE_FUNOPEN +endif +ifeq ($(UNAME),Linux) +# linux needs _GNU_SOURCE for fopencookie +# linux needs _XOPEN_SOURCE=600 (provided by _GNU_SOURCE) for getopt and strdup +CPPFLAGS += -DHAVE_FOPENCOOKIE -D_GNU_SOURCE +endif + +CPPFLAGS += -DHAVE_LIBVNCSERVER -I/opt/local/include +LDFLAGS += -L/opt/local/lib -lvncserver all: $(PROGRAMS) +depend: .depend + +.depend: $(SOURCES) + @rm -f ./.depend + $(CC) $(CFLAGS) -MM $^ >> ./.depend + +include .depend + -as-dcpu16: as-dcpu16.o +vm-dcpu16: vm-dcpu16.o dcpu16.o common.o hw_clock.o hw_keyboard.o hw_lem1802.o hw_spc2000.o -dcpu16: dcpu16.o +as-dcpu16: as-dcpu16.o dcpu16.o common.o clean: - @rm -rf $(PROGRAMS) *.o *.dSYM + @rm -rf $(PROGRAMS) *.o *.dSYM .depend check: $(PROGRAMS)