minor linux portability for buffered image writes
[dcpu16] / Makefile
index fd05c43b8d484609d68e7835d5512bf4629e4f60..fdd94d25be26003fc452bc190786d4c7328dce0b 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -6,11 +6,22 @@ CC = clang
 endif
 
 PROGRAMS = as-dcpu16 vm-dcpu16
-SOURCES = common.c dcpu16.c as-dcpu16.c vm-dcpu16.c
+SOURCES = common.c dcpu16.c as-dcpu16.c vm-dcpu16.c display.c
 
-CPPFLAGS = -D_XOPEN_SOURCE=600
+CPPFLAGS += -DHAVE_LIBPNG -I/usr/X11/include/
 CFLAGS = -g -Wall -Wextra -pedantic -std=c99
-LDFLAGS = -lreadline
+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
 
 
 all:   $(PROGRAMS)
@@ -24,7 +35,7 @@ depend:       .depend
 include .depend
 
 
-vm-dcpu16:     vm-dcpu16.o dcpu16.o common.o
+vm-dcpu16:     vm-dcpu16.o dcpu16.o common.o display.o
 
 as-dcpu16:     as-dcpu16.o common.o