dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #09935
Re: Swig and scons
On Wed, Oct 01, 2008 at 08:34:22AM +0200, Johannes Ring wrote:
> On Tue, September 30, 2008 14:41, Anders Logg wrote:
> > On Tue, Sep 30, 2008 at 02:35:21PM +0200, Johannes Ring wrote:
> >> On Tue, September 30, 2008 13:24, Anders Logg wrote:
> >> > On Tue, Sep 30, 2008 at 09:38:07AM +0200, Johannes Ring wrote:
> >> >> On Tue, September 30, 2008 09:15, Anders Logg wrote:
> >> >> > On Tue, Sep 30, 2008 at 08:39:41AM +0200, Johannes Ring wrote:
> >> >> >> On Sat, September 27, 2008 20:05, Garth N. Wells wrote:
> >> >> >> >
> >> >> >> >
> >> >> >> > Johan Hake wrote:
> >> >> >> >> On Saturday 27 September 2008 18:17:12 Harish Narayanan wrote:
> >> >> >> >>> In order to get the swig-generated dolfin_wrap.cc to build
> >> with
> >> >> my
> >> >> >> gcc,
> >> >> >> >>> I need to perform some simple substitutions on the file which
> >> >> I've
> >> >> >> >>> expressed as a perl script:
> >> >> >> >>>
> >> >> >> >>> perl -pi -e 's/Type v;/Type v = 0;/g'
> >> dolfin/swig/dolfin_wrap.cc
> >> >> >> >>
> >> >> >> >> Maybee you could make a runnable script called 'swig' and put
> >> it
> >> >> >> >> somwhere in
> >> >> >> >> your path, and make sure it executes before the system swig.
> >> Then
> >> >> in
> >> >> >> the
> >> >> >> >> script you call the system swig with the handed sysargs. After
> >> >> that
> >> >> >> line
> >> >> >> >> you
> >> >> >> >> execute the command above. Its a hack, but I do not think scons
> >> >> >> support
> >> >> >> >> this
> >> >> >> >> in a better way.
> >> >> >> >>
> >> >> >> >
> >> >> >> > I don't really like this approach. I would prefer to enable
> >> >> different
> >> >> >> > compiler flags for dolfin_wrap.cc, i.e. do not use -Werror, if
> >> that
> >> >> >> does
> >> >> >> > the trick. dolfin_wrap.cc won't compile under Ubuntu Intrepid
> >> with
> >> >> >> > -Werror, so we'll need to do something.
> >> >> >>
> >> >> >> What if we removed the -Werror flag from CXXFLAGS as default and
> >> >> instead
> >> >> >> let the user decide whether to add it through the customCxxFlags
> >> >> option?
> >> >> >> This option is cached in scons/options.cache so you only have to
> >> set
> >> >> it
> >> >> >> once.
> >> >> >>
> >> >> >> Currently, the only way a user can remove the -Werror flag when
> >> >> running
> >> >> >> scons is by turning off debugging with enableDebug=no. I don't
> >> think
> >> >> >> this
> >> >> >> is very nice since -Werror isn't really a debugging flag.
> >> >> >>
> >> >> >> Johannes
> >> >> >
> >> >> > I don't like that. It would increase the risk of someone pushing
> >> code
> >> >> > that compiles with warnings. DOLFIN has been free of warnings for a
> >> >> > few years now and it was quite a bit of work to remove them to
> >> begin
> >> >> > with.
> >> >>
> >> >> Okay, I see.
> >> >>
> >> >> Is it okay then if I move the -Werror flag from the debugging flags
> >> to
> >> >> the
> >> >> default CXXFLAGS and if the user defines CXXFLAGS the default
> >> CXXFLAGS
> >> >> is
> >> >> overwritten? Like this:
> >> >>
> >> >> diff -r cfbe8dbbf3c9 SConstruct
> >> >> --- a/SConstruct Mon Sep 29 15:23:53 2008 +0200
> >> >> +++ b/SConstruct Tue Sep 30 09:36:49 2008 +0200
> >> >> @@ -149,7 +149,10 @@
> >> >> # FIXME: should we also remove the file scons/options.cache?
> >> >>
> >> >> # Default CXX and FORTRAN flags
> >> >> -env["CXXFLAGS"] = "-Wall -pipe -ansi" # -Werror"
> >> >> +if os.environ.has_key("CXXFLAGS"):
> >> >> + env['CXXFLAGS'] = os.environ["CXXFLAGS"]
> >> >> +else:
> >> >> + env["CXXFLAGS"] = "-Wall -pipe -ansi -Werror"
> >> >> #env["SHFORTRANFLAGS"] = "-Wall -pipe -fPIC"
> >> >>
> >> >> # Default link flags
> >> >> @@ -157,7 +160,7 @@
> >> >>
> >> >> # If Debug is enabled, add -g:
> >> >> if env["enableDebug"]:
> >> >> - env.Append(CXXFLAGS=" -DDEBUG -g -Werror")
> >> >> + env.Append(CXXFLAGS=" -DDEBUG -g")
> >> >>
> >> >> if not env["enableDebugUblas"]:
> >> >> env.Append(CXXFLAGS=" -DNDEBUG")
> >> >>
> >> >>
> >> >> Johannes
> >> >
> >> > Sounds good.
> >>
> >> Done.
> >>
> >> To build without -Werror, define CXXFLAGS before running scons, e.g.,
> >>
> >> CXXFLAGS="" scons
> >>
> >> or
> >>
> >> CXXFLAGS="-Wall -pipe -ansi" scons
> >>
> >> Johannes
> >
> > Nice. Could you add a note on it to the FAQ for people with SWIG
> > problems?
>
> I guess this is no longer necessary as Johan's patch will fix this issue.
>
> Johannes
ok!
--
Anders
Attachment:
signature.asc
Description: Digital signature
References
-
Swig and scons
From: Harish Narayanan, 2008-09-27
-
Re: Swig and scons
From: Johan Hake, 2008-09-27
-
Re: Swig and scons
From: Garth N. Wells, 2008-09-27
-
Re: Swig and scons
From: Johannes Ring, 2008-09-30
-
Re: Swig and scons
From: Anders Logg, 2008-09-30
-
Re: Swig and scons
From: Johannes Ring, 2008-09-30
-
Re: Swig and scons
From: Anders Logg, 2008-09-30
-
Re: Swig and scons
From: Johannes Ring, 2008-09-30
-
Re: Swig and scons
From: Anders Logg, 2008-09-30
-
Re: Swig and scons
From: Johannes Ring, 2008-10-01