Bug 7315

Summary: NTFS support for SSTATE
Product: [Build System, Metadata & Runtime] Meta-yocto Reporter: Juro Bystricky <juro.bystricky>
Component: configurationAssignee: Richard Purdie <richard.purdie>
Status: RESOLVED WONTFIX QA Contact:
Severity: enhancement    
Priority: Low CC: poky.bs.watcher, poky.watcher
Version: unspecified   
Target Milestone: Future   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: Yes (doc changes required)
Attachments:
Description Flags
Simple patch to demonstrate the proof of concept.
none
Patch to change filename separator also suitable for NTFS none

Description Juro Bystricky 2015-02-13 00:33:35 UTC
Created attachment 2409 [details]
Simple patch to demonstrate the proof of concept.

At present SSTATE_CACHE cannot be located on NTFS (Windows) formatted drive.
However, there does not seem to be a compelling reason for this and the fix could be relatively simple. What prevents the SSTATE_CACHE to be located on a NTFS is basically that all file names contain the character ':', which is not allowed for NTFS. I believe this character serves only as a delimiter. Replacing this delimiter with some other character (unlikely to be part of a file name) would/should do the trick.
I experimented with this a bit, replacing ":" with "^" and located the SSTATE_CACHE to a CIF mounted Windows drive via SSTATE_DIR in local.conf.
I was able to rebuild core-image-minimal. (I attached my patch, but it is only 
meant to be a proof of concept).
(For some reason gcc played by different rules and kept showing up with ":",
so I had to manually modify the string. All other packages behaved nicely.)
Comment 1 Richard Purdie 2015-02-13 15:00:52 UTC
For interest http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=e5ee1b8c0d141e56ee67778c7b8af92de185dc01 was the last set of problems we had with filenames...
Comment 2 Juro Bystricky 2015-02-13 17:42:22 UTC
Created attachment 2410 [details]
Patch to change filename separator also suitable for NTFS
Comment 3 Juro Bystricky 2015-02-13 17:43:15 UTC
Thanks Richard, this explains the gcc behaviour.
Comment 4 Richard Purdie 2015-02-19 15:53:33 UTC
I was going to resolve this as "LATER" but we no longer have that option. This is something we might look at eventually but right now, there isn't a strong enough need for this.