Updated build-prcess to be completely under automake control.

For the tutorial the old Makefiles are saved as Makefile.simple in all
the respective directories.

Use generated config.h instead of command-line passing of preprocessor
flags.

Updated support files from current automake.
This commit is contained in:
kuepper 2004-09-17 16:53:31 +00:00
commit c8494642d5
37 changed files with 675 additions and 279 deletions

View file

@ -1,17 +1,19 @@
*.lo
*.la
*.lo
.deps
.libs
Makefile
Makefile.in
aclocal.m4
autom4te.cache
confdefs.h
config.cache
config.cache
config.h
config.h.in
configure
config.log
config.cache
config.status
configure
libtool
stamp-h
stamp-h.in

View file

@ -291,7 +291,7 @@ 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) 19yy <name of author>
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
@ -313,7 +313,7 @@ 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) 19yy name of author
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.

View file

@ -1,27 +1,8 @@
EO INSTALL FILE
=======================================================================
check latest news at http://eodev.sourceforge.net/
=======================================================================
Copyright 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
Foundation, Inc.
This file contains the standard installation instructions for packages
built using GNU package management facilities.
You should not need to read this file unless something goes wrong when
doing the basic install which goes:
- go to the EO directory - that was created when you unzipped the
archive file.
- run
./autogen.sh
- run
make
and that's it. You should probably go to the tutorial and start
learning about EO features and programming.
=======================================================================
This file is free documentation; the Free Software Foundation gives
unlimited permission to copy, distribute and modify it.
Basic Installation
==================
@ -33,20 +14,27 @@ various system-dependent variables used during compilation. It uses
those values to create a `Makefile' in each directory of the package.
It may also create one or more `.h' files containing system-dependent
definitions. Finally, it creates a shell script `config.status' that
you can run in the future to recreate the current configuration, a file
`config.cache' that saves the results of its tests to speed up
reconfiguring, and a file `config.log' containing compiler output
(useful mainly for debugging `configure').
you can run in the future to recreate the current configuration, and a
file `config.log' containing compiler output (useful mainly for
debugging `configure').
It can also use an optional file (typically called `config.cache'
and enabled with `--cache-file=config.cache' or simply `-C') that saves
the results of its tests to speed up reconfiguring. (Caching is
disabled by default to prevent problems with accidental use of stale
cache files.)
If you need to do unusual things to compile the package, please try
to figure out how `configure' could check whether to do them, and mail
diffs or instructions to the address given in the `README' so they can
be considered for the next release. If at some point `config.cache'
contains results you don't want to keep, you may remove or edit it.
be considered for the next release. If you are using the cache, and at
some point `config.cache' contains results you don't want to keep, you
may remove or edit it.
The file `configure.in' is used to create `configure' by a program
called `autoconf'. You only need `configure.in' if you want to change
it or regenerate `configure' using a newer version of `autoconf'.
The file `configure.ac' (or `configure.in') is used to create
`configure' by a program called `autoconf'. You only need
`configure.ac' if you want to change it or regenerate `configure' using
a newer version of `autoconf'.
The simplest way to compile this package is:
@ -80,14 +68,16 @@ Compilers and Options
=====================
Some systems require unusual options for compilation or linking that
the `configure' script does not know about. You can give `configure'
initial values for variables by setting them in the environment. Using
a Bourne-compatible shell, you can do that on the command line like
this:
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
the `configure' script does not know about. Run `./configure --help'
for details on some of the pertinent environment variables.
Or on systems that have the `env' program, you can do it like this:
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
You can give `configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here
is an example:
./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
*Note Defining Variables::, for more details.
Compiling For Multiple Architectures
====================================
@ -100,11 +90,11 @@ directory where you want the object files and executables to go and run
the `configure' script. `configure' automatically checks for the
source code in the directory that `configure' is in and in `..'.
If you have to use a `make' that does not supports the `VPATH'
variable, you have to compile the package for one architecture at a time
in the source code directory. After you have installed the package for
one architecture, use `make distclean' before reconfiguring for another
architecture.
If you have to use a `make' that does not support the `VPATH'
variable, you have to compile the package for one architecture at a
time in the source code directory. After you have installed the
package for one architecture, use `make distclean' before reconfiguring
for another architecture.
Installation Names
==================
@ -147,22 +137,32 @@ you can use the `configure' options `--x-includes=DIR' and
Specifying the System Type
==========================
There may be some features `configure' can not figure out
automatically, but needs to determine by the type of host the package
will run on. Usually `configure' can figure that out, but if it prints
a message saying it can not guess the host type, give it the
`--host=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name with three fields:
There may be some features `configure' cannot figure out
automatically, but needs to determine by the type of machine the package
will run on. Usually, assuming the package is built to be run on the
_same_ architectures, `configure' can figure that out, but if it prints
a message saying it cannot guess the machine type, give it the
`--build=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name which has the form:
CPU-COMPANY-SYSTEM
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
need to know the host type.
where SYSTEM can have one of these forms:
If you are building compiler tools for cross-compiling, you can also
OS KERNEL-OS
See the file `config.sub' for the possible values of each field. If
`config.sub' isn't included in this package, then this package doesn't
need to know the machine type.
If you are _building_ compiler tools for cross-compiling, you should
use the `--target=TYPE' option to select the type of system they will
produce code for and the `--build=TYPE' option to select the type of
system on which you are compiling the package.
produce code for.
If you want to _use_ a cross compiler, that generates code for a
platform different from the build platform, you should specify the
"host" platform (i.e., that on which the generated programs will
eventually be run) with `--host=TYPE'.
Sharing Defaults
================
@ -175,20 +175,44 @@ default values for variables like `CC', `cache_file', and `prefix'.
`CONFIG_SITE' environment variable to the location of the site script.
A warning: not all `configure' scripts look for a site script.
Operation Controls
Defining Variables
==================
Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set
them in the `configure' command line, using `VAR=value'. For example:
./configure CC=/usr/local2/bin/gcc
will cause the specified gcc to be used as the C compiler (unless it is
overridden in the site shell script).
`configure' Invocation
======================
`configure' recognizes the following options to control how it
operates.
`--cache-file=FILE'
Use and save the results of the tests in FILE instead of
`./config.cache'. Set FILE to `/dev/null' to disable caching, for
debugging `configure'.
`--help'
`-h'
Print a summary of the options to `configure', and exit.
`--version'
`-V'
Print the version of Autoconf used to generate the `configure'
script, and exit.
`--cache-file=FILE'
Enable the cache: use and save the results of the tests in FILE,
traditionally `config.cache'. FILE defaults to `/dev/null' to
disable caching.
`--config-cache'
`-C'
Alias for `--cache-file=config.cache'.
`--quiet'
`--silent'
`-q'
@ -200,8 +224,6 @@ operates.
Look for the package's source code in directory DIR. Usually
`configure' can determine that directory automatically.
`--version'
Print the version of Autoconf used to generate the `configure'
script, and exit.
`configure' also accepts some other, not widely useful, options. Run
`configure --help' for more details.
`configure' also accepts some other, not widely useful, options.

View file

@ -4,33 +4,43 @@
##
###############################################################################
SUBDIRS = src test app tutorial
SUBDIRS = src test app tutorial
#Directory for documents
DOCDIR = ~/public_html/eodocs
#Directory for indices -- not useful for the user
IDXDIR = ~/index
EXTRA_DIST=LICENSE
# EXTRA_DIST=LICENSE
###############################################################################
lib:
cd src; $(MAKE) all; cd ..
# special targets
app:
cd app; $(MAKE) all; cd ..
# so that make doc always compiles the doc ...
doc: doc/eo.cfg
cd doc; $(MAKE) doc; touch eo.cfg; cd ..
tutorial:
cd tutorial; $(MAKE) all; cd ..
cd $(srcdir)/tutorial; $(MAKE) all; cd ..
app:
cd app; $(MAKE) all; cd ..
all:
for i in $(SUBDIRS); do cd $$i && $(MAKE) all; cd ..; done
clean:
for i in $(SUBDIRS); do cd $$i && $(MAKE) clean; cd ..; done
###############################################################################
#lib:
# cd src; $(MAKE) all; cd ..
#all:
# for i in $(SUBDIRS); do cd $$i && $(MAKE) all; cd ..; done
#clean:
# for i in $(SUBDIRS); do cd $$i && $(MAKE) clean; cd ..; done
###############################################################################

View file

@ -8,7 +8,7 @@ DEPS = $(top_builddir)/src/libeo.a $(top_builddir)/src/utils/libeoutils.a
###############################################################################
INCLUDES = -I$(top_builddir)/src
INCLUDES = -I$(top_builddir)/src -I$(top_srcdir)/src
LDADDS = $(top_builddir)/src/libeo.a $(top_builddir)/src/utils/libeoutils.a
###############################################################################

View file

@ -7,7 +7,8 @@
#include <iostream> // cerr cout
#include <fstream> // ifstream
#include <string> // string
#include <eo> // all usefull eo stuff
#include <eo> // all usefull eo stuff\
#include "mastermind.h" // Chrom eoChromInit eoChromMutation eoChromXover eoChromEvaluator
using namespace std;

View file

@ -29,32 +29,26 @@ if test "$DIE" -eq 1; then
exit 1
fi
if test -z "$*"; then
echo "I am going to run ./configure with no arguments - if you wish"
echo "to pass any to it, please specify them on the $0 command line."
fi
set aclocalinclude="$ACLOCAL_FLAGS"
aclocal $aclocalinclude
unset $aclocalinclude
autoheader
automake
autoconf
for dir in .
do
echo processing $dir
(
cd $dir; \
aclocalinclude="$ACLOCAL_FLAGS"; \
aclocal $aclocalinclude; \
autoheader; \
automake; \
autoconf
)
done
./configure "$@"
# if test -z "$*"; then
# echo "I am going to run ./configure with no arguments - if you wish"
# echo "to pass any to it, please specify them on the $0 command line."
# fi
#
# ./configure "$@"
# we want doc to be recompiled - and it keeps saying it's up to date!!!
touch doc/eo.cfg
echo
echo "Now type 'make' to compile $PROG."
echo "And if you have Doxygen installed, type 'make doc' to generate $PROG documentation."
echo "If you have Doxygen installed, type 'make doc' to generate $PROG documentation."
echo
#echo "WARNING: Compiling all test programs can take some time."
#echo "But you don't have to: you can simply type"

View file

@ -4,6 +4,8 @@ AC_INIT(src/eo)
dnl Change the version number here
AM_INIT_AUTOMAKE(eo, 0.9.3)
AM_CONFIG_HEADER([config.h])
dnl Checks for maintainer mode
AM_MAINTAINER_MODE
@ -15,13 +17,9 @@ AC_PROG_MAKE_SET
AC_PROG_RANLIB
dnl Checks for libraries.
dnl Replace `main' with a function in -leo:
AC_CHECK_LIB(eo, main)
dnl Replace `main' with a function in -leoutils:
AC_CHECK_LIB(eoutils, main)
dnl Replace `main' with a function in -lm:
AC_CHECK_LIB(m, main)
AC_CHECK_LIB(m, cos)
dnl Checks for header files.
AC_HEADER_STDC
@ -36,5 +34,24 @@ AC_TYPE_SIZE_T
dnl Checks for library functions.
AC_CHECK_FUNCS(select)
AC_OUTPUT(doc/Makefile src/Makefile src/utils/Makefile src/other/Makefile win/Makefile src/gp/Makefile src/es/Makefile src/ga/Makefile test/Makefile contrib/Makefile Makefile app/Makefile app/mastermind/Makefile app/gpsymreg/Makefile src/do/Makefile)
#app/gprop/Makefile is in the sinbin
AC_OUTPUT(Makefile \
src/Makefile \
src/do/Makefile \
src/es/Makefile \
src/gp/Makefile \
src/ga/Makefile \
src/other/Makefile \
src/utils/Makefile \
contrib/Makefile \
doc/Makefile \
win/Makefile \
test/Makefile \
tutorial/Makefile \
tutorial/Lesson1/Makefile \
tutorial/Lesson2/Makefile \
tutorial/Lesson3/Makefile \
tutorial/Lesson4/Makefile \
tutorial/Lesson5/Makefile \
app/Makefile \
app/mastermind/Makefile \
app/gpsymreg/Makefile)

View file

@ -209,16 +209,20 @@ aix)
tru64)
# The Tru64 compiler uses -MD to generate dependencies as a side
# effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
# dependencies in `foo.d' instead, so we check for that too.
# Subdirectories are respected.
dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
test "x$dir" = "x$object" && dir=
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
base=`echo "$object" | sed -e 's/\.o$//' -e 's/\.lo$//'`
tmpdepfile1="$base.o.d"
tmpdepfile2="$base.d"
if test "$libtool" = yes; then
tmpdepfile1="$dir.libs/$base.lo.d"
tmpdepfile2="$dir.libs/$base.d"
"$@" -Wc,-MD
else
tmpdepfile1="$dir$base.o.d"
tmpdepfile2="$dir$base.d"
"$@" -MD
fi
@ -250,34 +254,40 @@ tru64)
dashmstdout)
# Important note: in order to support this mode, a compiler *must*
# always write the proprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
test -z "$dashmflag" && dashmflag=-M
( IFS=" "
case " $* " in
*" --mode=compile "*) # this is libtool, let us make it quiet
for arg
do # cycle over the arguments
case "$arg" in
"--mode=compile")
# insert --quiet before "--mode=compile"
set fnord "$@" --quiet
shift # fnord
;;
esac
set fnord "$@" "$arg"
shift # fnord
shift # "$arg"
done
# always write the proprocessed file to stdout, regardless of -o.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'. We will use -o /dev/null later,
# however we can't do the remplacement now because
# `-o $object' might simply not be used
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
"$@" $dashmflag | sed 's:^[^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
) &
proc=$!
"$@"
stat=$?
wait "$proc"
if test "$stat" != 0; then exit $stat; fi
done
test -z "$dashmflag" && dashmflag=-M
"$@" -o /dev/null $dashmflag | sed 's:^[^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
tr ' ' '
@ -295,33 +305,28 @@ dashXmstdout)
;;
makedepend)
"$@" || exit $?
# X makedepend
(
shift
cleared=no
for arg in "$@"; do
case $cleared in no)
set ""; shift
cleared=yes
esac
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift;;
-*)
;;
*)
set fnord "$@" "$arg"; shift;;
esac
done
obj_suffix="`echo $object | sed 's/^.*\././'`"
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} 2>/dev/null -o"$obj_suffix" -f"$tmpdepfile" "$@"
) &
proc=$!
"$@"
stat=$?
wait "$proc"
if test "$stat" != 0; then exit $stat; fi
shift
cleared=no
for arg in "$@"; do
case $cleared in
no)
set ""; shift
cleared=yes ;;
esac
case "$arg" in
-D*|-I*)
set fnord "$@" "$arg"; shift ;;
-*)
;;
*)
set fnord "$@" "$arg"; shift ;;
esac
done
obj_suffix="`echo $object | sed 's/^.*\././'`"
touch "$tmpdepfile"
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
rm -f "$depfile"
cat < "$tmpdepfile" > "$depfile"
sed '1,2d' "$tmpdepfile" | tr ' ' '
@ -334,35 +339,39 @@ makedepend)
cpp)
# Important note: in order to support this mode, a compiler *must*
# always write the proprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
( IFS=" "
case " $* " in
*" --mode=compile "*)
for arg
do # cycle over the arguments
case $arg in
"--mode=compile")
# insert --quiet before "--mode=compile"
set fnord "$@" --quiet
shift # fnord
;;
esac
set fnord "$@" "$arg"
shift # fnord
shift # "$arg"
done
# always write the proprocessed file to stdout.
"$@" || exit $?
# Remove the call to Libtool.
if test "$libtool" = yes; then
while test $1 != '--mode=compile'; do
shift
done
shift
fi
# Remove `-o $object'.
IFS=" "
for arg
do
case $arg in
-o)
shift
;;
$object)
shift
;;
*)
set fnord "$@" "$arg"
shift # fnord
shift # $arg
;;
esac
"$@" -E |
done
"$@" -E |
sed -n '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
sed '$ s: \\$::' > "$tmpdepfile"
) &
proc=$!
"$@"
stat=$?
wait "$proc"
if test "$stat" != 0; then exit $stat; fi
rm -f "$depfile"
echo "$object : \\" > "$depfile"
cat < "$tmpdepfile" >> "$depfile"
@ -374,47 +383,25 @@ msvisualcpp)
# Important note: in order to support this mode, a compiler *must*
# always write the proprocessed file to stdout, regardless of -o,
# because we must use -o when running libtool.
( IFS=" "
case " $* " in
*" --mode=compile "*)
for arg
do # cycle over the arguments
case $arg in
"--mode=compile")
# insert --quiet before "--mode=compile"
set fnord "$@" --quiet
shift # fnord
;;
esac
set fnord "$@" "$arg"
shift # fnord
shift # "$arg"
done
;;
esac
for arg
do
case "$arg" in
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
"$@" || exit $?
IFS=" "
for arg
do
case "$arg" in
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
set fnord "$@"
shift
shift
;;
*)
*)
set fnord "$@" "$arg"
shift
shift
;;
esac
done
"$@" -E |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
) &
proc=$!
"$@"
stat=$?
wait "$proc"
if test "$stat" != 0; then exit $stat; fi
esac
done
"$@" -E |
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
rm -f "$depfile"
echo "$object : \\" > "$depfile"
. "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"

View file

@ -109,7 +109,7 @@ then
echo "install: no input file specified"
exit 1
else
true
:
fi
if [ x"$dir_arg" != x ]; then
@ -118,8 +118,9 @@ if [ x"$dir_arg" != x ]; then
if [ -d $dst ]; then
instcmd=:
chmodcmd=""
else
instcmd=mkdir
instcmd=$mkdirprog
fi
else
@ -127,9 +128,9 @@ else
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if [ -f $src -o -d $src ]
if [ -f "$src" ] || [ -d "$src" ]
then
true
:
else
echo "install: $src does not exist"
exit 1
@ -140,7 +141,7 @@ else
echo "install: no destination specified"
exit 1
else
true
:
fi
# If destination is a directory, append the input filename; if your system
@ -150,7 +151,7 @@ else
then
dst="$dst"/`basename $src`
else
true
:
fi
fi
@ -162,8 +163,8 @@ dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
# Skip lots of stat calls in the usual case.
if [ ! -d "$dstdir" ]; then
defaultIFS='
'
defaultIFS='
'
IFS="${IFS-${defaultIFS}}"
oIFS="${IFS}"
@ -182,7 +183,7 @@ while [ $# -ne 0 ] ; do
then
$mkdirprog "${pathcomp}"
else
true
:
fi
pathcomp="${pathcomp}/"
@ -193,10 +194,10 @@ if [ x"$dir_arg" != x ]
then
$doit $instcmd $dst &&
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else : ; fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else : ; fi &&
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else : ; fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else : ; fi
else
# If we're going to rename the final executable, determine the name now.
@ -215,7 +216,7 @@ else
then
dstfile=`basename $dst`
else
true
:
fi
# Make a temp file name in the proper directory.
@ -234,10 +235,10 @@ else
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $instcmd $src $dsttmp" command.
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else :;fi &&
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else :;fi &&
if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else :;fi &&
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else :;fi &&
# Now rename the file to the real destination.

View file

@ -1,7 +1,7 @@
#! /bin/sh
# Common stub for a few missing GNU programs while installing.
# Copyright (C) 1996, 1997 Free Software Foundation, Inc.
# Franc,ois Pinard <pinard@iro.umontreal.ca>, 1996.
# Copyright (C) 1996, 1997, 1999, 2000, 2002 Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# 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
@ -18,11 +18,37 @@
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
# 02111-1307, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
# configuration script generated by Autoconf, you may include it under
# the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then
echo 1>&2 "Try \`$0 --help' for more information"
exit 1
fi
run=:
# In the cases where this matters, `missing' is being run in the
# srcdir already.
if test -f configure.ac; then
configure_ac=configure.ac
else
configure_ac=configure.in
fi
case "$1" in
--run)
# Try to run requested program, and just exit if it succeeds.
run=
shift
"$@" && exit 0
;;
esac
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
case "$1" in
-h|--h|--he|--hel|--help)
@ -35,6 +61,7 @@ error status if there is no known handling for PROGRAM.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
--run try to run the given command, and emulate it if it fails
Supported PROGRAM values:
aclocal touch file \`aclocal.m4'
@ -43,13 +70,15 @@ Supported PROGRAM values:
automake touch all \`Makefile.in' files
bison create \`y.tab.[ch]', if possible, from existing .[ch]
flex create \`lex.yy.c', if possible, from existing .c
help2man touch the output file
lex create \`lex.yy.c', if possible, from existing .c
makeinfo touch the output file
tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing - GNU libit 0.0"
echo "missing 0.4 - GNU automake"
;;
-*)
@ -58,50 +87,100 @@ Supported PROGRAM values:
exit 1
;;
aclocal)
aclocal*)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified \`acinclude.m4' or \`configure.in'. You might want
you modified \`acinclude.m4' or \`${configure_ac}'. You might want
to install the \`Automake' and \`Perl' packages. Grab them from
any GNU archive site."
touch aclocal.m4
;;
autoconf)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified \`configure.in'. You might want to install the
you modified \`${configure_ac}'. You might want to install the
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU
archive site."
touch configure
;;
autoheader)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified \`acconfig.h' or \`configure.in'. You might want
you modified \`acconfig.h' or \`${configure_ac}'. You might want
to install the \`Autoconf' and \`GNU m4' packages. Grab them
from any GNU archive site."
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER([^):]*:\([^)]*\)).*/\1/p' configure.in`
if test -z "$files"; then
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^):]*\)).*/\1/p' configure.in`
test -z "$files" || files="$files.in"
else
files=`echo "$files" | sed -e 's/:/ /g'`
fi
test -z "$files" && files="config.h.in"
touch $files
files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
test -z "$files" && files="config.h"
touch_files=
for f in $files; do
case "$f" in
*:*) touch_files="$touch_files "`echo "$f" |
sed -e 's/^[^:]*://' -e 's/:.*//'`;;
*) touch_files="$touch_files $f.in";;
esac
done
touch $touch_files
;;
automake)
automake*)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified \`Makefile.am', \`acinclude.m4' or \`configure.in'.
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
You might want to install the \`Automake' and \`Perl' packages.
Grab them from any GNU archive site."
find . -type f -name Makefile.am -print \
| sed 's/^\(.*\).am$/touch \1.in/' \
| sh
find . -type f -name Makefile.am -print |
sed 's/\.am$/.in/' |
while read f; do touch "$f"; done
;;
autom4te)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\
WARNING: \`$1' is needed, and you do not seem to have it handy on your
system. You might have modified some files without having the
proper tools for further handling them.
You can get \`$1Help2man' as part of \`Autoconf' from any GNU
archive site."
file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
if test -f "$file"; then
touch $file
else
test -z "$file" || exec >$file
echo "#! /bin/sh"
echo "# Created by GNU Automake missing as a replacement of"
echo "# $ $@"
echo "exit 0"
chmod +x $file
exit 1
fi
;;
bison|yacc)
@ -157,7 +236,37 @@ WARNING: \`$1' is missing on your system. You should only need it if
fi
;;
help2man)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified a dependency of a manual page. You may need the
\`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site."
file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
if test -z "$file"; then
file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
fi
if [ -f "$file" ]; then
touch $file
else
test -z "$file" || exec >$file
echo ".ab help2man is required to generate this page"
exit 1
fi
;;
makeinfo)
if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
# We have makeinfo, but it failed.
exit 1
fi
echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file
@ -173,6 +282,45 @@ WARNING: \`$1' is missing on your system. You should only need it if
touch $file
;;
tar)
shift
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
fi
# We have already tried tar in the generic part.
# Look for gnutar/gtar before invocation to avoid ugly error
# messages.
if (gnutar --version > /dev/null 2>&1); then
gnutar "$@" && exit 0
fi
if (gtar --version > /dev/null 2>&1); then
gtar "$@" && exit 0
fi
firstarg="$1"
if shift; then
case "$firstarg" in
*o*)
firstarg=`echo "$firstarg" | sed s/o//`
tar "$firstarg" "$@" && exit 0
;;
esac
case "$firstarg" in
*h*)
firstarg=`echo "$firstarg" | sed s/h//`
tar "$firstarg" "$@" && exit 0
;;
esac
fi
echo 1>&2 "\
WARNING: I can't seem to be able to run \`tar' with the given arguments.
You may want to install GNU tar or Free paxutils, or check the
command line arguments."
exit 1
;;
*)
echo 1>&2 "\
WARNING: \`$1' is needed, and you do not seem to have it handy on your

View file

@ -4,9 +4,53 @@
# Created: 1993-05-16
# Public domain
# $Id: mkinstalldirs,v 5.1 1999-02-12 17:39:01 gustavo Exp $
errstatus=0
dirmode=""
usage="\
Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..."
# process command line arguments
while test $# -gt 0 ; do
case "${1}" in
-h | --help | --h* ) # -h for help
echo "${usage}" 1>&2; exit 0 ;;
-m ) # -m PERM arg
shift
test $# -eq 0 && { echo "${usage}" 1>&2; exit 1; }
dirmode="${1}"
shift ;;
-- ) shift; break ;; # stop option processing
-* ) echo "${usage}" 1>&2; exit 1 ;; # unknown option
* ) break ;; # first non-opt arg
esac
done
for file
do
if test -d "$file"; then
shift
else
break
fi
done
case $# in
0) exit 0 ;;
esac
case $dirmode in
'')
if mkdir -p -- . 2>/dev/null; then
echo "mkdir -p -- $*"
exec mkdir -p -- "$@"
fi ;;
*)
if mkdir -m "$dirmode" -p -- . 2>/dev/null; then
echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@"
fi ;;
esac
for file
do
@ -22,13 +66,24 @@ do
esac
if test ! -d "$pathcomp"; then
echo "mkdir $pathcomp" 1>&2
echo "mkdir $pathcomp"
mkdir "$pathcomp" || lasterr=$?
mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then
errstatus=$lasterr
fi
if test ! -d "$pathcomp"; then
errstatus=$lasterr
else
if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp"
lasterr=""
chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then
errstatus=$lasterr
fi
fi
fi
fi
pathcomp="$pathcomp/"
@ -37,4 +92,8 @@ done
exit $errstatus
# Local Variables:
# mode: shell-script
# sh-indentation: 3
# End:
# mkinstalldirs ends here

View file

@ -4,12 +4,22 @@
##
###############################################################################
INCLUDES = -I$(top_srcdir)/src
SUBDIRS = es ga gp utils other do
CPPFLAGS = -O2
lib_LIBRARIES = libeo.a
libeo_a_SOURCES = eoFunctorStore.cpp eoPersistent.cpp eoPrintable.cpp eoCtrlCContinue.cpp eoParetoFitness.cpp eoScalarFitnessAssembled.cpp
libeo_a_SOURCES = eoFunctorStore.cpp \
eoPersistent.cpp \
eoPrintable.cpp \
eoCtrlCContinue.cpp \
eoParetoFitness.cpp \
eoScalarFitnessAssembled.cpp
libeoincdir = $(includedir)/eo
libeoinc_HEADERS = *.h eo do/*.h
libeoinc_HEADERS = $(srcdir)/*.h $(srcdir)/eo $(srcdir)/do/*.h

View file

@ -26,6 +26,8 @@
#ifndef _eoVariableLengthCrossover_h
#define _eoVariableLengthCrossover_h
#include <config.h>
#include <eoFunctor.h>
#include <eoOp.h>

View file

@ -4,7 +4,7 @@
##
###############################################################################
INCLUDES = -I$(top_builddir)/src
INCLUDES = -I$(top_builddir)/src -I$(top_srcdir)/src
lib_LIBRARIES = libes.a
libes_a_SOURCES = make_algo_scalar_es.cpp \
make_algo_scalar_real.cpp \

View file

@ -4,7 +4,7 @@
##
###############################################################################
INCLUDES = -I$(top_builddir)/src
INCLUDES = -I$(top_builddir)/src -I$(top_srcdir)/src
lib_LIBRARIES = libga.a
libga_a_SOURCES = make_algo_scalar_ga.cpp \
make_checkpoint_ga.cpp \

View file

@ -21,6 +21,8 @@
#ifndef PICKLE_H
#define PICKLE_h
#include <config.h>
#include <boost/python.hpp>
#ifdef HAVE_SSTREAM
#include <sstream>

View file

@ -4,13 +4,13 @@
##
###############################################################################
INCLUDES = -I$(top_builddir)/src
INCLUDES = -I$(top_builddir)/src -I$(top_srcdir)/src
CPPFLAGS = -O2 -Wall
lib_LIBRARIES = libeoutils.a
libeoutils_a_SOURCES = eoParser.cpp eoRNG.cpp eoState.cpp eoUpdater.cpp eoFileMonitor.cpp eoStdoutMonitor.cpp eoRealBounds.cpp make_help.cpp
libeoincdir = $(includedir)/eo/utils
libeoinc_HEADERS = checkpointing *.h
libeoinc_HEADERS = checkpointing $(srcdir)/*.h
#compatibility.h eoCheckPoint.h eoData.h eoDistance.h eoFDCStat.h eoFileMonitor.h eoGnuplot1DMonitor.h eoGnuplot1DSnapshot.h eoHowMany.h eoMonitor.h eoParam.h eoParser.h eoRNG.h eoStat.h eoScalarFitnessStat.h eoState.h eoStdoutMonitor.h eoUpdatable.h eoUpdater.h rnd_generators.h eoRndGenerators.h selectors.h

View file

@ -27,6 +27,8 @@
#ifndef _eoFileSnapshot_h
#define _eoFileSnapshot_h
#include <config.h>
#include <string>
#include <fstream>
#include <utils/eoParam.h>

View file

@ -26,6 +26,8 @@
#ifndef _eoGnuplot_H
#define _eoGnuplot_H
#include <config.h>
#include <string>
/**
@ -150,7 +152,7 @@ inline void eoGnuplot::initGnuPlot(std::string _title, std::string _extra)
* Created......: Mon Mar 13 13:50:11 1995
* Description..: Communication par pipe bidirectionnel avec un autre process
*
* Ident........: $Id: eoGnuplot.h,v 1.9 2004-01-21 19:57:19 maartenkeijzer Exp $
* Ident........: $Id: eoGnuplot.h,v 1.10 2004-09-17 16:53:15 kuepper Exp $
* ----------------------------------------------------------------------
*/

View file

@ -28,6 +28,8 @@
#ifndef _eoGnuplot1DMonitor_H
#define _eoGnuplot1DMonitor_H
#include <config.h>
#include <string>
#include <utils/eoMonitor.h>

View file

@ -28,8 +28,12 @@
#ifndef _eoGnuplot1DSnapshot_H
#define _eoGnuplot1DSnapshot_H
#include <config.h>
#include <string>
// #include <sstream>
#ifdef HAVE_SSTREAM
#include <sstream>
#endif
#include <utils/eoFileSnapshot.h>
#include <utils/eoGnuplot.h>

View file

@ -63,6 +63,9 @@
*
* It is an eoPersistent because we need to be able to use eoParamValue<eoHowMany>
*/
#include <config.h>
#ifdef HAVE_SSTREAM
#include <sstream>
#else

View file

@ -27,6 +27,8 @@
#ifndef eoParam_h
#define eoParam_h
#include <config.h>
//-----------------------------------------------------------------------------
#include <math.h> // for floor
#include <string>

View file

@ -35,6 +35,8 @@ that can be used to dump to the screen
#ifndef _eoPopStat_h
#define _eoPopStat_h
#include <config.h>
#include <utils/eoStat.h>

1
eo/tutorial/.cvsignore Normal file
View file

@ -0,0 +1 @@
Makefile.in

View file

@ -0,0 +1 @@
Makefile.in

View file

@ -0,0 +1,16 @@
bin_PROGRAMS = FirstBitGA FirstRealGA exercise1.3
FirstBitGA_SOURCES = FirstBitGA.cpp
FirstRealGA_SOURCES = FirstRealGA.cpp
exercise1_3_SOURCES = exercise1.3.cpp
LDADD = -L$(top_builddir)/src -L$(top_builddir)/src/ga -L$(top_builddir)/src/utils
LIBS = -lga -leoutils -leo
INCLUDES = -I$(top_srcdir)/src

View file

@ -0,0 +1 @@
Makefile.in

View file

@ -0,0 +1,23 @@
bin_PROGRAMS = FirstBitEA FirstRealEA exercise2.3
FirstBitEA_SOURCES = FirstBitEA.cpp
FirstRealEA_SOURCES = FirstRealEA.cpp
exercise2_3_SOURCES = exercise2.3.cpp
noinst_HEADERS = binary_value.h \
real_value.h
extra_DIST = Makefile.simple
LDADD = -L$(top_builddir)/src -L$(top_builddir)/src/ga -L$(top_builddir)/src/utils
LIBS = -lga -leoutils -leo
INCLUDES = -I$(top_srcdir)/src

View file

@ -0,0 +1 @@
Makefile.in

View file

@ -0,0 +1,26 @@
bin_PROGRAMS = SecondBitEA SecondRealEA exercise3.1
SecondBitEA_SOURCES = SecondBitEA.cpp
SecondRealEA_SOURCES = SecondRealEA.cpp
exercise3_1_SOURCES = exercise3.1.cpp
noinst_HEADERS = binary_value.h \
real_value.h
extra_DIST = Makefile.simple
LDADD = -L$(top_builddir)/src -L$(top_builddir)/src/ga -L$(top_builddir)/src/utils
LIBS = -lga -leoutils -leo
INCLUDES = -I$(top_srcdir)/src
clean-local:
@/bin/rm $(ALL) *.o *.sav *.xg *.status *~

View file

@ -0,0 +1 @@
Makefile.in

View file

@ -0,0 +1,27 @@
bin_PROGRAMS = BitEA RealEA ESEA
BitEA_SOURCES = BitEA.cpp
RealEA_SOURCES = RealEA.cpp
ESEA_SOURCES = ESEA.cpp
noinst_HEADERS = binary_value.h \
real_value.h
extra_DIST = Makefile.simple
LDADD = -L$(top_builddir)/src -L$(top_builddir)/src/es \
-L$(top_builddir)/src/ga -L$(top_builddir)/src/utils
LIBS = -lga -les -leoutils -leo
INCLUDES = -I$(top_srcdir)/src
clean-local:
@/bin/rm $(ALL) *.o *.sav *.xg *.status *~

View file

@ -0,0 +1 @@
Makefile.in

View file

@ -0,0 +1,25 @@
bin_PROGRAMS = OneMaxEA OneMaxLibEA
OneMaxEA_SOURCES = OneMaxEA.cpp
OneMaxLibEA_SOURCES = OneMaxLibEA.cpp make_OneMax.cpp
noinst_HEADERS = eoOneMax.h \
eoOneMaxEvalFunc.h \
eoOneMaxInit.h \
eoOneMaxMutation.h \
eoOneMaxQuadCrossover.h \
make_genotype_OneMax.h \
make_op_OneMax.h
extra_DIST = Makefile.simple
LDADD = -L$(top_builddir)/src -L$(top_builddir)/src/ga -L$(top_builddir)/src/utils
LIBS = -lga -leoutils -leo
INCLUDES = -I$(top_srcdir)/src

1
eo/tutorial/Makefile.am Normal file
View file

@ -0,0 +1 @@
SUBDIRS = Lesson1 Lesson2 Lesson3 Lesson4 Lesson5