code duplication
[netris.git] / Makefile
index 48062e93c185b88f58b5ab664824eb486e32e4fa..94fef74ba3b86d6d28ea21c198eb52055106e0ec 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -8,7 +8,7 @@ PROG = netris
 SPROG = netrisserver
 HEADERS = netris.h
 
-SRCS = game.c curses.c board.c util.c inet.c
+SRCS = client.c curses.c board.c util.c inet.c
 SSRCS = server.c util.c
 
 OBJS = $(SRCS:.c=.o)
@@ -18,18 +18,30 @@ DISTFILES = README FAQ INSTALL COPYING TODO CHANGES \
        configure Makefile netris.h \
        $(SRCS) server.c \
 
-all: Makefile config.h $(PROG) $(SPROG)
+all: config.h $(PROG) $(SPROG)
 
-$(PROG): $(OBJS)
+msg.h: msg.en.h $(MSG_FILE)
+       @echo "Linking $(MSG_FILE) to msg.h"
+       @echo '// WARNING! This is a generated file. Do NOT edit.' > msg.h
+       @echo '// See msg.*.h for the editable files.' >> msg.h
+       @echo '#include "$(MSG_FILE)"' >> msg.h
+
+ifneq ($(MSG_FILE),msg.en.h)
+       @echo "Adding untranslated messages to msg.h"
+       @echo '// untranslated messages from the English master file:' >> msg.h
+       @./msg_diff.sh $(MSG_FILE) < msg.en.h >> msg.h
+endif
+
+$(PROG): msg.h $(OBJS)
        $(CC) -o $(PROG) $(OBJS) $(LFLAGS) $(CFLAGS)
 
-$(SPROG): $(SOBJS)
+$(SPROG): msg.h $(SOBJS)
        $(CC) -o $(SPROG) $(SOBJS) $(LFLAGS) $(CFLAGS)
 
 .c.o:
        $(CC) $(CFLAGS) -c $<
 
-Makefile config.h: configure
+config.h: configure
        @echo "Makefile and/or config.h is out of date"
        @echo "Run ./configure now"
        @false
@@ -47,7 +59,7 @@ dist: $(DISTFILES)
        tar -cvzof $$dir.tar.gz $$dir
 
 clean:
-       rm -f $(PROG) $(OBJS) $(SPROG) $(SOBJS) a.out
+       rm -f $(PROG) $(OBJS) $(SPROG) $(SOBJS) msg.h a.out
 
 cleandir: clean
        rm -f config.mak config.h