1 # Customize maint.mk -*- makefile -*-
2 # Copyright (C) 2003-2022 Free Software Foundation, Inc.
4 # This program is free software: you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License as published by
6 # the Free Software Foundation, either version 3 of the License, or
7 # (at your option) any later version.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License
15 # along with this program. If not, see <https://www.gnu.org/licenses/>.
17 # Don't include the translation project coordinator email address
18 # in announcement template.
19 translation_project_
=
21 # Used in maint.mk's web-manual rule
22 manual_title
= gzip
: the data compression program
24 # Use the direct link. This is guaranteed to work immediately, while
25 # it can take a while for the faster mirror links to become usable.
26 url_dir_list
= https
://ftp.gnu.org
/gnu
/$(PACKAGE
)
28 # Tests not to run as part of "make distcheck".
29 local-checks-to-skip
= \
31 sc_error_message_period \
32 sc_error_message_uppercase \
37 # Tools used to bootstrap this package, used for "announcement".
38 bootstrap-tools
= autoconf
,automake
,gnulib
40 # Now that we have better tests, make this the default.
43 old_NEWS_hash
= 053f232e511b9a95079de114760117a7
45 sc_obs_header_regex
= \
46 \
<(STDC_HEADERS|HAVE_
(LIMITS|STRING|UNISTD|STDLIB
)_H
)\
>
47 sc_prohibit_obsolete_HAVE_HEADER_H
:
48 @prohibit
='^[ ]*#[ ]*(el)?if.*$(sc_obs_header_regex)' \
49 halt
='remove the above obsolete #if...HAVE_HEADER_H test(s)' \
52 update-copyright-env
= \
53 UPDATE_COPYRIGHT_USE_INTERVALS
=1 \
54 UPDATE_COPYRIGHT_MAX_LINE_LENGTH
=79
56 # Indent only with spaces.
57 sc_prohibit_tab_based_indentation
:
59 halt
='TAB in indentation; use only spaces' \
62 # Don't use "indent-tabs-mode: nil" anymore. No longer needed.
63 sc_prohibit_emacs__indent_tabs_mode__setting
:
64 @prohibit
='^( *[*#] *)?indent-tabs-mode:' \
65 halt
='use of emacs indent-tabs-mode: setting' \
71 srcdirslash
= $(srcdir)/
74 sc_gzip_copyright_check
:
75 @require
='Copyright \(C\) '$$(date
+%Y
)' Free' \
76 in_vc_files
='^$(srcdirslash)(gzip\.c|[^z].*\.in|z[^ef].*\.in|zf[^g].*\.in)$$' \
77 halt
="out of date copyright in $$in_vc_files; update it" \
80 include $(srcdir)/dist-check.mk
82 exclude_file_name_regexp--sc_file_system
= ^NEWS
$$
83 exclude_file_name_regexp--sc_prohibit_tab_based_indentation
= \
84 (^|
/)(GNU
)?
[Mm
]akefile|
(^|
/)ChangeLog|\.
(am|mk
)$$
85 exclude_file_name_regexp--sc_require_config_h
= ^lib
/match\.c
$$
86 exclude_file_name_regexp--sc_require_config_h_first
= ^lib
/match\.c
$$
87 exclude_file_name_regexp--sc_prohibit_empty_lines_at_EOF
= \
88 ^tests
/hufts-segv\.gz
$$
89 exclude_file_name_regexp--sc_prohibit_strcmp
= ^gzip\.c
$$
90 exclude_file_name_regexp--sc_prohibit_always-defined_macros
= ^tailor\.h
$$
91 exclude_file_name_regexp--sc_prohibit_atoi_atof
= ^
(gzip|sample
/sub
)\.c
$$
92 exclude_file_name_regexp--sc_space_tab
= ^lib
/match\.c
$$
93 exclude_file_name_regexp--sc_useless_cpp_parens
= ^
(lib
/match\.c|tailor\.h
)$$
95 exclude_file_name_regexp--sc_prohibit_double_semicolon
= ^lib
/match\.c
$$
97 # Tell the tight_scope rule that sources are in ".".
100 # Tell the tight_scope rule that these variables are deliberately "extern".
101 export _gl_TS_unmarked_extern_vars
= \
102 block_start d_buf inbuf outbuf prev read_buf strstart window \
103 match_start prev_length max_chain_length good_match nice_match