delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/2013/11/13/23:47:48

X-Authentication-Warning: delorie.com: mail set sender to djgpp-workers-bounces using -f
X-Recipient: djgpp-workers AT delorie DOT com
Message-ID: <528455E4.9060301@iki.fi>
Date: Thu, 14 Nov 2013 06:47:32 +0200
From: Andris Pavenis <andris DOT pavenis AT iki DOT fi>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0
MIME-Version: 1.0
To: djgpp-workers AT delorie DOT com
Subject: Re: ANNOUNCE: DJGPP port of GCC-4.8.2 (DJGPP v2.04 only)
References: <201310162005 DOT r9GK5npk027905 AT delorie DOT com> <52754597 DOT 9000204 AT iki DOT fi> <CAA-ihx-X=JWmWgGTiErKGbaZS+C5i8tTfu4fpTbUoN9M_cFccw AT mail DOT gmail DOT com>
In-Reply-To: <CAA-ihx-X=JWmWgGTiErKGbaZS+C5i8tTfu4fpTbUoN9M_cFccw@mail.gmail.com>
Reply-To: djgpp-workers AT delorie DOT com

This is a multi-part message in MIME format.
--------------010608050703020804050003
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit

On 11/14/2013 12:39 AM, Rugxulo wrote:
> Hi,
>
> On Sat, Nov 2, 2013 at 1:33 PM, Andris Pavenis <andris DOT pavenis AT iki DOT fi> wrote:
>> On 10/16/2013 10:54 PM, Andris Pavenis wrote:
>>> This is announcement of DJGPP port of GCC-4.8.2
>> There are several problems with this port:
>>
>> 2) some executables in RPM packages were not stripped, so
>> unnecessarily bloating packages were generated
>>
>> I'll upload updated build after testing when I'll have it.
> Thanks for your efforts. However, I don't understand the difference.
>
> While the checksums do differ, the gcc482b.zip size is almost the
> exact same. Ahhh, maybe you meant inside the .rpm only, *those*
> executables were not stripped properly?
There is one significant change in gcc/config/i386/djgpp.h
in GCC sources related to debugging information. Backtrace command
in GDB did not work properly with earlier builds of gcc-4.8.
Now it does.

There are also some small updates to build scripts and

>
> As an aside, I do think there are some files that don't need to be
> included in releases. Correct me if wrong, but I have absolutely no
> idea what these do (if anything):
>
> gcc-ar.exe, gcc-nm.exe, gcc-ranlib.exe, lto-wrapper.exe
>
> Just checking some of my older .ZIPs, it seems (for example)
> gcc-ar.exe was included in gcc473b.zip but not gcc463b.zip (or older).
>
> Well, I'm also pretty sure DJGPP doesn't support LTO. At least that's
> what I recall (not that I need nor want it), so at least
> lto-wrapper.exe could "probably" be removed.

I simply included all binaries that was built except ones with target prefix
(like djgpp-gcc.exe). Perhaps I could try to look sometimes whether
LTO may also work (I simply do not know)

Andris

PS. For those who are curious the diffs from my own GIT repo are in an attachment.
Note that repo does not correspond directly to any of DJGPP source archives
(neither SRPM nor gcc482s.zip). Both source archives are generated:
- first SRPM
- then RPM build process gives gcc482s.zip as side product
It perhaps could be nice to put that GIT repo somewhere available also for others


--------------010608050703020804050003
Content-Type: text/x-patch;
 name="djgpp-gcc-4.8.2-update.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
 filename="djgpp-gcc-4.8.2-update.diff"

diff --git a/djgpp/djcross-gcc.spec.in b/djgpp/djcross-gcc.spec.in
index ab77e4e..5e25d90 100644
--- a/djgpp/djcross-gcc.spec.in
+++ b/djgpp/djcross-gcc.spec.in
@@ -41,7 +41,7 @@
 Name: djcross-gcc
 Summary:  GCC cross-compiler for target i586-pc-msdosdjgpp
 Version: %{rpm_version}
-Release: 1ap
+Release: 2ap
 
 License: GPL
 Group: Development/Tools
@@ -324,9 +324,11 @@ rm -f %{buildroot}/usr/%{target}/lib/libiberty.a
 
 for file in $(find %{buildroot}%{_mandir} -type f) ; do gzip -v9 $file; done
 
-for file in cc1 cc1plus collect2 f951 gnat1 install_tools/fixincl ; do
+for file in cc1 cc1obj cc1objplus cc1plus collect2 f951 gnat1 install_tools/fixincl lto-wrapper ; do
     if [ -f %{buildroot}%{_libexecdir}/gcc/%{target}/%{gcc_version}/$file ] ; then
         strip %{buildroot}%{_libexecdir}/gcc/%{target}/%{gcc_version}/$file
+    else
+        echo "WARNING: File $file not found"
     fi
 done
 
@@ -442,6 +444,10 @@ rm -fr %{buildroot}
 %endif
 
 %changelog
+* Sat Nov  2 2013 Andris Pavenis <andris DOT pavenis AT iki DOT fi> 4.8.2-2ap
+- Strip some executables not stripped earlier
+- Fix support of backtrace in GDB by enabling other debug information types 
+
 * Wed Oct 16 2013 Andris Pavenis <andris DOT pavenis AT iki DOT fi> 4.8.2-1ap
 - Update to GCC-4.8.2
 
diff --git a/djgpp/djinstall/makepkg.pl b/djgpp/djinstall/makepkg.pl
index 3967491..370d75c 100644
--- a/djgpp/djinstall/makepkg.pl
+++ b/djgpp/djinstall/makepkg.pl
@@ -756,7 +756,7 @@ sub mk_manifest
         if ($file =~ m/\.exe$/)
         {
             system ("$strip $file");
-            if ($file =~ m/(?:cc1|cc1obj|cc1plus|g951|gnat1)\.exe$/)
+            if ($file =~ m/(?:cc1|cc1obj|cc1objplus|cc1plus|f951|gnat1)\.exe$/)
             {
                 system ("stubedit $file minstack=2048K");
             }
diff --git a/gcc/config/i386/djgpp.h b/gcc/config/i386/djgpp.h
index 84521dd..71298db 100644
--- a/gcc/config/i386/djgpp.h
+++ b/gcc/config/i386/djgpp.h
@@ -17,6 +17,9 @@ You should have received a copy of the GNU General Public License
 along with GCC; see the file COPYING3.  If not see
 <http://www.gnu.org/licenses/>.  */
 
+#define DBX_DEBUGGING_INFO 1
+#define SDB_DEBUGGING_INFO 1
+
 /* Support generation of DWARF2 debugging info.  */
 #define DWARF2_DEBUGGING_INFO 1
 

--------------010608050703020804050003--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019