From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17715 invoked by alias); 12 Apr 2010 00:09:19 -0000 Received: (qmail 17695 invoked by uid 22791); 12 Apr 2010 00:09:11 -0000 X-SWARE-Spam-Status: No, hits=-6.8 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_HI,SPF_HELO_PASS,TW_AV,TW_QE,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 12 Apr 2010 00:09:03 +0000 Received: from int-mx05.intmail.prod.int.phx2.redhat.com (int-mx05.intmail.prod.int.phx2.redhat.com [10.5.11.18]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id o3C08xdh025814 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Sun, 11 Apr 2010 20:08:59 -0400 Received: from host0.dyn.jankratochvil.net (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by int-mx05.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id o3C08vpR008194 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for ; Sun, 11 Apr 2010 20:08:59 -0400 Received: from host0.dyn.jankratochvil.net (localhost [127.0.0.1]) by host0.dyn.jankratochvil.net (8.14.4/8.14.4) with ESMTP id o3C08v4p026135 for ; Mon, 12 Apr 2010 02:08:57 +0200 Received: (from jkratoch@localhost) by host0.dyn.jankratochvil.net (8.14.4/8.14.4/Submit) id o3C08uWC026134 for gdb-patches@sourceware.org; Mon, 12 Apr 2010 02:08:56 +0200 Date: Mon, 12 Apr 2010 00:09:00 -0000 From: Jan Kratochvil To: gdb-patches@sourceware.org Subject: [RFC] DJGPP: fnchange.lst removal attempt Message-ID: <20100412000856.GA25681@host0.dyn.jankratochvil.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable User-Agent: Mutt/1.5.20 (2009-08-17) X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2010-04/txt/msg00338.txt.bz2 Hi, tried to create a script to autogenerate and remove fnchange.lst but ... af= ter writing it I found I am not able to even compile the current FSF GDB HEAD. configure:4342: checking for C compiler default output file name configure:4364: gcc -O2 -ggdb -g3 conftest.c >&5 conftest.c:10:1: warning: "PACKAGE_TARNAME" redefined conftest.c:3:1: warning: this is the location of the previous definition c:/djgpp/lib/crt0.o:crt0.s:(.data+0xc2): undefined reference to `_main' c:/djgpp/lib/libc.a(crt1.o):crt1.c:(.text+0x404): undefined reference to `_= main' collect2: ld returned 1 exit status configure:4368: $? =3D 1 configure:4405: result: configure: failed program was: | /* confdefs.h */ | #define PACKAGE_NAME "" | #define PACKAGE_TARNAME "" | #define PACKAGE_VERSION "" | #define PACKAGE_STRING "" | #define PACKAGE_BUGREPORT "" | #define PACKAGE_URL "" | /* confdefs.h */ | #define PACKAGE_NAME "" | #define PACKAGE_TARNAMEconfigure:4411: error: in `c:/gdborig/gdb': configure:4415: error: C compiler cannot create executables See `config.log' for more details. But FreeDOS-1.0 is generating corrupted disk (in qemu-kvm) so it may have b= een also due to the disk corruption. Does the build work for anyone? Tried wi= th: bnu219b.zip bsh204br3.zip bsn241b.zip csdpmi7b.zip djdev203.zip fil41b.zip find41b.zip flx254b.zip gcc442b.zip mak3791b.zip pdcur34a.zip sed421b.zip shl2011b.zip tar112ab.zip txt20b.zip BTW current fnchange.lst is already in a bad shape: Duplicates in fnchange.lst: bfd/elf32-microblaze.c gdb/ChangeLog-2002 gdb/amd64-windows-nat.c gdb/amd64-windows-tdep.c opcodes/microblaze-opc.h opcodes/microblaze-opcm.h in fnchange.lst && in repository && not in dist .tar COPYING.LIBGLOSS in fnchange.lst && not in repository && in dist .tar (none) Not a bad shape but statement: fnchange.lst change of directories: @V@/sim/microblaze @V@/sim/mb @V@/sim/microblaze/microblaze.h @V@/sim/mb/mb.h @V@/sim/microblaze/microblaze.isa @V@/sim/mb/mb.isa other files in sim/microblaze/: Makefile.in config.in configure configure.ac interp.c sim-main.h sysdep.h But there are no 8.3 conflicts in sim/microblaze/. fnchange.lst change of directory names: @V@/gdb/testsuite/gdb.gdbtk/EVERYTHING @V@/gdb/testsuite/gdb.tk/EVERYTHING Mistaken change of directory: @V@/bfd/doc/ChangeLog-9103 @V@/bfd/ChangeLog.9103 @V@/bfd/elf32-microblaze.c @V@e32mb.c @V@/gdb/features/i386/i386-avx-linux.c @V@/features/i386/i32-al.c @V@/gdb/features/i386/i386-mmx-linux.c @V@/features/i386/i32-ml.c @V@/sim/testsuite/sim/cris/asm/tjmpsrv32-2.ms @V@/sim/testsuite/sim/cris/tj= mp32-2.ms @V@/sim/testsuite/sim/cris/asm/tjmpsrv32.ms @V@/sim/testsuite/sim/cris/tjmp= 32.ms @V@/sim/testsuite/sim/cris/c/ftruncate1.c @V@/sim/testsuite/sim/cris/ftrunc= 1.c @V@/sim/testsuite/sim/cris/c/ftruncate2.c @V@/sim/testsuite/sim/cris/ftrunc= 2.c @V@/sim/testsuite/sim/cris/c/readlink1.c @V@/sim/testsuite/sim/cris/rdlink1= .c @V@/sim/testsuite/sim/cris/c/readlink2.c @V@/sim/testsuite/sim/cris/rdlink2= .c @V@/sim/testsuite/sim/cris/c/readlink3.c @V@/sim/testsuite/sim/cris/rdlink3= .c @V@/sim/testsuite/sim/cris/c/readlink4.c @V@/sim/testsuite/sim/cris/rdlink4= .c @V@/sim/testsuite/sim/cris/c/readlink5.c @V@/sim/testsuite/sim/cris/rdlink5= .c @V@/sim/testsuite/sim/cris/c/readlink6.c @V@/sim/testsuite/sim/cris/rdlink6= .c @V@/sim/testsuite/sim/cris/c/readlink7.c @V@/sim/testsuite/sim/cris/rdlink7= .c @V@/sim/testsuite/sim/cris/c/readlink8.c @V@/sim/testsuite/sim/cris/rdlink8= .c @V@/sim/testsuite/sim/cris/c/readlink9.c @V@/sim/testsuite/sim/cris/rdlink9= .c @V@/sim/testsuite/sim/cris/c/readlink10.c @V@/sim/testsuite/sim/cris/rdlink= 10.c @V@/sim/testsuite/sim/cris/c/sigreturn1.c @V@/sim/testsuite/sim/cris/sigret= 1.c @V@/sim/testsuite/sim/cris/c/sigreturn2.c @V@/sim/testsuite/sim/cris/sigret= 2.c @V@/sim/testsuite/sim/cris/c/sigreturn3.c @V@/sim/testsuite/sim/cris/sigret= 3.c @V@/sim/testsuite/sim/cris/c/sigreturn4.c @V@/sim/testsuite/sim/cris/sigret= 4.c @V@/sim/testsuite/sim/cris/c/truncate1.c @V@/sim/testsuite/sim/cris/trunc1.c @V@/sim/testsuite/sim/cris/c/truncate2.c @V@/sim/testsuite/sim/cris/trunc2.c And currently missing translations generating DJTAR.EXE error: Cannot exclusively open file: gdb/regformats/s390-linux64.dat gdb/regformats/i386/amd64-avx-linux.dat gdb= /regformats/i386/i386-avx-linux.dat gdb/regformats/i386/i386-mmx-linux.dat = gdb/features/s390-core64.xml gdb/features/s390-linux64.c gdb/features/s390-= linux32.xml gdb/testsuite/gdb.cp/pr10728-y.cc gdb/testsuite/gdb.cp/virtfunc= .cc gdb/testsuite/gdb.cp/virtfunc2.exp gdb/testsuite/gdb.reverse/consecutiv= e-precsave.exp gdb/testsuite/gdb.reverse/machinestate-precsave.exp gdb/test= suite/gdb.base/unloadshr2.c gdb/testsuite/gdb.base/watchpoints.exp gdb/test= suite/gdb.base/break-interp-main.c gdb/testsuite/gdb.base/sepdebug2.c gdb/t= estsuite/gdb.base/watchpoint.c gdb/testsuite/gdb.base/watchpoint-hw-hit-onc= e.exp gdb/testsuite/gdb.base/watchpoints.c gdb/testsuite/gdb.threads/watcht= hreads-reorder.exp gdb/testsuite/gdb.threads/watchthreads-reorder.c gdb/gnu= lib/m4/gnulib-comp.m4 gdb/gnulib/m4/gnulib-cache.m4 gdb/ChangeLog bfd/Chang= eLog libdecnumber/dpd/decimal128Local.h libdecnumber/dpd/decimal128.h libde= cnumber/dpd/decimal32.h libdecnumber/dpd/decimal64Symbols.h libdecnumber/de= cPackedSymbols.h libdecnumber/bid/host-ieee32.c libdecnumber/bid/decimal128= Local.h libdecnumber/bid/decimal128.h libdecnumber/bid/host-ieee64.c libdec= number/bid/decimal32.h libdecnumber/bid/decimal64Symbols.h libdecnumber/dec= NumberSymbols.h libdecnumber/decNumber.h libdecnumber/decContext.h libdecnu= mber/decDouble.h libdecnumber/decSingle.h opcodes/ChangeLog Also current gdb/config/djgpp/djconfig.sh cannot find gdb/ChangeLog.002 . In this state I find all the adjustments of gdb/config/djgpp/fnchange.lst n= ot much useful. Including script generating fnchange.lst. It would need to adjust gdb/config/djgpp/djconfig.sh checking existing files - and maybe something more - but it already does not work. Some (few) of the generated translati= ons may need to be made static; currently they are all generated dynamically. Current output: http://people.redhat.com/jkratoch/fnchange.lst File for this script (saving a rebuild of gdb.tar to list its files). http://people.redhat.com/jkratoch/fnchange.cache Regards, Jan ---------------------------------------------------------------------------= --- #! /usr/bin/perl # Copyright (C) 2010 Free Software Foundation, Inc. # # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; see the file COPYING3. If not see # . use strict; use warnings; my $cache =3D $ARGV[0]; if ((@ARGV !=3D 0 && @ARGV !=3D 1) || $cache eq "-h" || $cache eq "--help")= { die "$0: []\n"; } sub read_file($) { my($name) =3D @_; local *F; open F, $name or die "$name: $!"; defined (my $F =3D do { local $/ =3D undef; ; }) or die "$name: $!"; close F or die "$name: $!"; return $F; } sub write_file($$) { my($name, $content) =3D @_; local *F; open F, ">$name" or die "$name: $!"; print F $content or die "$name: $!"; close F or die "$name: $!"; } my $tar; if (!$cache || !-f $cache) { my $F =3D read_file "git status; true |"; $F =3D~ /^# On branch .+\n\Qnothing to commit (working directory clean)\E= \n$/ or die "Unexpected git status: $F"; my $cmd =3D "make -j1 -f src-release gdb.tar"; system $cmd and die "$cmd: $?"; my @glob =3D glob "gdb*.tar"; @glob =3D=3D 1 or die "Unexpected gdb*.tar match: ".join " ",@glob; my $g =3D $glob[0]; $tar =3D read_file "tar tf $g |"; write_file $cache, $tar if $cache; $cmd =3D "git clean -df"; system $cmd and die "$cmd: $?"; } else { $tar =3D read_file $cache; } my @tar =3D split /\n/, $tar; @tar =3D sort @tar; # orig -> mapped my %map =3D ("." =3D> "."); # mapped -> count my %used; for (@tar) { next if $_ eq "."; s{^(?:\.|gdb-[^/]*)/}{./} or die "No (.|gdb-*)/ prefix: $_"; # Duplicate filename? die if $map{$_}; # Simulate leading dir1 and dir1/dir2 for any dir1/dir2/file. # gdb.tar specifically omits any directory entries themselves. my @elem=3Dsplit /\//, $_; my @use; while (@elem) { push @use,shift @elem; my $o =3D join ("/", @use); next if $map{$o}; my($dir, $file) =3D ($o =3D~ m{^(.*)/([^/]+)$}) or die $o; $_ =3D $file; tr/-._a-zA-Z0-9//cd; s/^[.]?//; # Keep only the first dot, later dots convert to '-'. s/[.]/%/; tr/./-/; tr/%/./; s/^([^.]{1,8})[^.]*((?:[.][^.]{1,3})?)[^.]*$/$1$2/ or die "$o component $_ has two dots\n"; $file =3D $_; $dir =3D $map{lc $dir} or die "Dir not mapped: $dir"; $_ =3D "$dir/$file"; my $valid83 =3D qr/^([^.]{1,8})((?:[.][^.]{1,3})?)$/o; $file =3D~ /$valid83/ or die; while ($used{lc $_}++) { # Increase basename $FILE; $1 and $2 are matched by $VALID83. my($base, $ext) =3D ($1,$2); my($alpha, $num) =3D ($base =3D~ /^(.*?)(\d*)$/) or die; $alpha =3D~ s/^(.*).$/$1/ if $num =3D~ /^9*$/ && 8 =3D=3D length $bas= e; $num++; $file =3D $alpha.$num.$ext; $file =3D~ /$valid83/ or die; $_ =3D "$dir/$file"; } $map{lc $o} =3D $_; $o =3D~ s{^\.\/}{\@V@/} or die; $_ =3D~ s{^\.\/}{\@V@/} or die; print "$o $_\n" if $o ne $_; } }