Commit Graph

43 Commits

Author SHA1 Message Date
Nick Clifton
4a487e028c
Add a target to src-release.sh to crate a binutils release without Gold 2024-10-29 11:50:04 +00:00
Rostislav Krasny
0949bd1df9 src-release.sh: don't take untracked files into account in the uncommitted changes check 2024-06-10 12:40:06 +01:00
Rostislav Krasny
333cf8e4d6 src-release.sh: fix adjusting files permissions and cleaning
PR 31800
2024-06-04 14:59:08 +01:00
Mark Wielaard
8e8b2ab688 src-release.sh: Use -T0 for xz compression
Use parallel compression to create the xz archive.

On my machine (using 4 cores) this reduces the time to create
binutils-2.42.50.tar.xz from 1 minute 40 seconds to 56 seconds.

xz has supported -T0 since version 5.2.0 (released 2014-12-21).
2024-06-03 11:35:39 +02:00
Mark Wielaard
888ef52523 src-release.sh: Support zstd compression 2024-05-30 12:50:11 +01:00
Nick Clifton
4af0542142 Add extra files found in etc/ sub-directory to ETC_SUPPORT in src-release.sh
PR 31726
2024-05-20 16:12:53 +01:00
Nick Clifton
3b6a6fd9c0 Add multilib.am to the list of top level files included in any release created by the src-release.sh script 2024-01-19 11:45:10 +00:00
Arsen Arsenovi?
862776f26a Finalized intl-update patches
* intl: Remove directory.  Replaced with out-of-tree GNU gettext.
  * .gitignore: Add '/gettext*'.
  * configure.ac (host_libs): Replace intl with gettext. (hbaseargs, bbaseargs, baseargs): Split baseargs into {h,b}baseargs. (skip_barg): New flag.  Skips appending current flag to bbaseargs. <library exemptions>: Exempt --with-libintl-{type,prefix} from target and build machine argument passing.
  * configure: Regenerate.
  * Makefile.def (host_modules): Replace intl module with gettext module. (configure-ld): Depend on configure-gettext.
  * Makefile.in: Regenerate.
  * src-release.sh: Remove references to the intl/ directory.
2023-11-15 12:53:04 +00:00
Hans-Peter Nilsson
83066cb9c7 src-release.sh (SIM_SUPPORT_DIRS): Add libsframe, libctf/swap.h and gnulib
Without this, a simulator build breaks when building from a tarball
made by "./src-release.sh -b sim", when building e.g. bfd and
libsframe.  See also previous similar commits for GDB_SUPPORT_DIRS.

The libctf library does not needed to be built, but building
libsframe requires libctf/swap.h, with no dependencies on built or
configured contents.  Do as for the single gdb files and include
explicitly only that file.
2023-09-06 04:15:23 +02:00
Sam James
b5c37946cc Revert "2.41 Release sources"
This reverts commit 675b9d612c.

See https://sourceware.org/pipermail/binutils/2023-August/128761.html.
2023-08-02 12:06:23 +01:00
Nick Clifton
675b9d612c 2.41 Release sources 2023-08-02 09:23:36 +01:00
Nick Clifton
8e7785b4bd Add a SECURITY.txt file describing the GNU Binutils' project's stance on security related bugs. 2023-04-20 16:52:11 +01:00
Joel Brobecker
629e5e1ae8 src-release.sh: Fix gdb source tarball build failure due to libsframe
This script was recently changed as follow:

    | commit e619dddb3a
    | Date:   Tue Nov 15 15:07:13 2022 -0800
    | Subject: src-release.sh: Add libsframe
    |
    | Add libsframe to the list of top level directories that will be included
    | in a release.

Since then, the gdb source tarball has been failing with the error
below during the "make configure-host configure-target" phase:

    | make[3]: *** No rule to make target '../libsframe/libsframe.la',
    |     needed by 'libbfd.la'.  Stop.
    | make[3]: Leaving directory '/tmp/gdb-public/bfd'

This patch fixes the issue by adding libsframe to the list of
GDB_SUPPORT_DIRS, similar to what was done for BINUTILS.

ChangeLog:

        * src-release.sh (GDB_SUPPORT_DIRS): Add libsframe.
2022-11-30 07:32:58 +04:00
Indu Bhagat
e619dddb3a src-release.sh: Add libsframe
Add libsframe to the list of top level directories that will be included
in a release.

ChangeLog:

	* src-release.sh: Add libsframe
2022-11-15 15:50:05 -08:00
Nick Clifton
f54c53e9f4 Add ability to create reproducible source tarballs.
* src-release.sh: Add "-r <date>" option to create reproducible
	tarballs based upon a fixed timestamp of <date>.
	* binutils/README-how-to-make-a-release: Add a line showing how to
	use -r <date> when creating a binutils release.
2022-10-10 11:28:45 +01:00
Vladimir Mezentsev
bb368aad29 gprofng: a new GNU profiler
top-level
	* Makefile.def: Add gprofng module.
	* configure.ac: Add --enable-gprofng option.
	* src-release.sh: Add gprofng.
	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* gprofng: New directory.

binutils
	* MAINTAINERS: Add gprofng maintainer.
	* README-how-to-make-a-release: Add gprofng.

include.
	* collectorAPI.h: New file.
	* libcollector.h: New file.
	* libfcollector.h: New file.
2022-03-11 08:58:31 +00:00
Andrew Burgess
890026e317 src-release.sh: add libbacktrace to GDB_SUPPORT_DIRS
After the previous commit that imported libbacktrace from gcc, this
commit updates src-release.sh so that the libbacktrace directory is
included in the gdb release tar file.

ChangeLog:

	* src-release.sh (GDB_SUPPPORT_DIRS): Add libbacktrace.
2021-09-28 12:21:21 +01:00
Mike Frysinger
3034143dc6 src-release: fix indentation
The indentation of the body of the nested statements got out of sync
leading to the entire function being indented incorrectly and looking
like it's part of the for loop.
2021-01-12 18:19:20 -05:00
Andreas Rammhold
ce04ca3123 Use sha256 for hashes in the release process
I just came across the GDB 10.1 release notes and saw that md5 is still
being used in those. I thought it would be a good idea to instead have a
more modern, secure and wildly available hash function such as SHA256 as
part of the release process.

The changes have been done rather mechnically via sed but executing the
`src-release.sh -b gdb` did work so I am confident about the result.

While this does not directly address the release mails, I was wasn't
able to find the template/script used for those, this is probably still
an improvement.

ChangeLog:
	* src-release.sh: Use sha256sum instead of md5sum.

binutils/ChangeLog:
	* README-how-to-make-a-release: Use sha256sum instead of md5sum.

Change-Id: I9cf19ea40699137c45463b8514f6e29271af2347
2020-10-28 10:35:28 -04:00
Tom Tromey
919adfe840 Move gdbserver to top level
This patch moves gdbserver to the top level.

This patch is as close to a pure move as possible -- gdbserver still
builds its own variant of gnulib and gdbsupport.  Changing this will
be done in a separate patch.

[v2] Note that, per Simon's review comment, this patch changes the
tree so that gdbserver is not built for or1k or score.  This makes
sense, because there is apparently not actually a gdbserver port here.

[v3] This version of the patch also splits out some configury into a
new file, gdbserver/configure.host, so that the top-level configure
script can simply rely on it in order to decide whether gdbserver
should be built.

[v4] This version adds documentation and removes some unnecessary
top-level dependencies.

[v5] Update docs to mention "make all-gdbserver" and change how
top-level configure decides whether to build gdbserver, switching to a
single, shared script.

Tested by the buildbot.

ChangeLog
2020-02-07  Tom Tromey  <tom@tromey.com>
	    Pedro Alves  <palves@redhat.com>

	* src-release.sh (GDB_SUPPORT_DIRS): Add gdbserver.
	* gdbserver: New directory, moved from gdb/gdbserver.
	* configure.ac (host_tools): Add gdbserver.
	Only build gdbserver on certain systems.
	* Makefile.in, configure: Rebuild.
	* Makefile.def (host_modules, dependencies): Add gdbserver.
	* MAINTAINERS: Add gdbserver.

gdb/ChangeLog
2020-02-07  Tom Tromey  <tom@tromey.com>

	* README: Update gdbserver documentation.
	* gdbserver: Move to top level.
	* configure.tgt (build_gdbserver): Remove.
	* configure.ac: Remove --enable-gdbserver.
	* configure: Rebuild.
	* Makefile.in (distclean): Don't mention gdbserver.

Change-Id: I826b7565b54604711dc7a11edea0499cd51ff39e
2020-02-07 08:42:25 -07:00
Sergio Durigan Junior
fc1ca146f7 Adjust src-release.sh's getver due to gdbsupport's move to toplevel
The move of gdbsupport to the top level directory requires a small
change to src-release.sh's "getver" function, which is responsible for
determining the version string that will be appended to the release
tarball: now the create-version.sh script lives under ./gdbsupport,
and not under gdb/gdbsupport anymore.

This patch unbreaks the snapshot generation, which hasn't been working
since January 14th.

ChangeLog:
2020-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>

	* src-release.sh (getver): Look for gdbsupport's
	create-version.sh script at the current directory if tool is
	"gdb".

Change-Id: Id3b8bed6583a1aaa120c07009366f6c94a62d5db
2020-01-29 15:06:32 -05:00
Tom Tromey
01027315f5 Move gdbsupport to the top level
This patch moves the gdbsupport directory to the top level.  This is
the next step in the ongoing project to move gdbserver to the top
level.

The bulk of this patch was created by "git mv gdb/gdbsupport gdbsupport".

This patch then adds a build system to gdbsupport and wires it into
the top level.  Then it changes gdb to use the top-level build.

gdbserver, on the other hand, is not yet changed.  It still does its
own build of gdbsupport.

ChangeLog
2020-01-14  Tom Tromey  <tom@tromey.com>

	* src-release.sh (GDB_SUPPORT_DIRS): Add gdbsupport.
	* MAINTAINERS: Add gdbsupport.
	* configure: Rebuild.
	* configure.ac (configdirs): Add gdbsupport.
	* gdbsupport: New directory, move from gdb/gdbsupport.
	* Makefile.def (host_modules, dependencies): Add gnulib.
	* Makefile.in: Rebuild.

gdb/ChangeLog
2020-01-14  Tom Tromey  <tom@tromey.com>

	* nat/x86-linux-dregs.c: Include configh.h.
	* nat/linux-ptrace.c: Include configh.h.
	* nat/linux-btrace.c: Include configh.h.
	* defs.h: Include config.h, bfd.h.
	* configure.ac: Don't source common.host.
	(CONFIG_OBS, CONFIG_SRCS): Remove gdbsupport files.
	* configure: Rebuild.
	* acinclude.m4: Update path.
	* Makefile.in (SUPPORT, LIBSUPPORT, INCSUPPORT): New variables.
	(CONFIG_SRC_SUBDIR): Remove gdbsupport.
	(INTERNAL_CFLAGS_BASE): Add INCSUPPORT.
	(CLIBS): Add LIBSUPPORT.
	(CDEPS): Likewise.
	(COMMON_SFILES): Remove gdbsupport files.
	(HFILES_NO_SRCDIR): Likewise.
	(stamp-version): Update path to create-version.sh.
	(ALLDEPFILES): Remove gdbsupport files.

gdb/gdbserver/ChangeLog
2020-01-14  Tom Tromey  <tom@tromey.com>

	* server.h: Include config.h.
	* gdbreplay.c: Include config.h.
	* configure: Rebuild.
	* configure.ac: Don't source common.host.
	* acinclude.m4: Update path.
	* Makefile.in (INCSUPPORT): New variable.
	(INCLUDE_CFLAGS): Add INCSUPPORT.
	(SFILES): Update paths.
	(version-generated.c): Update path to create-version.sh.
	(gdbsupport/%-ipa.o, gdbsupport/%.o): Update paths.

gdbsupport/ChangeLog
2020-01-14  Tom Tromey  <tom@tromey.com>

	* common-defs.h: Add GDBSERVER case.  Update includes.
	* acinclude.m4, aclocal.m4, config.in, configure, configure.ac,
	Makefile.am, Makefile.in, README: New files.
	* Moved from ../gdb/gdbsupport/

Change-Id: I07632e7798635c1bab389bf885971e584fb4bb78
2020-01-14 16:25:02 -07:00
Sergio Durigan Junior
95c746ccc4 Add libctf to src-release.sh:GDB_SUPPORT_DIRS
We're forgetting to include the libctf directory when creating the
snapshot.  This commit changes src-release.sh and adds it to
GDB_SUPPORT_DIRS.

2019-10-17  Sergio Durigan Junior  <sergiodj@redhat.com>

	* src-release.sh (GDB_SUPPORT_DIRS): Add libctf.

Change-Id: Iada82e5c9e4f8d5a0a5e467d2a628f1fba66002e
2019-10-17 14:00:51 -04:00
Alan Modra
a315e14713 PR29, Coreutils POSIX2_VERSION as 200112L
As of today we have just the following oddities left
./gnulib/update-gnulib.sh:ver=`autoconf --version 2>&1 | head -1 | sed 's/.*) //'`
./gnulib/update-gnulib.sh:ver=`automake --version 2>&1 | head -1 | sed 's/.*) //'`
./gnulib/update-gnulib.sh:ver=`aclocal --version 2>&1 | grep -v "called too early to check prototype" | head -1 | sed 's/.*) //'`
./src-release.sh:	head -1 $tool/version.in
./contrib/dg-extract-results.sh:tail -2 $FIRST_SUM | $GREP '^#' > /dev/null || tail -2 $FIRST_SUM

gnulib and contrib (from gcc) are outside of binutils control, so with
this patch I'm going to declare this 15 year old bug fixed.

	PR 29
	* src-release.sh (getver): Replace "head -1" with "head -n 1".
2019-10-17 16:34:02 +10:30
Joel Brobecker
48b550c28a adjust src-release following the renaming of gdb/common/ to gdb/gdbsupport/
A recent change renamed the common/ directory into gdbsupport/ in gdb.
This causes problems in the getver function in the src-release script
which doesn't find the create-version.sh script anymore. As a result,
it falls back on using the version.in file verbatim, meaning that
the "DATE" placeholder doesn't get replaced with the snapshot date,
and the "-git" suffix doesn't get stripped. More precisely, we get
snapshots called "gdb-8.3.50-DATE-git.tar" instead of (e.g.)
"gdb-8.3-20190712.tar".

This commit fixes the issue by adding support for this situation.
I left the support for $tool/common/create-version.sh, because
the sim still uses that directory structure.

ChangeLog:

        * src-release (getver): If $tool/gdbsupport/create-version.sh
        exists, use that to determine the version number.
2019-07-13 18:00:32 -07:00
Andreas Schwab
be74b5b714 Add gnulib to gdb release tarball
* src-release.sh (GDB_SUPPORT_DIRS): Add gnulib.
2019-06-21 15:20:34 +02:00
Nick Clifton
e33f2313bf Update release tools with libctf support.
top	* src-release.sh (do_proto_toplev): Add libctf to list of
	directories that can be disabled.

binutils* README-how-to-make-a-release: Add libctf to list of directories
	that need updates in their ChangeLogs.
2019-05-29 12:49:13 +01:00
Nick Clifton
2012bf013b Move potentially obsolete BFD targets into the definitely obsolete section. Add a note to the README-how-to-make-a-release document about doing this.
bfd	* config.bfd: Move the powerpc-lynxos and powerpc-windiss targets
	into the definitely obsolete list.

binutils * README-how-to-make-a-release: Add a note about updating the
	obsolete targets in the bfd/config.bfd file.
2019-02-07 14:30:02 +00:00
Sergio Durigan Junior
80ca5f98b8 Add "contrib" to the list of GDB support dirs (on src-release.sh)
On commit:

  commit 5a6996172e
  Author: Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
  Date:   Mon Aug 6 16:05:16 2018 +0200

      Update dg-extract-results.* from gcc

dg-extract-results.sh was moved from the "gdb/contrib/" directory to
the toplevel "contrib/" directory.  However, src-release.sh was not
updated in order to include "contrib/" in the tarball release of GDB.
This makes it very inconvenient to run and analyze the GDB testsuite
results.  This commit adds "contrib/" to the list of support
directories that are included in each GDB release.

ChangeLog:
2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>

	* src-release.sh (GDB_SUPPORT_DIRS): Add "contrib".
2018-09-13 12:33:19 -04:00
Nick Clifton
0a8288f78a Update the src-release script to include the new top level files test-driver and ar-lib.
* src-release.sh (DEVO_SUPPORT): Add test-driver and ar-lib.
2018-07-16 14:10:35 +01:00
Nick Clifton
52b2f30022 Improve junk file removal in source tarball creation script.
* src-release.sh (do_proto_toplev): Add patterns for more junk files
	to delete before creating the tarball.
2018-01-30 17:48:24 +00:00
Nick Clifton
b431b4ea88 Prevent patch remnants from being included in release tarballs.
* src-release.sh (do_proto_toplev): Strip patch remnant files from
	the sources before creating the tarball.
2018-01-29 13:21:40 +00:00
Nick Clifton
19e2900bd3 Update notes on how to make a release 2018-01-13 14:29:27 +00:00
Nick Clifton
ef87240fd9 Add -l option to src-release script.
Since we are updating src-release.sh I thought I would check in this
small patch.  It adds the option to create lzip compressed tarballs
via the -l command line option.

	* src-release.sh (LZIPPROG): New define.  Provides the name of the
	lzip program.
	(do_lz): New function.  Compresses a tarball using the lzip
	program.
	(do_compress): Add support for lzip compression.
	(usage): Mention -l option.
	(build_release): Support -l option to invoke lzip compression.
2017-09-15 16:18:20 +01:00
Alan Modra
817b771134 Enable/disable various dirs in src-release.sh
gold needs to be enabled for a binutils release, but it's rather odd
to do so for gas, gdb or sim.  This patch passes various --enable and
--disable options depending on the directories being released.

	* src-release.sh (do_proto_toplev): Revert last patch.  Enable or
	disable binutils, gas, gdb, gold, gprof, ld, libdecnumber, readline,
	and sim depending on $tool and $support_files.  Echo configure line.
2017-09-15 14:48:14 +09:30
matt rice
255300f5a9 Add enable-gold and enable-ld to src-release
So that the tarball picks up gold bison output.

	* src-release.sh (do_proto_toplev): Enable gold during release process.
2017-09-14 18:34:18 +09:30
Joel Brobecker
b677098d4e fix gdb version parsing in src-release.sh
Small change required after we switched the gdb version scheme to
using a -git suffix rather than a -cvs one.

ChangeLog:

        * src-release.sh: Compute the gdb tarball name by stripping
        '-git' rather than '-cvs'.

Tested by running "src-release.sh gdb" and verifying the tarball
name as well as its contents.
2016-01-17 10:01:55 +04:00
Hans-Peter Nilsson
ec5b9462e0 Adjust src-release.sh for sim using the gdb create-version.sh.
* sim-release.sh (tar_compress): If there's a fifth parameter,
	use that in the getver call instead of $tool.
	(sim_release): Pass gdb as fifth parameter to tar_compress.
	(SIM_SUPPORT_DIRS): Add gdb/common/create-version.sh.
2015-04-15 04:08:51 +02:00
H.J. Lu
e38108740e Remove --with-target-subdir=. --disable-multilib
zlib/configure is updated to properly handle in-tree build for host.

	* src-release.sh: Don't configure with  --with-target-subdir=.
	--disable-multilib.
2015-03-31 13:13:13 -07:00
H.J. Lu
890ba06fb1 Replace src-release with src-release.sh
* src-release.sh (DEVO_SUPPORT): Replace src-release with
	src-release.sh.
2015-03-31 11:49:04 -07:00
H.J. Lu
92c695a14f A zlib to tarball
* src-release.sh (do_proto_toplev): Configure with --target
	--with-target-subdir and --disable-multilib.
	(BINUTILS_SUPPORT_DIRS): Add zlib.
	(GAS_SUPPORT_DIRS): Likewise.
	(GDB_SUPPORT_DIRS): Likewise.
	(SIM_SUPPORT_DIRS): Likewise.
2015-03-28 06:48:43 -07:00
Tristan Gingold
3e61539320 src-release.sh: configure using --target.
* src-release.sh (do_proto_toplev): Configure with --target.
2014-10-15 09:50:53 +02:00
Will Newton
2536ee9d03 src-release.sh: Convert src-release to a shell script
This began as an attempt to make a few small changes to src-release
but heeding the comments at the top of the file it seemed it might be
wise to convert it to a shell script instead which should hopefully
be more maintainable.

This shell script contains most of the functionality of the Makefile
version. It can be run like this:

  # This will build gdb and compress with bzip2, gzip and xz
  ./src-release.sh -bgx gdb

The functionality that has been removed is building tarballs for insight
and gnats, which were broken in the current repository layout and
gas+binutils which amounted to basically the same thing as binutils so
didn't seem worth keeping. The script always builds a tar file,
compression is optional, so no need for specific commands to build tar
files rather than compressed tar files.

The build of gas releases has been fixed, as has extraction of version
numbers which had been broken since the switch to configure.ac files
and AC_INIT.

I also removed the code for distcleaning the intl sub-directory as it
seems like that issue has been fixed.

The script is capable of compressing with bzip2, gzip and xz which
should cover all formats available on gnu.org.

I tested it by producing release tarballs which are substantially
identical to the ones produced by the src-release script.

ChangeLog:

2014-08-27  Will Newton  <will.newton@linaro.org>

	* src-release.sh: New file.
	* src-release: Remove file.
2014-08-27 13:50:06 +01:00