| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
* top/maint.mk (news-check-lines-spec) New variable.
(news-check): Use "sed -n 1,10p" in place of "head".
|
|
|
|
|
|
|
| |
* build-aux/git-version-gen (tag_sed_script): New variable. Use it to
transform the output of "git describe" to the canonical form.
* top/GNUmakefile (_curr-ver): Pass $(git-version-gen-tag-sed-script) as
a second argument to `git-version-gen'.
|
|
|
|
|
|
|
| |
* top/maint.mk (def_sym_regex): Handle #undef as well as #define.
Allow more than one space before the symbol name.
(sc_prohibit_always-defined_macros): Use grep's -E, now that
the regexp uses alternation.
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are still other potentially non-portable uses of echo
throughout this file, if $(ME) contains \ or starts with -,
but this patch is a trivial step in the right direction.
* top/maint.mk (gzip_rsyncable): Convert all uses of echo -* to
printf.
Reported by Matthias Bolte.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
| |
* top/maint.mk (gl_extract_significant_defines_): Make exclusion
regexps tighter by anchoring at EOL, and make the new group "shy"
for slightly decreased overhead.
|
|
|
|
|
|
|
|
|
|
| |
Gnulib conditionally defines NSIG to 32 for some platforms. But since
NSIG is not mandated by standards, and there are platforms with 64
signals, we should not promise that NSIG is guaranteed.
* top/maint.mk (gl_extract_significant_defines_): Exclude NSIG.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
| |
* top/maint.mk (.re-defmac): Remove rule.
(gl_trap_): Remove definition.
(sc_prohibit_always-defined_macros): Rewrite not to create and
depend on a temporary file. Instead, depend on GNU grep's ability
to read a list of regular expressions from stdin when given "-f -".
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With my recent change in init.sh from the two-line form:
-# : ${srcdir=.}
-# . "$srcdir/init.sh"; path_prepend_ .
+# . "${srcdir=.}/init.sh"; path_prepend_ .
I noticed that using the one-line form would cause this test
to fail with a false-positive, or to stop working altogether,
depending on whether help-version changed or all the tests did.
* top/maint.mk (_hv_regex): Remove this definition.
(_hv_regex_weak): Use a weak regex to select all init.sh-sourcing files.
(_hv_regex_strong): Use a stronger regex to check for conformance.
(sc_cross_check_PATH_usage_in_tests): Rewrite to use the above.
Give a separate diagnostic for lack of conforming use.
|
|
|
|
|
| |
* top/maint.mk (sc_prohibit_always-defined_macros): Reject the
definition of symbols defined by gnulib.
|
|
|
|
|
| |
* top/maint.mk (web-manual): Pass gendocs_options_ to gendocs.sh.
(gendocs_options_): New overridable variable.
|
|
|
|
|
|
|
| |
* top/maint.mk (translation_project_): Define default.
(announcement_Cc_, announcement_mail_headers_): Likewise.
(announcement): Invoke announce-gen with new --mail-headers option.
* build-aux/announce-gen: New option: --mail-headers=HEADERS.
|
|
|
|
|
|
| |
* top/maint.mk (sc_prohibit_strings_without_use): Reject inclusion of
strings.h in a file that does not also use strcasecmp, strncasecmp,
ffs or ffsll.
|
|
|
|
| |
* top/maint.mk: Remove stale, commented-out rules.
|
| |
|
|
|
|
|
|
| |
* top/maint.mk (gl_assured_headers_): Now that all names are on
one line, use sed's "g" modifier. Note that while the \.in\.h LHS
is not anchored to end of word, it should be adequate.
|
|
|
|
|
|
| |
* top/maint.mk (sc_prohibit_always_true_header_tests): Rework not
to run commands via $(shell...), and hence to incur cost only when
the new rule is actually run.
|
|
|
|
|
|
|
|
| |
Derive the list of guaranteed header names from gnulib/lib/*.in.h,
and use that to create a regexp used to detect all #if HAVE_..._H uses.
* top/maint.mk (sc_prohibit_always_true_header_tests): New rule.
(gl_assured_headers_, az_, AZ_): Define.
(gl_header_upper_case_or_, gl_have_header_regex_): Define.
|
| |
|
|
|
|
|
| |
* top/maint.mk (detect_empty_lines_at_EOF_): Clean up formatting.
Rename variable: s/two/last_two_bytes/
|
|
|
|
| |
* top/maint.mk (texinfo_suffix_re_): Fix default regexp.
|
| |
|
|
|
|
|
| |
* top/maint.mk ($(sc_z_rules_)): Remove the ":", "sc_" prefix and
" done" from each line that reports a syntax-check test duration.
|
|
|
|
| |
* top/maint.mk: Remove bogus include directive.
|
|
|
|
|
|
|
| |
* top/maint.mk (sc_prohibit_empty_lines_at_EOF): Use Perl-based
solution, rather than tail+Perl-based one. The latter would read
a few kilobytes from the end of each file, and did not handle empty
files properly.
|
|
|
|
|
|
| |
* top/maint.mk (sc_m_rules_): Save start time in a file.
(sc_z_rules_): New rules: remove temp file and print elapsed time.
(local-check): Interpose the .z rules
|
|
|
|
|
| |
* top/maint.mk (detect_empty_lines_at_EOF_): Don't confuse an
empty file with one that ends in an empty line.
|
|
|
|
| |
* top/maint.mk (sc_prohibit_empty_lines_at_EOF): New rule.
|
|
|
|
|
| |
* top/maint.mk (sc_prohibit_HAVE_MBRTOWC): Fix obsolete use of $re
in diagnostic; now use $prohibit.
|
|
|
|
|
| |
* top/maint.mk (sc_cross_check_PATH_usage_in_tests): Skip test and
announce that when $(_hv_file) (aka help-version) does not exist.
|
|
|
|
|
|
|
| |
* top/maint.mk (sc_cross_check_PATH_usage_in_tests): New rule.
Useful if you use a test like the one in help-version (coreutils,
diffutils, grep, gzip) that ensures $(VERSION) matches what is
printed by prog --version.
|
|
|
|
|
|
| |
* top/maint.mk (_prohibit_regexp): Define, to help people realize
that they need to convert their project-specific syntax-check rules
to use the new _sc_search_regexp.
|
|
|
|
|
|
|
|
|
| |
Also rearrange ChangeLog to match commit order.
* NEWS: Document the incompatible change, and its effect on cfg.mk.
* top/maint.mk (sc_prohibit_test_minus_ao): Update.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adapt existing rules to use the new factorization, which provides
a more declarative syntax for pattern searching syntax checks.
* top/maint.mk (_sc_search_regexp): Rename from _prohibit_regexp.
(sc_cast_of_argument_to_free): Adapt to use _sc_search_regexp.
(sc_cast_of_x_alloc_return_value): Likewise.
(sc_cast_of_alloca_return_value): Likewise.
(sc_space_tab): Likewise.
(sc_prohibit_atoi_atof): Likewise.
(sc_prohibit_magic_number_exit): Likewise.
(sc_error_exit_success): Likewise.
(sc_file_system): Likewise.
(sc_prohibit_have_config_h): Likewise.
(sc_require_config_h): Likewise.
(sc_prohibit_HAVE_MBRTOWC): Likewise.
(sc_obsolete_symbols): Likewise.
(sc_changelog): Likewise.
(sc_program_name): Likewise.
(sc_the_the): Likewise.
(sc_trailing_blank): Likewise.
(sc_two_space_separator_in_usage): Likewise.
(sc_useless_cpp_parens): Likewise.
(sc_GPL_version): Likewise.
(sc_GFDL_version): Likewise.
(sc_texinfo_acronym): Likewise.
(sc_prohibit_cvs_keyword): Likewise.
(sc_prohibit_stat_st_blocks): Likewise.
(sc_prohibit_S_IS_definition): Likewise.
(sc_redundant_const): Likewise.
(sc_makefile_TAB_only_indentation): Likewise.
(sc_m4_quote_check): Likewise.
(sc_makefile_path_separator_check): Likewise.
(sc_copyright_check): Likewise.
(sc_Wundef_boolean): Likewise.
(sc_vulnerable_makefile_CVE-2009-4029): Likewise.
|
|
|
|
|
|
|
|
|
| |
* top/maint.mk (sc_error_exit_success): Relax regexp to match uses
that have zero or two-and-more spaces between the function name
and the open parenthesis.
(sc_error_message_warn_fatal): Likewise.
(sc_error_message_uppercase): Likewise.
(sc_error_message_period): Likewise.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A word on the regex: \<\[ never matches, so the match instead
looks for a leading space in that case. Although configure.ac
should generally use test instead of [ (because the latter has
to be spelled [[ because of m4 processing), libvirt had a case
of the latter that would have been detected with this rule.
* top/maint.mk (sc_prohibit_test_minus_ao): Extend test.
Based on a libvirt report by Matthias Bolte.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Borrowing from a trick I discovered on the libvirt list.
More details about how this trick works:
GNU make parses all Makefiles, then checks whether they are
up-to-date, all before making anything else; if any Makefile
timestamps change, then it restarts with the original arguments and
repeats the check for up-to-date Makefiles (assuming that this time
the check will pass). Since all the rules are parsed before Makefile
is updated, proceeding without reloading Makefiles would result in the
use of the stale $(VERSION) string that was in effect when we first
started, so we must update a timestamp to force the reload. However,
if we made Makefile depend on _version, we would end up running
_version twice. So instead, we make _version run a recursive make to
update Makefile (the recursive make skips the rules for checking
whether the version string needs an update, avoiding any extra runs of
_version), then ensure that GNUmakefile has an updated timestamp to
force the reload of the updated Makefile.
* top/GNUmakefile (GNUmakefile): Create one-shot dependency rather
than using $(shell) to run _version target.
(_autoreconf): Run verbosely, by default.
Signed-off-by: Eric Blake <eblake@redhat.com>
|
|
|
|
| |
* top/maint.mk: Split a line to fit in 80 columns.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* top/maint.mk (_sc_header_without_use): Rename from _header_without_use.
(sc_prohibit_assert_without_use): Use the new name.
(sc_prohibit_close_stream_without_use): Likewise.
(sc_prohibit_getopt_without_use): Likewise.
(sc_prohibit_quotearg_without_use): Likewise.
(sc_prohibit_quote_without_use): Likewise.
(sc_prohibit_long_options_without_use): Likewise.
(sc_prohibit_inttostr_without_use): Likewise.
(sc_prohibit_ignore_value_without_use): Likewise.
(sc_prohibit_error_without_use): Likewise.
(sc_prohibit_xalloc_without_use): Likewise.
(sc_prohibit_hash_without_use): Likewise.
(sc_prohibit_hash_pjw_without_use): Likewise.
(sc_prohibit_safe_read_without_use): Likewise.
(sc_prohibit_argmatch_without_use): Likewise.
(sc_prohibit_canonicalize_without_use): Likewise.
(sc_prohibit_root_dev_ino_without_use): Likewise.
(sc_prohibit_openat_without_use): Likewise.
(sc_prohibit_c_ctype_without_use): Likewise.
(sc_prohibit_signal_without_use): Likewise.
(sc_prohibit_intprops_without_use): Likewise.
|
|
|
|
| |
* top/maint.mk (sc_prohibit_test_minus_ao): New rule.
|
|
|
|
| |
Reported by Eric Blake <eblake@redhat.com>.
|
|
|
|
| |
Signed-off-by: Simon Josefsson <simon@josefsson.org>
|
|
|
|
| |
Based on suggestions from karl@freefriends.org (Karl Berry).
|
|
|
|
| |
* top/maint.mk (sc_prohibit_intprops_without_use): New rule.
|
|
|
|
|
| |
* top/maint.mk ($(syntax-check-rules)): Add .PHONY, so that
"make -t syntax-check" doesn't create a ton of sc_*.m files.
|
|
|
|
|
| |
* top/maint.mk (sc_prohibit_hash_without_use): Re-add "@".
(sc_prohibit_hash_pjw_without_use): New rule.
|
|
|
|
|
|
|
| |
* top/maint.mk (upload_dest_dir_): Define with a default that
preserves the status quo.
(emit_upload_commands): Use it, rather than hard-coding $(PACKAGE).
Reported by Peter Simons.
|
|
|
|
| |
* top/maint.mk (sc_prohibit_hash_without_use): New rule.
|
|
|
|
| |
* top/maint.mk (sc_prohibit_ignore_value_without_use): New rule.
|
|
|
|
| |
* top/maint.mk (sc_vulnerable_makefile_CVE-2009-4029): New rule.
|
|
|
|
|
|
|
|
|
| |
* modules/maintainer-makefile (configure.ac): Parameterize the location
of config.h which will be available to makefiles as $(CONFIG_INCLUDE).
The logic is from Eric Blake and the location indicated by Jim Meyering.
Note the more natural CONFIG_HEADER name is prohibited by automake
for backwards compatibility reasons.
* top/maint.mk (sc_Wundef_boolean): New rule.
|