X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=top%2Fmaint.mk;h=9f4c0323781a2517ccbac8cc82536d906d1b1eb6;hb=f16415c07025fdec551dfc1dc7275c2a88819d44;hp=51f617bb4899b063325461dc4b6cb2656c911858;hpb=244794a7887f13d9cdb91fed96932cc479905b96;p=gnulib.git diff --git a/top/maint.mk b/top/maint.mk index 51f617bb4..9f4c03237 100644 --- a/top/maint.mk +++ b/top/maint.mk @@ -21,8 +21,12 @@ # ME := $(word $(words $(MAKEFILE_LIST)),$(MAKEFILE_LIST)) ME := maint.mk -# Override this in cfg.mk if you use a non-standard build-aux directory. -build_aux ?= $(srcdir)/build-aux +# Diagnostic for continued use of deprecated variable. +# Remove in 2013 +ifneq ($(build_aux),) + $(error "$(ME): \ +set $$(_build-aux) relative to $$(srcdir) instead of $$(build_aux)") +endif # Do not save the original name or timestamp in the .tar.gz file. # Use --rsyncable if available. @@ -34,7 +38,7 @@ GZIP_ENV = '--no-name --best $(gzip_rsyncable)' GIT = git VC = $(GIT) -VC_LIST = $(build_aux)/vc-list-files -C $(srcdir) +VC_LIST = $(srcdir)/$(_build-aux)/vc-list-files -C $(srcdir) # You can override this variable in cfg.mk to set your own regexp # matching files to ignore. @@ -274,7 +278,7 @@ define _sc_search_regexp endef sc_avoid_if_before_free: - @$(build_aux)/useless-if-before-free \ + @$(srcdir)/$(_build-aux)/useless-if-before-free \ $(useless_free_options) \ $$($(VC_LIST_EXCEPT) | grep -v useless-if-before-free) && \ { echo '$(ME): found useless "if" before "free" above' 1>&2; \ @@ -618,7 +622,17 @@ _stddef_syms_re = NULL|offsetof|ptrdiff_t|size_t|wchar_t # Prohibit the inclusion of stddef.h without an actual use. sc_prohibit_stddef_without_use: @h='stddef.h' \ - re='\<($(_stddef_syms_re)) *\(' \ + re='\<($(_stddef_syms_re))\>' \ + $(_sc_header_without_use) + +_de1 = dirfd|(close|(fd)?open|read|rewind|seek|tell)dir(64)?(_r)? +_de2 = (versionsort|struct dirent|getdirentries|alphasort|scandir(at)?)(64)? +_de3 = MAXNAMLEN|DIR|ino_t|d_ino|d_fileno|d_namlen +_dirent_syms_re = $(_de1)|$(_de2)|$(_de3) +# Prohibit the inclusion of dirent.h without an actual use. +sc_prohibit_dirent_without_use: + h='dirent.h' \ + re='\<($(_dirent_syms_re))\>' \ $(_sc_header_without_use) # Prohibit the inclusion of verify.h without an actual use. @@ -749,10 +763,12 @@ gl_other_headers_ ?= \ # Perl -lne code to extract "significant" cpp-defined symbols from a # gnulib header file, eliminating a few common false-positives. +# The exempted names below are defined only conditionally in gnulib, +# and hence sometimes must/may be defined in application code. gl_extract_significant_defines_ = \ /^\# *define ([^_ (][^ (]*)(\s*\(|\s+\w+)/\ && $$2 !~ /(?:rpl_|_used_without_)/\ - && $$1 !~ /^(?:NSIG)$$/\ + && $$1 !~ /^(?:NSIG|ENODATA)$$/\ && $$1 !~ /^(?:SA_RESETHAND|SA_RESTART)$$/\ and print $$1 @@ -1208,7 +1224,7 @@ else endif announcement: NEWS ChangeLog $(rel-files) - @$(build_aux)/announce-gen \ + @$(srcdir)/$(_build-aux)/announce-gen \ --mail-headers='$(announcement_mail_headers_)' \ --release-type=$(RELEASE_TYPE) \ --package=$(PACKAGE) \ @@ -1232,7 +1248,7 @@ upload_dest_dir_ ?= $(PACKAGE) emit_upload_commands: @echo ===================================== @echo ===================================== - @echo "$(build_aux)/gnupload $(GNUPLOADFLAGS) \\" + @echo "$(srcdir)/$(_build-aux)/gnupload $(GNUPLOADFLAGS) \\" @echo " --to $(gnu_rel_host):$(upload_dest_dir_) \\" @echo " $(rel-files)" @echo '# send the ~/announce-$(my_distdir) e-mail' @@ -1327,7 +1343,7 @@ web-manual: @test -z "$(manual_title)" \ && { echo define manual_title in cfg.mk 1>&2; exit 1; } || : @cd '$(srcdir)/doc'; \ - $(SHELL) ../build-aux/gendocs.sh $(gendocs_options_) \ + $(SHELL) ../$(_build-aux)/gendocs.sh $(gendocs_options_) \ -o '$(abs_builddir)/doc/manual' \ --email $(PACKAGE_BUGREPORT) $(PACKAGE) \ "$(PACKAGE_NAME) - $(manual_title)" @@ -1392,7 +1408,7 @@ update-copyright-env ?= update-copyright: grep -l -w Copyright \ $$(export VC_LIST_EXCEPT_DEFAULT=COPYING && $(VC_LIST_EXCEPT)) \ - | $(update-copyright-env) xargs $(build_aux)/$@ + | $(update-copyright-env) xargs $(srcdir)/$(_build-aux)/$@ # This tight_scope test is skipped with a warning if $(_gl_TS_headers) is not # overridden and $(_gl_TS_dir)/Makefile.am does not mention noinst_HEADERS.