diff --git a/Doxyfile b/doc/Doxyfile similarity index 99% rename from Doxyfile rename to doc/Doxyfile index 3f927c8..a740dd8 100644 --- a/Doxyfile +++ b/doc/Doxyfile @@ -58,7 +58,7 @@ PROJECT_LOGO = # entered, it will be relative to the location where doxygen was started. If # left blank the current directory will be used. -OUTPUT_DIRECTORY = doc/doxygen +OUTPUT_DIRECTORY = doxygen # If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 4096 sub- # directories (in 2 levels) under the output directory of each output format and @@ -161,7 +161,7 @@ STRIP_FROM_PATH = src # specify the list of include paths that are normally passed to the compiler # using the -I flag. -STRIP_FROM_INC_PATH = src/headers +STRIP_FROM_INC_PATH = ../src/headers # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but # less readable) file names. This can be useful is your file systems doesn't @@ -754,7 +754,7 @@ WARN_LOGFILE = # spaces. # Note: If this tag is empty the current directory is searched. -INPUT = src +INPUT = ../src/ # This tag can be used to specify the character encoding of the source files # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses @@ -1046,7 +1046,7 @@ HTML_FILE_EXTENSION = .html # of the possible markers and block names see the documentation. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_HEADER = doc/header.html +HTML_HEADER = header.html # The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each # generated HTML page. If the tag is left blank doxygen will generate a standard @@ -1056,7 +1056,7 @@ HTML_HEADER = doc/header.html # that doxygen normally uses. # This tag requires that the tag GENERATE_HTML is set to YES. -HTML_FOOTER = doc/footer.html +HTML_FOOTER = footer.html # The HTML_STYLESHEET tag can be used to specify a user-defined cascading style # sheet that is used by each HTML page. It can be used to fine-tune the look of @@ -1924,7 +1924,7 @@ SEARCH_INCLUDES = YES # preprocessor. # This tag requires that the tag SEARCH_INCLUDES is set to YES. -INCLUDE_PATH = src/headers +INCLUDE_PATH = ../src//headers # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard # patterns (like *.h and *.hpp) to filter out the header-files in the diff --git a/crypt.tex b/doc/crypt.tex similarity index 100% rename from crypt.tex rename to doc/crypt.tex diff --git a/doc/makefile b/doc/makefile new file mode 100644 index 0000000..8a80854 --- /dev/null +++ b/doc/makefile @@ -0,0 +1,54 @@ +ifeq ($V,1) +silent= +silent_stdout= +else +silent=@ +silent_stdout= > /dev/null +endif + +#Files left over from making the crypt.pdf. +LEFTOVERS=*.dvi *.log *.aux *.toc *.idx *.ilg *.ind *.out *.lof + +#build the doxy files (requires Doxygen, tetex and patience) +.PHONY: doxygen +doxygen: + doxygen $(silent_stdout) + +doxy: doxygen + ${MAKE} -C doxygen/latex $(silent_stdout) && mv -f doxygen/latex/refman.pdf . + @echo The huge doxygen PDF should be available as doc/refman.pdf + +#This builds the crypt.pdf file. Note that the rm -f *.pdf has been removed +#from the clean command! This is because most people would like to keep the +#nice pre-compiled crypt.pdf that comes with libtomcrypt! We only need to +#delete it if we are rebuilding it. +.PHONY: crypt.pdf +crypt.pdf: crypt.tex + rm -f crypt.pdf $(LEFTOVERS) + cp crypt.tex crypt.bak + touch --reference=crypt.tex crypt.bak + (printf "%s" "\def\fixedpdfdate{"; date +'D:%Y%m%d%H%M%S%:z' -d @$$(stat --format=%Y crypt.tex) | sed "s/:\([0-9][0-9]\)$$/'\1'}/g") > crypt-deterministic.tex + printf "%s\n" "\pdfinfo{" >> crypt-deterministic.tex + printf "%s\n" " /CreationDate (\fixedpdfdate)" >> crypt-deterministic.tex + printf "%s\n}\n" " /ModDate (\fixedpdfdate)" >> crypt-deterministic.tex + cat crypt.tex >> crypt-deterministic.tex + mv crypt-deterministic.tex crypt.tex + touch --reference=crypt.bak crypt.tex + echo "hello" > crypt.ind + latex crypt $(silent_stdout) + latex crypt $(silent_stdout) + makeindex crypt.idx $(silent_stdout) + perl ../helper.pl --fixupind crypt.ind + pdflatex crypt $(silent_stdout) + sed -b -i 's,^/ID \[.*\]$$,/ID [<0> <0>],g' crypt.pdf + mv crypt.bak crypt.tex + rm -f $(LEFTOVERS) + +docdvi: crypt.tex + echo hello > crypt.ind + latex crypt $(silent_stdout) + latex crypt $(silent_stdout) + makeindex crypt.idx + perl ../helper.pl --fixupind crypt.ind + latex crypt $(silent_stdout) + latex crypt $(silent_stdout) diff --git a/makefile b/makefile index dc8fe39..e5a0fa2 100644 --- a/makefile +++ b/makefile @@ -203,9 +203,6 @@ src/headers/tomcrypt_mac.h src/headers/tomcrypt_macros.h src/headers/tomcrypt_ma src/headers/tomcrypt_misc.h src/headers/tomcrypt_pk.h src/headers/tomcrypt_pkcs.h \ src/headers/tomcrypt_prng.h -#Files left over from making the crypt.pdf. -LEFTOVERS=*.dvi *.log *.aux *.toc *.idx *.ilg *.ind *.out *.lof - #Compressed filenames COMPRESSED=crypt-$(VERSION).tar.bz2 crypt-$(VERSION).zip @@ -380,47 +377,13 @@ clean: #build the doxy files (requires Doxygen, tetex and patience) doxygen: - doxygen $(silent_stdout) + $(MAKE) -C doc/ doxygen V=$(V) -doxy: doxygen - cd doc/doxygen/latex ; ${MAKE} $(silent_stdout) ; mv -f refman.pdf ../../. - @echo The huge doxygen PDF should be available as doc/refman.pdf +doxy: + $(MAKE) -C doc/ doxy V=$(V) -#This builds the crypt.pdf file. Note that the rm -f *.pdf has been removed -#from the clean command! This is because most people would like to keep the -#nice pre-compiled crypt.pdf that comes with libtomcrypt! We only need to -#delete it if we are rebuilding it. -docs: doc/crypt.pdf -doc/crypt.pdf: crypt.tex - rm -f doc/crypt.pdf $(LEFTOVERS) - cp crypt.tex crypt.bak - touch --reference=crypt.tex crypt.bak - (printf "%s" "\def\fixedpdfdate{"; date +'D:%Y%m%d%H%M%S%:z' -d @$$(stat --format=%Y crypt.tex) | sed "s/:\([0-9][0-9]\)$$/'\1'}/g") > crypt-deterministic.tex - printf "%s\n" "\pdfinfo{" >> crypt-deterministic.tex - printf "%s\n" " /CreationDate (\fixedpdfdate)" >> crypt-deterministic.tex - printf "%s\n}\n" " /ModDate (\fixedpdfdate)" >> crypt-deterministic.tex - cat crypt.tex >> crypt-deterministic.tex - mv crypt-deterministic.tex crypt.tex - touch --reference=crypt.bak crypt.tex - echo "hello" > crypt.ind - latex crypt $(silent_stdout) - latex crypt $(silent_stdout) - makeindex crypt.idx $(silent_stdout) - perl helper.pl --fixupind crypt.ind - pdflatex crypt $(silent_stdout) - sed -b -i 's,^/ID \[.*\]$$,/ID [<0> <0>],g' crypt.pdf - mv -ivf crypt.pdf doc/crypt.pdf - mv crypt.bak crypt.tex - rm -f $(LEFTOVERS) - -docdvi: crypt.tex - echo hello > crypt.ind - latex crypt $(silent_stdout) - latex crypt $(silent_stdout) - makeindex crypt.idx - perl helper.pl --fixupind crypt.ind - latex crypt $(silent_stdout) - latex crypt $(silent_stdout) +docs: + $(MAKE) -C doc/ crypt.pdf V=$(V) zipup: doc/crypt.pdf @git diff-index --quiet HEAD -- || ( echo "FAILURE: uncommited changes or not a git" && exit 1 )