+Sat Apr 16 20:23:48 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
+
+ * Added Autodist.
+
Thu Apr 14 20:25:08 EEST 2005 Pekka Riikonen <priikone@silcnet.org>
* Handle empty LIST command reply correcttly in server. Affected
AUTOMAKE_OPTIONS = 1.0 no-dependencies foreign
SUBDIRS = \
+#ifdef SILC_DIST_APPS
+ apps \
+#endif SILC_DIST_APPS
#ifdef SILC_DIST_LIB
lib \
#endif SILC_DIST_LIB
doc
#endif SILC_DIST_DOC
-include $(top_srcdir)/Makefile.defines.in
-
-dist-bzip: distdir
- -chmod -R a+r $(distdir)
- -tar chof $(distdir).tar $(distdir)
- -bzip2 $(distdir).tar
- -rm -rf $(distdir)
-
EXTRA_DIST = \
+ silcdefs.h.in \
+#ifdef SILC_DIST_SILC
#ifdef SILC_DIST_TOOLKIT
README.CVS README.WIN32 README.MACOSX silcer tutorial \
#endif SILC_DIST_TOOLKIT
libtoolfix \
CHANGES CREDITS
+#endif SILC_DIST_SILC
+#ifdef SILC_DIST_SILC
#
# Installing of SILC into the system
#
-etcdir = $(DESTDIR)$(silc_etcdir)
-modulesdir = $(DESTDIR)$(silc_modulesdir)
-helpdir = $(DESTDIR)$(silc_helpdir)
-docdir = $(DESTDIR)$(silc_docdir)
-logsdir = $(DESTDIR)$(silc_logsdir)
-mandir = $(DESTDIR)@mandir@
-
install-dirs:
-mkdir -p $(etcdir)
-mkdir -p $(modulesdir)
-$(INSTALL_DATA) $(srcdir)/lib/silcsim/*.so $(modulesdir)/
#endif SILC_DIST_SIM
-examples-install:
- -mkdir -p $(docdir)/examples/
- -$(INSTALL_DATA) $(srcdir)/doc/examples/README $(docdir)/examples/
- -$(INSTALL_DATA) $(srcdir)/doc/examples/silc* $(docdir)/examples/
-
#ifdef SILC_DIST_CLIENT
install-dirs-client: install-dirs
-mkdir -p $(helpdir)
chmod go= $(etcdir)/silcd.conf; \
fi
+examples-install:
+ -mkdir -p $(docdir)/examples/
+ -$(INSTALL_DATA) $(srcdir)/doc/examples/README $(docdir)/examples/
+ -$(INSTALL_DATA) $(srcdir)/doc/examples/silc* $(docdir)/examples/
+
generate-server-key:
-@if test '!' -f $(etcdir)/silcd.pub ; then \
$(sbindir)/silcd -C $(etcdir); \
sim-install
#endif SILC_DIST_SIM
+include $(top_srcdir)/Makefile.defines.in
+
+#endif SILC_DIST_SILC
silc_helpdir=@HELPDIR@
silc_docdir=@DOCDIR@
silc_logsdir=@LOGSDIR@
+etcdir = $(DESTDIR)$(silc_etcdir)
+modulesdir = $(DESTDIR)$(silc_modulesdir)
+helpdir = $(DESTDIR)$(silc_helpdir)
+docdir = $(DESTDIR)$(silc_docdir)
+logsdir = $(DESTDIR)$(silc_logsdir)
+mandir = $(DESTDIR)@mandir@
Howto Compile SILC Source Tree
==============================
-After checkout from CVS the SILC source tree must be prepared for
-configuration and compilation. To compile the source tree, give,
+To be able to prepare the CVS tree for configuration and compilation
+Autodist must be installed into the system. You can download the latest
+version of Autodist from:
- ./autodist
+ http://silcnet.org/software/download/autodist/
+
+To prepare the CVS source tree for configuration and compilation, give:
+
+ autodist
./configure --enable-debug
make
-The ./autodist is included in to the source tree and it never
-appears in public distribution. The script prepares the source tree
-by creating configuration scripts and Makefiles. The autodist must be
-run every time you make some changes to configuration scripts.
+The autodist must be run every time you make some changes to configuration
+scripts.
As a developer you should read the ./configure script's help by
giving ./configure --help and study all of its different options. Also,
=================================
Developers should never directly write a Makefile. All Makefiles are
-always automatically generated by ./autodist and later by ./configure
+always automatically generated by autodist and later by ./configure
scripts. Instead, developers must write Makefile.ad files or Makefile.am
files. If the Makefile needs to include any distdefs (SILC_DIST_XXX),
then Makefile.ad (.ad stands for autodist) must be written. If the
distribution for configuration, compilation and packaging. To prepare a
specific distribution with specific version, give command:
- ./autodist <name> <version>
+ autodist <name> <version>
Where the <name> is the distribution name. It is one of the distributions
that was defined in distdir/ directory. The <version> is the version of
the distribution that will be prepared. The version format is
major.minor.build, for example 0.9.10. Example:
- ./autodist client 0.9.15
+ autodist client 0.9.15
This prepares 'client' distribution of version 0.9.15. The package will
have the version 0.9.15 automatically.
packaged with the following commands:
make -C doc dist-hook
- make dist
- make dist-bzip
+ makedist --bzip2
-The first command creates a gzipped distribution and the second creates a
-bzipped distribution.
+The 'makedist --bzip2' creates the default 'tar.gz' and 'tar.bz2'
+distribution.
NOTE: Before giving this command, make sure that you do not have any of
the tests in the SILC source tree compiled. If they are the binaries
+++ /dev/null
-#!/bin/sh
-#
-# Author: Pekka Riikonen <priikone@silcnet.org>
-#
-# Copyright (C) 2005 Pekka Riikonen
-# All rights reserved.
-#
-# 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. The name of the author may not be used to endorse or promote
-# products derived from this software without specific prior written
-# permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
-#
-
-###############################################################################
-
-# XXXXXXXXXXXXXXX
-#
-# TODO
-#
-# --makedist
-# "pre-dist-hooks"
-# "post-dist-hooks"
-# "include"
-# "exclude"
-# "option"
-# default conffile in -i
-# default distro in -i
-#
-# NOTE: inherit inherits only distdefs, undefs, hooks, options, includes
-# and excludes. It must not inherit others.
-#
-# XXXXXXXXXXXXXXX
-
-# Scripts have the following variables in their disposal
-#
-# distribution distribution name
-# dist_version distribution version
-# package the package name of the distribution
-
-# Allowed structure for distdefs in non-source files
-
-#ifdef SILC_DIST_DEFINE
-#endif SILC_DIST_DEFINE
-
-#ifndef SILC_DIST_DEFINE
-#endif SILC_DIST_DEFINE
-
-#ifdef SILC_DIST_DEFINE
-#else !SILC_DIST_DEFINE
-#endif SILC_DIST_DEFINE
-
-#ifndef SILC_DIST_DEFINE
-#else SILC_DIST_DEFINE
-#endif SILC_DIST_DEFINE
-
-# Allowed structure for distdefs in source files
-
-#ifdef SILC_DIST_DEFINE
-#endif /* SILC_DIST_DEFINE */
-
-#ifndef SILC_DIST_DEFINE
-#endif /* SILC_DIST_DEFINE */
-
-#ifdef SILC_DIST_DEFINE
-#else /* !SILC_DIST_DEFINE */
-#endif /* SILC_DIST_DEFINE */
-
-#ifndef SILC_DIST_DEFINE
-#else /* SILC_DIST_DEFINE */
-#endif /* SILC_DIST_DEFINE */
-
-###############################################################################
-# Global variables
-
-# Distribution subdirectory
-distdir="distdir"
-
-# This current distribution
-distribution=default
-dist_version=0.0
-package=
-
-# All inherited distributions in this distribution
-inherits=
-
-# All distribution defines for this distribution
-distdefs=
-
-# All distribution undefines for this distribution
-undistdefs=
-
-# All distribution options
-options=
-
-# All includes
-includes=
-
-# All excludes
-excludes=
-
-# All pre, post pre-dist and post-dist hooks
-pre_hooks=
-post_hooks=
-pre_dist_hooks=
-post_dist_hooks=
-
-# Distribution license and license header
-license=
-licenseh=
-
-# Whether to output ad_debug information
-debug=false
-ver="1.0"
-makedist=false
-
-
-###############################################################################
-# Configuration file
-if test -f "$distdir/autodist.conf"; then
- . $distdir/autodist.conf
-fi
-
-DP=$DISTPREFIX
-
-
-###############################################################################
-# Functions
-
-#
-# Print out debug information if debugging is enabled. To enable debugging
-# set the global variable "debug" to true value.
-#
-# Arguments: ad_debug <ad_debug string>
-#
-ad_debug()
-{
- if test x$debug = xtrue; then
- echo autodist: $1
- fi
-}
-
-#
-# Prints out error message and exits the script.
-#
-# Arguments: ad_fatal <error message>
-#
-ad_fatal()
-{
- echo autodist: error: $1
- exit 1
-}
-
-#
-# Initializes the Autodist environment, creates default distribution
-# directory, and default distribution.
-#
-# Arguments: ad_initialize
-#
-ad_initialize()
-{
- ad_debug "-->$FUNCNAME()"
-
- # Create default distdir
- if test '!' -f $distdir; then
- mkdir -p $distdir
- fi
-
- # Create default distribution
- # XXX
-
- ad_debug "<--$FUNCNAME()"
-}
-
-#
-# Creates the distdefs header file including defined distdefs
-#
-# Arguments: ad_create_distdefs_h
-#
-ad_create_distdefs_h()
-{
- ad_debug "-->$FUNCNAME()"
-
- fname=$DISTDEFS
- rm -f $fname
- echo "/*" > $fname
- echo " Automatically generated by Autodist $ver. Do not edit." >> $fname
- echo >> $fname
- echo " Generated: `date` by `whoami`" >> $fname
- echo " Distribution: $distribution" >> $fname
- echo " License: $license" >> $fname
- echo "*/" >> $fname
- echo >> $fname
- echo "#ifndef _"$DP"_DISTDEFS_H" >> $fname
- echo "#define _"$DP"_DISTDEFS_H" >> $fname
- echo >> $fname
-
- for i in $distdefs
- do
- echo "#define $i 1" >>$fname
- done
-
- echo >> $fname
- echo "#endif /* _"$DP"_DISTDEFS_H */" >> $fname
-
- ad_debug "<--$FUNCNAME()"
-}
-
-#
-# Creates the main configure script for the distribution. This runs
-# the aclocal, autoheader and autoconf tools.
-#
-# Arguments: ad_make_configure
-#
-ad_make_configure()
-{
- ad_debug "-->$FUNCNAME()"
- local run_autoconf=false
-
- rm -f configure
-
- if test "$ACLOCAL"; then
- ad_debug "Running aclocal"
- $ACLOCAL 1>/dev/null 2>/dev/null
- if test $? != 0; then
- ad_fatal "aclocal failed"
- fi
- fi
-
- if test "$AUTOCONF"; then
- ad_debug "Running autoconf"
- $AUTOCONF
- if test $? != 0; then
- ad_fatal "autoconf failed"
- fi
- run_autoconf=true
- fi
-
- if test "$AUTOHEADER"; then
- ad_debug "Running autoheader"
- $AUTOHEADER
- if test $? != 0; then
- ad_fatal "autoheader failed"
- fi
- fi
-
- if test "$LIBTOOLIZE"; then
- ad_debug "Running libtoolize"
- $LIBTOOLIZE
- if test $? != 0; then
- ad_fatal "libtoolize failed"
- fi
- fi
-
- if test x$run_autoconf = xtrue; then
- if test '!' -f configure; then
- ad_fatal "creating configure script failed"
- fi
- fi
-
- ad_debug "<--$FUNCNAME()"
-}
-
-#
-# Creates the configure.ac script from the configure.ad fragments in
-# the source tree. Takes the source configure file as argument which
-# is used to create the actual configure.ac.
-#
-# Arguments: ad_make_configure_ac <configure_ac_source>
-#
-ad_make_configure_ac()
-{
- ad_debug "-->$FUNCNAME(): $1"
-
- if test '!' -f $1; then
- ad_fatal "The configure file '$1' does not exist"
- fi
-
- rm -f configure.ac configure.ad.cfs
-
- cfs=`find . -name configure\*\.ad`
- for i in $cfs
- do
- if test "x$i" = "x$1"; then
- continue
- fi
- ad_debug "including $i"
- cat $i >> configure.ad.cfs
- done
-
- # Header for configure.ac
- fname="configure.tmp.ac"
- echo "# Automatically generated by Autodist $ver. Do not edit." > $fname
- echo "# To make changes edit the $i file in the source tree." >> $fname
- echo >> $fname
- echo "# Source: $i" >> $fname
- echo "# Generated: `date` by `whoami`" >> $fname
- echo "# Distribution: $distribution" >> $fname
- echo "# License: $license" >> $fname
- echo >> $fname
-
- ad_debug "creating configure.ac"
- if test -f configure.ad.cfs; then
- sed '/AD_INCLUDE_CONFIGURE/ r configure.ad.cfs' $1 > $fname.tmp
- sed -e "/AD_INCLUDE_CONFIGURE/s///" $fname.tmp >> $fname
- rm -f configure.ad.cfs $fname.tmp
- else
- cat $1 >> $fname
- fi
-
- # Process AD_INIT
- sed -e "/AD_INIT/s//AC_INIT($distribution, $dist_version, [], $package)/" $fname > $fname.tmp
-
- # Process for distribution
- ad_process_file $fname.tmp configure.ac
- rm -f $fname $fname.tmp
-
- ad_debug "<--$FUNCNAME(): $1"
-}
-
-#
-# Creates the Makefile.in files by running the automake tool.
-#
-# Arguments: ad_make_makefile_ins
-#
-ad_make_makefile_ins()
-{
- ad_debug "-->$FUNCNAME()"
-
- if test "$AUTOMAKE"; then
- ad_debug "Running automake"
- $AUTOMAKE
- if test $? != 0; then
- ad_fatal "automake failed"
- fi
- fi
-
- ad_debug "<--$FUNCNAME()"
-}
-
-#
-# Creates the Makefile.am files from the Makefile.ad files in the
-# source tree. This runs the distribution specific processing for the
-# Makefile.ad files.
-#
-# Arguments: ad_make_makefile_ams
-#
-ad_make_makefile_ams()
-{
- ad_debug "-->$FUNCNAME()"
-
- files=`find . -name Makefile\.ad`
- for i in $files
- do
- fname=`echo $i | sed s/\.ad//`
-
- # Header for the Makefile.am
- echo "# Automatically generated by Autodist $ver from Makefile.ad. Do not edit." > $fname.am
- echo "# To make changes edit the $i file in the source tree." >> $fname.am
- echo >> $fname.am
- echo "# Source: $i" >> $fname.am
- echo "# Generated: `date` by `whoami`" >> $fname.am
- echo "# Distribution: $distribution" >> $fname.am
- echo "# License: $license" >> $fname.am
- echo >> $fname.am
-
- # Run the distribution processing for this Makefile.ad
- ad_debug "Processing $i to be $fname.am"
- ad_process_file $i $fname.am
- done
-
- ad_debug "<--$FUNCNAME()"
-}
-
-#
-# Processes all files with .ad suffix, with exception of configure*.ad
-# and Makefile.ad files, for distribution from the source tree.
-#
-# Arguments: ad_process_ads
-#
-ad_process_ads()
-{
- ad_debug "-->$FUNCNAME()"
-
- files=`find . -name \*\.ad \! -name configure\*\.ad \! -name Makefile\.ad`
- for i in $files
- do
- fname=`echo $i | sed s/\.ad//`
-
- # Header
- echo "# Automatically generated by Autodist $ver. Do not edit." > $fname
- echo "# To make changes edit the $i file in the source tree." >> $fname
- echo >> $fname
- echo "# Source: $i" >> $fname
- echo "# Generated: `date` by `whoami`" >> $fname
- echo "# Distribution: $distribution" >> $fname
- echo "# License: $license" >> $fname
- echo >> $fname
-
- # Run the distribution processing for this file
- ad_debug "Processing $i to be $fname"
- ad_process_file $i $fname
- done
-
- ad_debug "<--$FUNCNAME()"
-}
-
-#
-# Processes the entire source tree for distribution. This inspects files
-# in the source tree, with exception of any file with .ad suffix, and
-# performs distribution processing for the file. The original file is
-# replaced with the processed file. This function is used when creating
-# the distribution for packaging.
-#
-# Arguments: ad_process_source_tree <directory>
-#
-ad_process_source_tree()
-{
- ad_debug "-->$FUNCNAME(): $1"
-
- ad_debug "<--$FUNCNAME(): $1"
-}
-
-#
-# Creates distribution of the source tree. All files in the distribution
-# will be processed and the distribution will be packaged.
-#
-ad_makedist()
-{
- ad_debug "-->$FUNCNAME()"
-
- ad_debug "<--$FUNCNAME()"
-}
-
-#
-# Parses the distribution. Gets all distribution defines from the
-# distribution. This also expands all inherited distributions recursively
-# to get all inherited distribution defines. From inherited distributions
-# their name and package name is not inherited.
-#
-# Arguments: parse_distribution <distribution name> <inherit>
-#
-ad_parse_distribution()
-{
- ad_debug "-->$FUNCNAME(): $1"
-
- if test '!' -f $distdir/$1; then
- ad_fatal "Distribution '$1' is not declared"
- fi
-
- # Get inherited
- local inhs=`cat $distdir/$1 | grep -v "#" \
- | grep "inherit " | cut -d' ' -f2 | sort | uniq`
-
- # Get distdefs
- local defs=`cat $distdir/$1 | grep -v "#" \
- | grep "define " | cut -d' ' -f2 | sort | uniq`
-
- if test "$inhs" = "" && test "$defs" = ""; then
- ad_fatal "Distribution '$1' does not define anything"
- fi
-
- # Get undefined distdefs
- local undefs=`cat $distdir/$1 | grep -v "#" \
- | grep "undef " | cut -d' ' -f2`
-
- # Get options
- local opts=`cat $distdir/$1 | grep -v "#" \
- | grep "option " | cut -d' ' -f2`
-
- # Get includes
- local incs=`cat $distdir/$1 | grep -v "#" \
- | grep "include " | cut -d' ' -f2`
-
- # Get excludes
- local excs=`cat $distdir/$1 | grep -v "#" \
- | grep "exclude " | cut -d' ' -f2`
-
- ad_debug "inherits=$inhs"
- ad_debug "distdefs=$defs"
- ad_debug "includes=$incs"
- ad_debug "excludes=$excs"
- ad_debug "undistdefs=$undefs"
- ad_debug "options=$opts"
-
- # Expand distdefs from inherited distributions
- for i in $inhs
- do
- if test x$1 = x$i; then
- ad_fatal "Infinite recursion detected. Fix the '$distdir/$1' \
- distribution to not have 'inherit $i' declared."
- fi
-
- if test '!' -f $distdir/$i; then
- ad_fatal "Distribution '$i' is not declared (inherited from '$1')"
- fi
-
- ad_parse_distribution $i true
- done
-
- # Get license
- license=`cat $distdir/$1 | grep -v "#" \
- | grep "license " | cut -d' ' -f2`
- licenseh=`cat $distdir/$1 | grep -v "#" \
- | grep "license-header " | cut -d' ' -f2`
-
- ad_debug "license=$license"
- ad_debug "licenseh=$licenseh"
-
- if test x$2 = xfalse; then
- # Get distribution name
- local dname=`cat $distdir/$1 | grep -v "#" | grep "name "`
-
- if test "$dname"; then
- distribution=$dname
- fi
-
- # Get distribution package name (optional)
- local dpname=`cat $distdir/$1 | grep -v "#" \
- | grep "package " | cut -d' ' -f2`
-
- if test "$dpname"; then
- package=$dpname
- else
- package=$distribution
- fi
-
- ad_debug "distribution=$distribution"
- ad_debug "package=$package"
- fi
-
- # Get hooks (optional)
- local prh=`cat $distdir/$1 | grep -v "#" \
- | grep "pre-hook " | cut -d' ' -f2`
- local poh=`cat $distdir/$1 | grep -v "#" \
- | grep "post-hook " | cut -d' ' -f2`
- local prdh=`cat $distdir/$1 | grep -v "#" \
- | grep "pre-dist-hook " | cut -d' ' -f2`
- local podh=`cat $distdir/$1 | grep -v "#" \
- | grep "post-dist-hook " | cut -d' ' -f2`
-
- # Return to caller
- inherits="$inherits $inhs"
- distdefs="$distdefs $defs"
- includes="$includes $incs"
- excludes="$excludes $incs"
- undistdefs="$undistdefs $undefs"
- options="$options $opts"
- pre_hooks="$pre_hooks $prh"
- post_hooks="$post_hooks $poh"
- pre_dist_hooks="$pre_dist_hooks $prdh"
- post_dist_hooks="$post_dist_hooks $podh"
-
- ad_debug "<--$FUNCNAME(): $1"
-}
-
-#
-# Processes parsed distdefs. Removes duplicates, and undefined distdefs
-# from the distdefs.
-#
-# Arguments: ad_process_distdefs
-#
-ad_process_distdefs()
-{
- ad_debug "-->$FUNCNAME()"
-
- # Remove all undefined distribution defines
- for i in $undistdefs
- do
- ad_debug "undefining $i distdef"
- distdefs=`echo $distdefs | sed s/$i//`
- done
-
- rm -f autodist.tmp.defs autodist.pre.hooks autodist.post.hooks
- rm -f autodist.pre.dist.hooks autodist.post.dist.hooks
-
- # Remove duplicate distdefs
- for i in $distdefs
- do
- echo $i >>autodist.tmp.defs
- done
- distdefs=`cat autodist.tmp.defs | sort | uniq`
- distdefs=`echo $distdefs`
- rm -f autodist.tmp.defs
-
- ad_debug "distdefs=$distdefs"
-
- # Remove duplicate pre-hooks
- for i in $pre_hooks
- do
- echo ". $i" >>autodist.tmp.defs
- done
- if test -f autodist.tmp.defs; then
- cat autodist.tmp.defs | sort | uniq > autodist.pre.hooks
- rm -f autodist.tmp.defs
- fi
-
- # Remove duplicate post-hooks
- for i in $post_hooks
- do
- echo ". $i" >>autodist.tmp.defs
- done
- if test -f autodist.tmp.defs; then
- cat autodist.tmp.defs | sort | uniq > autodist.post.hooks
- rm -f autodist.tmp.defs
- fi
-
- # Remove duplicate pre-dist-hooks
- for i in $pre_dist_hooks
- do
- echo ". $i" >>autodist.tmp.defs
- done
- if test -f autodist.tmp.defs; then
- cat autodist.tmp.defs | sort | uniq > autodist.pre.dist.hooks
- rm -f autodist.tmp.defs
- fi
-
- # Remove duplicate post-dist-hooks
- for i in $post_dist_hooks
- do
- echo ". $i" >>autodist.tmp.defs
- done
- if test -f autodist.tmp.defs; then
- cat autodist.tmp.defs | sort | uniq > autodist.post.dist.hooks
- rm -f autodist.tmp.defs
- fi
-
- ad_debug "<--$FUNCNAME()"
-}
-
-#
-# Process a file given as argument for the distribution.
-#
-# Arguments: process_file <filepath> <dest_filepath>
-#
-ad_process_file()
-{
- local found=false
-
- ad_debug "-->$FUNCNAME(): $1 $2"
-
- # Process only regular files
- if test '!' -f $1; then
- ad_debug "<--$FUNCNAME(): $1 $2"
- return
- fi
-
- ad_debug "Getting #ifdef's and #ifndef's"
-
- # Get defined distribution defines
- local defs=`awk "/#ifdef "$DP"_DIST_|#else "$DP"_DIST_/ { print; }" \
- $1 |cut -d'*' -f2 |cut -d' ' -f2 | sort | uniq`
-
- # Get explicitly not-defined distribution defines
- local ndefs=`awk "/#ifndef "$DP"_DIST_|#else !"$DP"_DIST_/ { print; }" \
- $1 |cut -d'*' -f2 |cut -d' ' -f2 | cut -d'!' -f2 | sort | uniq`
-
- ad_debug "defs=$defs"
- ad_debug "ndefs=$ndefs"
-
- # Create the script to include and exclude stuff in the file according
- # to the distribution defines
- local f=autodist.tmp.script
- rm -f $f
-
- # ifdefs
- ad_debug "processing ifdefs"
- for d in $defs
- do
- found=false
- for i in $distdefs
- do
- if test x$d = x$i; then
- found=true
- break
- fi
- done
-
- # If distribution define was not found exclude those lines from the file.
- # This also handles the #ifdef's #else (ie. #ifndef) branch.
- if test x$found = xfalse; then
- ad_debug "ifdef $d will be excluded (it is NOT defined)"
- echo "/^#ifdef $d/,/^#else !$d|^#endif $d/ { next; }" >> $f
- else
- echo "/^#else !$d/,/^#endif $d/ { next; }" >> $f
- fi
- done
-
- # ifndefs
- ad_debug "processing ifndefs"
- for d in $ndefs
- do
- found=false
- for i in $distdefs
- do
- if test x$d = x$i; then
- found=true
- break
- fi
- done
-
- # If distribution define was found exclude those lines from the file.
- # This also handles the #ifndef's #else (ie. #ifdef) branch.
- if test x$found = xtrue; then
- ad_debug "ifndef $d will be excluded (it IS defined)"
- echo "/^#ifndef $d/,/^#else $d|^#endif $d/ { next; }" >> $f
- else
- echo "/^#else $d/,/^#endif $d/ { next; }" >> $f
- fi
- done
-
- # Now process the file with the script
- if test -f $f; then
-
- # Those distdef lines that remain in the file are removed to make
- # the appearance prettier
- echo "/^#ifdef "$DP"_DIST_|^#endif "$DP"_DIST_|^#else "$DP"_DIST_|^#else !"$DP"_DIST_|^#ifndef "$DP"_DIST_/ { next; }" >> $f
- echo "{ print; }" >> $f
-
- # Execute the script
- awk -f $f $1 >> $2
- fi
-
- rm -f $f
-
- ad_debug "<--$FUNCNAME(): $1 $2"
-}
-
-
-#
-# Process a source file given as argument for the distribution.
-#
-# Arguments: process_source_file <filepath> <dest_filepath>
-#
-ad_process_source_file()
-{
- local found=false
-
- ad_debug "-->$FUNCNAME(): $1 $2"
-
- # Process only regular files
- if test '!' -f $1; then
- ad_debug "<--$FUNCNAME(): $1 $2"
- return
- fi
-
- ad_debug "Getting #ifdef's and #ifndef's"
-
- # Get defined distribution defines
- local defs=`awk '/#ifdef SILC_DIST_|#else \/\* SILC_DIST_/ { print; }' \
- $1 |cut -d'*' -f2 |cut -d' ' -f2 | sort | uniq`
-
- # Get explicitly not-defined distribution defines
- local ndefs=`awk '/#ifndef SILC_DIST_|#else \/\* \!SILC_DIST_/ { print; }' \
- $1 |cut -d'*' -f2 |cut -d' ' -f2 | cut -d'!' -f2 | sort | uniq`
-
- ad_debug "defs=$defs"
- ad_debug "ndefs=$ndefs"
-
- # Create the script to include and exclude stuff in the file according
- # to the distribution defines
- local f=autodist.tmp.script
- rm -f $f
-
- # ifdefs
- ad_debug "processing ifdefs"
- for d in $defs
- do
- found=false
- for i in $distdefs
- do
- if test x$d = x$i; then
- found=true
- break
- fi
- done
-
- # If distribution define was not found exclude those lines from the file.
- # This also handles the #ifdef's #else (ie. #ifndef) branch.
- if test x$found = xfalse; then
- ad_debug "ifdef $d will be excluded (it is NOT defined)"
- echo "/^#ifdef $d/,/^#else \/\* \!$d|^#endif \/\* $d/ { next; }" >> $f
- else
- echo "/^#else \/\* \!$d/,/^#endif \/\* $d/ { next; }" >> $f
- fi
- done
-
- # ifndefs
- ad_debug "processing ifndefs"
- for d in $ndefs
- do
- found=false
- for i in $distdefs
- do
- if test x$d = x$i; then
- found=true
- break
- fi
- done
-
- # If distribution define was found exclude those lines from the file.
- # This also handles the #ifndef's #else (ie. #ifdef) branch.
- if test x$found = xtrue; then
- ad_debug "ifndef $d will be excluded (it IS defined)"
- echo "/^#ifndef $d/,/^#else \/\* $d|^#endif \/\* $d/ { next; }" >> $f
- else
- echo "/^#else \/\* $d/,/^#endif \/\* $d/ { next; }" >> $f
- fi
- done
-
- # Now process the file with the script
- if test -f $f; then
-
- # Those distdef lines that remain in the file are removed to make
- # the appearance prettier
- echo "/^#ifdef SILC_DIST_|^#endif \/\* SILC_DIST_|^#else \/\* SILC_DIST_|^#else \/\* \!SILC_DIST_|^#ifndef SILC_DIST_/ { next; }" >> $f
- echo "{ print; }" >> $f
-
- # Execute the script
- awk -f $f $1 >> $2
- fi
-
- rm -f $f
-
- ad_debug "<--$FUNCNAME(): $1 $2"
-}
-
-
-###############################################################################
-# Autodist code
-
-usage="Usage: autodist [options] [distribution] [version]"
-help="\
-Autodist prepares source tree for configuration, compilation and
-distribution. Prepares the source tree from the \`autodist.ad'
-configuration file. Generates Automake.am files from Automake.ad
-files, configure.ac file from configure.ad file(s), generates the
-configure script by running Autoconf tool, and generates Makefile.in
-files by running Automake tool.
-
-Operation modes:
- -h, --help print this help, then exit
- -V, --version print version number, then exit
- -v, --verbose verbosely report processing
- -d, --distdir <dir> search distributions from <dir>
- -s, --distdefs [<dist>] print distribution defines of <dist>, then exit
- -m, --makedist create and package distribution
- -i, --init initialize Autodist environment, create default
- distribution directory and distribution, then exit"
-
-#
-# Process command line arguments
-#
-while test $# -gt 0; do
- case "${1}" in
-
- -d |--distdir)
- shift;
- test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
- distdir="${1}";
- shift;;
-
- --list)
- exit 0;;
-
- -s | --distdefs)
- shift;
- if test $# -eq 0; then
- ad_parse_distribution $distribution false
- echo "Distribution: ${distribution}" 1>&2;
- else
- ad_parse_distribution $1 false
- echo "Distribution: ${1}" 1>&2;
- fi
- ad_process_distdefs
- echo "Distdefs:" 1>&2;
- echo "${distdefs}";
- exit 0;;
-
- -i | --init)
- ad_initialize;
- exit 0;;
-
- -m | --makedist)
- makdist=true
- shift;;
-
- -v | --verbose)
- debug=true
- shift;;
-
- -h | --help | --h*)
- echo "${usage}" 1>&2;
- echo 1>&2;
- echo "${help}" 1>&2;
- echo 1>&2;
- exit 0;;
-
- -V | --version)
- echo "autodist (SILC Autodist) $ver" 1>&2;
- echo "Written by Pekka Riikonen" 1>&2;
- echo 1>&2;
- echo "Copyright (C) 2004 - 2005 SILC Project" 1>&2;
- echo "\
-This is free software; see the source for copying conditions. There is NO
-warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. " 1>&2;
- exit 0;;
-
- --)
- shift;
- break;;
-
- -*)
- echo "${usage}" 1>&2;
- exit 1;;
-
- *)
- break;;
-
- esac
-done
-
-#
-# Parse the requested distribution
-#
-if test $# != 0; then
- distribution="${1}";
- shift
-fi
-ad_parse_distribution $distribution false
-ad_process_distdefs
-
-if test $# != 0; then
- dist_version="${1}";
-fi
-ad_debug "Preparing source tree for configuration and compilation..."
-ad_debug "Preparing $distribution distribution version $dist_version"
-
-#
-# Create the distribution defines header file
-#
-if test "$DISTDEFS"; then
- ad_create_distdefs_h
-else
- ad_fatal "DISTDEFS not defined in $distdir/autodist.conf"
-fi
-
-#
-# Run pre-hooks
-#
-if test -f autodist.pre.hooks; then
- . autodist.pre.hooks
- rm -f autodist.pre.hooks
-fi
-
-#
-# Generate the Makefile.am files from Makefile.ad files
-#
-ad_make_makefile_ams
-
-#
-# Generate the configure.ac from configure.ad file(s)
-#
-ad_make_configure_ac ./configure.ad
-
-#
-# Generate configure script
-#
-ad_make_configure
-
-#
-# Generate Makefile.in files
-#
-ad_make_makefile_ins
-
-#
-# Process all files with .ad suffix for distribution processing
-#
-ad_process_ads
-
-#
-# Run post-hooks
-#
-if test -f autodist.post.hooks; then
- . autodist.post.hooks
- rm -f autodist.post.hooks
-fi
-
-#
-# Generate distribution, if requested
-#
-if test x$makedist = xtrue; then
- ad_debug "Creating distribution"
-
- exit 0
-fi
-
-ad_debug "Done, now run ./configure and make."
-exit 0
AC_CANONICAL_SYSTEM
AM_INIT_AUTOMAKE
AC_PREREQ(2.52)
-AC_CONFIG_HEADERS(includes/silcdefs.h)
+AC_CONFIG_HEADERS(silcdefs.h)
AC_PROG_INSTALL
AC_PROG_MAKE_SET
+AC_PROG_LN_S
+AC_SUBST(LN_S)
+AC_PATH_PROG(sedpath, sed)
+
#ifdef SILC_DIST_COMPILER
# Put here any platform specific stuff
#
AC_C_INLINE
AC_C_CONST
-AC_PROG_LN_S
-AC_SUBST(LN_S)
-
__SILC_HAVE_PTHREAD=""
__SILC_HAVE_SIM=""
__SILC_ENABLE_DEBUG=""
AC_PROG_RANLIB
AC_DISABLE_SHARED
AC_PROG_LIBTOOL
-AC_PATH_PROG(sedpath, sed)
# Header checking
#
# Default installation destination
#
#ifdef SILC_DIST_AUTODIST
-AC_PREFIX_DEFAULT(/usr/local/)
+AC_PREFIX_DEFAULT(/usr/local)
#else !SILC_DIST_AUTODIST
AC_PREFIX_DEFAULT(/usr/local/silc)
#endif SILC_DIST_AUTODIST
AC_SUBST(PIDFILE)
#endif SILC_DIST_SERVER
+#ifdef SILC_DIST_COMPILER
##
## With/without checkings
##
-#ifdef SILC_DIST_COMPILER
#
# SILC library checking
#
AC_SUBST(SILC_TOP_SRCDIR)
AC_SUBST(LIBS)
-INCLUDE_DEFINES_INT="include \$(top_srcdir)/Makefile.defines_int"
-AC_SUBST(INCLUDE_DEFINES_INT)
AC_SUBST(SILC_LIB_INCLUDES)
AC_SUBST(__SILC_HAVE_PTHREAD)
AC_SUBST(__SILC_HAVE_SIM)
fi
AM_CONDITIONAL(SILC_LIBTOOLFIX, test x$libtoolfix = xtrue)
+INCLUDE_DEFINES_INT="include \$(top_srcdir)/Makefile.defines_int"
+AC_SUBST(INCLUDE_DEFINES_INT)
+
#endif SILC_DIST_COMPILER
#
#
AC_CONFIG_FILES(
Makefile
+#ifdef SILC_DIST_DOC
+doc/Makefile
+#endif SILC_DIST_DOC
+#ifdef SILC_DIST_COMPILER
Makefile.defines
Makefile.defines_int
-doc/Makefile
includes/Makefile
includes/silcversion.h
includes/silcincludes.h
+#endif SILC_DIST_COMPILER
+#ifdef SILC_DIST_APPS
+apps/Makefile
+#endif SILC_DIST_APPS
)
#ifdef SILC_DIST_TOOLKIT
fi
echo " Multi-threads support .........: $threads"
echo " Debugging enabled .............: $summary_debug"
-#endif SILC_DIST_COMPILER
echo ""
echo "Compile the sources with 'make' or 'gmake' command."
+#endif SILC_DIST_COMPILER
+
--- /dev/null
+
+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. The name of the author may not be used to endorse or promote
+ products derived from this software without specific prior written
+ permission.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
+
--- /dev/null
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the conditions listed in the
+ COPYING file are met.
+
+
+
--- /dev/null
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+ 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+\f
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+\f
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+\f
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+\f
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+\f
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Library General
+Public License instead of this License.
--- /dev/null
+ 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; version 2 of the License.
+
+ 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.
name SILC Autodist
package autodist
+bug-report autodist-bugs@silcnet.org
+
+license apps/autodist/COPYING
+license-header distdir/GPL-header distdir/BSD-header
+
define SILC_DIST_AUTODIST
-exclude CHANGES CREDITS libtoolfix TODO README*
+define SILC_DIST_APPS
+
+include apps/autodist/INSTALL INSTALL
+include apps/autodist/AUTHORS AUTHORS
+include apps/autodist/README README
+exclude apps/autodist/INSTALL apps/autodist/AUTHORS apps/autodist/README
+exclude TODO README.* ltmain.sh
+
+noprocess apps/autodist/doc apps/autodist/tests
+
+# Autodist configuration file
+
+# By default distdef prefix is '_DIST_'. To add your own prefix set the
+# prefix here. NOTE: Remember to change all 'define' directives in
+# distributions to use the new prefix if you change it. Example:
+#
+# DISTPREFIX="SILC"
+#
+# Will set the distdef prefix as 'SILC_DIST_'.
+#
DISTPREFIX="SILC"
+# The distdef header will be created by the Autodist. It need to be included
+# in the source code in order for the preprocessor to respect distdef
+# conditionals in source code. Example:
+#
+# DISTDEFS="include/distdefs.h"
+#
DISTDEFS="includes/silcdistdefs.h"
+# Location of the aclocal tool. If this is omitted the Autodist will not
+# run aclocal. User need to run it manually then.
+#
ACLOCAL="aclocal"
+
+# Location of the autoheader tool. If this is omitted the Autodist will not
+# run autoheader. User need to run it manually then.
+#
AUTOHEADER="autoheader"
+
+# Location of the autoconf tool. If this is omitted the Autodist will not
+# run autoconf. User need to run it manually then.
+#
AUTOCONF="autoconf"
+
+# Location of the automake tool. If this is omitted the Autodist will not
+# run automake. User need to run it manually then.
+#
AUTOMAKE="automake"
+
+# Location of the libtoolize tool. This option should be omitted if your
+# source tree does not use libtool.
+#
LIBTOOLIZE="libtoolize --automake --copy"
+
+# Location of the make program. This must be specified in order to be
+# able to create distributions.
+#
+MAKE="make"
name Client
package silc-client
+bug-report silc-devel@lists.silcnet.org
inherit common
define SILC_DIST_CLIENT
define SILC_DIST_CLIENTLIB
# Common SILC source tree distdefs
-option no-dist template
+option template
+define SILC_DIST_SILC
define SILC_DIST_LIB
define SILC_DIST_INCLUDES
define SILC_DIST_DOC
+# Default distribution
+#
+# NOTE: By default, this distribution cannot be packaged. Take away the
+# 'no-dist option if you whish to use this as a normal distribution.
+#
+# If you add new distributions into distdir/ inherit them here.
+#
+option no-dist
+
# Default distribution for preparing raw CVS sources.
inherit common
inherit client
inherit server
inherit toolkit
-option no-dist
define SILC_DIST_INPLACE
pre-hook distdir/pre-run
-
-#include README.FOOBAR foobar.dir
-#exclude distdir foobar
-#define SILC_DIST_DEFAULT
-#undef SILC_DIST_FOOBAR
-#pre-hook scripts/foobar-pre.sh
-#post-hook scripts/foobar-post.sh
-#pre-dist-hook scripts/foobar-dist-pre.sh
-#post-dist-hook scripts/foobar-dist-post.sh
-#option no-dist
-#option no-inherit
-#option template
+#!/bin/sh
+
+distribution=$1
+dist_version=$2
+package=$3
+
# preparing irssi
echo "Preparing irssi"
file=irssi/irssi-version.h.in
name Server
package silc-server
+bug-report silc-devel@lists.silcnet.org
+license distdir/BSD
+license-header distdir/GPL-header distdir/BSD-header
inherit common
define SILC_DIST_SERVER
name Toolkit
package silc-toolkit
+bug-report silc-devel@lists.silcnet.org
inherit common
inherit client
inherit server
define SILC_DIST_TOOLKIT
-include README.CVS README.WIN32 README.MACOSX silcer tutorial
+include README.CVS
+include README.WIN32
+include README.MACOSX
+include silcer
+include tutorial
pre-hook distdir/pre-run
#endif SILC_DIST_SERVER
#ifdef SILC_DIST_TOOLKIT
toolkit \
-#endif SILC_DIST_TOOLKIT
CodingStyle \
+#endif SILC_DIST_TOOLKIT
FAQ \
example_silcd.conf \
silcalgs.conf \
silcbeos.h \
silcos2.h \
silcversion.h.in \
- silcdistdefs.h \
- silcdefs.h.in
+ silcdistdefs.h