Re: shared library dependencies (again)
- From: Owen Taylor <otaylor redhat com>
- To: gtk-devel-list gnome org
- Cc: james daa com au
- Subject: Re: shared library dependencies (again)
- Date: 01 May 2001 16:15:30 -0400
I think there is a problem with going to libtool-1.4 at this point...
As far as I can tell, it isn't really compatible with automake-1.4
(because ltconfig no longer exists), and I don't want to require
people developing GTK+ to install a patched or CVS version of
automake.
So perhaps we need to hold off until this is resolved.
Regards,
Owen
Owen Taylor <otaylor redhat com> writes:
> James Henstridge <james daa com au> writes:
>
> > On 28 Apr 2001, Owen Taylor wrote:
> >
> > > > The one issue with my build patches is compiling pango modules into
> > > > libpango. In order to have correct dependencies in the modules, libpango
> > > > must be built first. But to compile modules into libpango, the modules
> > > > must be built first. I haven't worked out how to address this. The patch
> > > > makes things work in the case where no modules are compiled into libpango.
> > >
> > > I'd like to see these changes go in soon. But I think we have to
> > > resolve this issueof included modules be resolved first. I admit to
> > > being also puzzled as to how to do this.
> >
> > I don't think the glib or gtk+ patches have this problem, so could
> > probably be checked in. It should be possible to apply each patch
> > independently without breaking anything.
> >
> > For pango, I suppose you could have a makefile that gets run before the
> > pango subdir looking something like this:
> >
> > if INCLUDE_BASIC_X
> > pango_basic_x = $(top_builddir)/modules/basic/libpango-basic-x.la
> > endif
> > ...
> >
> > all: $(pango_basic_x) ...
> >
> > $(top_builddir)/modules/basic/libpango-basic-x.la:
> > cd $(top_builddir)/modules/basic && $(MAKE) libpango-basic-x.la
> > ...
> >
> > It would look pretty horible, but would probably work.
>
> OK, here's what I ended up doing for Pango (based on an idea from
> James); configure.in includes the following:
>
> ====
> for module in $included_modules; do
> [...]
> INCLUDED_RULES="$INCLUDED_RULES
> \\\$(top_builddir)/modules/$dir/libpango-$module.la:
> cd \\\$(top_builddir)/modules/$dir && \\\$(MAKE) \\\$(AM_MAKEFLAGS) libpango-$module.la
> done
>
> AC_OUTPUT_COMMANDS([
> ac_file=pango/Makefile
>
> case "$CONFIG_FILES" in
> *$ac_file*)
> echo "Munging $ac_file to include rules for included modules"
> sed '/^ INCLUDED_RULES@$/ {
> r config.included_rules
> d
> }' < $ac_file > $ac_file.new && mv $ac_file.new $ac_file
> esac
> rm -f config.included_rules
> ],[
> cat > config.included_rules <<EOINCLUDE
> $INCLUDED_RULES
> EOINCLUDE
> ])
> ====
>
> Then pango/Makefile.am has in it @INCLUDED_RULES@ so these rules
> get substituted in as part of the configure step. So, when
> you build the pango/ subdir, it, for each included module,
> CD's into that module and runs make to build the module
> by itself.
>
> Regards,
> Owen
>
> _______________________________________________
> gtk-devel-list mailing list
> gtk-devel-list gnome org
> http://mail.gnome.org/mailman/listinfo/gtk-devel-list
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]