This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Cygwin patches for gcj


---- Original Message -----
From: "Billinghurst, David (CRTS)" <David.Billinghurst@riotinto.com>
To: <gcc-patches@gcc.gnu.org>
Cc: <java@gcc.gnu.org>; <robert.collins@itdomain.com.au>
Sent: Sunday, April 22, 2001 5:01 PM
Subject: Cygwin patches for gcj


> These patches are required to get java working on trunk under cygwin.
They
> should be save for other platforms as they are guarded by
> HAVE_DOS_BASED_FILESYSTEM.
>
>
> 2001-04-22  Robert Collins <robert.collins@itdomain.com.au>
>     David Billinghurst <David.Billinghurst@riotinto.com>
>
>    * parse.y (check_class_interface_creation):
>    Case insensitive compare for DOS filesystems
>
>    * jcf-parse.c (jcf_parse_source):  Transform DOS filenames
>     to lower case.
>
> --- jcf-parse.c.orig Sun Apr  1 08:52:57 2001
> +++ jcf-parse.c Sun Apr 22 15:21:32 2001
> @@ -642,6 +642,17 @@
>
>    java_parser_context_save_global ();
>    java_push_parser_context ();
> +#ifdef HAVE_DOS_BASED_FILESYSTEM
> +  /* FIXME: Transform filename to a canonical (lower case) form.
> +     At present it does not consider
> +     - cygwin vs windows paths
> +     - '/' vs '\' path seperators
> +     - and so on  */
> +  {
> +    char *t=current_jcf->filename;
> +    while (*t) { *t=tolower(*t); t++;}
> +  }
> +#endif
>    BUILD_FILENAME_IDENTIFIER_NODE (file, current_jcf->filename);
>    if (wfl_operator == NULL_TREE)
>      wfl_operator = build_expr_wfl (NULL_TREE, NULL, 0, 0);

David, this is broken (as I mentioned when I posted the original to
java@..) you cannot rewrite current_jcf->filename, as cygwin with
case_check:strict (its a 1.3.0 option) will fail to open the file. Just
the comparison must be mangled. The root cause is still unsolved which
is why that have is needed at all.. (I believe it's an automatic file
name test for sub classes...)..

Rob


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]