[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: "make check" in gnulib requires cppi
From: |
Jim Meyering |
Subject: |
Re: "make check" in gnulib requires cppi |
Date: |
Thu, 01 Sep 2011 08:37:29 +0200 |
Bernhard Voelker wrote:
> After
> git checkout master && git pull
> "make check" fails in gnulib on my OpenSuSE 11.4 system
> because cppi is not installed:
Thanks for the report.
However, ...
> berny@blackice:~/git/coreutils> make check
> GEN public-submodule-commit
> fatal: Not a valid commit name 9926b90d5159916a539b49359b3589fe89c2d987
> /usr/lib/git/git-submodule: line 299: test:
> 9926b90d5159916a539b49359b3589fe89c2d987: unary operator expected
> Stopping at 'gnulib'; script returned non-zero status.
> maint.mk: found non-public submodule commit
Have you updated your master gnulib directory?
The one you pointed to via ./bootstrap --gnulib-srcdir=...
Once you do that, coreutils' bootstrap should get past the above.
> make: *** [public-submodule-commit] Error 1
> berny@blackice:~/git/coreutils> cd gnulib
> berny@blackice:~/git/coreutils/gnulib> make check
> i=lib/intprops.h; \
> diff -u <(perl -lne '/^# *define ([A-Z]\w+)\(/ and print $1' $i|fmt) \
> <(sed -n /^_intprops_name/,/^_intprops_syms_re/p top/maint.mk \
> |sed '/^_/d;s/^ //;s/ *\\$//')
> ./gnulib-tool --extract-filelist \
> $(cd ./modules; grep -ilrE '(meyering|blake)' .) \
> | sort -u \
> | grep '\.c$' \
> | grep -vE '/(stdio-(read|write)|getloadavg)\.c$' \
> | xargs cppi -c
> xargs: cppi: No such file or directory
> make: *** [sc_cpp_indent_check] Error 127
>
>
> ... nor can it be found in any standard OpenSuSE standard repositories ;-/
>
> cnf cppi
You can get it from here:
http://ftp.gnu.org/gnu/cppi/
> Is it intended to include gnulib checks in coreutil's "make check"?
Not intended and not done.
You did it above by cd'ing into gnulib/ and manually running "make".
No coreutils rule should run make like that.
The Makefile in gnulib/ is special in that practically no one
other than maintainers runs it. Here's a comment from near the top
# This Makefile requires the use of GNU make. Some targets require
# that you have tools like git, makeinfo and cppi installed.
> And if yes, shouldn't coreutils check for cppi availability?
Where coreutils rules do use cppi, they should always check first.