dev.makefile 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. # This is only for jsoncpp developers/contributors.
  2. # We use this to sign releases, generate documentation, etc.
  3. VER?=$(shell cat version)
  4. default:
  5. @echo "VER=${VER}"
  6. update-version:
  7. perl get_version.pl meson.build >| version
  8. sign: jsoncpp-${VER}.tar.gz
  9. gpg --armor --detach-sign $<
  10. gpg --verify $<.asc
  11. # Then upload .asc to the release.
  12. jsoncpp-%.tar.gz:
  13. curl https://github.com/open-source-parsers/jsoncpp/archive/$*.tar.gz -o $@
  14. dox:
  15. python doxybuild.py --doxygen=$$(which doxygen) --in doc/web_doxyfile.in
  16. rsync -va -c --delete dist/doxygen/jsoncpp-api-html-${VER}/ ../jsoncpp-docs/doxygen/
  17. # Then 'git add -A' and 'git push' in jsoncpp-docs.
  18. build:
  19. mkdir -p build/debug
  20. cd build/debug; cmake -DCMAKE_BUILD_TYPE=debug -DBUILD_SHARED_LIBS=ON -G "Unix Makefiles" ../..
  21. make -C build/debug
  22. # Currently, this depends on include/json/version.h generated
  23. # by cmake.
  24. test-amalgamate:
  25. python2.7 amalgamate.py
  26. python3.4 amalgamate.py
  27. cd dist; gcc -I. -c jsoncpp.cpp
  28. valgrind:
  29. valgrind --error-exitcode=42 --leak-check=full ./build/debug/src/test_lib_json/jsoncpp_test
  30. clean:
  31. \rm -rf *.gz *.asc dist/
  32. .PHONY: build