X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=Makefile;h=2560edffac3bade1fde45492e063c4862c7cf018;hb=0a6b0889c67675bd71681ec41774d2ea57ce5335;hp=1a931a1c8f709724d37f398aabfaea17c30c6534;hpb=e9cced1de1d6428996d255243b48513e82f233a5;p=dcpu16 diff --git a/Makefile b/Makefile index 1a931a1..2560edf 100644 --- a/Makefile +++ b/Makefile @@ -1,23 +1,50 @@ #!make # + +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 -CFLAGS = -g -Wall -Wextra -pedantic -std=c99 -LDFLAGS = -lreadline +CPPFLAGS += -DDEBUG -HEADERS = dcpu16.h +CPPFLAGS += -DHAVE_LIBPNG -I/usr/X11/include/ +CFLAGS = -g -Wall -Wextra -pedantic -std=c99 +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) -%.o: %.c $(HEADERS) +depend: .depend + +.depend: $(SOURCES) + @rm -f ./.depend + $(CC) $(CFLAGS) -MM $^ >> ./.depend + +include .depend -vm-dcpu16: vm-dcpu16.o dcpu16.o -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)