This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [google] Install additional gcov files (issue4442052)
- From: Ralf Wildenhues <Ralf dot Wildenhues at gmx dot de>
- To: Diego Novillo <dnovillo at google dot com>
- Cc: reply at codereview dot appspotmail dot com, xur at google dot com, gcc-patches at gcc dot gnu dot org
- Date: Sun, 17 Apr 2011 08:29:38 +0200
- Subject: Re: [google] Install additional gcov files (issue4442052)
- References: <20110416201432.2E99DAE18B@tobiano.tor.corp.google.com>
Hello,
* Diego Novillo wrote on Sat, Apr 16, 2011 at 10:14:32PM CEST:
> 2011-04-15 Rong Xu <xur@google.com>
>
> * Makefile.in (install-leaf): Install gcov-io.h, gcov-iov.h
> gcov-io.c and libgcov.c to $DESTDIR/$inst_libdir/gcov-src.
> --- a/libgcc/Makefile.in
> +++ b/libgcc/Makefile.in
> @@ -978,6 +978,18 @@ install-leaf: $(install-shared) $(install-libunwind)
> esac; \
> done
>
> + if [ "$(MULTIDIR)" == "." ]; then \
With '[' aka. test, '==' is a bashism while '=' is portable and Posix.
Please use that instead.
> + gcov_src_dest="$(DESTDIR)$(inst_libdir)/gcov-src"; \
> + $(mkinstalldirs) $$gcov_src_dest; \
> + cp ../../gcc/gcov-iov.h $$gcov_src_dest; \
Is it relevant whether any of the commands fail? If so, '&&' should be
preferred over ';' (we cannot assume that make obeys Posix 2008 rules of
invoking all shell commands with errexit set; GNU make does not do it).
Esp. a mkinstalldirs failure would lead to undesirable results.
I'm aware that there are prior issues in this area in the GCC build
system.
> + cp $(srcdir)/../gcc/gcov-io.h $$gcov_src_dest; \
> + cp $(srcdir)/../gcc/gcov-io.c $$gcov_src_dest; \
> + cp $(srcdir)/../gcc/libgcov.c $$gcov_src_dest; \
> + chmod 644 $$gcov_src_dest/gcov-iov.h \
> + $$gcov_src_dest/gcov-io.h $$gcov_src_dest/gcov-io.c \
> + $$gcov_src_dest/libgcov.c; \
> + fi
> +
> install: install-leaf
> @: $(MAKE) ; $(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=install
Thanks,
Ralf