octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gnulib and automake


From: Michael Goffioul
Subject: Re: gnulib and automake
Date: Sun, 15 Nov 2009 20:58:13 +0000

On Sun, Nov 15, 2009 at 5:38 PM, John W. Eaton <address@hidden> wrote:
> OK, automake is not being too smart here.  It is generating these
> rules as if __contourc__ (and other DLD-FUNCTIONS files) are part of
> liboctinterp when they are not.  The relevant part of src/Makefile.am
> is
>
>  if AMCOND_ENABLE_DYNAMIC_LINKING
>    DLD_DYNAMIC_SRC = $(DLD_FUNCTIONS_SRC)
>    DLD_STATIC_SRC =
>    OCT_FILES = $(DLD_FUNCTIONS_SRC:.cc=.oct)
>  else
>    DLD_DYNAMIC_SRC =
>    DLD_STATIC_SRC = $(DLD_FUNCTIONS_SRC)
>    OCT_FILES =
>  endif
>
>  liboctinterp_la_SOURCES = \
>    $(DIST_SRC) \
>    $(DLD_STATIC_SRC) \
>    $(OPERATORS_SRC) \
>    $(TEMPLATE_INST_SRC)
>
>  DLD_DYNAMIC_DEF_FILES = $(DLD_DYNAMIC_SRC:.cc=.df)
>  DLD_STATIC_DEF_FILES = $(DLD_STATIC_SRC:.cc=.df)
>
>  SRC_DEF_FILES := $(shell $(srcdir)/find-defun-files.sh "$(srcdir)" 
> $(DIST_SRC))
>
>  DEF_FILES = $(SRC_DEF_FILES) $(DLD_DYNAMIC_DEF_FILES) $(DLD_STATIC_DEF_FILES)
>
> The problem persists even if I write this as
>
>  if AMCOND_ENABLE_DYNAMIC_LINKING
>    OCT_FILES = $(DLD_FUNCTIONS_SRC:.cc=.oct)
>    liboctinterp_la_SOURCES = \
>      $(DIST_SRC) \
>      $(OPERATORS_SRC) \
>      $(TEMPLATE_INST_SRC)
>  else
>    OCT_FILES =
>    liboctinterp_la_SOURCES = \
>      $(DIST_SRC) \
>      $(OPERATORS_SRC) \
>      $(TEMPLATE_INST_SRC) \
>      $(DLD_FUNCTIONS_SRC)
>  endif
>
>  DEF_FILES = \
>    $(shell $(srcdir)/find-defun-files.sh "$(srcdir)" $(DIST_SRC)) \
>    $(DLD_FUNCTIONS_SRC:.cc=.df)
>
> Since you want to do dynamic linking, try the following change and see
> if it solves the problem.  Then I will try to figure out if this is a
> bug in automake or just pilot error.

It does not solve the problem, but I think it's one step in the
good direction. Now, I don't see libocrinterp_la_CPPFLAGS being
used when compiling oct-files, but -DOCTINTERP_DLL is still
in the compilation command, through the following path (reverse):
- .cc.lo rule
- LTCXXCOMPILE
- AM_CXXFLAGS
- DLL_CXXDEFS

Michael.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]