diff options
author | Simon Josefsson <simon@josefsson.org> | 2006-02-14 14:26:18 +0000 |
---|---|---|
committer | Simon Josefsson <simon@josefsson.org> | 2006-02-14 14:26:18 +0000 |
commit | 84debef8c277df6e8c89a0008b199205aed61263 (patch) | |
tree | ad93334ca0386b52a8fe8ce0653059a0dcb05648 | |
parent | e370ea93bf44aa7f03cbfeb61d7d152786159be5 (diff) | |
download | gnutls-84debef8c277df6e8c89a0008b199205aed61263.tar.gz |
Add maintainer-makefile module.
-rw-r--r-- | GNUmakefile | 61 | ||||
-rw-r--r-- | gl/Makefile.am | 2 | ||||
-rw-r--r-- | gl/m4/gnulib-cache.m4 | 4 | ||||
-rw-r--r-- | gl/m4/gnulib-comp.m4 | 2 | ||||
-rw-r--r-- | maint-cfg.mk | 32 | ||||
-rw-r--r-- | maint.mk | 44 |
6 files changed, 142 insertions, 3 deletions
diff --git a/GNUmakefile b/GNUmakefile new file mode 100644 index 0000000000..c9fad2d371 --- /dev/null +++ b/GNUmakefile @@ -0,0 +1,61 @@ +# Having a separate GNUmakefile lets me `include' the dynamically +# generated rules created via Makefile.maint as well as Makefile.maint itself. +# This makefile is used only if you run GNU Make. +# It is necessary if you want to build targets usually of interest +# only to the maintainer. + +# Copyright (C) 2001, 2003, 2006 Free Software Foundation, Inc. +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with this program; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +# Systems where /bin/sh is not the default shell need this. The $(shell) +# command below won't work with e.g. stock DOS/Windows shells. +ifeq ($(wildcard /bin/s[h]),/bin/sh) +SHELL = /bin/sh +else +# will be used only with the next shell-test line, then overwritten +# by a configured-in value +SHELL = sh +endif + +# Make tar archive easier to reproduce. +export TAR_OPTIONS = --owner=0 --group=0 --numeric-owner + +# Ran autoreconf and configure or not? +have-Makefile := $(shell test -f Makefile && echo yes) +ifeq ($(have-Makefile),yes) + +include Makefile +-include $(srcdir)/maint-cfg.mk +include $(srcdir)/maint.mk + +else + +.DEFAULT_GOAL := abort-due-to-no-makefile + +-include ./maint-cfg.mk +include ./maint.mk + +abort-due-to-no-makefile: + @echo There seems to be no Makefile in this directory. 1>&2 + @echo "You must run ./configure before running \`make'." 1>&2 + @exit 1 + +endif + +# Tell version 3.79 and up of GNU make to not build goals in this +# directory in parallel. This is necessary in case someone tries to +# build multiple targets on one command line. +.NOTPARALLEL: diff --git a/gl/Makefile.am b/gl/Makefile.am index 0ef215aad3..d01552e416 100644 --- a/gl/Makefile.am +++ b/gl/Makefile.am @@ -8,7 +8,7 @@ # the same distribution terms as the rest of that program. # # Generated by gnulib-tool. -# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=gl --m4-base=gl/m4 --aux-dir=. --lgpl --libtool --macro-prefix=gl gc gc-arcfour gc-arctwo gc-des gc-hmac-md5 gc-md2 gc-md4 gc-md5 gc-pbkdf2-sha1 gc-rijndael gc-sha1 getline getpass inet_ntop memmem memmove minmax readline snprintf socklen stdint +# Reproduce by: gnulib-tool --import --dir=. --lib=libgnu --source-base=gl --m4-base=gl/m4 --aux-dir=. --lgpl --libtool --macro-prefix=gl gc gc-arcfour gc-arctwo gc-des gc-hmac-md5 gc-md2 gc-md4 gc-md5 gc-pbkdf2-sha1 gc-rijndael gc-sha1 getline getpass inet_ntop maintainer-makefile memmem memmove minmax readline snprintf socklen stdint AUTOMAKE_OPTIONS = 1.5 gnits no-dependencies diff --git a/gl/m4/gnulib-cache.m4 b/gl/m4/gnulib-cache.m4 index c51f658c59..fcf312d12c 100644 --- a/gl/m4/gnulib-cache.m4 +++ b/gl/m4/gnulib-cache.m4 @@ -14,10 +14,10 @@ # Specification in the form of a command-line invocation: -# gnulib-tool --import --dir=. --lib=libgnu --source-base=gl --m4-base=gl/m4 --aux-dir=. --lgpl --libtool --macro-prefix=gl gc gc-arcfour gc-arctwo gc-des gc-hmac-md5 gc-md2 gc-md4 gc-md5 gc-pbkdf2-sha1 gc-rijndael gc-sha1 getline getpass inet_ntop memmem memmove minmax readline snprintf socklen stdint +# gnulib-tool --import --dir=. --lib=libgnu --source-base=gl --m4-base=gl/m4 --aux-dir=. --lgpl --libtool --macro-prefix=gl gc gc-arcfour gc-arctwo gc-des gc-hmac-md5 gc-md2 gc-md4 gc-md5 gc-pbkdf2-sha1 gc-rijndael gc-sha1 getline getpass inet_ntop maintainer-makefile memmem memmove minmax readline snprintf socklen stdint # Specification in the form of a few gnulib-tool.m4 macro invocations: -gl_MODULES([gc gc-arcfour gc-arctwo gc-des gc-hmac-md5 gc-md2 gc-md4 gc-md5 gc-pbkdf2-sha1 gc-rijndael gc-sha1 getline getpass inet_ntop memmem memmove minmax readline snprintf socklen stdint]) +gl_MODULES([gc gc-arcfour gc-arctwo gc-des gc-hmac-md5 gc-md2 gc-md4 gc-md5 gc-pbkdf2-sha1 gc-rijndael gc-sha1 getline getpass inet_ntop maintainer-makefile memmem memmove minmax readline snprintf socklen stdint]) gl_AVOID([]) gl_SOURCE_BASE([gl]) gl_M4_BASE([gl/m4]) diff --git a/gl/m4/gnulib-comp.m4 b/gl/m4/gnulib-comp.m4 index b8a4b16d49..2003a2c1fc 100644 --- a/gl/m4/gnulib-comp.m4 +++ b/gl/m4/gnulib-comp.m4 @@ -63,7 +63,9 @@ AC_DEFUN([gl_INIT], # This macro records the list of files which have been installed by # gnulib-tool and may be removed by future gnulib-tool invocations. AC_DEFUN([gl_FILE_LIST], [ + build-aux/GNUmakefile build-aux/config.rpath + build-aux/maint.mk lib/alloca_.h lib/arcfour.c lib/arcfour.h diff --git a/maint-cfg.mk b/maint-cfg.mk new file mode 100644 index 0000000000..9ad44a31cc --- /dev/null +++ b/maint-cfg.mk @@ -0,0 +1,32 @@ +# Copyright (C) 2006 Free Software Foundation +# +# Author: Simon Josefsson +# +# This file is part of GNUTLS. +# +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This file is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this file; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + +CFGFLAGS ?= --enable-developer-mode --enable-gtk-doc + +ifeq ($(.DEFAULT_GOAL),abort-due-to-no-makefile) +.DEFAULT_GOAL := bootstrap +endif + +gtk-doc.make: + gtkdocize + +bootstrap: gtk-doc.make + test -f ./configure || autoreconf --install + ./configure $(CFGFLAGS) diff --git a/maint.mk b/maint.mk new file mode 100644 index 0000000000..be933983bc --- /dev/null +++ b/maint.mk @@ -0,0 +1,44 @@ +# -*-Makefile-*- +# This Makefile fragment is intended to be useful by any GNU-like project. +# This file originate from coreutils, CPPI, Bison, and Autoconf. + +## Copyright (C) 2001-2006 Free Software Foundation, Inc. +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; either version 2, or (at your option) +## any later version. +## +## This program is distributed in the hope that it will be useful, +## but WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +## GNU General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this program; if not, write to the Free Software +## Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA +## 02110-1301, USA. + +# List of all C-like source code files that will be tested for +# stylistic "errors". You may want to define this to something +# more complex in Makefile.cfg. +C_SOURCES ?= $(shell find . -name '*.[chly]') + +# Add some more files to check, typically set in Makefile.cfg. +C_SOURCES += $(C_SOURCES_ADD) + +# Do not save the original name or timestamp in the .tar.gz file. +# Use --rsyncable if available. +gzip_rsyncable := \ + $(shell gzip --help|grep rsyncable >/dev/null && echo --rsyncable) +GZIP_ENV = '--no-name --best $(gzip_rsyncable)' + +# Prevent programs like 'sort' from considering distinct strings to be equal. +# Doing it here saves us from having to set LC_ALL elsewhere in this file. +export LC_ALL = C + +# Casting arguments to free is never necessary. +sc_cast_of_argument_to_free: + @grep -nE '\<free *\( *\(' $(C_SOURCES) && \ + { echo '$(ME): don'\''t cast free argument' 1>&2; \ + exit 1; } || : |