tomcrypt/makefile.common
2017-05-11 23:04:37 +02:00

91 lines
2.8 KiB
Plaintext

#common make targets shared over multiple makefiles
ifndef INSTALL_CMD
$(error your makefile must define INSTALL_CMD)
endif
bins: $(USEFUL_DEMOS)
all_test: test tv_gen $(DEMOS)
#build the doxy files (requires Doxygen, tetex and patience)
doxygen:
$(MAKE) -C doc/ doxygen V=$(V)
doxy:
$(MAKE) -C doc/ doxy V=$(V)
docs:
$(MAKE) -C doc/ crypt.pdf V=$(V)
install_all: install install_bins install_docs install_test
.common_install: $(LIBNAME)
install -d $(INCPATH)
install -d $(LIBPATH)
$(INSTALL_CMD) -m 644 $(LIBNAME) $(LIBPATH)/$(LIBNAME)
install -m 644 $(HEADERS) $(INCPATH)
.common_install_bins: $(USEFUL_DEMOS)
install -d $(BINPATH)
$(INSTALL_CMD) -m 775 $(USEFUL_DEMOS) $(BINPATH)
.common_install_test: $(LIBTEST)
install -d $(LIBPATH)
install -d $(INCPATH)
install -m 644 testprof/tomcrypt_test.h $(INCPATH)
$(INSTALL_CMD) -m 644 $(LIBTEST) $(LIBPATH)
install_docs: docs
install -d $(DATAPATH)
install -m 644 doc/crypt.pdf $(DATAPATH)
install_hooks:
for s in `ls hooks/`; do ln -s ../../hooks/$$s .git/hooks/$$s; done
#This rule cleans the source tree of all compiled code, not including the pdf
#documentation.
clean:
rm -f `find . -type f -name "*.o" | xargs`
rm -f `find . -type f -name "*.lo" | xargs`
rm -f `find . -type f -name "*.a" | xargs`
rm -f `find . -type f -name "*.la" | xargs`
rm -f `find . -type f -name "*.obj" | xargs`
rm -f `find . -type f -name "*.lib" | xargs`
rm -f `find . -type f -name "*.exe" | xargs`
rm -f `find . -type f -name "*.dll" | xargs`
rm -f `find . -type f -name "*.so" | xargs`
rm -f `find . -type f -name "*.gcov" | xargs`
rm -f `find . -type f -name "*.gcda" | xargs`
rm -f `find . -type f -name "*.gcno" | xargs`
rm -f `find . -type f -name "*.il" | xargs`
rm -f `find . -type f -name "*.dyn" | xargs`
rm -f `find . -type f -name "*.dpi" | xargs`
rm -rf `find . -type d -name "*.libs" | xargs`
rm -f crypt.aux crypt.dvi crypt.idx crypt.ilg crypt.ind crypt.log crypt.toc
rm -f $(TIMING) $(TEST) $(DEMOS)
rm -rf doc/doxygen
rm -f `find . -type f -name "*.pdf" | grep -FL crypt.pdf | xargs`
rm -f *.txt
rm -f *.pc
zipup: docs
@git diff-index --quiet HEAD -- || ( echo "FAILURE: uncommited changes or not a git" && exit 1 )
@perl helper.pl --check-all || ( echo "FAILURE: helper.pl --check-all errors" && exit 1 )
rm -rf libtomcrypt-$(VERSION) libtomcrypt-$(VERSION).*
# files/dirs excluded from "git archive" are defined in .gitattributes
git archive --format=tar --prefix=libtomcrypt-$(VERSION)/ HEAD | tar x
mkdir -p libtomcrypt-$(VERSION)/doc
cp doc/crypt.pdf libtomcrypt-$(VERSION)/doc/crypt.pdf
tar -cJf libtomcrypt-$(VERSION).tar.xz libtomcrypt-$(VERSION)
zip -9rq libtomcrypt-$(VERSION).zip libtomcrypt-$(VERSION)
rm -rf libtomcrypt-$(VERSION)
gpg -b -a libtomcrypt-$(VERSION).tar.xz
gpg -b -a libtomcrypt-$(VERSION).zip
codecheck:
perl helper.pl -a
perlcritic *.pl