pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/sysutils/autoswc Initial import of autoswc, version 1.0:



details:   https://anonhg.NetBSD.org/pkgsrc/rev/1fcb667d3178
branches:  trunk
changeset: 469293:1fcb667d3178
user:      jmmv <jmmv%pkgsrc.org@localhost>
date:      Sat Feb 21 23:03:01 2004 +0000

description:
Initial import of autoswc, version 1.0:

autoswc is an utility that automatically generates system wide cache files
for use with configure scripts created by GNU autoconf, and specially by
those executed within pkgsrc.

diffstat:

 sysutils/autoswc/DESCR              |    3 +
 sysutils/autoswc/Makefile           |   72 ++++++++++
 sysutils/autoswc/PLIST              |    7 +
 sysutils/autoswc/files/autoswc.8    |  130 ++++++++++++++++++
 sysutils/autoswc/files/autoswc.mk   |   50 +++++++
 sysutils/autoswc/files/autoswc.sh   |  209 +++++++++++++++++++++++++++++
 sysutils/autoswc/files/config.site  |   41 +++++
 sysutils/autoswc/files/configure.ac |  253 ++++++++++++++++++++++++++++++++++++
 8 files changed, 765 insertions(+), 0 deletions(-)

diffs (truncated from 797 to 300 lines):

diff -r a42b377d0898 -r 1fcb667d3178 sysutils/autoswc/DESCR
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/autoswc/DESCR    Sat Feb 21 23:03:01 2004 +0000
@@ -0,0 +1,3 @@
+autoswc is an utility that automatically generates system wide cache files
+for use with configure scripts created by GNU autoconf, and specially by
+those executed within pkgsrc.
diff -r a42b377d0898 -r 1fcb667d3178 sysutils/autoswc/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/autoswc/Makefile Sat Feb 21 23:03:01 2004 +0000
@@ -0,0 +1,72 @@
+# $NetBSD: Makefile,v 1.1.1.1 2004/02/21 23:03:01 jmmv Exp $
+
+DISTNAME=              autoswc-1.0
+CATEGORIES=            sysutils
+MASTER_SITES=          # empty
+DISTFILES=             # empty
+
+MAINTAINER=            jmmv%NetBSD.org@localhost
+COMMENT=               Generates system wide cache files for GNU autoconf
+
+DEPENDS=               autoconf>=2.59:../../devel/autoconf
+DEPENDS+=              automake>=1.8.2:../../devel/automake
+DEPENDS+=              libtool-base>=1.5.2:../../devel/libtool-base
+
+NO_BUILDLINK=          YES
+NO_CHECKSUM=           YES
+NO_CONFIGURE=          YES
+NO_MTREE=              YES
+USE_PKGINSTALL=                YES
+WRKSRC=                        ${WRKDIR}
+
+PKG_SYSCONFSUBDIR=     autoswc
+CACHEDIR=              /var/db/autoswc
+MKCONF=                        /etc/mk.conf
+OWN_DIRS=              ${CACHEDIR}
+
+EVAL_PREFIX+=                  PREFIX.autoconf=autoconf
+PREFIX.autoconf_DEFAULT=       ${LOCALBASE}
+EVAL_PREFIX+=                  PREFIX.automake=automake
+PREFIX.automake_DEFAULT=       ${LOCALBASE}
+EVAL_PREFIX+=                  PREFIX.libtool=libtool
+PREFIX.libtool_DEFAULT=                ${LOCALBASE}
+
+SUBST_CLASSES+=                build
+SUBST_MESSAGE.build=   "Building autoswc."
+SUBST_STAGE.build=     do-build
+SUBST_FILES.build=     autoswc
+SUBST_FILES.build+=    autoswc.8
+SUBST_FILES.build+=    autoswc.mk
+SUBST_FILES.build+=    config.site
+SUBST_SED.build=       -e 's|@ACLOCAL@|${PREFIX.automake}/bin/aclocal|g'
+SUBST_SED.build+=      -e 's|@AUTOCONF@|${PREFIX.autoconf}/bin/autoconf|g'
+SUBST_SED.build+=      -e 's|@AUTOMAKE@|${PREFIX.automake}/bin/automake|g'
+SUBST_SED.build+=      -e 's|@CACHEDIR@|${CACHEDIR}|g'
+SUBST_SED.build+=      -e 's|@LIBTOOLIZE@|${PREFIX.libtool}/bin/libtoolize|g'
+SUBST_SED.build+=      -e 's|@MAKE@|${MAKE}|g'
+SUBST_SED.build+=      -e 's|@MKCONF@|${MKCONF}|g'
+SUBST_SED.build+=      -e 's|@PREFIX@|${PREFIX}|g'
+SUBST_SED.build+=      -e 's|@SH@|${SH}|g'
+SUBST_SED.build+=      -e 's|@SYSCONFDIR@|${PKG_SYSCONFDIR}|g'
+
+INSTALL_DIRS=          man/man8 sbin
+
+do-extract:
+       ${CP} ${FILESDIR}/autoswc.8 ${WRKSRC}
+       ${CP} ${FILESDIR}/autoswc.mk ${WRKSRC}
+       ${CP} ${FILESDIR}/autoswc.sh ${WRKSRC}/autoswc
+       ${CP} ${FILESDIR}/config.site ${WRKSRC}
+
+do-build:
+       @${DO_NADA}
+
+do-install:
+       ${INSTALL_SCRIPT} ${WRKSRC}/autoswc ${PREFIX}/sbin
+       ${INSTALL_DATA} ${WRKSRC}/autoswc.8 ${PREFIX}/man/man8
+       ${INSTALL_DATA_DIR} ${PREFIX}/share/autoswc
+       ${INSTALL_DATA} ${WRKSRC}/autoswc.mk ${PREFIX}/share/autoswc
+       ${INSTALL_DATA_DIR} ${PREFIX}/share/examples/autoswc
+       ${INSTALL_DATA} ${WRKSRC}/config.site ${PREFIX}/share/autoswc
+       ${INSTALL_DATA} ${FILESDIR}/configure.ac ${PREFIX}/share/autoswc
+
+.include "../../mk/bsd.pkg.mk"
diff -r a42b377d0898 -r 1fcb667d3178 sysutils/autoswc/PLIST
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/autoswc/PLIST    Sat Feb 21 23:03:01 2004 +0000
@@ -0,0 +1,7 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2004/02/21 23:03:01 jmmv Exp $
+man/man8/autoswc.8
+sbin/autoswc
+share/autoswc/autoswc.mk
+share/autoswc/config.site
+share/autoswc/configure.ac
+@dirrm share/autoswc
diff -r a42b377d0898 -r 1fcb667d3178 sysutils/autoswc/files/autoswc.8
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/autoswc/files/autoswc.8  Sat Feb 21 23:03:01 2004 +0000
@@ -0,0 +1,130 @@
+.\" $NetBSD: autoswc.8,v 1.1.1.1 2004/02/21 23:03:02 jmmv Exp $
+.\"
+.\" autoswc - Generates system wide cache files for GNU autoconf
+.\" Copyright (c) 2004 Julio M. Merino Vidal <jmmv%NetBSD.org@localhost>
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\" 2. Neither the name of The NetBSD Foundation nor the names of its
+.\"    contributors may be used to endorse or promote products derived
+.\"    from this software without specific prior written permission.
+.\" 3. Neither the name of author nor the names of its contributors may
+.\"    be used to endorse or promote products derived from this software
+.\"    without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+.\" TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+.\" PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+.\" POSSIBILITY OF SUCH DAMAGE.
+.\"
+.Dd February 21, 2004
+.Dt AUTOSWC 8
+.Os
+.Sh NAME
+.Nm autoswc
+.Nd generates system wide cache files for GNU autoconf
+.Sh SYNOPSIS
+.Nm
+.Op Fl c Ar ac_file
+.Op Fl n Ar cache_name
+.Sh DESCRIPTION
+.Nm
+is an utility that automatically generates system wide cache files for use
+with configure scripts created by
+.Nm GNU autoconf ,
+and specially by those executed within
+.Nm pkgsrc .
+.Pp
+.Nm
+starts by reading the configuration script template.
+It will use
+.Pa @SYSCONFDIR@/configure.ac
+if found, or fallback to
+.Pa @PREFIX@/share/autoswc/configure.ac
+otherwise (a custom file may be given using the
+.Fl c
+flag, though).
+This issues all checks that the user wants to store in the system wide
+cache file, and are basically calls to standard
+.Nm GNU autoconf ,
+.Nm GNU automake
+and/or
+.Nm GNU libtool
+macros.
+There is no need to manually execute any of the
+.Sq AC_INIT ,
+.Sq AM_INIT_AUTOMAKE ,
+.Sq AC_CACHE_SAVE
+and
+.Sq AC_OUTPUT
+macros, as they are automatically inserted in the right place during
+execution.
+.Pp
+The default cache file is stored inside the
+.Pa @CACHEDIR@
+directory, using
+.Pa config.cache.default
+as the file name.
+The
+.Sq default
+part can be changed using the
+.Fl n
+flag, which takes the base name of the cache file.
+.Pp
+To tell
+.Nm pkgsrc
+to use the system wide cache, all you need to do is append the following
+line to your
+.Pa @MKCONF@
+file:
+.Bd -literal -offset indent
+\&.sinclude "@PREFIX@/share/autoswc/autoswc.mk"
+.Ed
+.Pp
+In case you used the
+.Fl n
+flag, you also need to define the
+.Va AUTOSWC_CACHE_NAME
+variable in this file, setting it to the value passed to the flag.
+.Sh NOTES
+Be very careful about what you add to
+.Pa configure.ac .
+You should only check for things that are unlikely to change over time,
+as functions in the
+.Lb libc
+and its header files.
+Failure to do so can easily lead to cache files that get outdated very
+easily during installation of new packages, and cause unexpected
+configuration errors.
+.Pp
+It is recommended that you rebuild the cache file periodically.
+You can configure a simple
+.Xr cron 8
+job to it, which just needs to launch this utility.
+.Pp
+If you hit a compilation problem in any package when using
+.Nm ,
+be
+.Em absolutely
+sure it is not beeing caused by an outdated cache before reporting
+problems.
+The safest and easiest way to do this is to clean the package in question
+and restart the build with the
+.Va AUTOSWC_DISABLE
+variable set, like in the following example:
+.Bd -literal -offset indent
+$ @MAKE@ clean
+$ @MAKE@ AUTOSWC_DISABLE=YES
+.Ed
+.Sh AUTHORS
+.An Julio M. Merino Vidal Aq jmmv%netbsd.org@localhost
diff -r a42b377d0898 -r 1fcb667d3178 sysutils/autoswc/files/autoswc.mk
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/autoswc/files/autoswc.mk Sat Feb 21 23:03:01 2004 +0000
@@ -0,0 +1,50 @@
+# $NetBSD: autoswc.mk,v 1.1.1.1 2004/02/21 23:03:02 jmmv Exp $
+#
+# autoswc - Generates system wide cache files for GNU autoconf
+# Copyright (c) 2004 Julio M. Merino Vidal <jmmv%NetBSD.org@localhost>
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#    notice, this list of conditions and the following disclaimer in
+#    the documentation and/or other materials provided with the
+#    distribution.
+# 3. Neither the name of author nor the names of its contributors may
+#    be used to endorse or promote products derived from this software
+#    without specific prior written permission.
+#
+# THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+# PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+# BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+# POSSIBILITY OF SUCH DAMAGE.
+#
+
+.if !defined(AUTOSWC_MK)
+AUTOSWC_MK=            # defined
+
+.  if !defined(AUTOSWC_DISABLE)
+AUTOSWC_CACHE_FILE?=   @CACHEDIR@/config.cache.${AUTOSWC_CACHE_NAME}
+AUTOSWC_CACHE_NAME?=   default
+
+.    if exists(@SYSCONFDIR@/config.site)
+AUTOSWC_CONFIG_SITE?=  @SYSCONFDIR@/config.site
+.    else
+AUTOSWC_CONFIG_SITE?=  @PREFIX@/share/autoswc/config.site
+.    endif
+
+CONFIGURE_ENV+=                AUTOSWC_CACHE_FILE="${AUTOSWC_CACHE_FILE}"
+CONFIGURE_ENV+=                AUTOSWC_CACHE_NAME="${AUTOSWC_CACHE_NAME}"
+CONFIGURE_ENV+=                CONFIG_SITE="${AUTOSWC_CONFIG_SITE}"
+.  endif
+
+.endif # AUTOSWC_MK
diff -r a42b377d0898 -r 1fcb667d3178 sysutils/autoswc/files/autoswc.sh
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/autoswc/files/autoswc.sh Sat Feb 21 23:03:01 2004 +0000
@@ -0,0 +1,209 @@
+#!@SH@
+#
+# $NetBSD: autoswc.sh,v 1.1.1.1 2004/02/21 23:03:02 jmmv Exp $
+#
+# autoswc - Generates system wide cache files for GNU autoconf
+# Copyright (c) 2004 Julio M. Merino Vidal <jmmv%NetBSD.org@localhost>
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions
+# are met:
+# 1. Redistributions of source code must retain the above copyright
+#    notice, this list of conditions and the following disclaimer.
+# 2. Redistributions in binary form must reproduce the above copyright
+#    notice, this list of conditions and the following disclaimer in



Home | Main Index | Thread Index | Old Index