TRAINS= santafe shinkansen
-AUTOINCS= auproto-pic.h layoutinfo.h selectors.h retransmit-table.h \
- errorcodes.h stastate.h record-y.h record-l.h \
+AUTOINCS= auproto-pic.h layoutinfo.h retransmit-table.h \
+ errorcodes.h stastate.h record-y.h record-l.h \
realtime+dflags.h input-codes.h
-TARGETS= hostside-old gui-plan-bot realtime topology-dump \
- evdev-manip hiddev-test \
- $(addsuffix .speeds.ps, $(TRAINS)) \
+
+TARGETS= hostside-old gui-plan-bot topology-dump \
+ evdev-manip hiddev-test realtime \
+ $(addsuffix .speeds.ps, $(TRAINS)) \
$(addsuffix .speeds.record, $(TRAINS))
INPUT_H= /usr/include/linux/input.h
+LIBOOP_OBJS= __oop-read-copy.o -loop
+LAYOUT_DATA= ../layout/ours.layout-data
+
include ../common.make
include ../cprogs.make
for-pic:
all: $(TARGETS)
+#---------- executables ----------
+
hostside-old: serialio.o nmra.o main.o encode.o utils.o
- $(LINK)
-BESSAR=bessar:things/trains-bessar/hostside/.
+topology-dump: topology-dump.o utils.o $(LAYOUT_DATA).o
-SPECIAL_CFLAGS_record-l= $(FLEXCFLAGS)
+evdev-manip: evdev-manip.o utils.o $(LIBOOP_OBJS)
-on-bessar: $(TARGETS)
- RSYNC_RSH=fsh rsync $(TARGETS) $(BESSAR)
+hiddev-test: hiddev-test.o utils.o
-%.on-bessar: %
- RSYNC_RSH=fsh rsync $^ $(BESSAR)
+gui-plan-bot: gui-plan-%: gui-plan.o utils.o parseutils.o obc.o \
+ ../layout/ours.dgram-%.plandata.o \
+ $(LAYOUT_DATA).o $(LIBOOP_OBJS)
+ $(LINK) -L/usr/X11R6/lib -lXpm -lX11
-REALTIME_CORE= realtime startup safety trackloc \
- speed actual retransmit persist resolve \
- cmdinput commands obc eventhelp simulate \
- record record-l record-y \
- utils serialio parseutils auproto-pic \
- nmra encode movpos rtprio \
- ../layout/ours.layout-data
+#---------- realtime (executable) ----------
-LIBOOP_OBJS= __oop-read-copy.o -loop
+REALTIME_CORE= realtime startup safety trackloc \
+ speed actual retransmit persist resolve \
+ cmdinput commands obc eventhelp simulate \
+ record record-l record-y \
+ utils serialio parseutils auproto-pic \
+ nmra encode movpos rtprio \
+ $(LAYOUT_DATA)
REALTIME_CORE_OBJS= $(addsuffix .o, $(REALTIME_CORE))
realtime: $(REALTIME_CORE_OBJS) $(LIBOOP_OBJS) -lm
- $(LINK)
-proto-expanded: ../cebpic/README.protocol
- expand <$< $o
+#---------- other targets ----------
-topology-dump: topology-dump.o utils.o ../layout/ours.layout-data.o
- $(LINK)
+%.speeds.ps %.speeds.record: ./analyse-speeds \
+ ../layout/ours.redacted.shellvars %.manual
+ ./$< $*
-gui-plan-bot: gui-plan-%: gui-plan.o utils.o parseutils.o obc.o \
- ../layout/ours.dgram-%.plandata.o \
- ../layout/ours.layout-data.o \
- $(LIBOOP_OBJS)
- $(LINK) -L/usr/X11R6/lib -lXpm -lX11
+#---------- autogenerated input files ----------
+
+proto-expanded: ../cebpic/README.protocol
+ expand <$< $o
auproto-pic.c auproto-pic.h: auproto-%: \
parse-proto-spec proto-expanded skelproto-%
record-l.h: record-l.c
layoutinfo.h: ../layout/ours.layout-data.c Makefile
- sed -e '/^#include/,$$d' $< $o
+ sed -e '/^#include/,$$d' $< $(ocmp)
-selectors.h retransmit-table.h errorcodes.h stastate.h: %: %.gen
+retransmit-table.h errorcodes.h stastate.h: %: %.gen
(echo "/*autogenerated*/" && ./$<) $o
realtime+dflags.h: debug-extractor $(addsuffix .c, $(REALTIME_CORE))
- ./$^ >$@.new
- cmp $@ $@.new || mv -f $@.new $@
-
-evdev-manip: evdev-manip.o utils.o $(LIBOOP_OBJS)
-
-hiddev-test: hiddev-test.o utils.o
-
-safety: safety.o utils.o trackloc.o ../layout/ours.layout-data.o
- $(LINK)
+ ./$^ $(ocmp)
input-codes.h: extract-input-codes $(INPUT_H)
./$^ $o
-%.speeds.ps %.speeds.record: ./analyse-speeds \
- ../layout/ours.redacted.shellvars %.manual
- ./$< $*
-
%: %.gen
./$^ $o
+#---------- administrative pseudo targets ----------
+
tidy:
rm -rf ./+dump.*
clean: tidy
- rm -f *.o *.d $(TARGETS) selectors.h
+ rm -f *.o *.d $(TARGETS) $(AUTOINCS)
rm -f auproto-pic.h *~ core proto-expanded
rm -f record-[yl].[ch]
+#---------- copying things to bessar (obsolete?) ----------
+
+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)
+
+
include $(wildcard *.d)