Re: [PATCH] use new global, Version, rather than macro, VERSION

2008-08-28 Thread Jim Meyering
Eric Blake [EMAIL PROTECTED] wrote:
 According to Jim Meyering on 8/28/2008 5:54 AM:
 This change makes ccache (http://ccache.samba.org/) more useful in
 that cached .o files from one build are usually still useful after a
 version number change.  Before, due to the use of VERSION, the old .o
 files would be useless and just pollute the cache.

 This first patch uses version-controlled files named
 src/version.[ch].  The second change-set makes it so they
 are generated, and hence not version-controlled.

 Comments or suggested improvements welcome.

 This is EXACTLY the heart of the matter impacting the GNUmakefile
 discussion.  In your second patch, why is version.h generated?  In
 reality, only version.c needs to be generated, since it is the only file
 with varying contents.

I did that to keep the declaration and definition close.
It's not essential, but feels a little cleaner.

 * src/Makefile.am: Put it in a library that everyone links to.
 (noinst_LIBRARIES, libver_a_SOURCES): Define.
 (LDADD): Add libver.a.

 Is the library a necessity, or is version.o sufficient?

Using version.o would be sufficient, but would require unmaintainable
changes to coreutils' src/Makefile.am.  Using a library seems like the
easiest way to ensure each binary gets the new symbol without enumerating
the dependency manually in src/Makefile.am.  If someone can find a way
to avoid the library with that constraint, I'd much prefer that.

 +BUILT_SOURCES += version.c
 +version.c: Makefile
 +rm -f $@
 +printf '#include config.h\n'  [EMAIL PROTECTED]
 +printf 'char const *Version = $(PACKAGE_VERSION);\n'  [EMAIL 
 PROTECTED]
 +@chmod a-w [EMAIL PROTECTED]
 +mv [EMAIL PROTECTED] $@

 Oops.  This still doesn't solve the GNUmakefile debate.  For this design
 to solve that issue, you need to use something other than PACKAGE_VERSION,
 so that you can guarantee that config.h is not polluted with version
 changes.  Is it worth calling git-version-gen directly?

For now, my aim was solely to avoid ccache waste.
And as long as the compiled code doesn't *use* the changing
symbols that's just fine.

Of course, it'd be even better if config.h didn't have to change
at all, but to get there, we'll have to change or override
m4 macros that emit *VERSION definitions.

One step at a time ;-)


___
Bug-coreutils mailing list
Bug-coreutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-coreutils


French accents

2008-08-28 Thread Dr. Aprahamian


Hello,
I am having difficulty with file names that have French accents.
For example the file.-
AfficheJourn\351e\311tudeP\350reaveclogos-1.pdf
exists but because it has the French e accent in its title the programme 
is not recognizing it.

What to do?
Many thanks,
sima

Sima Aprahamian, Ph.D.
Sociology-Anthropology 
Simone de Beauvoir Institute
Concordia University
1455 de Maisonneuve W.
Montreal (Quebec)
H3G 1M8
E-mail: [EMAIL PROTECTED]


___
Bug-coreutils mailing list
Bug-coreutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-coreutils


Re: [PATCH] use new global, Version, rather than macro, VERSION

2008-08-28 Thread Eric Blake
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

According to Jim Meyering on 8/28/2008 7:00 AM:
 In your second patch, why is version.h generated?  In
 reality, only version.c needs to be generated, since it is the only file
 with varying contents.
 
 I did that to keep the declaration and definition close.
 It's not essential, but feels a little cleaner.

Fair enough.

 Using version.o would be sufficient, but would require unmaintainable
 changes to coreutils' src/Makefile.am.  Using a library seems like the
 easiest way to ensure each binary gets the new symbol without enumerating
 the dependency manually in src/Makefile.am.

Good point.  So other projects, with fewer programs, can skip the
convenience library aspect of your solution.

 
 For now, my aim was solely to avoid ccache waste.
 And as long as the compiled code doesn't *use* the changing
 symbols that's just fine.
 
 Of course, it'd be even better if config.h didn't have to change
 at all, but to get there, we'll have to change or override
 m4 macros that emit *VERSION definitions.
 
 One step at a time ;-)

Your patch meets the stated goal, so I think it's fine to check in.  If
nothing else, it made me investigate using ccache on my machine.

- --
Don't work too hard, make some time for fun as well!

Eric Blake [EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.9 (Cygwin)
Comment: Public key at home.comcast.net/~ericblake/eblake.gpg
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAki3WMoACgkQ84KuGfSFAYDOEACfV53ijqzdatdCjAHjHIl9X/aF
RI8An3qxCfhvqp5H++LvlH6RW8a5oaaB
=FRA6
-END PGP SIGNATURE-


___
Bug-coreutils mailing list
Bug-coreutils@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-coreutils