This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Missing variable 'pe_data_import_dll'


Hi Charles,

> This is an attempt to improve the situation w.r.t. this shared data
> between pe.em and pe-dll.c.  It works as expected on cygwin, but can
> somebody on a non-DLL, pei386 platform (like arm-epoc-pe) give this a
> shot?

I did, and -boo- it did not work.  The I moved the definition of the
pe_get_data_import_dll_name() outside of a section of code controlled
by #ifdef DLL_SUPPORT and it worked ... :)  I have checked this
modified version in.

oops - spoke too soon - just noticed that building with
--enable-targets=all fails. I will fix this in a second...

> + * Nick suggests the following method:
> + *   I still feel however, that there ought to be a better 
> + *   way to solve this problem.  My suggestion is that the 
> + *   definition of DLL_SUPPORT ought to be set in ld/configure.tgt 
> + *   rather than ld/emultemp/pe.em and then tested in ld/pe-dll.c 
> + *   before it uses variables that are only defined in pe.em.
> + * However, I don't understand this.  ld/configure.tgt sets SHELL
> + * variables, not #define variables.  You'd need #define variables
> + * to #ifdef out the offending sections of code from pe-dll.c

My idea was that you create a new configure variable, eg
'targ_cflags', initialise in in configure.tgt (default empty, for
relevant targets set to '-DDLL_SUPPORT') and then process it in
configure.in and transfer it to Makefile.in via Makefile.am.... Simple
really :-)

Cheers
        Nick


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]