chiark / gitweb /
Merge and end branch-hostside-wip-2008-01-25 PROPERLY; cvs up -j branch-hostside...
[trains.git] / hostside / Makefile
index 1beed99740fbd13c5d542c7256d904f776959f0e..95873fe9a245c037420674a1dce248745c8c912a 100644 (file)
@@ -1,21 +1,41 @@
 #
 
-AUTOINCS=      layoutinfo.h selectors.h
+TRAINS=                santafe shinkansen
+
+AUTOINCS=      auproto-pic.h layoutinfo.h selectors.h retransmit-table.h \
+               errorcodes.h stastate.h record-y.h record-l.h
+TARGETS=       hostside-old gui-plan-bot realtime \
+               $(addsuffix .speeds.ps, $(TRAINS))
 
 include ../common.make
 include ../cprogs.make
 
-TARGETS=       hostside hostside-old gui-plan-bot
-
+default:       all
+recurse:       all
+for-pic:
 all:           $(TARGETS)
 
 hostside-old:  serialio.o nmra.o main.o encode.o utils.o
                $(LINK)
 
-hostside:      hostside.o serialio.o client.o obc.o commands.o utils.o \
-                nmra.o encode.o retransmit.o output.o auproto-pic.o \
-                parseutils.o \
-                -loop
+BESSAR=bessar:things/trains-bessar/hostside/.
+
+SPECIAL_CFLAGS_record-l= $(FLEXCFLAGS)
+
+on-bessar:     $(TARGETS)
+               RSYNC_RSH=fsh rsync $(TARGETS) $(BESSAR)
+
+%.on-bessar:   %
+               RSYNC_RSH=fsh rsync $^ $(BESSAR)
+
+realtime:      realtime.o startup.o cdumgr.o safety.o trackloc.o       \
+                speed.o actual.o retransmit.o persist.o resolve.o      \
+                cmdinput.o commands.o obc.o eventhelp.o                \
+                record.o record-l.o record-y.o                         \
+                utils.o serialio.o parseutils.o auproto-pic.o          \
+                nmra.o encode.o movpos.o                               \
+                ../layout/ours.layout-data.o                           \
+                __oop-read-copy.o -loop
                $(LINK)
 
 proto-expanded:        ../cebpic/README.protocol
@@ -26,21 +46,38 @@ gui-plan-bot: gui-plan-%: gui-plan.o utils.o parseutils.o \
                 __oop-read-copy.o -loop
                $(LINK) -L/usr/X11R6/lib -lXpm -lX11
 
-commands.o auproto-pic.o: auproto-pic.h
-
-auproto-%:     parse-proto-spec proto-expanded skelproto-%
+auproto-pic.c auproto-pic.h: auproto-%: \
+                       parse-proto-spec proto-expanded skelproto-%
                ./$+ $o
 
+record-y.h: record-y.c
+record-l.h: record-l.c
+
 layoutinfo.h:  ../layout/ours.layout-data.c Makefile
                sed -e '/^#include/,$$d' $< $o
 
-selectors.h:   selectors.h.gen
-               ./$< $o
+selectors.h retransmit-table.h errorcodes.h stastate.h: %: %.gen
+               (echo "/*autogenerated*/" && ./$<) $o
 
 safety:                safety.o utils.o trackloc.o ../layout/ours.layout-data.o
                $(LINK)
 
+%.speeds.ps %.speeds.record: ./analyse-speeds
+               ./$^ $*
+
+%:             %.gen
+               ./$^ $o
+
+hostside:      hostside.o serialio.o client.o obc.o commands.o utils.o \
+                nmra.o encode.o retransmit.o output.o auproto-pic.o \
+                parseutils.o \
+                record-l.o record-y.o record.o \
+                -loop
+               $(LINK)
+
 clean:
                rm -f *.o *.d $(TARGETS) selectors.h
+               rm -f auproto-pic.h *~ core proto-expanded
+               rm -f record-[yl].[ch]
 
 include $(wildcard *.d)