In article <canawp3zfhpaagdgnuhd4diffja2qmnkf+7wkw7qby_f2vby...@mail.gmail.com>, Kerrick Staley <m...@kerrickstaley.com> wrote: > On Mon, Jul 18, 2011 at 3:03 AM, Ned Deily <n...@acm.org> wrote: > > I think adding the requirement to mandate hard link vs soft link usage > > is an unnecessary and unwarranted attempt at optimization. For > > instance, IIRC, the OS X installers don't use any hard links: that may > > complicate the install, plus hard links on OS X HFS* file systems are a > > bit of a kludge and not necessarily more efficient than symlinks. It's > > not a big deal but perhaps the wording should be changed to make a > > suggestion about hard links vs syminks rather than mandate which should > > be used. > > Ah, OK. The wording's been changed so that symbolic links will be > installed on Mac OS X and hard links elsewhere (although maybe > symbolic links are also better on certain other platforms; I'm not > sure). > > I do think that specific instructions must be given (rather than just > a suggestion) because it's indicating what must be done to CPython. > The instructions *should* be as close as possible to what the > installer already does, but I'm not entirely sure what the installer > does by default, and the hard-link recommendation was based off a > cursory inspection of my own system, so further input from yourself > and the rest of python-dev would be appreciated.
Thanks for addressing the comments. Unfortunately, I was relying too much on memory and I should have checked more carefully. I see now that, within the framework bin directory for Python 3, the python3 -> python3.x link is, in fact, a hard link because it is being produced by the standard Makefile target "bininstall". I was thinking more of the optional /usr/local/bin links which are all symlinks. So, if the Python 3 installer does is, there's no reason why Python 2 can't do it, I suppose. But if you look at the Python 3 "bininstall" target (Makefile.pre.in starting around line 870 or so), you'll see that, for Python 3, symlinks are made for all the versioned files except "python3". I'm not sure that there is a particular reason why a distinction was made; IIRC, the other versioned links were added later in the cycle. The other Python 3 versioned links could probably be changed to hard links as well. In the end, I don't think it makes a lot of difference. But it would be better if Python 2 and Python 3 were consistent here. My apologies for the confusion and extra work. -- Ned Deily, n...@acm.org _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com