Makefile 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. CFLAGS=-g -O0 -Wall -pedantic -Wextra
  2. LDFLAGS=-lrt
  3. MEMFILE_CFLAGS=
  4. MEMFILE_LDFLAGS=
  5. MYSQL_CFLAGS=`mysql_config --cflags`
  6. MYSQL_LDFLAGS=`mysql_config --libs`
  7. SQLITE_CFLAGS=`pkg-config sqlite3 --cflags`
  8. SQLITE_LDFLAGS=`pkg-config sqlite3 --libs`
  9. all: mysql_ubench sqlite_ubench memfile_ubench
  10. doc: dhcp-perf-guide.html dhcp-perf-guide.pdf
  11. mysql_ubench.o: mysql_ubench.cc mysql_ubench.h
  12. $(CXX) $< -c $(CFLAGS) $(MYSQL_CFLAGS)
  13. benchmark.o: benchmark.cc benchmark.h
  14. $(CXX) $< -c $(CFLAGS) $(MYSQL_CFLAGS)
  15. mysql_ubench: mysql_ubench.o benchmark.o
  16. $(CXX) $< benchmark.o -o mysql_ubench $(CFLAGS) $(MYSQL_CFLAGS) $(LDFLAGS) $(MYSQL_LDFLAGS)
  17. sqlite_ubench.o: sqlite_ubench.cc sqlite_ubench.h
  18. $(CXX) $< -c $(CFLAGS) $(SQLLITE_CFLAGS)
  19. sqlite_ubench: sqlite_ubench.o benchmark.o
  20. $(CXX) $< benchmark.o -o sqlite_ubench $(CFLAGS) $(SQLITE_CFLAGS) $(LDFLAGS) $(SQLITE_LDFLAGS)
  21. memfile_ubench.o: memfile_ubench.cc memfile_ubench.h
  22. $(CXX) $< -c $(CFLAGS) $(MEMFILE_CFLAGS)
  23. memfile_ubench: memfile_ubench.o benchmark.o
  24. $(CXX) $< benchmark.o -o memfile_ubench $(LDFLAGS) $(MEMFILE_LDFLAGS)
  25. clean:
  26. rm -f mysql_ubench sqlite_ubench memfile_ubench *.o
  27. version.ent:
  28. ln -s ../../../doc/version.ent
  29. dhcp-perf-guide.html: dhcp-perf-guide.xml version.ent
  30. xsltproc --novalid --xinclude --nonet \
  31. -o $@ \
  32. --path ../../../doc \
  33. --stringparam section.autolabel 1 \
  34. --stringparam section.label.includes.component.label 1 \
  35. --stringparam html.stylesheet bind10-guide.css \
  36. http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl \
  37. dhcp-perf-guide.xml
  38. dhcp-perf-guide.pdf: dhcp-perf-guide.xml
  39. docbook2pdf $<