Hi,
Andreas writes:
> I just had an ingenious idea to limit conflicts in versioning systems.
>
> When you specify a list of files for a rule you put every file in a line like
> this.
>
> fileA.c \
> fileB.c \
> fileC.c
One slightly ugly-looking approach I've seen is
EMPTY =
fo
Hi,
Jan Engelhardt writes:
> On Monday 2008-12-22 21:36, Ralf Wildenhues wrote:
>>> >On Monday 2008-12-15 21:19, William Pursell wrote:
>>>
>>> >The make info pages mention that $? expands to “all the prerequisites
>>> >that are newer than the target”, and that sounds like there could be
>>> >mo
Hi,
Monty Taylor <[EMAIL PROTECTED]> writes:
> I've got a project that has 24 Makefile.am files. At the top of all of
> them at the moment, I've got:
>
> AM_CPPFLAGS = -I$(top_builddir)/include -I$(top_srcdir)/include
[snip]
> PS. Yes...I know the -I$(top_builddir)/include is ridiculous... I
> in
Hi,
Herbert Euler <[EMAIL PROTECTED]> writes:
> I encountered a problem using version.texi with GNU make: after
> changing the version of my project in configure.in GNU make has to be
> executed twice to get the correct version number in the info document.
> I had sent a mail to the bug-make mail
Hi,
I got a chance to work on automake after 4 years :-)
As part of the Novell HackWeek, I'm working on a set of patches to add native
support for Mono/.NET assemblies to automake. I have a promising start, and
would like to get some comments. I'll try to post the in-work patches onto the
'-pat
he file exists or not. Is the second test not
> subsumed by the first one (if that one is successful)?
The first test uses $CFLAGS and $CPPFLAGS, while the second only uses
$CPPFLAGS. If you have some -I and -D in your $CFLAGS, the results
will differ.
(I'm not justifying the double
; ./configure
> cp Makefile TMP
> grep -v "^[ ]*test ...failed. -eq 0" TMP > Makefile
> rm TMP
> make
That seems a roundabout way to do it. Just copy the check-TESTS rule
into your Makefile.am file, and automake won't generate its internal
e to solve this another way?
A rule of thumb is that every Makefile.am should have a corresponding
*unconditional* AC_CONFIG_FILES entry in your configure.ac. The
directories and Makefiles should be created even if nothing in them
is built.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
Hi,
Andrew Suffield <[EMAIL PROTECTED]> writes:
> On Mon, Jul 28, 2003 at 05:55:15PM -0500, Raja R Harinath wrote:
>> Andrew Suffield <[EMAIL PROTECTED]> writes:
[snip autoreconf/autopoint/AM_GNU_GETTEXT([external]) dicussion]
>> > All that does is stop including
SAGE_LOG_FD'
in the appropriate places for C and C++. Can you check the value of
$ac_link when your macro is run.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
Andrew Suffield <[EMAIL PROTECTED]> writes:
> On Mon, Jul 28, 2003 at 05:33:43PM -0500, Raja R Harinath wrote:
>> Andrew Suffield <[EMAIL PROTECTED]> writes:
>>
>> > autoreconf has a habit of doing silly things like running autopoint,
>> > whic
n't want. I've never seen it actually do what I wanted, and
> frankly, it's far too complicated for what should be a trivial script.
It does that only when you ask for 'gettext'. On most modern
machines, esp. on Debian, you should replace
AM_GNU_GETTEXT
with
AM_
nd compare
>
> % make # GNU make
> make: *** No rule to make target `f 1', needed by `all'. Stop.
> % pmake # NetBSD make
> make: don't know how to make f\. Stop
> % fmake # FreeBSD make
> make: don't know how to make f\
ases where
automake cannot figure out that a library is part of link line, for
example when the list of libraries is AC_SUBSTed in.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
dir)/src/errors/libErrors.a \
> $(top_srcdir)/src/lib/libLib.a
I think you mean $(top_builddir). $(top_srcdir) is used to refers to
source files.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
y searching for 'default prefix' in the autoconf documentation.
The answer's in there.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
Hi,
Bill Moseley <[EMAIL PROTECTED]> writes:
> On Fri, 4 Apr 2003, Raja R Harinath wrote:
>
>> Hi,
>>
>> Raja R Harinath <[EMAIL PROTECTED]> writes:
>> [snip]
>> > $(html_DATA): .html-stamp
>> >if test -f $@; then :; else rm
Hi,
Raja R Harinath <[EMAIL PROTECTED]> writes:
[snip]
> $(html_DATA): .html-stamp
> if test -f $@; then :; else rm -f $<; done
That should read:
if test -f $@; then :; else rm -f $<; $(MAKE) .html-stamp; done
- Hari
--
Raja R Harinath ---
Also, if you only support using GNU make when developing
this package, you may want to use the following more useful (but
untested) rule:
$(html_DATA): .html-stamp
if test -f $@; then :; else rm -f $<; done
This'll allow you to
rm CHANGES.html
make
and have CHANGES.html recreated.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
is to use
TESTS_ENVIRONMENT = srcdir=$(srcdir) top_srcdir=$(top_srcdir)
This is assuming the test scripts are listed in check_TESTS.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
' to support
--enable-blenderplayer
--enable-webplugin
Then, the standard 'make && make check && make install' will do the
right thing.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
r and $pkgincludedir
are in $prefix, not in $exec_prefix. So, technically, they are meant
for arch-independent headers.
(To confound things, I think the FHS has /usr/include as
arch-dependent. So, what you have will be OK for a Linux packager who
uses $prefix=/usr.)
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
problem though (you seem to be the first
> person to be interested).
Perhaps automake should recognize the following idiom for adding new
'include .dep/*' lines:
AM_DEP_FILES = $(DEPDIR)/foo.Ptexi $(DEPDIR)/bar.idl.Pcc
It can just add these files to the DEP_FILES variable, and have the
'include' lines automatically added.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
U/Linux machine.
> # -*- perl -*-
> # @configure_input@
>
> -eval 'case $# in 0) exec @PERL@ -S "$0";; *) exec @PERL@ -S "$0" "$@";; esac'
> -if 0;
> -
This is to re-execute the script with Perl in case somehow a Bourne
shell started executing this script.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
Raja R Harinath <[EMAIL PROTECTED]> writes:
> Roger Leigh <[EMAIL PROTECTED]> writes:
>
>> I'm getting this warning from automake:
>>
>> roger@whinlatter:~/gimp-print/newbuild$ automake
>> automake: both `configure.ac' and `configure.in
EXTRA_LTLIBRARIES = libgimpprint.la
^^^
My guess is that it complains about the EXTRA_LTLIBRARIES line. You
don't need that line, since automake is supposed to figure it out
itself. I'm not sure whether it's a bug or not.
- Hari
--
Raja R
Hi,
Tom Tromey <[EMAIL PROTECTED]> writes:
>>>>>> "Hari" == Raja R Harinath <[EMAIL PROTECTED]> writes:
>
> Hari> That code is there support non-srcdir builds in the face of
> Hari> 'make's with broken VPATH implementations. If
for a failure condition and... I dunno,
> do something strang in that condition.
That code is there support non-srcdir builds in the face of 'make's
with broken VPATH implementations. If you look at the Makefile,
you'll see that it is checking to see whether 'make' said t
Hi,
Tom Tromey <[EMAIL PROTECTED]> writes:
>>>>>> "Hari" == Raja R Harinath <[EMAIL PROTECTED]> writes:
>
> Hari> Akim once suggested adding a facility to hook commands to files
> Hari> listed in AC_CONFIG_FILES.
>
> The problem
hackily. One issue with generating the above command is that it is
safe to invoke the 'depfiles' CONFIG_COMMAND only in some cases, and
at the time 'automake' emits the Makefile regeneration code, it
doesn't know if it's safe yet. So, here goes:
From Raja R Harin
ght.
> So I tried nodist_noinst_HEADERS. This had the unexpected effect of
> installing the headers in the root directory!
That seems to be a bug in automake. Can you file a bug report?
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else
install it'. Basically, I want the wrapper script setup by
> libtool to contain an additional variable.
It just happens that the 'autoconf' wrapper scripts are in the 'tests'
directory. You can use that approach in other places too.
- Hari
--
Raja R Harinath --
ibexecdir)/cgi-bin
> cgibin_PROGRAMS = mumble
> mumble_SOURCES = ...
That should be
cgibinexecdir = $(libexecdir)/cgi-bin
cgibinexec_PROGRAMS = mumble
so that things work as expected with 'make install-exec'.
- Hari
--
Raja R Harinath -- [EMAIL P
bugging" feature. It helps
you root out mistakes that you may have made w.r.t builddir, srcdir,
dist, nodist, BUILT_SOURCES and other issues.
It all boils down to this: the tarball generated by 'make dist' should
NOT depend on what flags you passed to 'configure' in the build tree
where you ran 'make dist' or 'make distcheck'.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
rated package can later be configured
with different settings, after all. So, all the directories and
Makefiles should exist, even if they're never invoked during some
builds.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
xist");
> + }
> + else
> + {
> + &generate_makefile ($output_files{$am_file}, $am_file);
> + }
> }
> +++$automake_has_run;
> }
> +while ($automake_needs_to_reprocess_all_files);
This doesn't look like it'll work
erve the comment (which is presumably the
> reason it was entered) and save the Makefile.in semantics.
Yep.
However, I wouldn't want Automake to move the comments. Automake
isn't, and doesn't try to be, a make-rule validator for the
user-written rules in Makefile.am. It shoul
a feature.
> The next question, is there a workaround to solve my problem?
Given my guess, you should ensure that all directories and all
Makefiles are created by the 'configure' scripts, even if the build
will not enter those directories.
- Hari
--
Raja R Harinath
anging the boot-time behaviour of a machine, and/or may not
have permissions to modify the boot-time settings.
I would suggest putting in a 'setup-boot' target to do this, and
ask people to explicitly invoke that rule to integrate your program
into the boot setup.
- Hari
--
Raja R Harinat
ave the right version?
Is AM_SET_DEPDIR properly invoked in init.m4?
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
tracking mechanism.
It is almost definitely not intended as a generic mechanism to support
Makefile includes.
After all, automake already has it's own support for including
makefile fragments -- and that mechanism is already portable to
'make's that don't support any fo
7;redundant_condition',
along with your modification to look at the tail of @conds too.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
ecking.
> - if ! conditionals_true_when ((@parent_conds), ($vcond));
>+if ! conditionals_true_when ([@parent_conds], [$vcond]);
This would then be,
if ! conditionals_true_when(@parent_conds, $vcond)
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When
Tom Tromey <[EMAIL PROTECTED]> writes:
>>>>>> "Hair" == Raja R Harinath <[EMAIL PROTECTED]> writes:
>Clark> test_SOURCES = d1/s1.cc d2/s2.cc
>
>Hair> Try using
>Hair> AUTOMAKE_OPTIONS = subdir-objects
>
> subdir-objects will c
Clark Rawlins <[EMAIL PROTECTED]> writes:
[snip]
> I want to be able to do something like:
>
> test_SOURCES = d1/s1.cc d2/s2.cc
Try using
AUTOMAKE_OPTIONS = subdir-objects
I think that does what you want (you have to use the in-CVS version of
automake).
- Hari
--
Hi,
The recently added ASSIGNMENT_PATTERN is a little too greedy. Given
FOO=-DBAR=baz
it incorrectly matches the macro name to be 'FOO=-DBAR' rather than
just 'FOO'.
Here's an obvious fix, and a possible testcase.
from Raja R Harinath <[EMAIL
Hi,
The following is necessary for install-fooHEADERS to work.
from Raja R Harinath <[EMAIL PROTECTED]>
* data.am (install-%DIR%%PRIMARY%):
Execute the same command as echoed.
Index: data.am
===
RCS file: /cvs/au
f
any released automake is used). So, it matters if the target being
built out-of-turn is mentioned in BUILT_SOURCES or not.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
#x27;gcc3' code looks somewhat suspect :-) I think it's preferable to
use less obtuse code. The rest of the file uses
if test "$stat" != "0"; then exit $stat; fi
So, the cases fixed above should use code like
...
if test $stat -ne 0; then
rm -f "$tmp
"Lars J. Aas" <[EMAIL PROTECTED]> writes:
> On Thu, Apr 05, 2001 at 05:36:48PM -0500, Raja R Harinath wrote:
> : The following patch fixes a problem with CVS autoconf, if a recent
> : enough CVS snapshot of automake was used on it.
>
> This is my proposal. @PA
Thomas Dickey <[EMAIL PROTECTED]> writes:
> On Thu, Apr 05, 2001 at 10:32:02PM -0500, Raja R Harinath wrote:
> > Well -- the whole idea is to remove the rule targets. I know of only
> > one use of multiple colons on a line -- in GNU make. Even there,
> > everything be
Hi,
Alexandre Oliva <[EMAIL PROTECTED]> writes:
> On Apr 5, 2001, Raja R Harinath <[EMAIL PROTECTED]> wrote:
> > Robert Boehne <[EMAIL PROTECTED]> writes:
> >> sed 's/^[^\.]*\.o://' | tr '
>
> > Try changing that to
>
> >
Hi,
Alexandre Oliva <[EMAIL PROTECTED]> writes:
> On Apr 5, 2001, Raja R Harinath <[EMAIL PROTECTED]> wrote:
> > The problem is that 'automake' now depends on the AC_SUBSTs in
> > AM_INIT_AUTOMAKE to subst in VERSION and PACKAGE. Since the same
> >
7; | tr '
Try changing that to
sed 's/^.*\.o://' | tr '
This should be safe. I don't see why the original tried to avoid
'.'s. The regexp is limited to the first ':' -- so the '.*' cannot
swallow any more of the line.
- Hari
--
f 'automake' subst these in when 'AM_INIT_AUTOMAKE'
+# is present in configure.in. However, some versions don't -- they
+# depend on the fact that aclocal.m4 will have lines that subst them in.
+# Some of those versions also don't understand 'm4_include'.
ms to
> receive.
That makes sense. I think those are supressed when you run GNU make
with the '-s' option. (The -s option was present in Unix 7th Edition
too, so it can pretty much be used with impunity.)
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
nclude "#"
I've seen something similar. Running './config.status --recheck'
again seems to fix it.
Unfortunately, the output of make is redirected to /dev/null. My
suspicion is that this could do with the timestamp warning sometimes
emitted by GNU make. Is the direct
Hi,
Akim Demaille <[EMAIL PROTECTED]> writes:
> Raja R Harinath <[EMAIL PROTECTED]> writes:
[snip]
> | Wouldn't this be more compact and readable without the loop?
> |
> | $lang_obj->ansi($options{'ansi'})if exists $options{'ansi'
ansi'})if exists $options{'ansi'};
$lang_obj->autodep ($options{'autodep'}) if exists $options{'autodep'};
$lang_obj->compile ($options{'compile'}) if exists $options{'compile'};
# ...
delete $options{$_} for (('ansi', &
in the source tree
* you're building in a separate tree, but provided a relative path
to the source tree
Also, in general, you also need to trust the compiler not to convert
relative include paths to absolute while generating dependencies.
Since, in this case, the compiler is "known", this isn't an issue.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
27; or
> '$(srcdir)/bin-sun-solaris-2.7', etc...
Very simple.
$ cd $(srcdir)
$ mkdir bin-i686-linux; cd bin-i686-linux
$ ../configure --prefix=...
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions.
sage is buggy).
The 'depcomp' program is used for automatic dependency generation
support. Previous versions of automake supported dependency
generation with GNU make, GCC, and only by the "maintainer". With
'depcomp', automake now supports dependency generati
ude) which don't require the "save to temp and move"
method. In fact, it may even be confusing for some uses.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
Hi,
Raja R Harinath <[EMAIL PROTECTED]> writes:
> GCC 3.0 doesn't still exactly implement exactly what 'depcomp' wants.
>
> The problem is that if the compile fails, the file specified to -MF is
> deleted too. With 'gcc -MF $depfile', $depfile
F.
Here's a patch to fix this problem. (The 'if' statement looks slightly
peculiar, but it matches similar 'if's used in the rest of the file.)
from Raja R Harinath <[EMAIL PROTECTED]>
* depcomp
x. It seems the right thing to do even for the
detection code in depend.m4.
from Raja R Harinath <[EMAIL PROTECTED]>
* depcomp (gcc3): Propagate exit code.
Index: depcomp
===
RCS file: /cvs/automake/automake/depcomp,v
_PREREQ(2.50) is seen,
./config.status --files=$@
rather than depend on specific details of the implementation of
config.status.
I've attached a patch only to revert the CONFIG_COMMANDS case. I
think the CONFIG_LINKS= part in the above is harmless.
- Hari
from Raja R Harinath
sting code.
That seems counter to current 'automake' behaviour. IIRC, if automake
sees a "special" target in Makefile.am, it won't generate code for
that target. E.g., if the Makefile.am has a 'check:' target, the
builtin test harness will not be generated.
- Hari
7; (now called 'libtricks' I think) from Debian.
It is essentially an LD_PRELOAD that overrides getuid/open etc. and
makes a process think that it's executing as root.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the in
ransform
('s/\@TEXI\@/' . $info_cursor . '/g; '
. 's/\@VTI\@/' . $vti . '/g; '
. 's/\@VTEXI\@/' . $vtexi . '/g;'
. 's,\@MDDIR\@,' . $conf_pat . &
27;m using automake-1.4b.
>
> | 2001-01-10 Tom Tromey <[EMAIL PROTECTED]>
> |
> | * depcomp: Handle gcc 3.
I think this is a GCC bug, not a problem with 'automake'. For some
reason, it is treating the -c as a -E.
- Hari
--
Raja R Harinath ---
7;ll consider this -- the message didn't have a [PATCH] tag, and was
at the end of a thread which you may have missed.)
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
Tom Tromey <[EMAIL PROTECTED]> writes:
> >>>>> "Raja" == Raja R Harinath <[EMAIL PROTECTED]> writes:
> Raja> The following patch adds minimal support for Libtool from the
> Raja> multi-language-branch.
>
> Thanks.
>
> Do we need t
y. That's why I said that these probably shouldn't be created by
configure. The only downside being the necessity of an explicit rule
with a 'sed' command, which I don't see as being too onerous.
BTW, why do you need to 'configure'
ears here for compatibility with old versions
- # of libtool.
- 'ylwrap', 'acinclude.m4', @libtoolize_files, 'ltconfig',
+ 'ylwrap', 'acinclude.m4', @libtoolize_files, @libtoolize_sometimes,
'missing', 'depcomp', 'compile', 'py-compile'
);
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
supports "--etags-include=" or "-i " for includes.
If Exuberent etags is supposed to be a drop-in replacement for Emacs
etags, it should support the same options. Otherwise, it is a bug in
the distribution if it gives you a "non-standard" e
ource files, this would disable either the building
> of PDFs or it would disable everything else.
Actually, new versions of texinfo.tex from ftp.gnu.org seem to not
need a special pdftexinfo.tex.
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
more readable command with a beta autoconf (2.49a):
$SHELL ./config.status --file=foo:foo-top.in:$(GUTS):foo-bot.in
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
it's generated
for, not as a general portability helper. In other words, wanting to
install config.h is itself the problem ;-)
There is also the problem with installing something that depends on
the output of a configure run into $prefix. The proper home for such
beasts is $exec_prefix. It wo
(I know, in "reasonable" circumstances, this example won't really
cause problems, even with both config.h being included.)
And, then we have the problem of having anything depending on the
output of config.status going into $prefix rather than $exec_prefix.
- Hari
--
Raja R Harinath -
):
In configure.in,
MK=''; AC_SUBST(MK)
And in Makefile.am:
@MK@ifeq ...
foo
@MK@else
bar
@MK@endif
However, you cannot put in automake magic variables (things like
foo_SOURCES, foo_LDFLAGS, etc) inside an ifeq/else/endif. Rather, yo
;
> Then
>
> checking dependency style of g++... gcc
> checking dependency style of gcc... gcc
>
> Why is a ~/depcomp necessary in ~/ since I don't have any code there?
Actually it is needed only there, and not in the source directories.
You just need one copy of the sc
month.
Did you remove config.cache before rerunning the configure?
'config.cache' may have the results of a previous run where you didn't
--enable-dependency-tracking, or it may have had the results for a
different compiler.
- Hari
--
Raja R Harinath --
use $(INSTALL_HEADER) which defaults to
$(INSTALL_DATA), and allow users to specify a special installer if
they choose. Of course, it would be nice if 'install' in fileutils
could be extended to provide a --only-if-change option.
Usage would be something like
make INSTALL_HEADE
dir)
and use @my_bindir@ instead of @bindir@. Finally, you can write a
makefile rule:
foo: foo.in
sed 's,@bindir@,$(bindir),' $< > $@
Since 'make' fully expands $(bindir). This last trick is used in
GNOME, but I think Alexandre's macro is pretty cool :-)
- Hari
--
Raja R Harinath -- [EMAIL PROTECTED]
"When all else fails, read the instructions." -- Cahn's Axiom
"Our policy is, when in doubt, do the right thing." -- Roy L Ash
t; installed in /usr/share/aclocal]
Aha. That's different. The gtk/gimp/gnome autogen.sh files don't
know about the Makefile variable ACLOCAL_AMFLAGS. Also,
ACLOCAL_AMFLAGS is not meant to handle your situation, I think.
That's partly why you need to set the ACLOCAL_FLAGS environm
86 matches
Mail list logo