Sample Video Frame
Exercise 45: A Simple TCP/IP Client
I'm going to use the RingBuffer
to create a very simplistic network testing tool called netclient
. To do this, I have to add some stuff to the Makefile
to handle little programs in the bin/
directory.
Augment the Makefile
First, add a variable for the programs just like the unit test's TESTS
and TEST_SRC
variables:
PROGRAMS_SRC=$(wildcard bin/*.c)
PROGRAMS=$(patsubst %.c,%,$(PROGRAMS_SRC))
Then, you want to add the PROGRAMS
to the all target:
all: $(TARGET) $(SO_TARGET) tests $(PROGRAMS)
Then, add PROGRAMS
to the rm
line in the clean
target:
rm -rf build $(OBJECTS) $(TESTS) $(PROGRAMS)
Finally, you just need a target at the end to build them all:
$(PROGRAMS): CFLAGS += $(TARGET)
With these changes, you can drop simple .c
files into bin
, and make
will build them and link them to the library just like unit tests do.
Register for Learn C the Hard Way
Register today for the course and get the all currently available videos and lessons, plus all future modules for no extra charge.