merge
[dcpu16] / Makefile
index 70445ff8f27955f86faadebf6200ff1805748700..1ecac46d40f73f94e96b87c3c86e1bea893befdc 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -4,23 +4,36 @@
 ifeq "$(origin CC)" "default"
 CC = clang
 endif
+ifeq ($(CC),gcc)
+CPPFLAGS += -DWANT_VARIADIC_VOIDP_CAST
+endif
+
 
 PROGRAMS = as-dcpu16 vm-dcpu16
-SOURCES = common.c dcpu16.c as-dcpu16.c vm-dcpu16.c display.c
+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 += -lreadline
-LDFLAGS += -L/usr/X11/lib -lpng
 
 UNAME := $(shell uname)
 ifeq ($(UNAME),Darwin)
 CPPFLAGS += -DHAVE_FUNOPEN
+# libpng from system x11, libvncserver from macports
+CPPFLAGS += -I/usr/X11/include -I/opt/local/include
+LDFLAGS += -L/usr/X11/lib -L/opt/local/lib
 endif
 ifeq ($(UNAME),Linux)
-CPPFLAGS += -DHAVE_FOPENCOOKIE -D_XOPEN_SOURCE=600
+# 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
+# linux needs librt for clock_gettime
+LDFLAGS += -lrt
 endif
 
+CPPFLAGS += -DHAVE_LIBVNCSERVER -DHAVE_LIBPNG
+LDFLAGS += -lvncserver -lpng -lreadline
 
 all:   $(PROGRAMS)
 
@@ -33,9 +46,9 @@ depend:       .depend
 include .depend
 
 
-vm-dcpu16:     vm-dcpu16.o dcpu16.o common.o display.o
+vm-dcpu16:     vm-dcpu16.o dcpu16.o common.o hw_clock.o hw_keyboard.o hw_lem1802.o hw_spc2000.o
 
-as-dcpu16:     as-dcpu16.o common.o
+as-dcpu16:     as-dcpu16.o dcpu16.o common.o
 
 clean: 
        @rm -rf $(PROGRAMS) *.o *.dSYM .depend