> >
> > On 14 Jan 2014 06:04, "David Airlie" < [email protected] > 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
[email protected]
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct