* Bruno Haible wrote on Wed, May 26, 2010 at 12:11:45AM CEST: > > I see a few possible alternative ways out: > > - Automake requires subdir-objects if you put slashes into $LIBOBJS, > > There are cases where the developer does not want 'subdir-objects'. > I'm having the problem with AC_LIBOBJ in the > gettext/gettext-tools/libgettextpo > directory, and when I enable 'subdir-objects' in this directory, all hell > breaks loose. Impossible.
Can you please tell me how to reproduce that hell in libgettextpo? I tried the patch below, and so far it seems to work reasonably well. You lose the ability to do 'make clean' in either of gettext-tools/libgettextpo and gettext-tools/src without also cleaning the other, and some object files of the former live in the latter and have long names, but that's about it. What am I missing? (The renaming trick is documented in the Automake manual.) Thanks, Ralf gettext-tools/libgettextpo/ChangeLog: 2010-05-26 Ralf Wildenhues <ralf.wildenh...@gmx.de> * Makefile.am (AUTOMAKE_OPTIONS): Add subdir-objects. (libgettextpo_la_CPPFLAGS): New variable, to force renamed objects. diff --git a/gettext-tools/libgettextpo/Makefile.am b/gettext-tools/libgettextpo/Makefile.am index 648f589..2ec49ac 100644 --- a/gettext-tools/libgettextpo/Makefile.am +++ b/gettext-tools/libgettextpo/Makefile.am @@ -16,7 +16,7 @@ ## Process this file with automake to produce Makefile.in. -AUTOMAKE_OPTIONS = 1.5 gnits no-dependencies +AUTOMAKE_OPTIONS = 1.5 gnits no-dependencies subdir-objects EXTRA_DIST = BUILT_SOURCES = MOSTLYCLEANFILES = core *.stackdump @@ -40,6 +40,10 @@ AM_CPPFLAGS = \ -I../src -I$(top_srcdir)/src \ -I../intl -I$(top_srcdir)/../gettext-runtime/intl +# Ensure objects in ../src are renamed so they don't conflict with +# the objects generated from ../src/Makefile. +libgettextpo_la_CPPFLAGS = $(AM_CPPFLAGS) + # libgettextpo contains the public API for PO files. libgettextpo_la_SOURCES = \ gettext-po.c \