Alex Rousskov wrote:
On 06/01/2009 04:04 AM, Amos Jeffries wrote:
Guido Serassio wrote:
Hi Amos,
At 03.13 01/06/2009, Amos Jeffries wrote:
Serassio Guido wrote:
Hi,
This is from acl/Ident.c:
#include "acl/Ident.h"
#include "ident.h"
This cannot work on Windows, because the acl/Ident.h file will be
included two times ...
What rule should be used to rename one of the conflicting files ?
Best long-term bet is to not have -I. anywhere in the paths if you can
remove it. I have cleared it out for the non-windows builders already.
Everything is referenced relative to ~/src/ and ~/ paths now.
MinGW uses the standard autotools based builder, the only difference
is the case insensitive file system, and -I. is not present in the
compile command (IntRange.cc was the first failing source file):
guido.seras...@titano /c/work/mgw-3.nt/src/acl
$ make IntRange.o
if g++ -DHAVE_CONFIG_H -I../.. -I../../include -I../../src
-I../../include -I/mingw/include -I/usr/include/libxml2 -Werror
-Wall -Wpointer-arith -Wwrite-strings -Wcomments
-D_FILE_OFFSET_BITS=64 -g -O2 -mthreads -MT IntRange.o -MD -MP -MF
".deps/IntRange.Tpo" -c -o IntRange.o IntRange.cc; \
then mv -f ".deps/IntRange.Tpo" ".deps/IntRange.Po"; else rm -f
".deps/IntRange.Tpo"; exit 1; fi
guido.seras...@titano /c/work/mgw-3.nt/src/acl
Which means the pre-compiler is still using -I. despite not being given
it to use. :(
I'm thinking initially a src/ident/ folder with all the ident stuff
inside it was planned. http://wiki.squid-cache.org/Features/SourceLayout
That would make them ident/ident.h and ident/AclIdent.h
OK, for now I will fix the problem renaming src/acl/Ident.h in
src/acl/AclIdent.h
Regards
Guido
Okay. Just running build tests on the full shuffling fix for this. Will
commit tonight if it passes them all.
Just wanted to note that using acl/AclAnything is borderline OK as a
short-term fix but is not the right long-term solution. It would be
better to actually rename the offending file instead.
Long-term, src/ident.h should be moved and #included as "somepath/ident.h".
FWIW, we have "-I../../src" which is the same as -I. for header files
directly in src/
Cheers,
Alex.
Way ahead of you there Alex. The ident shuffle was moved forward to fix
this.
We can expect cashes if any of the renamed files matches case-less to
any remaining files in src/. Two identical in different sub-dir are
safe. So with a little care I don't think its going to be a huge problem
for the duration of the transition.
Just one more item on the things to do for each shuffle.
Amos
--
Please be using
Current Stable Squid 2.7.STABLE6 or 3.0.STABLE15
Current Beta Squid 3.1.0.8 or 3.0.STABLE16-RC1