Boost logo

Boost :

From: Jens Seidel (jensseidel_at_[hidden])
Date: 2008-02-07 09:35:53


On Thu, Feb 07, 2008 at 08:36:03AM -0500, Beman Dawes wrote:
> Jens Seidel wrote:
> > On Mon, Feb 04, 2008 at 01:57:08PM -0500, Beman Dawes wrote:
> >> Beman Dawes wrote:
> >>> The first attempt at a release branch snapshot is now available.
 
> > I tried in a bash shell the following:
> > $ grep -rl $'\r\n' . | grep -v '\.\(png\|gif\|jpeg\|pdf\|jpg\|vcproj\|svg\)'

(Clarification: I search for DOS line endings in the UNIX tar archive.)
 
> > I explicitely added SVG files as most miss a svn:eol-style native
> > property in Subversion which should be fixed as SVG are ordinary text
> > files. Remaining files (reordered):
> >
> > Probably missing svn:eol-style native property:
> >
> > ./tools/regression/test/test-cases/general/bjam.log
...
> I'm not sure what the fix is for this. Doug? Anyone?

A fix is simple:
$ svn propset svn:eol-style native tools/regression/test/test-cases/general/bjam.log

"native" ensures that a checked out file has the expected system style
for end of line markers (\n on Posix, \r\n for DOS, \r for MacOS).
Please read the Subversion documentation for details. (There may be some
trouble if working under cygwin, I think this system gets \n which may
not fit if you use a DOS/Windows editor in parallel.)

Attention: This should only be set for text files. To be honest I didn't
checked whether UNIX line endings in SVG files are allowod but the
probability for it is > 99%.
 
> > The file permissions are according to
> > probably OK, except that many files are bogusly marked executable:
> > $ find -exec ls -l {} \; | grep -- "-rwxr-xr-x"
> > -rwxr-xr-x 1 jens jens 2610 2007-07-06 21:47 rst.css
> > -rwxr-xr-x 1 jens jens 1755 2007-11-15 17:31 ./tools/buildbot/config/master/alpha/master.cfg
> > -rwxr-xr-x 1 jens jens 1143 2006-09-13 19:25 ./tools/inspect/minmax_check.hpp
> > -rwxr-xr-x 1 jens jens 4470 2008-02-04 18:42 id646983-bb.html
> > [many many files snipped]
> >
> > Check for the svn:executable property and delete it (and forbid commits
> > from Windows users if they do not respect it :-))
>
> How do we "Check for the svn:executable property and delete it"?

$ svn propget svn:executable rst.css
*
$ svn propdel svn:executable rst.css
property 'svn:executable' deleted from 'rst.css'.
 
> How do we prevent the svn:executable property from being set incorrectly
> in the future? AFAIK, the executable bit isn't something Windows users
> have any control over.

Yep. But I care about the executable property in Subversion and even
Windows users have control over it. It is probably not easy to avoid
that it is set (and requires knownledge about it), as it is taken by
default from the filesystem permission which is missing on Windows so
that a default is used.

Once we assume that filename suffixes allow to determine the content it
is simple: Just edit the Subversion configuration file (on POSIX systems
~/.subversion/config) and enable

[miscellany]
### Set enable-auto-props to 'yes' to enable automatic properties
### for 'svn add' and 'svn import', it defaults to 'no'.
### Automatic properties are defined in the section 'auto-props'.
enable-auto-props = yes

[auto-props]
### The format of the entries is:
### file-name-pattern = propname[=value][;propname[=value]...]
### The file-name-pattern can contain wildcards (such as '*' and
### '?'). All entries which match will be applied to the file.
### Note that auto-props functionality must be enabled, which
### is typically done by setting the 'enable-auto-props' option.
*.c = svn:eol-style=native
*.cpp = svn:eol-style=native
*.cc = svn:eol-style=native
*.h = svn:eol-style=native
*.hpp = svn:eol-style=native
*.dsp = svn:eol-style=CRLF
*.dsw = svn:eol-style=CRLF
*.sh = svn:eol-style=native;svn:executable
*.txt = svn:eol-style=native
*.tex = svn:eol-style=native
*.png = svn:mime-type=image/png
*.xpm = svn:mime-type=image/x-xpixmap;svn:eol-style=native
*.jpg = svn:mime-type=image/jpeg
Makefile = svn:eol-style=native
Makefile.am = svn:eol-style=native

You need to adapt this list ...
 
> Help needed on these!

Should be simple using some shell magic ...

Jens


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk