> > > > On 14 Jan 2014 06:04, "David Airlie" < airlied@xxxxxxxxxx > wrote: > > > > > > Hi all, > > > > > > I've gotten a build tag f21-llvm for attempting to rebase rawhide to llvm > > > 3.4 > > > > Assuming there aren't any major stumbling blocks, are there any plans to > > back > > port llvm 3.4 to f20 (like was done for llvm 3.3 in f19)? > > > > I need clang 3.4 for my day job but have been holding off on a parallel > > installable version until I know what's happening in Fedora proper. > > Maybe, we might like it for GPU drivers, but I want to see how hairy it is, > so far it looks rather hairy, most of the projects failed on my simple just > rebuild it. > > iirc last time the rebase was required in order to get a later Mesa into the > distro. I will hold off for a few days to see just how hairy things are. If > you decide not to rebase f20 i will build something privately, or even a > copr build if anybody else is interested in it. > > If you need any help with testing, patches, etc i would be happy to help > where i can. It looks like OpenGTL is going to be the sticking point, upstream appears dead, and llvm removed its old school llvm::sys::Path interface that OpenGTL appears to use in a few places. My C++ is fairly fail, and I managed to at least fix two files, but then realised how big a hole I was digging. If anyone has some C++ expertise (package maintainer cc'ed), and some time it might not be too bad too work out, Dave.
diff -up OpenGTL-0.9.18/OpenGTL/GTLCore/Debug.cpp.myfix OpenGTL-0.9.18/OpenGTL/GTLCore/Debug.cpp --- OpenGTL-0.9.18/OpenGTL/GTLCore/Debug.cpp.myfix 2014-01-15 11:45:27.000000000 +1000 +++ OpenGTL-0.9.18/OpenGTL/GTLCore/Debug.cpp 2014-01-15 11:45:27.000000000 +1000 @@ -111,14 +111,18 @@ Debug::Private::~Private() delete m_voidStream; } +static llvm::StringRef getUserHomeDirectory() { + const char* home = getenv("HOME"); + return home ? llvm::StringRef(home) : llvm::StringRef("/"); +} void Debug::Private::readConfigFile( const String& _fileName, std::map< GTLCore::String, LibraryDebugInfo >& _destination) { - llvm::sys::Path path = llvm::sys::Path::GetUserHomeDirectory(); - path.appendComponent( (const std::string&)_fileName); - if( path.exists() ) + llvm::SmallString<128> mypath(getUserHomeDirectory()); + llvm::sys::path::append(mypath, llvm::StringRef(_fileName)); + if( llvm::sys::fs::exists(llvm::Twine(mypath)) ) { std::ifstream in; - in.open(path.c_str() ); + in.open(mypath.c_str() ); if(in) { std::string cstr; @@ -195,7 +199,7 @@ String Debug::Private::extractFunctionNa std::ostream& Debug::Private::report( std::ostream& _stream, const std::map< GTLCore::String, LibraryDebugInfo >& _informationRecords, const String& _streamName, const String& _libraryName, const String& _fileName, int _line, const String& _functionName ) { - GTLCore::String fileName = llvm::sys::Path((const std::string&)_fileName).getLast().str(); + GTLCore::String fileName = llvm::sys::path::filename(llvm::StringRef(_fileName)).str(); GTLCore::String functionName = Private::extractFunctionName( _functionName ); if( isEnabled( _informationRecords, _libraryName, fileName, functionName ) ) { diff -up OpenGTL-0.9.18/OpenGTL/GTLImageIO/ImageDC.cpp.myfix OpenGTL-0.9.18/OpenGTL/GTLImageIO/ImageDC.cpp --- OpenGTL-0.9.18/OpenGTL/GTLImageIO/ImageDC.cpp.myfix 2012-12-29 21:27:12.000000000 +1000 +++ OpenGTL-0.9.18/OpenGTL/GTLImageIO/ImageDC.cpp 2014-01-15 11:48:35.000000000 +1000 @@ -65,7 +65,7 @@ bool ImageDC::canEncodeImage( const GTLC GTLCore::String ImageDC::extension( const GTLCore::String& _fileName ) const { - GTLCore::String ext = llvm::sys::Path( (const std::string&)_fileName ).getSuffix().str(); + GTLCore::String ext = llvm::sys::path::extension( llvm::StringRef((std::string&)_fileName) ).str(); return ext.toLower(); }
-- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct