Closed Bug 969647 Opened 9 years ago Closed 5 years ago

[Build perf] Experiment with CreateHardLink in nsinstall on Win32


(Firefox Build System :: General, enhancement)

Windows XP
Not set


(Not tracked)



(Reporter: mayhemer, Unassigned)




See URL for docs.

"Any directory entry for a file that is created with CreateFile or CreateHardLink is a hard link to an associated file. An additional hard link that is created with the CreateHardLink function allows you to have multiple directory entries for a file, that is, multiple hard links to the same file."

- means that all files are actually already hardlinks to their own single real files :)

"However, all hard links to a file must be on the same volume."

- how do we check this?  I heard some people move the obj dir to a different volume sometimes.

"Use DeleteFile to delete hard links"

- so a standard way to delete.

Minimum supported client
	Windows XP [desktop apps only]

Minimum supported server
	Windows Server 2003 [desktop apps only]
We can detect this at run-time. We already check for whether symlinks are supported and fall back to copy. We can teach this code to be aware of hard links and to react gracefully when they aren't supported.
See also bug 680968. I feel like we experimented with symlinks or hardlinks on Windows in the past with unfortunate consequences. I know we ran into a bug with msys tar not handling them properly.
Product: Core → Firefox Build System
I think hardlinks have too many problems to be usable. I'd like us to try symlinks again now that they're a bit more accessible. That's bug 1321922.
Closed: 5 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.