This is the mail archive of the automake@gnu.org mailing list for the automake project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Linking in C++ mode


Dixit John Levon <levon at movementarian.org> (2002-11-10 15:31):
> > A proper solution would be to use g++ to link the application. To
> > achieve this with automake, the easiest way is to convert the
> > main-application file to c++. In your case, renaming oprofiled.c to
> > oprofiled.cc would be sufficient.
> 
> This seems IMHO to be a terrible hack. I've found automake to be quite
> flexible so far; am I hitting one of its limitations ?

Another way to force automake to use g++ to link the application
seems to be to leave the .c alone, but to add a dummy.cc file to
the application's _SOURCES variable.  The .c file is still compiled
by gcc.

dummy.cc can be something like 'static void dummy();'.  It can be
created automatically like this:

prog_SOURCES = prog.c dummy.cc

dummy.cc:
	echo 'static void dummy();' > $@

I'd be curious to know if there are significant drawbacks to this hack.

One thing is certain, the way to test any solution is to make sure
that global variables in the C++ library are constructed before
main() starts.

-- 
Pierre Sarrazin <sarrazip at sympatico dot ca>



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