summaryrefslogtreecommitdiff
path: root/top
Commit message (Collapse)AuthorAgeFilesLines
* maint.mk: add syntax check for use of compare from init.shEric Blake2011-11-291-0/+10
| | | | | | | | | | | | Comparing expected against actual gives more consistent diff listings when reporting test failures. Enforce this idiom on test files that use init.sh, and allow projects to recognize an alternate pattern for recognizing tests scripts that use a compare function. * top/maint.mk (sc_prohibit_reversed_compare_failure): New rule, moved here from coreutils. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint.mk: fix tight-scope.mk generation in VPATH builds.Gary V. Vaughan2011-11-151-1/+1
| | | | | | | | * top/maint.mk (tight-scope.mk): Make sure to prefix file reference with $(srcdir) so that the file is found correctly even when running `make syntax-check' in a VPATH build. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* GNUmakefile: behave when Makefile is missing.Simon Josefsson2011-11-081-0/+5
| | | | * top/GNUmakefile: Always initialize _build-aux and _autoreconf.
* maint.mk: extract GPG key ID without using a temporary fileJim Meyering2011-11-081-3/+3
| | | | | | * top/maint.mk (gpg_key_ID): Extract GPG key ID from signed tag, but without using a temporary file. Based on a suggestion from Werner Koch in http://thread.gmane.org/gmane.comp.encryption.gpg.devel/16496
* maint.mk: silence new syntax checkEric Blake2011-11-071-1/+1
| | | | | | * top/maint.mk (sc_prohibit_dirent_without_use): Add missing @. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint.mk: also prohibit inclusion of dirent.h without useJim Meyering2011-11-051-0/+10
| | | | * top/maint.mk (sc_prohibit_dirent_without_use): New rule.
* GNUmakefile: reenable "make syntax-check" for most projectsJim Meyering2011-10-301-1/+2
| | | | | | | | | | Since Friday's commit 05e2d798, "maint.mk: don't maintain a second build-aux variable", "syntax-check" would do nothing but succeed with the "No version control files detected..." diagnostic (unless you happened to override _build-aux via cfg.mk). * top/GNUmakefile (_autoreconf, _build-aux): Move default definitions to precede inclusion of maint.mk. Otherwise, these variables would be used undefined in any project that does not override the default.
* maint.mk: don't maintain a second build-aux variable.Gary V. Vaughan2011-10-281-8/+12
| | | | | | | | | * maint.mk (build_aux): Removed. The maintainer-makefile module depends on GNUmakefile, which already maintains a cfg.mk overridable $(_build-aux) for projects with a non-standard build-aux directory location, although without the $(srcdir) prefix. Use that variable consistently instead of introducing a second one. Adjust all call sites.
* maint.mk: fix a bug in sc_prohibit_stddef_without_useJim Meyering2011-10-251-1/+1
| | | | | | * top/maint.mk (sc_prohibit_stddef_without_use): Don't require / *\(/ after symbols like NULL, size_t, etc. Reported by Alfred M. Szmidt.
* maint.mk: exempt ENODATA from a syntax-check ruleJim Meyering2011-10-251-1/+3
| | | | | | | * top/maint.mk (gl_extract_significant_defines_): Also exempt ENODATA from the sc_prohibit_always-defined_macros syntax-check rule. Add a comment. See this for more details: http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/28739/focus=28795
* readme-release: improve safety of release prep instructions.Gary V. Vaughan2011-10-231-8/+6
| | | | | | | | | | * README-release: Don't git pull all branches when only master is needed for the release process. Run make maintainer-clean before changing trees and merging. Don't try to run ./configure right after git pull in case files that influence the bootstrap process have changed, move the ./configure step to after running ./bootstrap. Don't bootstrap "one last time"... it's the first time!
* maint.mk: Respect $(build_aux) in web-manual rule.Gary V. Vaughan2011-10-191-1/+1
| | | | | * top/maint.mk (web-manual): Find gen-announce script in user's $(build_aux) directory instead of hard-coding 'build-aux'.
* maint.mk: adjust a release-related rule not to require use of gzipJim Meyering2011-10-011-7/+11
| | | | | | * top/maint.mk (writable-files): Don't hard-code use of .tar.gz. Instead, check each file in $(DIST_ARCHIVES). This is better for projects that build only .tar.xz files. Also fix an erroneous test.
* maint.mk: avoid warnings from perl about missing filesMartin von Gagern2011-09-191-1/+2
| | | | | | * top/maint.mk (def_sym_regex): Ignore files listed in $(gl_other_headers_) that do not exist, say because a project does not use a corresponding module.
* maint.mk: sc_tight_scope: propagate failure from sub-makeJim Meyering2011-09-141-3/+5
| | | | | * top/maint.mk (sc_tight_scope): Actually initialize and use $fail. Reported by Martin von Gagern.
* maint.mk: mark the post-release commit log with "maint: " prefixJim Meyering2011-09-081-3/+3
| | | | | * top/maint.mk (emit-commit-log): Add "maint: " prefix to the one-line commit-log summary.
* doc: fix typo in README-releaseReuben Thomas2011-08-201-1/+1
| | | | * top/README-release: Capitalize first word of a sentence.
* maint.mk: relax the default _gl_TS_function_match regexpJim Meyering2011-08-021-1/+1
| | | | | | * top/maint.mk (_gl_TS_function_match): Don't require at least one space between function name and "(" in an "extern" declaration. That would fail to match a decl with no space there: extern void foo();
* maint.mk: avoid sc_prohibit_always-defined_macros failure in coreutilsJim Meyering2011-07-271-0/+1
| | | | | | | | | * top/maint.mk (gl_extract_significant_defines_): Now that SA_RESETHAND and SA_RESTART are #defined (albeit conditionally) in gnulib/lib/signal.in.h, and now that we recommend to define-if-undefined those two symbols in application code, we must filter them out of the "significant" list. This avoids a "make syntax-check" failure in coreutils.
* maint.mk: prohibit inclusion of "verify.h" without useJim Meyering2011-07-211-0/+6
| | | | * top/maint.mk (sc_prohibit_verify_without_use): New rule.
* * top/maint.mk: Adjust to new noreturn support.Paul Eggert2011-07-121-2/+1
| | | | | (gl_extract_significant_defines_): Omit pattern ATTRIBUTE_NORETURN. (def_sym_regex): Do not remove ATTRIBUTE_NORETURN.
* maint.mk: correct omissions in prohibit_argmatch_without_use checkJim Meyering2011-07-031-1/+1
| | | | | | | This rule would mistakenly report that argmatch.h is included without use even when both the argmatch and invalid_arg macro were used. * top/maint.mk (sc_prohibit_argmatch_without_use): Also detect uses of argmatch and invalid_arg.
* maint.mk: enhance useless header checksEric Blake2011-06-241-30/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Libvirt was mistakenly using <intprops.h> instead of "intprops.h" in one place; when I fixed that, I was surprised to get a syntax-check failure from an unused header. * top/maint.mk (_sc_header_without_use): Check both include styles. (sc_prohibit_assert_without_use) (sc_prohibit_close_stream_without_use) (sc_prohibit_getopt_without_use) (sc_prohibit_quotearg_without_use) (sc_prohibit_quote_without_use) (sc_prohibit_long_options_without_use) (sc_prohibit_inttostr_without_use) (sc_prohibit_ignore_value_without_use) (sc_prohibit_error_without_use, sc_prohibit_xalloc_without_use) (sc_prohibit_hash_without_use, sc_prohibit_cloexec_without_use) (sc_prohibit_posixver_without_use, sc_prohibit_same_without_use) (sc_prohibit_hash_pjw_without_use) (sc_prohibit_safe_read_without_use) (sc_prohibit_argmatch_without_use) (sc_prohibit_canonicalize_without_use) (sc_prohibit_root_dev_ino_without_use) (sc_prohibit_openat_without_use) (sc_prohibit_c_ctype_without_use) (sc_prohibit_signal_without_use) (sc_prohibit_stdio--_without_use) (sc_prohibit_stdio-safer_without_use) (sc_prohibit_strings_without_use) (sc_prohibit_intprops_without_use) (sc_prohibit_stddef_without_use) (sc_prohibit_xfreopen_without_use): Update clients. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint.mk: update sc_prohibit_intprops_without_useEric Blake2011-06-241-2/+8
| | | | | | | | This syntax check needs to reflect commit 8cc0fee and following. * top/maint.mk (_intprops_names): Match recent changes. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint.mk: test further PATH_MAX issuesEric Blake2011-06-231-5/+5
| | | | | | | | * top/maint.mk (sc_prohibit_path_max_array): Rename... (sc_prohibit_path_max_allocation): ...and also test alloca. Suggested by Jim Meyering. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint.mk: add syntax-check to avoid char[PATH_MAX]Eric Blake2011-06-221-0/+9
| | | | | | | | | | | | POSIX allows PATH_MAX to be undefined. And even if you use the gnulib pathmax module, where "pathmax.h" guarantees a definition, the definition might not be constant or might be so large as to be wasteful or cause stack overflows. PATH_MAX should only be used as a limit or hueristic, not an array size. * top/maint.mk (sc_prohibit_path_max_array): New rule. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint.mk: sc_unmarked_diagnostics: don't hard-code "error"Jim Meyering2011-06-041-1/+6
| | | | | | * top/maint.mk (sc_unmarked_diagnostics): Don't hard-code the function name, "error". (_gl_translatable_diag_func_re): New configurable variable.
* maint.mk: add three prohibit-header-without-use rulesJim Meyering2011-06-041-0/+10
| | | | | | | Prohibit use of cloexec.h, posixver.h, same.h without use. * top/maint.mk (sc_prohibit_cloexec_without_use): New rule. (sc_prohibit_posixver_without_use): Likewise. (sc_prohibit_same_without_use): Likewise.
* maint.mk: more tight_scope improvementsJim Meyering2011-05-231-14/+18
| | | | | | | | | * top/maint.mk: (_gl_TS_var_match): Use $(_gl_TS_extern) here, too. (_gl_TS_headers): Define only in if-0'd block. (_gl_TS_dir): Omit the $(srcdir)/ prefix. Sometimes we need it, sometimes we must *not* use it. Adjust uses accordingly. (sc_tight_scope): Use much simpler grep-based test to determine whether we skip this rule.
* maint.mk: generalize/improve the tight-scope ruleJim Meyering2011-05-231-19/+39
| | | | | | | | | | | | | * top/maint.mk: Emit a warning when the test is skipped. (_gl_TS_dir): Add $(srcdir)/ prefix. (_gl_TS_function_match): Simplify, rather than trying to enumerate common types. Otherwise, it would fail to match an "extern unsigned char const *" declaration in idutils. (_gl_TS_extern): Do not endorse use of "XTERN", but do provide a way to support use of that type of macro. (_gl_TS_var_match): Simplify regexp. (_gl_TS_obj_files): New configurable variable. (_gl_TS_headers): Likewise.
* maint.mk: three new prohibit_<HDR>_without_use rulesJim Meyering2011-05-181-0/+14
| | | | | | * top/maint.mk (sc_prohibit_stdio--_without_use): New rule. (sc_prohibit_stdio-safer_without_use): Likewise. (sc_prohibit_xfreopen_without_use): Likewise.
* maint.mk: exclude compiler symbols from sc_tight_scopePádraig Brady2011-05-181-3/+6
|
* maint.mk: drop redundant checkEric Blake2011-05-111-6/+0
| | | | | | | * top/maint.mk (sc_the_the): Delete; sc_prohibit_doubled_word does the same but better. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint.mk: adjust previous commitJim Meyering2011-05-111-7/+12
| | | | | | Change "misc" in names to "undesirable_word_seq". "misc" is rarely desirable, in a name ;-) Define and use ignore_undesirable_word_sequence_RE_ properly.
* maint.mk: improve "can not" detection and generalize rule nameJim Meyering2011-05-111-8/+22
| | | | | | | | | | | | * top/maint.mk (sc_prohibit_misc): Renamed from sc_prohibit_can_not, since we'll probably add a few more word pairs here. Use the same technique as in sc_prohibit_doubled_word, so that we recognize "can not" also when the words are separated by a newline. Suggested by Eric Blake. (perl_filename_lineno_text_): Define. Factored out of... (prohibit_doubled_word_): ...here. Use the new definition. (prohibit_misc_): New var. Use it here, too. (prohibit_misc_RE_): New overridable variable.
* maint.mk: change semantics/name of tight_scope variablesJim Meyering2011-05-091-5/+14
| | | | | * top/maint.mk (_gl_TS_var_match, _gl_TS_function_match): Rename variables to align with semantics that make them more useful.
* maint.mk: fix oopsJim Meyering2011-05-091-1/+1
| | | | * top/maint.mk (sc_tight_scope): Fix last change: missing backslash.
* maint.mk: tweak new rule's name not to impingeJim Meyering2011-05-091-4/+4
| | | | | * top/maint.mk (_gl_tight_scope): Rename from sc_tight_scope-0. (sc_tight_scope): Use new rule name rather than $@-0.
* maint.mk: add a syntax-check rule to ensure tightly-scoped symbolsJim Meyering2011-05-091-0/+62
| | | | | | | | * top/maint.mk (sc_tight_scope): New rule. (sc_tight_scope-0): New rule, ifdef'd out. (_gl_TS_dir): Default. (_gl_TS_unmarked_extern_functions, _gl_TS_function_regex): Define. (_gl_TS_unmarked_extern_vars, _gl_TS_var_regex): Define.
* maint.mk: suppress "Entering/Leaving directory" diag in announcementJim Meyering2011-05-081-1/+1
| | | | | | | * top/maint.mk (release-prep): Use make's --no-print-directory option when generating the announcement. This eliminates the pesky "make[2]: Entering/Leaving directory" diagnostics in the generated announcement template.
* maintainer-makefile: make sc_po_check easier to tuneEric Blake2011-05-061-1/+2
| | | | | | | * top/maint.mk (sc_po_check): Allow overriding which non-VC files to probe for strings, such as an alternate location for gnulib. Signed-off-by: Eric Blake <eblake@redhat.com>
* maint.mk: use info-gnu@ as the default only for a stable releaseJim Meyering2011-05-061-5/+14
| | | | | | | * top/maint.mk: Don't default to info-gnu for alpha or beta releases. For those, just use $(PACKAGE_BUGREPORT), in which case we don't have to set the Mail-Followup-To header. Prompted by Reuben Thomas in http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/26488
* readme-release: new module with release instructionsReuben Thomas2011-05-031-0/+89
| | | | | | * modules/readme-release: New module. * top/README-release: New file, from coreutils, grep, diffutils. * MODULES.html.sh (Support for maintaining and releasing): Add it.
* maint.mk: remove unused VC-tag variableJim Meyering2011-04-291-1/+0
| | | | * top/maint.mk (VC-tag): Remove unused variable.
* maint.mk: makefile_at_at_check extend and clean upJim Meyering2011-04-251-4/+11
| | | | | | | | | | * top/maint.mk (sc_makefile_at_at_check): Check *.mk files in addition to */Makefile.am. Exempt legitimate uses of @VAR@ notation, e.g., MAKEINFO = env LANG= LC_MESSAGES= LC_ALL= LANGUAGE= @MAKEINFO@ Remove obsolete coreutils-specific comment. Prompted by discussion here: http://thread.gmane.org/gmane.comp.lib.gnulib.bugs/26074
* maint.mk: prohibit doubled wordsJim Meyering2011-04-111-4/+19
| | | | | | | | | | | | | | | | | | | | | | Detect them also when they're separated by a newline. There are 3 ways to customize it: - disable the test on a per file basis, as usual with rules using $(VC_LIST_EXCEPT) - replace the default doubled-word-selecting regexp (affects all files) - ignore a particular file-vs-doubled-word match I nearly used that last one to ignore the "is is" match in coreutils' NEWS file, since the text was "ls -is is ..." To do that, I would have added this line to cfg.mk: ignore_doubled_word_match_RE_ = ^NEWS:[0-9]+:is[ ]is$ but it would have ignored any "is is" match in NEWS. Low probability, but still... Instead, I changed the text, slightly: - ls -is is now consistent with ls -lis in ignoring values returned + "ls -is" is now consistent with ls -lis in ignoring values returned * top/maint.mk (prohibit_double_word_RE_): Provide default. (prohibit_doubled_word_): Define. (sc_prohibit_doubled_word): New rule. (sc_prohibit_the_the): Remove. Subsumed by the above.
* maint.mk: remove useless semicolon and backslashJim Meyering2011-04-111-1/+1
| | | | | * top/maint.mk (sc_prohibit_empty_lines_at_EOF): Remove stray semicolon and backslash.
* maint.mk: prohibit \<the the\>Jim Meyering2011-04-091-0/+5
| | | | * top/maint.mk (sc_prohibit_the_the): New rule.
* maint.mk: prohibit use of "can not"Jim Meyering2011-04-091-0/+5
| | | | | * top/maint.mk (sc_prohibit_can_not): New rule. Writing "can not" (rather than "cannot") is too common. Prohibit it.
* maint.mk: Don't trigger sc_space_tab check.Simon Josefsson2011-04-051-1/+1
| | | | | * top/maint.mk (sc_prohibit_empty_lines_at_EOF): Don't trigger sc_space_tab check.