On Tue, 15 Mar 2011, Barry Smith wrote: > > Stuff like this in BlasLapack.py > > def getSharedFlag(self,cflags): > for flag in ['-PIC', '-fPIC', '-KPIC', '-qpic']: > if cflags.find(flag) >=0: return flag > return '' > > def getPrecisionFlag(self,cflags): > for flag in ['-m32', '-m64', '-xarch=v9','-q64']: > if cflags.find(flag) >=0: return flag > return '' > > def getWindowsNonOptFlags(self,cflags): > for flag in ['-MT','-MTd','-MD','-threads']: > if cflags.find(flag) >=0: return flag > return '' > > > are of major concern. So someone adds a new "precision" flag in BuildSystem > they have to know to go into BlasLapack.py and edit it?
Now there is another package that needs this stuff: tetgen. Both these packages need 'NOOPT'. [if we eliminate all options - then there are compile breakages] The above code developed adhoc - whenever there was breakage - we hacked in a fix. But I'm not sure if there is a proper fix. If we assume all optflags are in COPTFLAGS/FOPTFLAGS - then I guess BuidSystem could do this automatically instead of using: self.setCompilers.getCompilerFlags() use a new function provided by buidsystem: self.setCompilers.getCompilerNOOPTFlags() This one does the comparision between the current flags - and stripts out the relavent C/F/CXX OPTFLAGS set by user [or the defaults set by buildsystem] If optflags creep in via some other configure option [thats users problem]? Satish
