Makefile 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. CXXFLAGS = -std=c++11 -O2 -I..
  2. CPPHTTPLIB_FLAGS = -DCPPHTTPLIB_THREAD_POOL_COUNT=16
  3. BENCH = bombardier -c 10 -d 5s localhost:8080
  4. MONITOR = ali http://localhost:8080
  5. # cpp-httplib
  6. bench: server
  7. @echo "--------------------\n cpp-httplib latest\n--------------------\n"
  8. @./server & export PID=$$!; $(BENCH); kill $${PID}
  9. @echo ""
  10. monitor: server
  11. @./server & export PID=$$!; $(MONITOR); kill $${PID}
  12. run : server
  13. @./server
  14. server : cpp-httplib/main.cpp ../httplib.h
  15. @g++ -o $@ $(CXXFLAGS) $(CPPHTTPLIB_FLAGS) cpp-httplib/main.cpp
  16. # cpp-httplib v0.19.0
  17. bench-v19: server-v19
  18. @echo "---------------------\n cpp-httplib v0.19.0\n---------------------\n"
  19. @./server-v19 & export PID=$$!; $(BENCH); kill $${PID}
  20. @echo ""
  21. monitor-v19: server-v19
  22. @./server-v19 & export PID=$$!; $(MONITOR); kill $${PID}
  23. run-v19 : server-v19
  24. @./server-v19
  25. server-v19 : cpp-httplib-v19/main.cpp cpp-httplib-v19/httplib.h
  26. @g++ -o $@ $(CXXFLAGS) $(CPPHTTPLIB_FLAGS) cpp-httplib-v19/main.cpp
  27. # cpp-httplib v0.18.0
  28. bench-v18: server-v18
  29. @echo "---------------------\n cpp-httplib v0.18.0\n---------------------\n"
  30. @./server-v18 & export PID=$$!; $(BENCH); kill $${PID}
  31. @echo ""
  32. monitor-v18: server-v18
  33. @./server-v18 & export PID=$$!; $(MONITOR); kill $${PID}
  34. run-v18 : server-v18
  35. @./server-v18
  36. server-v18 : cpp-httplib-v18/main.cpp cpp-httplib-v18/httplib.h
  37. @g++ -o $@ $(CXXFLAGS) $(CPPHTTPLIB_FLAGS) cpp-httplib-v18/main.cpp
  38. # crow
  39. bench-crow: server-crow
  40. @echo "-------------\n Crow v1.2.0\n-------------\n"
  41. @./server-crow & export PID=$$!; $(BENCH); kill $${PID}
  42. @echo ""
  43. monitor-crow: server-crow
  44. @./server-crow & export PID=$$!; $(MONITOR); kill $${PID}
  45. run-crow : server-crow
  46. @./server-crow
  47. server-crow : crow/main.cpp
  48. @g++ -o $@ $(CXXFLAGS) crow/main.cpp
  49. # misc
  50. build: server server-v18 server-v19 server-crow
  51. bench-all: bench-crow bench bench-v19 bench-v18
  52. issue:
  53. bombardier -c 10 -d 30s localhost:8080
  54. clean:
  55. rm -rf server*