Makefile 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. include ../Makefile.rule
  2. HEADERS = $(wildcard *.h)
  3. ORG_SOURCES = $(wildcard *.c)
  4. OUT_SRC = test.c
  5. SOURCES=$(filter-out ${OUT_SRC}, ${ORG_SOURCES})
  6. OBJS = $(patsubst %.c, %.o, $(SOURCES))
  7. LIBNAME = $(strip ${shell pwd |xargs basename})
  8. INCLUDES += -I${PROJECT_ROOT_PATH}/json
  9. INCLUDES += -I${PROJECT_ROOT_PATH}/list
  10. INCLUDES += -I${PROJECT_ROOT_PATH}/joylink
  11. STATIC_LIBS += ${TARGET_LIB}/libauth.a
  12. STATIC_LIBS += ${TARGET_LIB}/libjson.a
  13. STATIC_LIBS += ${TARGET_LIB}/liblist.a
  14. #STATIC_LIBS += ${TARGET_LIB}/libjoylinksdk.a
  15. STATIC_LIBS +=
  16. LIBS += -lm
  17. ifeq (${ARCH}, x86)
  18. all:${OBJS} liba libso
  19. else
  20. all:${OBJS} liba
  21. endif
  22. .SUFFIXES: .c .o
  23. .c.o:
  24. ${CC} ${CFLAGS} -c $(INCLUDES) ${STATIC_LIBS} $(LIBS) $*.c
  25. liba:${OBJS}
  26. ${AR} -crs lib${LIBNAME}.a ${OBJS}
  27. ${MV} lib${LIBNAME}.a ${TARGET_LIB}
  28. libso:${OBJS}
  29. ${CC} ${OBJS} -shared -fPIC -o lib${LIBNAME}.so
  30. ${MV} lib${LIBNAME}.so ${TARGET_LIB}
  31. test:${OBJS}
  32. ${CC} -DLIB_TEST ${OBJS} test.c -o $@ ${CFLAGS} ${INCLUDES} ${TARGET_LIB}/libjoylinksdk.a ${LIBS}
  33. clean:
  34. ${RM} *.o *.so *.a test
  35. distclean:clean
  36. ${RM} ./*.a ./*.so ${TARGET_LIB}/lib${LIBNAME}.*
  37. .PHONY:all clean test jt