[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: gnulib and C++
From: |
John W. Eaton |
Subject: |
Re: gnulib and C++ |
Date: |
Thu, 18 Feb 2010 15:49:05 -0500 |
On 18-Feb-2010, Ralf Wildenhues wrote:
| * John W. Eaton wrote on Thu, Feb 18, 2010 at 09:22:39PM CET:
| > On 18-Feb-2010, Ralf Wildenhues wrote:
| > | $ autoconf '--trace=AC_DEFINE:$1:$2' | grep ':rpl_[^:]*$'
| >
| > Running this with the Octave configure.ac file produces only
| >
| > gmtime:rpl_gmtime
| > localtime:rpl_localtime
| >
| > but I know that this is far from a complete list, as shown by grep
| > rpl_ on all the files in the libgnu directory of the Octave sources
| > (where the gnulib module files are copied in the Octave source/build
| > trees).
|
| Try it after autoreconf/aclocal have been run, or whatever other means
| you use to produce fully resolved autoconf macro files and includes.
I ran the autoconf comand after the Octave autogen.sh script was
run. The autogen.sh script is
#! /bin/sh
# autogen.sh
# Run this to generate all the initial makefiles, etc.
set -e
AUTOMAKE="automake --warnings=no-portability"
echo "generating source lists for liboctave/Makefile..."
(cd liboctave; ./config-ops.sh)
echo "generating doc/interpreter/images.mk..."
(cd doc/interpreter; ./config-images.sh)
echo "generating src/DLD-FUNCTIONS/module.mk..."
(cd src/DLD-FUNCTIONS; ./config-module.sh)
echo "bootstrapping..."
./bootstrap "$@"
The various config-*.sh scripts that are called by autogen.sh generate
some Makefile fragments that are mostly just lists of filenames and
some dependencies that are more easily managed if they are
automatically generated rather than created entirely by hand.
The bootstrap script is from gnulib. The bootstrap.conf file that it
requires is
# Bootstrap configuration.
# Copyright (C) 2006, 2007 Free Software Foundation, Inc.
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 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, see <http://www.gnu.org/licenses/>.
# gnulib modules used by this package.
gnulib_modules="
c-strcase
crypto/md5
fcntl
fnmatch
getcwd
gethostname
getopt-gnu
gettimeofday
glob
link
lstat
mkdir
mkfifo
sleep
nanosleep
pathmax
progname
readlink
rename
rmdir
sigaction
signal
sigprocmask
sleep
stat
stdint
strftime
strptime
symlink
sys_stat
sys_time
sys_times
time
times
unistd
unlink
vsnprintf
round
"
# Additional xgettext options to use. Use "\\\newline" to break lines.
XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
--from-code=UTF-8\\\
--flag=asprintf:2:c-format --flag=vasprintf:2:c-format\\\
--flag=asnprintf:3:c-format --flag=vasnprintf:3:c-format\\\
--flag=wrapf:1:c-format\\\
'
# If "AM_GNU_GETTEXT(external" or "AM_GNU_GETTEXT([external]"
# appears in configure.ac, exclude some unnecessary files.
# Without grep's -E option (not portable enough, pre-configure),
# the following test is ugly. Also, this depends on the existence
# of configure.ac, not the obsolescent-named configure.in. But if
# you're using this infrastructure, you should care about such things.
gettext_external=0
grep '^[ ]*AM_GNU_GETTEXT(external\>' configure.ac > /dev/null &&
gettext_external=1
grep '^[ ]*AM_GNU_GETTEXT(\[external\]' configure.ac > /dev/null &&
gettext_external=1
if test $gettext_external = 1; then
# Gettext supplies these files, but we don't need them since
# we don't have an intl subdirectory.
excluded_files='
m4/glibc2.m4
m4/intdiv0.m4
m4/lcmessage.m4
m4/lock.m4
m4/printf-posix.m4
m4/size_max.m4
m4/uintmax_t.m4
m4/ulonglong.m4
m4/visibility.m4
m4/xsize.m4
'
fi
checkout_only_file=HACKING
gnulib_tool_option_extras="--libtool"
gnulib_name="libgnu"
source_base="libgnu"
is
| If that still doesn't work, I'd be interested in Autoconf and Automake
| versions, and a way to reproduce this.
I'm working on a Debian system and using
$ autoconf --version
autoconf (GNU Autoconf) 2.65
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+/Autoconf: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>, <http://gnu.org/licenses/exceptions.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by David J. MacKenzie and Akim Demaille.
$ automake --version
automake (GNU automake) 1.11.1
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv2+: GNU GPL version 2 or later
<http://gnu.org/licenses/gpl-2.0.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Written by Tom Tromey <address@hidden>
and Alexandre Duret-Lutz <address@hidden>.
The current Octave sources are in a Mercurial archive on Savannah:
hg clone http://hg.savannah.gnu.org/hgweb/octave/
if you are interested in checking this out, then clone the archive,
run ./autogen.sh, then you should be able to run configure.
Thanks,
jwe
Re: gnulib and C++, Bruno Haible, 2010/02/18
Re: gnulib and C++, Bruno Haible, 2010/02/19
Re: gnulib and C++, Ralf Wildenhues, 2010/02/20