Makefile.linux 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. ###########################################
  2. # Simple Makefile for HIDAPI test program
  3. #
  4. # Alan Ott
  5. # Signal 11 Software
  6. # 2010-06-01
  7. ###########################################
  8. all: hidtest-libusb libs
  9. libs: libhidapi-libusb.so
  10. CC ?= gcc
  11. CFLAGS ?= -Wall -g -fpic
  12. CXX ?= g++
  13. CXXFLAGS ?= -Wall -g -fpic
  14. LDFLAGS ?= -Wall -g
  15. COBJS_LIBUSB = hid.o
  16. COBJS = $(COBJS_LIBUSB)
  17. CPPOBJS = ../hidtest/hidtest.o
  18. OBJS = $(COBJS) $(CPPOBJS)
  19. LIBS_USB = `pkg-config libusb-1.0 --libs` -lrt -lpthread
  20. LIBS = $(LIBS_USB)
  21. INCLUDES ?= -I../hidapi `pkg-config libusb-1.0 --cflags`
  22. # Console Test Program
  23. hidtest-libusb: $(COBJS_LIBUSB) $(CPPOBJS)
  24. $(CXX) $(LDFLAGS) $^ $(LIBS_USB) -o $@
  25. # Shared Libs
  26. libhidapi-libusb.so: $(COBJS_LIBUSB)
  27. $(CC) $(LDFLAGS) $(LIBS_USB) -shared -fpic -Wl,-soname,$@.0 $^ -o $@
  28. # Objects
  29. $(COBJS): %.o: %.c
  30. $(CC) $(CFLAGS) -c $(INCLUDES) $< -o $@
  31. $(CPPOBJS): %.o: %.cpp
  32. $(CXX) $(CXXFLAGS) -c $(INCLUDES) $< -o $@
  33. clean:
  34. rm -f $(OBJS) hidtest-libusb libhidapi-libusb.so ../hidtest/hidtest.o
  35. .PHONY: clean libs