summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorLevi Pearson <levi.pearson@harman.com>2017-02-03 18:03:37 -0700
committerLevi Pearson <levi.pearson@harman.com>2017-03-31 13:20:53 -0600
commite845e9bcf2a7651de1000e94e01b9e1a0f2aa937 (patch)
tree7e5f5dee18e0cf4fbdd12e9fe579a38ba5a39650 /examples
parent8af0629aa844b261b48f8bd45c5122e46dc8ce19 (diff)
downloadOpen-AVB-e845e9bcf2a7651de1000e94e01b9e1a0f2aa937.tar.gz
Split lib/common/avb.c/h into separate libraries
This allows pulling in gPTP client support without pulling in AVTP code and especially without pulling in a dependency on the igb library. No source had to change since avb.h just includes the broken-out headers, and there is a CPP option to include the avb_igb.h file. Makefiles were updated as well, including for all the examples that use the common avb code.
Diffstat (limited to 'examples')
-rw-r--r--examples/common/Makefile8
-rw-r--r--examples/jackd-listener/Makefile18
-rw-r--r--examples/jackd-talker/Makefile32
-rw-r--r--examples/live_stream/Makefile39
-rw-r--r--examples/simple_listener/Makefile18
-rw-r--r--examples/simple_rx/Makefile28
-rw-r--r--examples/simple_talker/Makefile31
7 files changed, 117 insertions, 57 deletions
diff --git a/examples/common/Makefile b/examples/common/Makefile
index 5e42ddbd..68a313fd 100644
--- a/examples/common/Makefile
+++ b/examples/common/Makefile
@@ -1,14 +1,16 @@
+DAEMONS_DIR = ../../daemons
+
CC ?= gcc
OPT = -O2 -g
-CFLAGS = $(OPT) -Wall -Wextra -Wno-parentheses
+WARN = -Wall -Wextra -Wno-parentheses
+CFLAGS = $(OPT) $(WARN)
+CPPFLAGS = -I$(DAEMONS_DIR)/mrpd -I$(DAEMONS_DIR)/common
all: talker_mrp_client.o listener_mrp_client.o
talker_mrp_client.o: talker_mrp_client.c talker_mrp_client.h
- $(CC) $(CFLAGS) -I../../daemons/mrpd -I../../daemons/common -c talker_mrp_client.c
listener_mrp_client.o: listener_mrp_client.c listener_mrp_client.h
- $(CC) $(CFLAGS) -I../../daemons/mrpd -I../../daemons/common -c listener_mrp_client.c
clean:
$(RM) talker_mrp_client.o listener_mrp_client.o
diff --git a/examples/jackd-listener/Makefile b/examples/jackd-listener/Makefile
index b0208530..4a526b91 100644
--- a/examples/jackd-listener/Makefile
+++ b/examples/jackd-listener/Makefile
@@ -1,18 +1,24 @@
+MRPCLIENT_DIR = ../common
+MRPLISTENER_OBJS = listener_mrp_client.o
+MRPLISTENER_TARGETS = $(addprefix $(MRPCLIENT_DIR)/,$(MRPLISTENER_OBJS))
+
+DAEMONS_DIR = ../../daemons
+
CC ?= gcc
OPT = -O2 -g
-CFLAGS = $(OPT) -Wall -Wextra -Wno-parentheses -std=gnu99
-INCFLAGS = -I../../daemons/mrpd -I../common -I../../daemons/common
+WARN = -Wall -Wextra -Wno-parentheses
+CFLAGS = $(OPT) $(WARN) -std=gnu99
+CPPFLAGS = -I$(DAEMONS_DIR)/mrpd -I$(MRPCLIENT_DIR) -I$(DAEMONS_DIR)/common
LDLIBS = -lpcap -lsndfile -ljack -lpthread
all: jack_listener
-jack_listener: jack_listener.o ../common/listener_mrp_client.o
+jack_listener: jack_listener.o $(MRPLISTENER_TARGETS)
jack_listener.o: jack_listener.c
- $(CC) $(CFLAGS) $(INCFLAGS) -c jack_listener.c
-../common/listener_mrp_client.o:
- make -C ../common/ listener_mrp_client.o
+$(MRPCLIENT_DIR)/%.o: $(MRPCLIENT_DIR)/%.c $(MRPCLIENT_DIR)/%.h
+ make -C $(MRPCLIENT_DIR) $@
%: %.o
$(CC) $^ $(LDLIBS) -o $@
diff --git a/examples/jackd-talker/Makefile b/examples/jackd-talker/Makefile
index f76bf2e0..9a6187e2 100644
--- a/examples/jackd-talker/Makefile
+++ b/examples/jackd-talker/Makefile
@@ -1,25 +1,37 @@
+AVBLIB_DIR = ../../lib/common
+AVBLIB_OBJS = avb_avtp.o avb_gptp.o avb_igb.o
+AVBLIB_TARGETS = $(addprefix $(AVBLIB_DIR)/,$(AVBLIB_OBJS))
+
+MRPCLIENT_DIR = ../common
+MRPTALKER_OBJS = talker_mrp_client.o
+MRPTALKER_TARGETS = $(addprefix $(MRPCLIENT_DIR)/,$(MRPTALKER_OBJS))
+
+IGBLIB_DIR = ../../lib/igb
+DAEMONS_DIR = ../../daemons
+
CC ?= gcc
OPT = -O2 -g
-CFLAGS = $(OPT) $(INCFLAGS) -Wall -Wextra -Wno-parentheses -std=gnu99
-INCFLAGS = -I../../lib/igb -I../../daemons/mrpd -I../common -I../../lib/common -I../../daemons/common
+WARN = -Wall -Wextra -Wno-parentheses
+CFLAGS = $(OPT) $(WARN) -std=gnu99
+CPPFLAGS = -I$(IGBLIB_DIR) -I$(DAEMONS_DIR)/mrpd -I$(MRPCLIENT_DIR) -I$(AVBLIB_DIR) -I$(DAEMONS_DIR)/common
LDLIBS = -ligb -lpci -lrt -pthread -ljack
-LDFLAGS = -L../../lib/igb
+LDFLAGS = -L$(IGBLIB_DIR)
+
+.PHONY: all clean
all: jackd_talker
-jackd_talker: jackd_talker.o jack.o ../common/talker_mrp_client.o ../../lib/common/avb.o
+jackd_talker: jackd_talker.o jack.o $(MRPTALKER_TARGETS) $(AVBLIB_TARGETS)
jack.o: jack.c jack.h defines.h
- $(CC) $(CFLAGS) -c jack.c
jackd_talker.o: jackd_talker.c defines.h jack.h
- $(CC) -c $(INCFLAGS) -I../../daemons/mrpd $(CFLAGS) jackd_talker.c
-../../lib/common/avb.o: ../../lib/common/avb.c ../../lib/common/avb.h
- make -C ../../lib/common/ avb.o
+$(AVBLIB_DIR)/%.o: $(AVBLIB_DIR)/%.h $(AVBLIB_DIR)/%.c
+ make -C $(AVBLIB_DIR) $@
-../common/talker_mrp_client.o:
- make -C ../common/ talker_mrp_client.o
+$(MRPCLIENT_DIR)/%.o: $(MRPCLIENT_DIR)/%.c $(MRPCLIENT_DIR)/%.h
+ make -C $(MRPCLIENT_DIR) $@
%: %.o
$(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
diff --git a/examples/live_stream/Makefile b/examples/live_stream/Makefile
index 4eb4feed..b5c96957 100644
--- a/examples/live_stream/Makefile
+++ b/examples/live_stream/Makefile
@@ -1,30 +1,41 @@
+AVBLIB_DIR = ../../lib/common
+AVBLIB_OBJS = avb_avtp.o avb_gptp.o avb_igb.o
+AVBLIB_TARGETS = $(addprefix $(AVBLIB_DIR)/,$(AVBLIB_OBJS))
+
+MRPCLIENT_DIR = ../common
+MRPTALKER_OBJS = talker_mrp_client.o
+MRPTALKER_TARGETS = $(addprefix $(MRPCLIENT_DIR)/,$(MRPTALKER_OBJS))
+MRPLISTENER_OBJS = listener_mrp_client.o
+MRPLISTENER_TARGETS = $(addprefix $(MRPCLIENT_DIR)/,$(MRPLISTENER_OBJS))
+
+IGBLIB_DIR = ../../lib/igb
+DAEMONS_DIR = ../../daemons
+
CC?=gcc
OPT=-O2 -g
-CFLAGS=$(OPT) -Wall -Wextra -Wno-parentheses
-INCFLAGS=-I ../../lib/igb/ -I../../daemons/mrpd -I../common -I../../lib/common -I../../daemons/common
+WARN=-Wall -Wextra -Wno-parentheses
+CFLAGS=$(OPT) $(WARN)
+CPPFLAGS=-I$(IGBLIB_DIR) -I$(DAEMONS_DIR)/mrpd -I$(MRPCLIENT_DIR) -I$(AVBLIB_DIR) -I$(DAEMONS_DIR)/common
LDLIBS=-ligb -lpci -lrt -lpthread
-LDFLAGS=-L ../../lib/igb/
+LDFLAGS=-L$(IGBLIB_DIR)
+
+.PHONY: all clean
all: talker listener
-talker: talker.o ../../lib/common/avb.o ../common/talker_mrp_client.o
+talker: talker.o $(MRPTALKER_TARGETS) $(AVBLIB_TARGETS)
talker.o: talker.c
- $(CC) $(CFLAGS) $(INCFLAGS) $(EXTRA_FLAGS) -c talker.c
-
-../common/talker_mrp_client.o: ../common/talker_mrp_client.c ../common/talker_mrp_client.h
- make -C ../common/ talker_mrp_client.o
-listener: listener.o ../../lib/common/avb.o ../common/listener_mrp_client.o
+listener: listener.o $(MRPLISTENER_TARGETS) $(AVBLIB_TARGETS)
listener.o: listener.c
- $(CC) $(CFLAGS) $(INCFLAGS) $(EXTRA_FLAGS) -c listener.c
-../common/listener_mrp_client.o: ../common/listener_mrp_client.c ../common/listener_mrp_client.h
- make -C ../common/ listener_mrp_client.o
+$(AVBLIB_DIR)/%.o: $(AVBLIB_DIR)/%.h $(AVBLIB_DIR)/%.c
+ make -C $(AVBLIB_DIR) $@
-../../lib/common/avb.o: ../../lib/common/avb.c ../../lib/common/avb.h
- make -C ../../lib/common/ avb.o
+$(MRPCLIENT_DIR)/%.o: $(MRPCLIENT_DIR)/%.c $(MRPCLIENT_DIR)/%.h
+ make -C $(MRPCLIENT_DIR) $@
%: %.o
$(CC) $(LDFLAGS) $^ $(LDLIBS) $(EXTRA_FLAGS) -o $@
diff --git a/examples/simple_listener/Makefile b/examples/simple_listener/Makefile
index 9a4b33a6..02d66fa8 100644
--- a/examples/simple_listener/Makefile
+++ b/examples/simple_listener/Makefile
@@ -1,18 +1,24 @@
+MRPCLIENT_DIR = ../common
+MRPLISTENER_OBJS = listener_mrp_client.o
+MRPLISTENER_TARGETS = $(addprefix $(MRPCLIENT_DIR)/,$(MRPLISTENER_OBJS))
+
+DAEMONS_DIR = ../../daemons
+
CC ?= gcc
OPT = -O2 -g
-CFLAGS = $(OPT) -Wall -Wextra -Wno-parentheses
-INCFLAGS = -I../../daemons/mrpd -I../common -I../../daemons/common
+WARN=-Wall -Wextra -Wno-parentheses
+CFLAGS=$(OPT) $(WARN)
+CPPFLAGS = -I$(DAEMONS_DIR)/mrpd -I$(MRPCLIENT_DIR) -I$(DAEMONS_DIR)/common
LDLIBS = -lpcap -lsndfile -pthread
all: simple_listener
-simple_listener: simple_listener.o ../common/listener_mrp_client.o
+simple_listener: simple_listener.o $(MRPLISTENER_TARGETS)
simple_listener.o: simple_listener.c
- $(CC) $(CFLAGS) $(INCFLAGS) -c simple_listener.c
-../common/listener_mrp_client.o: ../common/listener_mrp_client.c ../common/listener_mrp_client.h
- make -C ../common/ listener_mrp_client.o
+$(MRPCLIENT_DIR)/%.o: $(MRPCLIENT_DIR)/%.c $(MRPCLIENT_DIR)/%.h
+ make -C $(MRPCLIENT_DIR) $@
%: %.o
$(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
diff --git a/examples/simple_rx/Makefile b/examples/simple_rx/Makefile
index bf83a484..c27e811b 100644
--- a/examples/simple_rx/Makefile
+++ b/examples/simple_rx/Makefile
@@ -1,23 +1,33 @@
+
+MRPCLIENT_DIR = ../common
+MRPLISTENER_OBJS = listener_mrp_client.o
+MRPLISTENER_TARGETS = $(addprefix $(MRPCLIENT_DIR)/,$(MRPLISTENER_OBJS))
+
+IGBLIB_DIR = ../../lib/igb
+IGBLIB_OBJS = igb.o
+IGBLIB_TARGETS = $(addprefix $(IGBLIB_DIR)/,$(IGBLIB_OBJS))
+
+DAEMONS_DIR = ../../daemons
+
CC ?= gcc
OPT = -O2 -g
-CFLAGS = $(OPT) -Wall -Wextra -Wno-parentheses
-IGBDIR = ../../lib/igb
-INCFLAGS = -I../../daemons/mrpd -I../common -I../../daemons/common -I$(IGBDIR)
+WARN=-Wall -Wextra -Wno-parentheses
+CFLAGS=$(OPT) $(WARN)
+CPPFLAGS = -I$(DAEMONS_DIR)/mrpd -I$(MRPCLIENT_DIR) -I$(DAEMONS_DIR)/common -I$(IGBLIB_DIR)
# GLIBC versions starting with 2.17 don't need -lrt anymore
LDLIBS = -lpcap -lsndfile -pthread -lpci -lrt
all: simple_rx
-simple_rx: simple_rx.o ../common/listener_mrp_client.o $(IGBDIR)/igb.o
+simple_rx: simple_rx.o $(MRPLISTENER_TARGETS) $(IGBLIB_TARGETS)
simple_rx.o: simple_rx.c
- $(CC) $(CFLAGS) $(INCFLAGS) -c simple_rx.c
-../common/listener_mrp_client.o: ../common/listener_mrp_client.c ../common/listener_mrp_client.h
- make -C ../common/ listener_mrp_client.o
+$(MRPCLIENT_DIR)/%.o: $(MRPCLIENT_DIR)/%.c $(MRPCLIENT_DIR)/%.h
+ make -C $(MRPCLIENT_DIR) $@
-$(IGBDIR)/igb.o: $(IGBDIR)/igb.c
- make -C $(IGBDIR) igb.o
+$(IGBLIB_DIR)/%.o: $(IGBLIB_DIR)/%.c $(IGBLIB_DIR)/%.h
+ make -C $(IGBLIB_DIR) $@
%: %.o
$(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@
diff --git a/examples/simple_talker/Makefile b/examples/simple_talker/Makefile
index bba47b03..aef9c541 100644
--- a/examples/simple_talker/Makefile
+++ b/examples/simple_talker/Makefile
@@ -1,22 +1,35 @@
+AVBLIB_DIR = ../../lib/common
+AVBLIB_OBJS = avb_avtp.o avb_gptp.o avb_igb.o
+AVBLIB_TARGETS = $(addprefix $(AVBLIB_DIR)/,$(AVBLIB_OBJS))
+
+MRPCLIENT_DIR = ../common
+MRPTALKER_OBJS = talker_mrp_client.o
+MRPTALKER_TARGETS = $(addprefix $(MRPCLIENT_DIR)/,$(MRPTALKER_OBJS))
+
+IGBLIB_DIR = ../../lib/igb
+DAEMONS_DIR = ../../daemons
+
CC?=gcc
OPT=-O2 -g
-CFLAGS=$(OPT) -Wall -Wextra -Wno-parentheses
-INCFLAGS=-I../../lib/igb -I../../daemons/mrpd -I../common -I../../lib/common -I../../daemons/common
+WARN=-Wall -Wextra -Wno-parentheses
+CFLAGS=$(OPT) $(WARN)
+CPPFLAGS=-I$(IGBLIB_DIR) -I$(DAEMONS_DIR)/mrpd -I$(MRPCLIENT_DIR) -I$(AVBLIB_DIR) -I$(DAEMONS_DIR)/common
LDLIBS=-ligb -lpci -lrt -lm -pthread
-LDFLAGS=-L../../lib/igb
+LDFLAGS=-L$(IGBLIB_DIR)
+
+.PHONY: all clean
all: simple_talker
-simple_talker: simple_talker.o ../common/talker_mrp_client.o ../../lib/common/avb.o
+simple_talker: simple_talker.o $(MRPTALKER_TARGETS) $(AVBLIB_TARGETS)
simple_talker.o: simple_talker.c
- $(CC) $(CFLAGS) $(INCFLAGS) -c simple_talker.c
-../../lib/common/avb.o: ../../lib/common/avb.h ../../lib/common/avb.c
- make -C ../../lib/common/ avb.o
+$(AVBLIB_DIR)/%.o: $(AVBLIB_DIR)/%.h $(AVBLIB_DIR)/%.c
+ make -C $(AVBLIB_DIR) $@
-../common/talker_mrp_client.o: ../common/talker_mrp_client.c ../common/talker_mrp_client.h
- make -C ../common/ talker_mrp_client.o
+$(MRPCLIENT_DIR)/%.o: $(MRPCLIENT_DIR)/%.c $(MRPCLIENT_DIR)/%.h
+ make -C $(MRPCLIENT_DIR) $@
%: %.o
$(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@