You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
3.7 KiB

  1. #
  2. # You can use this makefile in the MSYS environement with MinGW installed.
  3. # This soft need the windows DDK.
  4. # Please change the "C_INCLUDE_DIRS" variable with you DDK path.
  5. #
  6. PROJECT = libtuxdriver
  7. CC = gcc
  8. OBJ_DIR = ../obj
  9. SRC_DIR = ../src
  10. OUTPUT_DIR = ./
  11. TARGET = libtuxdriver.dll
  12. C_INCLUDE_DIRS = -I "C:/Program Files (x86)/MinGWStudio/MinGW/include/ddk"
  13. C_PREPROC =
  14. CFLAGS = -pipe -DUSE_MUTEX -Wall -g2 -O0
  15. RC_INCLUDE_DIRS =
  16. RC_PREPROC =
  17. RCFLAGS =
  18. LIB_DIRS =
  19. LIBS = -lwinmm -lhid -lsetupapi -lhidparse
  20. LDFLAGS = -pipe -shared -Wl,--output-def,"$(OUTPUT_DIR)\libtuxdriver.def",--out-implib,"$(OUTPUT_DIR)\libtuxdriver.a" -s
  21. SRC_OBJS = \
  22. $(OBJ_DIR)/tux_battery.o \
  23. $(OBJ_DIR)/tux_cmd_parser.o \
  24. $(OBJ_DIR)/tux_driver.o \
  25. $(OBJ_DIR)/tux_error.o \
  26. $(OBJ_DIR)/tux_eyes.o \
  27. $(OBJ_DIR)/tux_firmware.o \
  28. $(OBJ_DIR)/tux_hid_win32.o \
  29. $(OBJ_DIR)/tux_hw_status.o \
  30. $(OBJ_DIR)/tux_id.o \
  31. $(OBJ_DIR)/tux_leds.o \
  32. $(OBJ_DIR)/tux_light.o \
  33. $(OBJ_DIR)/tux_misc.o \
  34. $(OBJ_DIR)/tux_mouth.o \
  35. $(OBJ_DIR)/tux_movements.o \
  36. $(OBJ_DIR)/tux_pong.o \
  37. $(OBJ_DIR)/tux_sound_flash.o \
  38. $(OBJ_DIR)/tux_audio.o \
  39. $(OBJ_DIR)/tux_spinning.o \
  40. $(OBJ_DIR)/tux_descriptor.o \
  41. $(OBJ_DIR)/tux_sw_status.o \
  42. $(OBJ_DIR)/tux_usb.o \
  43. $(OBJ_DIR)/tux_user_inputs.o \
  44. $(OBJ_DIR)/tux_flippers.o \
  45. $(OBJ_DIR)/log.o
  46. .PHONY: make clean
  47. make:
  48. -@if [ ! -d "$(OBJ_DIR)" ]; then mkdir "$(OBJ_DIR)"; fi
  49. -@if [ ! -d "$(OUTPUT_DIR)" ]; then mkdir "$(OUTPUT_DIR)"; fi
  50. -@SubWCRev $(SRC_DIR) $(SRC_DIR)/svnrev.tmpl.h $(SRC_DIR)/svnrev.h
  51. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_battery.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_battery.o
  52. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_cmd_parser.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_cmd_parser.o
  53. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_driver.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_driver.o
  54. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_error.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_error.o
  55. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_eyes.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_eyes.o
  56. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_firmware.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_firmware.o
  57. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_hid_win32.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_hid_win32.o
  58. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_hw_status.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_hw_status.o
  59. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_id.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_id.o
  60. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_leds.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_leds.o
  61. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_light.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_light.o
  62. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_misc.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_misc.o
  63. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_mouth.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_mouth.o
  64. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_movements.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_movements.o
  65. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_pong.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_pong.o
  66. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_sound_flash.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_sound_flash.o
  67. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_audio.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_audio.o
  68. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_spinning.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_spinning.o
  69. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_descriptor.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_descriptor.o
  70. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_sw_status.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_sw_status.o
  71. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_usb.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_usb.o
  72. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_user_inputs.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_user_inputs.o
  73. $(CC) -c $(CFLAGS) $(SRC_DIR)/tux_flippers.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/tux_flippers.o
  74. $(CC) -c $(CFLAGS) $(SRC_DIR)/log.c $(C_INCLUDE_DIRS) -o $(OBJ_DIR)/log.o
  75. $(CC) -o "$(OUTPUT_DIR)\$(TARGET)" $(SRC_OBJS) $(LIB_DIRS) $(LIBS) $(LDFLAGS)
  76. -@rm -fR $(OBJ_DIR)/*.o
  77. clean:
  78. -@rm -fR $(OBJ_DIR)/*.o