1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93
|
#CFLAGS = -O4 -Wall -DNDEBUG -DLOSSTEST
CFLAGS =-Wall -Wshadow -DBB_FEATURE_UDPCAST_FEC -D_FILE_OFFSET_BITS=64
LDFLAGS =-s -Wl,-warn-common
LIBS=-lpthread
BUSYBOX=../udp-busybox/busybox
BBTARGET=$(BUSYBOX)/udpcast
ARCH = $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ -e s/arm.*/arm/ -e s/sa110/arm/)
ifeq ($(ARCH),i386)
CFLAGS += -DARCH_X86
endif
CFLAGS += -DNO_BB
all: udp-receiver udp-sender udp-receiver.1 udp-sender.1
#all: fec-test
disk: udpcast.img.gz
#disks: sender.img.gz receiver.img.gz
clean:
rm -f *.o udp-sender udp-receiver udp-sender.1 udp-receiver.1 *~
install: udp-sender udp-receiver
install -d $(DESTDIR)/usr/bin
install -m 755 udp-sender udp-receiver $(DESTDIR)/usr/bin
install -d $(DESTDIR)/usr/share/man/man1
install -m 644 udp-sender.1 udp-receiver.1 $(DESTDIR)/usr/share/man/man1
udp-sender: udp-sender.o socklib.o udpcast.o rate-limit.o \
sender-diskio.o senddata.o udps-negotiate.o \
fifo.o produconsum.o participants.o log.o statistics.o \
fec.o udpc_version.o
gcc $(LDFLAGS) $^ -lpthread -o $@
udp-receiver: udp-receiver.o socklib.o udpcast.o \
receiver-diskio.o receivedata.o udpr-negotiate.o produconsum.o \
fifo.o log.o statistics.o fec.o udpc_version.o
gcc $(LDFLAGS) $^ -lpthread -o $@
udp-receiver.1 udp-sender.1: ./html2man.pl cmd.html
perl $< $^
fec-test: fec-test.o
gcc $(LDFLAGS) $^ -o $@
fec.o: fec.c
gcc -c $(CFLAGS) -fno-inline $<
bbcopy: $(BBTARGET) \
$(BBTARGET)/fec.c $(BBTARGET)/participants.h $(BBTARGET)/socklib.c \
$(BBTARGET)/udp-receiver.c $(BBTARGET)/fec.h \
$(BBTARGET)/produconsum.c $(BBTARGET)/socklib.h \
$(BBTARGET)/udp-receiver.h $(BBTARGET)/fec-test.c \
$(BBTARGET)/produconsum.h $(BBTARGET)/statistics.c \
$(BBTARGET)/udpr-negotiate.c $(BBTARGET)/fifo.c \
$(BBTARGET)/rate-limit.c $(BBTARGET)/statistics.h \
$(BBTARGET)/udp-sender.c $(BBTARGET)/fifo.h $(BBTARGET)/rate-limit.h \
$(BBTARGET)/udpcast.c $(BBTARGET)/udp-sender.h \
$(BBTARGET)/libbb_udpcast.h $(BBTARGET)/receivedata.c \
$(BBTARGET)/udpcast.h $(BBTARGET)/udps-negotiate.c \
$(BBTARGET)/log.c $(BBTARGET)/receiver-diskio.c \
$(BBTARGET)/udpc-protoc.h $(BBTARGET)/util.h \
$(BBTARGET)/log.h $(BBTARGET)/senddata.c $(BBTARGET)/udpc_version.c \
$(BBTARGET)/participants.c $(BBTARGET)/sender-diskio.c \
$(BBTARGET)/udpc_version.h \
$(BBTARGET)/Config.in $(BBTARGET)/Makefile.in $(BBTARGET)/Makefile
$(BBTARGET):
mkdir $(BBTARGET)
$(BBTARGET)/Makefile: Makefile.busybox
cp -f Makefile.busybox $(BBTARGET)/Makefile
$(BBTARGET)/Makefile.in: Makefile.in.busybox
cp -f Makefile.in.busybox $(BBTARGET)/Makefile.in
$(BBTARGET)/%.c: %.c
cp -f $< $(BBTARGET)
$(BBTARGET)/%.h: %.h
cp -f $< $(BBTARGET)
$(BBTARGET)/Config.in: Config.in
cp -f $< $(BBTARGET)
bb: bbcopy
make -C $(BUSYBOX)
|