From b9bced05dae319c6a00c2adce8953d468404a95c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Sat, 13 Jan 2018 14:22:42 +0100 Subject: [PATCH] autotools: Use full path for external programs Signed-off-by: Stephan Mueller --- Makefile.am | 68 +++++++++++++++++++++++++++++++++--------------------------- configure.ac | 35 ++++++++++++++++++------------- 2 files changed, 58 insertions(+), 45 deletions(-) diff --git a/Makefile.am b/Makefile.am index 66464e1..cbb1302 100644 --- a/Makefile.am +++ b/Makefile.am @@ -144,8 +144,11 @@ kcapi_hasher_links = sha1sum sha224sum sha256sum sha384sum sha512sum \ install-exec-hook: (cd $(DESTDIR)$(bindir) && \ - ($(foreach link, $(kcapi_hasher_links), ln -f kcapi-hasher $(link);)) && \ - ($(foreach link, $(kcapi_hasher_links), openssl sha256 -hmac orboDeJITITejsirpADONivirpUkvarP $(link) > .$(link).hmac;))) + ($(foreach link, $(kcapi_hasher_links), $(LN) -f kcapi-hasher $(link);))) +if HAVE_OPENSSL + (cd $(DESTDIR)$(bindir) && \ + ($(foreach link, $(kcapi_hasher_links), $(OPENSSL) sha256 -hmac orboDeJITITejsirpADONivirpUkvarP $(link) > .$(link).hmac;))) +endif endif if ENABLE_KCAPI_RNGAPP @@ -195,7 +198,7 @@ MOSTLYCLEANFILES = $(analyze_plists) $(analyze_plists): %.plist: %.c @echo " CCSA " $@ - @clang --analyze $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) -Ilib/ $< -o $@ + @$(CLANG) --analyze $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) -Ilib/ $< -o $@ scan: $(analyze_plists) @@ -204,16 +207,19 @@ endif if HAVE_CPPCHECK cppcheck: - cppcheck --enable=performance,warning,portability $(sort $(SCAN_FILES)) + $(CPPCHECK) --enable=performance,warning,portability $(sort $(SCAN_FILES)) endif if HAVE_MKTEMP -TEMPFILE := $(shell mktemp) +DOCPROC_TEMP := $(shell $(MKTEMP)) +else +DOCPROC_TEMP := $(abs_top_builddir)/docproc.temp +endif %.xml: %.tmpl lib/doc/bin/docproc$(EXEEXT) - $(SED) "s/@@LIBVERSION@@/$(VERSION)/" < $< > $(TEMPFILE) - LIBVERSION=$(VERSION) SRCTREE=lib/ $(abs_top_builddir)/lib/doc/bin/docproc$(EXEEXT) doc $(TEMPFILE) > $@ - rm $(TEMPFILE) + $(SED) "s/@@LIBVERSION@@/$(VERSION)/" < $< > $(DOCPROC_TEMP) + LIBVERSION=$(VERSION) SRCTREE=lib/ $(abs_top_builddir)/lib/doc/bin/docproc$(EXEEXT) doc $(DOCPROC_TEMP) > $@ + -rm $(DOCPROC_TEMP) if HAVE_DB2PDF DOC_TARGETS += pdf @@ -221,10 +227,10 @@ DOC_TARGETS += pdf pdf: pdf-stamp pdf-stamp: lib/doc/libkcapi.xml $(MKDIR_P) doc/pdf - HOME=$(abs_top_builddir)/doc/pdf db2pdf -o doc/pdf $< - mv doc/pdf/*.pdf doc - rm -r doc/pdf - touch $@ + HOME=$(abs_top_builddir)/doc/pdf $(DB2PDF) -o doc/pdf $< + $(MV) doc/pdf/*.pdf doc + -rm -r doc/pdf + $(TOUCH) $@ endif if HAVE_DB2PS @@ -233,10 +239,10 @@ DOC_TARGETS += ps ps: ps-stamp ps-stamp: lib/doc/libkcapi.xml $(MKDIR_P) doc/ps - HOME=$(abs_top_builddir)/doc/ps db2ps -o doc/ps $< - mv doc/ps/*.ps doc - rm -r doc/ps - touch $@ + HOME=$(abs_top_builddir)/doc/ps $(DB2PS) -o doc/ps $< + $(MV) doc/ps/*.ps doc + -rm -r doc/ps + $(TOUCH) $@ endif if HAVE_XMLTO @@ -245,36 +251,36 @@ DOC_TARGETS += html html: html-stamp html-stamp: lib/doc/libkcapi.xml $(MKDIR_P) lib/doc/html - xmlto html -m lib/doc/stylesheet.xsl --skip-validation -o lib/doc/html/ $< 2>/dev/null - touch $@ + $(XMLTO) html -m lib/doc/stylesheet.xsl --skip-validation -o lib/doc/html/ $< 2>/dev/null + $(TOUCH) $@ DOC_TARGETS += man man: man-stamp man-stamp: lib/doc/libkcapi.xml $(MKDIR_P) lib/doc/man - xmlto man -m lib/doc/stylesheet.xsl --skip-validation -o lib/doc/man/ $< 2>/dev/null - touch $@ + $(XMLTO) man -m lib/doc/stylesheet.xsl --skip-validation -o lib/doc/man/ $< 2>/dev/null + $(TOUCH) $@ devel_manpages = lib/doc/man/*.3 man_MANS += $(devel_manpages) $(devel_manpages): man endif -endif doc: $(sort $(DOC_TARGETS)) clean-local: - rm -f *-stamp - rm -f lib/doc/*.xml - rm -f lib/doc/*.pdf - rm -f lib/doc/*.ps - rm -rf lib/doc/man/ - rm -rf lib/doc/html/ - rm -rf doc/ - rm -rf bin/ + -rm -f $(DOCPROC_TEMP) + -rm -f *-stamp + -rm -f lib/doc/*.xml + -rm -f lib/doc/*.pdf + -rm -f lib/doc/*.ps + -rm -rf lib/doc/man/ + -rm -rf lib/doc/html/ + -rm -rf doc/ + -rm -rf bin/ distclean-local: - rm -f lib/doc/Makefile* - rm -rf autom4te.cache/ + -rm -f lib/doc/Makefile* + -rm -rf autom4te.cache/ diff --git a/configure.ac b/configure.ac index f3a2c97..6555c26 100644 --- a/configure.ac +++ b/configure.ac @@ -27,26 +27,33 @@ AC_CONFIG_MACRO_DIR([m4]) AX_PROG_CC_FOR_BUILD AX_CHECK_PIE -AC_CHECK_PROG([CLANG], [clang], [yes]) -AC_CHECK_PROG([CPPCHECK], [cppcheck], [yes]) -AC_CHECK_PROG([XMLTO], [xmlto], [yes]) -AC_CHECK_PROG([DB2PDF], [db2pdf], [yes]) -AC_CHECK_PROG([DB2PS], [db2ps], [yes]) -AC_CHECK_PROG([MKTEMP], [mktemp], [yes]) +AC_PATH_PROG([OPENSSL], [openssl]) +AC_PATH_PROG([CLANG], [clang]) +AC_PATH_PROG([CPPCHECK], [cppcheck]) +AC_PATH_PROG([XMLTO], [xmlto]) +AC_PATH_PROG([DB2PDF], [db2pdf]) +AC_PATH_PROG([DB2PS], [db2ps]) +AC_PATH_PROG([MKTEMP], [mktemp]) AC_SEARCH_LIBS(clock_gettime,rt) AC_PROG_MKDIR_P AC_PROG_SED AC_PROG_INSTALL AC_PROG_LN_S - -AM_CONDITIONAL([HAVE_CLANG], [test "x$CLANG" = "xyes" ]) -AM_CONDITIONAL([HAVE_CPPCHECK], [test "x$CPPCHECK" = "xyes"]) -AM_CONDITIONAL([HAVE_XMLTO], [test "x$XMLTO" = "xyes"]) -AM_CONDITIONAL([HAVE_DB2PDF], [test "x$DB2PDF" = "xyes"]) -AM_CONDITIONAL([HAVE_DB2PS], [test "x$DB2PS" = "xyes"]) -AM_CONDITIONAL([HAVE_MKTEMP], [test "x$MKTEMP" = "xyes"]) - +AC_PATH_PROG([CP], [cp]) +AC_PATH_PROG([LN], [ln]) +AC_PATH_PROG([MV], [mv]) +AC_PATH_PROG([TOUCH], [touch]) + +AM_CONDITIONAL([HAVE_OPENSSL], [test "x$OPENSSL" != "x"]) +AM_CONDITIONAL([HAVE_CLANG], [test "x$CLANG" != "x"]) +AM_CONDITIONAL([HAVE_CPPCHECK], [test "x$CPPCHECK" != "x"]) +AM_CONDITIONAL([HAVE_XMLTO], [test "x$XMLTO" != "x"]) +AM_CONDITIONAL([HAVE_DB2PDF], [test "x$DB2PDF" != "x"]) +AM_CONDITIONAL([HAVE_DB2PS], [test "x$DB2PS" != "x"]) +AM_CONDITIONAL([HAVE_MKTEMP], [test "x$MKTEMP" != "x"]) + +AM_COND_IF([HAVE_OPENSSL], [], [AC_MSG_WARN([openssl not installed])]) AM_COND_IF([HAVE_CLANG], [], [AC_MSG_WARN([clang not installed])]) AM_COND_IF([HAVE_CPPCHECK], [], [AC_MSG_WARN([cppcheck not installed])]) AM_COND_IF([HAVE_XMLTO], [], [AC_MSG_WARN([xmlto not installed])])