Makefile 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. ifneq ($(wildcard ../.param),)
  2. include ../.param
  3. endif
  4. INC_PATH ?= /usr/include
  5. LIB_PATH ?= /usr/lib
  6. OUTPUTDIR = ./output
  7. LIBNAME = $(OUTPUTDIR)/libplink.so
  8. server_NAME = $(OUTPUTDIR)/plinkserver
  9. client_NAME = $(OUTPUTDIR)/plinkclient
  10. stitcher_NAME = $(OUTPUTDIR)/plinkstitcher
  11. INCS = ./inc
  12. LIBSRCS = ./src/process_linker.c
  13. LIBOBJS = $(LIBSRCS:.c=.o)
  14. server_SRCS = ./test/plink_server.c
  15. server_OBJS = $(server_SRCS:.c=.o)
  16. client_SRCS = ./test/plink_client.c
  17. client_OBJS = $(client_SRCS:.c=.o)
  18. stitcher_SRCS = ./test/plink_stitcher.c
  19. stitcher_OBJS = $(stitcher_SRCS:.c=.o)
  20. CFLAGS = -I$(INCS) -I$(INC_PATH)/vidmem
  21. CFLAGS += -pthread -fPIC -O
  22. $(shell if [ ! -e $(OUTPUTDIR) ];then mkdir -p $(OUTPUTDIR); fi)
  23. all: lib server client stitcher
  24. lib:
  25. $(CC) $(LIBSRCS) $(CFLAGS) -shared -o $(LIBNAME)
  26. server: lib
  27. $(CC) $(server_SRCS) $(CFLAGS) -L$(OUTPUTDIR) -L$(LIB_PATH)/vidmem -lplink -lvmem -ldl -pthread -o $(server_NAME)
  28. client: lib
  29. $(CC) $(client_SRCS) $(CFLAGS) -L$(OUTPUTDIR) -L$(LIB_PATH)/vidmem -lplink -lvmem -ldl -pthread -o $(client_NAME)
  30. stitcher: lib
  31. $(CC) $(stitcher_SRCS) $(CFLAGS) -L$(OUTPUTDIR) -L$(LIB_PATH)/vidmem -lplink -lvmem -ldl -pthread -o $(stitcher_NAME)
  32. clean:
  33. rm -rf $(OUTPUTDIR)
  34. %.o : %.c
  35. $(CC) $(CFLAGS) -c $< -o $@