APUE Learning Example Source Code
guowenxue
2020-04-30 b0053f87034ff358b7ccadc7f2d9643e9a7767e7
prj1_tlv/makefile
@@ -1,11 +1,42 @@
BINAME=tlv_sample
APP1_NAME=tlv_client
APP2_NAME=tlv_server
all:
   gcc *.c -o ${BINAME}
#CROSSTOOL?=/opt/rpi/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-
CC=${CROSSTOOL}gcc
LD=${CROSSTOOL}ld
AS=${CROSSTOOL}as
AR=${CROSSTOOL}ar
clean:
   rm -f ${BINAME}
# subdirectory
SUBDIR1=lylib
run: all
   ./${BINAME}
# Compile flags
CFLAGS=-Wall -Werror
CFLAGS+=-I${SUBDIR1}
# Linker flags
LDFLAGS=-L${SUBDIR1} -l${SUBDIR1}
LDFLAGS+=-lpthread
all: banner lib${SUBDIR1}
   ${CC} ${CFLAGS} tlv_client.c -o ${APP1_NAME} ${LDFLAGS}
   ${CC} ${CFLAGS} tlv_server.c -o ${APP2_NAME} ${LDFLAGS}
banner:
   @echo "Start to compile ${SRC} by ${CC}"
lib${SUBDIR1}:
   @make CROSSTOOL=${CROSSTOOL} -C ${SUBDIR1}
clean:
   @make clean -C ${SUBDIR1}
   rm -f ${APP1_NAME} ${APP2_NAME}
distclean: clean
   @make distclean -C ${SUBDIR1}
   @rm -f *.o
   @rm -f cscope* tags
   @rm -f *.log