summaryrefslogtreecommitdiff
path: root/sys-devel/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'sys-devel/gdb')
-rw-r--r--sys-devel/gdb/Manifest10
-rw-r--r--sys-devel/gdb/files/gdb-8.3.1-gcc-10.patch222
-rw-r--r--sys-devel/gdb/gdb-8.3.1-r1.ebuild262
-rw-r--r--sys-devel/gdb/gdb-8.3.1.ebuild260
-rw-r--r--sys-devel/gdb/gdb-8.3.ebuild251
-rw-r--r--sys-devel/gdb/gdb-9.1.ebuild9
-rw-r--r--sys-devel/gdb/gdb-9999.ebuild9
7 files changed, 14 insertions, 1009 deletions
diff --git a/sys-devel/gdb/Manifest b/sys-devel/gdb/Manifest
index 7567b691614c..57414936dadf 100644
--- a/sys-devel/gdb/Manifest
+++ b/sys-devel/gdb/Manifest
@@ -1,11 +1,5 @@
-AUX gdb-8.3.1-gcc-10.patch 6940 BLAKE2B c3df7c53e9763984b43601361d6d157f7b8586b2ad56488481483e7ee3a0ff17b194e68e729a7854bb30d4476029064cdbc6c983b0107e090291f26015db6df4 SHA512 6b8d82afef1fc705b6255334a970c81ddb65a34156d3e1d9134443d825f870bfee76f6a5eb2992e5d2baf2628ba7fa19f33501e8e8967ebc30b3fab3429e0710
AUX gdb-8.3.1-verbose-build.patch 395 BLAKE2B e2e82307ceae64d16aa9b57a5e639eb5d217c4d977aed0847fdf125bb13ebc004906d9afb8e3f629c41efccca88df0040015e7799c1fd24de5fb50f62f5bbd90 SHA512 c2bb013e4fcabefddcd8042bd3cbb53471f83182cc8769fe0d19eed80ccc4a83bd84d120006fa25b3b7d0310dc2f2ec6b44a6ff74909cd312b7e491f371777a3
-DIST gdb-8.3.1.tar.xz 20489528 BLAKE2B 5a671f620a2ed3337486a8ff53b93d65b3b6079e59ea07bc0f31e3ea6d459ced1d8549a76cfcf124762e0890e243eaabcf8b204bfc631002e759339a89b9bf9a SHA512 9053a2dc6b9eb921907afbc4cecc75d635aa76df5e8c4f0e5824ccf57cb206b299c19b127fff000b65c334826ff8304a54ff6098428365a8e997cca886c39e9a
-DIST gdb-8.3.tar.xz 20490300 BLAKE2B 24b2a2a9bda7ae8093f757e42d6d0ab5642ff1d7e5a832896c28c5b17961166072c0dae158c04d7f7660cb059194c259bcff71ad5763960027b0ac3d7045eb1a SHA512 47ac074d20a09a3fac8f4a41dce0a0cbe6ef702f7dc21ba8b7d650d306128dcae481e9a16bf65e596b3a541dc82ae57c02bcbb786d551b4ef3e2917b9b6f0ae1
DIST gdb-9.1.tar.xz 20980824 BLAKE2B b84b1dc627d7ba697dfd76ba7c0f4f88f1725e1e1b83134d08cf53bf867ebfa07e1d01eff2acd9a57d22a779077bf6ed95d6098e8a58c4d86eaed034ca62ac30 SHA512 84cdd408d80a3fc5779de459c5b26154d31b329ebde7e3aa78799fb1eb245d8b64b8c8ee7242382a1dbd95b4e6f9d84fef41d12a0646aa75d3dee4709ea1f6e7
-EBUILD gdb-8.3.1-r1.ebuild 6930 BLAKE2B 46e1ae2b125a405c30ffa938e98525a60df78b8f2e7138706856660bdd0f3bc36164e69b3fd72359b7bdc2ad864dbbae3108ea982b40d1897da74fbecb16fbd7 SHA512 e73f1b726dc57d6bfe8dc6c56465449ac64e5ad690f7e75bbf4086affdb16f4ead2ffbba191940fd75ad30f254bce52983c9c448c1d81b07881a36dccb8dcd1f
-EBUILD gdb-8.3.1.ebuild 6867 BLAKE2B df0082c86c451ab3ee1e01571cfef9b5bc8ea2ec0dfc1205db6da6e40b5407e8b5609096e3ad10f2ad843d21212501e668d0b99f48cb9cfb23002088f6854b2a SHA512 b92f997211bb8f50b8c97cf991b40467ad9042caca51eeb7c47767d484d0ab248b2aa4a2e9ed306adecf0c2334d0747d0b7324ff0d0cbdf6447d8ef28e8336c7
-EBUILD gdb-8.3.ebuild 6624 BLAKE2B 116845931bedb8e0e5f4ff3d4d89cb234e18bdd07cfb0c58f4d453e9129954386ddd4859b17d1e0b1bb127b50d130e0c1777fbb3764f789ecfc4681b32bc68d7 SHA512 16f59904ba8855dab383dfb50725e59650dc149c768a4b4bdc6c26860d96f37924b5a0bc6a5962a50ca95a5aae5467ab4715efc50d0e9704c73923b35c0ec1cc
-EBUILD gdb-9.1.ebuild 7257 BLAKE2B 0c9120fb581a279bc5571f60fbd997f7eff7bddeb4936699ad964ada9370db49cf95fe875a44b985d42621cfa8cd26000fd9476b9deeb6e5d024dc1526adb15f SHA512 a90ea55418f4d4f0f7cc880aab37f2297fd8a9770752de1c7d0c89b2890fe840bbd9e16657b16120984d5d1f58c07ffcf3dbb4b2c59601edb67e6f818dba450f
-EBUILD gdb-9999.ebuild 6914 BLAKE2B c56d4eac9cab52a0c98003f36657b7c58c700d357074350897aca69fca15753f57c761db6fb784145cf87bde6681f9b84e20b381bb32f20a176385ee50b4e818 SHA512 252f6a6584ecc22b3d965c6f2a8ae963b6cc58358358f9c792f024b1cf38fb05f1cd1106bdddf2037fe7fb9eb1b7e26d36493fd4b6c766a88217d8eebd64b893
+EBUILD gdb-9.1.ebuild 7386 BLAKE2B d208d132d8e51e0c7596bda3d4e4d3a25e8c7efccfe046e859cbc1df6cb8b6cea0ec2dadf807b9d917e21f7ececb1b20004c7372b0f74fb8fa0b41aefc6e2e43 SHA512 f091d4808fc96b8584ab6b0ca585535017eceab9771ff9d21e04916a1832a2fbdf8664321a0bb93c56325bcf5be5074150a1b1f2e38114364d13b63ea66c498f
+EBUILD gdb-9999.ebuild 7052 BLAKE2B db9b949e97d115da1d8a05f834cd7d259147728dd322f983d210675dbcaa166c1564a4d3c12ceb370145bf755a7161f20c64be94979da0dd516d83ac187b1846 SHA512 0d2551744cf15162e26216562ced571704c3ecb5d99fdd28305b95552684a0ec2afc083a5b27936822e1e33756430da114b358a9d1a399bcc8ebab8362d24e3a
MISC metadata.xml 1110 BLAKE2B 9958c755c2276b00b47550593e37bda9cdd5050834650654e796b9aca622fd4e7b094e80e2648b622fdb46943d3dca00208f11e1ea0c9bfdb32ad891b9acaad1 SHA512 f58a0166980a8ef71d36872736afc8f86ded7f731864cc3d302e84818c3afc01eca49748e4533bc305c2d3d73521a008260097b9533dd3392a451528f3794a0d
diff --git a/sys-devel/gdb/files/gdb-8.3.1-gcc-10.patch b/sys-devel/gdb/files/gdb-8.3.1-gcc-10.patch
deleted file mode 100644
index affc3b7392a4..000000000000
--- a/sys-devel/gdb/files/gdb-8.3.1-gcc-10.patch
+++ /dev/null
@@ -1,222 +0,0 @@
-From 851c0536cabb661847c45c73ebd796eb3299066b Mon Sep 17 00:00:00 2001
-Date: Tue, 26 Nov 2019 12:52:56 -0300
-Subject: [PATCH] [ARM, sim] Fix build error and warnings
-From: Luis Machado <luis.machado@linaro.org>
-
-Newer GCC's have switched to -fno-common by default, and this breaks the build
-for the ARM sim, like this:
-
-binutils-gdb.git~gdb-8.3-release/sim/arm/maverick.c:65: multiple definition of `DSPsc'; libsim.a(wrapper.o):binutils-gdb.git~gdb-8.3-release/sim/arm/wrapper.c:134: first defined here
-binutils-gdb.git~gdb-8.3-release/sim/arm/maverick.c:64: multiple definition of `DSPacc'; libsim.a(wrapper.o):binutils-gdb.git~gdb-8.3-release/sim/arm/wrapper.c:133: first defined here
-binutils-gdb.git~gdb-8.3-release/sim/arm/maverick.c:63: multiple definition of `DSPregs'; libsim.a(wrapper.o):binutils-gdb.git~gdb-8.3-release/sim/arm/wrapper.c:132: first defined here
-
-I also noticed a few warnings due to mismatching types, as follows:
-
-../../../../repos/binutils-gdb/sim/arm/wrapper.c: In function ‘sim_create_inferior’:
-../../../../repos/binutils-gdb/sim/arm/wrapper.c:335:16: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
- for (arg = argv; *arg != NULL; arg++)
- ^
-../../../../repos/binutils-gdb/sim/arm/wrapper.c:342:8: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
- arg = argv;
- ^
-../../../../repos/binutils-gdb/sim/arm/wrapper.c:345:13: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
- for (arg = argv; *arg != NULL; arg++)
- ^
-The following patch fixes both of the above.
-
-Change-Id: I21db699d3b61b2de8c44053e47be4387285af28f
----
- sim/arm/armemu.c | 4 ----
- sim/arm/arminit.c | 4 ++++
- sim/arm/maverick.c | 35 +++++------------------------------
- sim/arm/maverick.h | 46 ++++++++++++++++++++++++++++++++++++++++++++++
- sim/arm/wrapper.c | 35 ++---------------------------------
- create mode 100644 sim/arm/maverick.h
-
---- a/sim/arm/armemu.c
-+++ b/sim/arm/armemu.c
-@@ -1140,10 +1140,6 @@ handle_VFP_move (ARMul_State * state, ARMword instr)
-
- /* EMULATION of ARM6. */
-
--/* The PC pipeline value depends on whether ARM
-- or Thumb instructions are being executed. */
--ARMword isize;
--
- ARMword
- #ifdef MODE32
- ARMul_Emulate32 (ARMul_State * state)
---- a/sim/arm/arminit.c
-+++ b/sim/arm/arminit.c
-@@ -40,6 +40,10 @@ unsigned ARMul_MultTable[32] =
- ARMword ARMul_ImmedTable[4096]; /* immediate DP LHS values */
- char ARMul_BitList[256]; /* number of bits in a byte table */
-
-+/* The PC pipeline value depends on whether ARM
-+ or Thumb instructions are being executed. */
-+ARMword isize;
-+
- /***************************************************************************\
- * Call this routine once to set up the emulator's tables. *
- \***************************************************************************/
---- a/sim/arm/maverick.c
-+++ b/sim/arm/maverick.c
-@@ -19,6 +19,7 @@
- #include "armdefs.h"
- #include "ansidecl.h"
- #include "armemu.h"
-+#include "maverick.h"
-
- /*#define CIRRUS_DEBUG 1 */
- #if CIRRUS_DEBUG
-@@ -30,36 +31,10 @@
- #define POS64(i) ( (~(i)) >> 63 )
- #define NEG64(i) ( (i) >> 63 )
-
--/* Define Co-Processor instruction handlers here. */
--
--/* Here's ARMulator's DSP definition. A few things to note:
-- 1) it has 16 64-bit registers and 4 72-bit accumulators
-- 2) you can only access its registers with MCR and MRC. */
--
--/* We can't define these in here because this file might not be linked
-- unless the target is arm9e-*. They are defined in wrapper.c.
-- Eventually the simulator should be made to handle any coprocessor
-- at run time. */
--struct maverick_regs
--{
-- union
-- {
-- int i;
-- float f;
-- } upper;
--
-- union
-- {
-- int i;
-- float f;
-- } lower;
--};
--
--union maverick_acc_regs
--{
-- long double ld; /* Acc registers are 72-bits. */
--};
--
-+/* These variables are defined here and made extern in maverick.h for use
-+ in wrapper.c for now.
-+ Eventually the simulator should be made to handle any coprocessor at run
-+ time. */
- struct maverick_regs DSPregs[16];
- union maverick_acc_regs DSPacc[4];
- ARMword DSPsc;
---- /dev/null
-+++ b/sim/arm/maverick.h
-@@ -0,0 +1,46 @@
-+/* maverick.h -- Cirrus/DSP co-processor interface header
-+ Copyright (C) 2003-2019 Free Software Foundation, Inc.
-+ Contributed by Aldy Hernandez (aldyh@redhat.com).
-+
-+ This program 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. If not, see <http://www.gnu.org/licenses/>. */
-+
-+/* Define Co-Processor instruction handlers here. */
-+
-+/* Here's ARMulator's DSP definition. A few things to note:
-+ 1) it has 16 64-bit registers and 4 72-bit accumulators
-+ 2) you can only access its registers with MCR and MRC. */
-+
-+struct maverick_regs
-+{
-+ union
-+ {
-+ int i;
-+ float f;
-+ } upper;
-+
-+ union
-+ {
-+ int i;
-+ float f;
-+ } lower;
-+};
-+
-+union maverick_acc_regs
-+{
-+ long double ld; /* Acc registers are 72-bits. */
-+};
-+
-+extern struct maverick_regs DSPregs[16];
-+extern union maverick_acc_regs DSPacc[4];
-+extern ARMword DSPsc;
---- a/sim/arm/wrapper.c
-+++ b/sim/arm/wrapper.c
-@@ -37,6 +37,7 @@
- #include "gdb/signals.h"
- #include "libiberty.h"
- #include "iwmmxt.h"
-+#include "maverick.h"
-
- /* TODO: This should get pulled from the SIM_DESC. */
- host_callback *sim_callback;
-@@ -101,38 +102,6 @@ print_insn (ARMword instr)
- fprintf (stderr, " %*s\n", size, opbuf);
- }
-
--/* Cirrus DSP registers.
--
-- We need to define these registers outside of maverick.c because
-- maverick.c might not be linked in unless --target=arm9e-* in which
-- case wrapper.c will not compile because it tries to access Cirrus
-- registers. This should all go away once we get the Cirrus and ARM
-- Coprocessor to coexist in armcopro.c-- aldyh. */
--
--struct maverick_regs
--{
-- union
-- {
-- int i;
-- float f;
-- } upper;
--
-- union
-- {
-- int i;
-- float f;
-- } lower;
--};
--
--union maverick_acc_regs
--{
-- long double ld; /* Acc registers are 72-bits. */
--};
--
--struct maverick_regs DSPregs[16];
--union maverick_acc_regs DSPacc[4];
--ARMword DSPsc;
--
- static void
- init (void)
- {
-@@ -236,7 +205,7 @@ sim_create_inferior (SIM_DESC sd ATTRIBUTE_UNUSED,
- {
- int argvlen = 0;
- int mach;
-- char **arg;
-+ char * const *arg;
-
- init ();
-
---
-2.25.0
-
diff --git a/sys-devel/gdb/gdb-8.3.1-r1.ebuild b/sys-devel/gdb/gdb-8.3.1-r1.ebuild
deleted file mode 100644
index 015c3bc58e76..000000000000
--- a/sys-devel/gdb/gdb-8.3.1-r1.ebuild
+++ /dev/null
@@ -1,262 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python{3_6,3_7} )
-
-inherit eutils flag-o-matic python-single-r1
-
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-MY_PV=${PV}
-case ${PV} in
-9999*)
- # live git tree
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- SRC_URI=""
- ;;
-*.*.50.2???????)
- # weekly snapshots
- SRC_URI="ftp://sourceware.org/pub/gdb/snapshots/current/gdb-weekly-${PV}.tar.xz"
- ;;
-*)
- # Normal upstream release
- SRC_URI="mirror://gnu/gdb/${P}.tar.xz
- ftp://sourceware.org/pub/gdb/releases/${P}.tar.xz"
- ;;
-esac
-
-PATCH_VER=""
-PATCH_DEV=""
-DESCRIPTION="GNU debugger"
-HOMEPAGE="https://sourceware.org/gdb/"
-SRC_URI="${SRC_URI}
- ${PATCH_DEV:+https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz}
- ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz}
-"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-IUSE="+client lzma multitarget nls +python +server source-highlight test vanilla xml"
-REQUIRED_USE="
- python? ( ${PYTHON_REQUIRED_USE} )
- || ( client server )
-"
-
-# ia64 kernel crashes when gdb testsuite is running
-# hppa kernel crashes when gdb testsuite is running
-RESTRICT="
- hppa? ( test )
- ia64? ( test )
-
- !test? ( test )
-"
-
-RDEPEND="
- client? (
- dev-libs/mpfr:0=
- >=sys-libs/ncurses-5.2-r2:0=
- sys-libs/readline:0=
- lzma? ( app-arch/xz-utils )
- python? ( ${PYTHON_DEPS} )
- xml? ( dev-libs/expat )
- sys-libs/zlib
- )
- source-highlight? (
- dev-util/source-highlight
- )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- app-arch/xz-utils
- sys-apps/texinfo
- client? (
- virtual/yacc
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- )"
-
-S=${WORKDIR}/${PN}-${MY_PV}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-8.3.1-verbose-build.patch
- "${FILESDIR}"/${PN}-8.3.1-gcc-10.patch
-)
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- default
-
- strip-linguas -u bfd/po opcodes/po
-}
-
-gdb_branding() {
- printf "Gentoo ${PV} "
- if ! use vanilla && [[ -n ${PATCH_VER} ]] ; then
- printf "p${PATCH_VER}"
- else
- printf "vanilla"
- fi
- [[ -n ${EGIT_COMMIT} ]] && printf " ${EGIT_COMMIT}"
-}
-
-src_configure() {
- strip-unsupported-flags
-
- local myconf=(
- # portage's econf() does not detect presence of --d-d-t
- # because it greps only top-level ./configure. But not
- # gnulib's or gdb's configure.
- --disable-dependency-tracking
-
- --with-pkgversion="$(gdb_branding)"
- --with-bugurl='https://bugs.gentoo.org/'
- --disable-werror
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{binutils,etc,gas,gold,gprof,ld}
- )
- local sysroot="${EPREFIX}/usr/${CTARGET}"
- is_cross && myconf+=(
- --with-sysroot="${sysroot}"
- --includedir="${sysroot}/usr/include"
- --with-gdb-datadir="\${datadir}/gdb/${CTARGET}"
- )
-
- if use server && ! use client ; then
- # just configure+build in the gdbserver subdir to speed things up
- cd gdb/gdbserver
- myconf+=( --program-transform-name='' )
- else
- # gdbserver only works for native targets (CHOST==CTARGET).
- # it also doesn't support all targets, so rather than duplicate
- # the target list (which changes between versions), use the
- # "auto" value when things are turned on.
- is_cross \
- && myconf+=( --disable-gdbserver ) \
- || myconf+=( $(use_enable server gdbserver auto) )
- fi
-
- if ! ( use server && ! use client ) ; then
- # if we are configuring in the top level, then use all
- # the additional global options
- myconf+=(
- --enable-64-bit-bfd
- --disable-install-libbfd
- --disable-install-libiberty
- # Disable guile for now as it requires guile-2.x #562902
- --without-guile
- # This only disables building in the readline subdir.
- # For gdb itself, it'll use the system version.
- --disable-readline
- --with-system-readline
- # This only disables building in the zlib subdir.
- # For gdb itself, it'll use the system version.
- --without-zlib
- --with-system-zlib
- --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug
- $(use_with xml expat)
- $(use_with lzma)
- $(use_enable nls)
- $(use_enable source-highlight)
- $(use multitarget && echo --enable-targets=all)
- $(use_with python python "${EPYTHON}")
- )
- fi
- if use sparc-solaris || use x86-solaris ; then
- # disable largefile support
- # https://sourceware.org/ml/gdb-patches/2014-12/msg00058.html
- myconf+=( --disable-largefile )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_install() {
- if use server && ! use client; then
- cd gdb/gdbserver || die
- fi
- default
- if use client; then
- find "${ED}"/usr -name libiberty.a -delete || die
- fi
- cd "${S}" || die
-
- # Delete translations that conflict with binutils-libs. #528088
- # Note: Should figure out how to store these in an internal gdb dir.
- if use nls ; then
- find "${ED}" \
- -regextype posix-extended -regex '.*/(bfd|opcodes)[.]g?mo$' \
- -delete || die
- fi
-
- # Don't install docs when building a cross-gdb
- if [[ ${CTARGET} != ${CHOST} ]] ; then
- rm -rf "${ED}"/usr/share/{doc,info,locale} || die
- local f
- for f in "${ED}"/usr/share/man/*/* ; do
- if [[ ${f##*/} != ${CTARGET}-* ]] ; then
- mv "${f}" "${f%/*}/${CTARGET}-${f##*/}" || die
- fi
- done
- return 0
- fi
- # Install it by hand for now:
- # https://sourceware.org/ml/gdb-patches/2011-12/msg00915.html
- # Only install if it exists due to the twisted behavior (see
- # notes in src_configure above).
- [[ -e gdb/gdbserver/gdbreplay ]] && dobin gdb/gdbserver/gdbreplay
-
- if use client ; then
- docinto gdb
- dodoc gdb/CONTRIBUTE gdb/README gdb/MAINTAINERS \
- gdb/NEWS gdb/ChangeLog gdb/PROBLEMS
- fi
- docinto sim
- dodoc sim/{ChangeLog,MAINTAINERS,README-HACKING}
- if use server ; then
- docinto gdbserver
- dodoc gdb/gdbserver/{ChangeLog,README}
- fi
-
- if [[ -n ${PATCH_VER} ]] ; then
- dodoc "${WORKDIR}"/extra/gdbinit.sample
- fi
-
- # Remove shared info pages
- rm -f "${ED}"/usr/share/info/{annotate,bfd,configure,standards}.info*
-
- # gcore is part of ubin on freebsd
- if [[ ${CHOST} == *-freebsd* ]]; then
- rm "${ED}"/usr/bin/gcore || die
- fi
-
- if use python; then
- python_optimize "${ED}"/usr/share/gdb/python/gdb
- fi
-}
-
-pkg_postinst() {
- # portage sucks and doesnt unmerge files in /etc
- rm -vf "${EROOT}"/etc/skel/.gdbinit
-
- if use prefix && [[ ${CHOST} == *-darwin* ]] ; then
- ewarn "gdb is unable to get a mach task port when installed by Prefix"
- ewarn "Portage, unprivileged. To make gdb fully functional you'll"
- ewarn "have to perform the following steps:"
- ewarn " % sudo chgrp procmod ${EPREFIX}/usr/bin/gdb"
- ewarn " % sudo chmod g+s ${EPREFIX}/usr/bin/gdb"
- fi
-}
diff --git a/sys-devel/gdb/gdb-8.3.1.ebuild b/sys-devel/gdb/gdb-8.3.1.ebuild
deleted file mode 100644
index bdc663153f47..000000000000
--- a/sys-devel/gdb/gdb-8.3.1.ebuild
+++ /dev/null
@@ -1,260 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python{3_6,3_7} )
-
-inherit eutils flag-o-matic python-single-r1
-
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-RPM=
-MY_PV=${PV}
-case ${PV} in
-9999*)
- # live git tree
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- SRC_URI=""
- ;;
-*.*.50.2???????)
- # weekly snapshots
- SRC_URI="ftp://sourceware.org/pub/gdb/snapshots/current/gdb-weekly-${PV}.tar.xz"
- ;;
-*)
- # Normal upstream release
- SRC_URI="mirror://gnu/gdb/${P}.tar.xz
- ftp://sourceware.org/pub/gdb/releases/${P}.tar.xz"
- ;;
-esac
-
-PATCH_VER=""
-PATCH_DEV=""
-DESCRIPTION="GNU debugger"
-HOMEPAGE="https://sourceware.org/gdb/"
-SRC_URI="${SRC_URI}
- ${PATCH_DEV:+https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz}
- ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz}
-"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="~alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~riscv s390 ~sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-IUSE="+client lzma multitarget nls +python +server source-highlight test vanilla xml"
-REQUIRED_USE="
- python? ( ${PYTHON_REQUIRED_USE} )
- || ( client server )
-"
-
-# ia64 kernel crashes when gdb testsuite is running
-# hppa kernel crashes when gdb testsuite is running
-RESTRICT="
- hppa? ( test )
- ia64? ( test )
-
- !test? ( test )
-"
-
-RDEPEND="
- client? (
- dev-libs/mpfr:0=
- >=sys-libs/ncurses-5.2-r2:0=
- sys-libs/readline:0=
- lzma? ( app-arch/xz-utils )
- python? ( ${PYTHON_DEPS} )
- xml? ( dev-libs/expat )
- sys-libs/zlib
- )
- source-highlight? (
- dev-util/source-highlight
- )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- app-arch/xz-utils
- sys-apps/texinfo
- client? (
- virtual/yacc
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- )"
-
-S=${WORKDIR}/${PN}-${MY_PV}
-
-PATCHES=(
- "${FILESDIR}"/${PN}-8.3.1-verbose-build.patch
-)
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- [[ -n ${RPM} ]] && rpm_spec_epatch "${WORKDIR}"/gdb.spec
-
- default
-
- strip-linguas -u bfd/po opcodes/po
-}
-
-gdb_branding() {
- printf "Gentoo ${PV} "
- if ! use vanilla && [[ -n ${PATCH_VER} ]] ; then
- printf "p${PATCH_VER}"
- else
- printf "vanilla"
- fi
- [[ -n ${EGIT_COMMIT} ]] && printf " ${EGIT_COMMIT}"
-}
-
-src_configure() {
- strip-unsupported-flags
-
- local myconf=(
- # portage's econf() does not detect presence of --d-d-t
- # because it greps only top-level ./configure. But not
- # gnulib's or gdb's configure.
- --disable-dependency-tracking
-
- --with-pkgversion="$(gdb_branding)"
- --with-bugurl='https://bugs.gentoo.org/'
- --disable-werror
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{binutils,etc,gas,gold,gprof,ld}
- )
- local sysroot="${EPREFIX}/usr/${CTARGET}"
- is_cross && myconf+=(
- --with-sysroot="${sysroot}"
- --includedir="${sysroot}/usr/include"
- --with-gdb-datadir="\${datadir}/gdb/${CTARGET}"
- )
-
- if use server && ! use client ; then
- # just configure+build in the gdbserver subdir to speed things up
- cd gdb/gdbserver
- myconf+=( --program-transform-name='' )
- else
- # gdbserver only works for native targets (CHOST==CTARGET).
- # it also doesn't support all targets, so rather than duplicate
- # the target list (which changes between versions), use the
- # "auto" value when things are turned on.
- is_cross \
- && myconf+=( --disable-gdbserver ) \
- || myconf+=( $(use_enable server gdbserver auto) )
- fi
-
- if ! ( use server && ! use client ) ; then
- # if we are configuring in the top level, then use all
- # the additional global options
- myconf+=(
- --enable-64-bit-bfd
- --disable-install-libbfd
- --disable-install-libiberty
- # Disable guile for now as it requires guile-2.x #562902
- --without-guile
- # This only disables building in the readline subdir.
- # For gdb itself, it'll use the system version.
- --disable-readline
- --with-system-readline
- # This only disables building in the zlib subdir.
- # For gdb itself, it'll use the system version.
- --without-zlib
- --with-system-zlib
- --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug
- $(use_with xml expat)
- $(use_with lzma)
- $(use_enable nls)
- $(use_enable source-highlight)
- $(use multitarget && echo --enable-targets=all)
- $(use_with python python "${EPYTHON}")
- )
- fi
- if use sparc-solaris || use x86-solaris ; then
- # disable largefile support
- # https://sourceware.org/ml/gdb-patches/2014-12/msg00058.html
- myconf+=( --disable-largefile )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_install() {
- if use server && ! use client; then
- cd gdb/gdbserver || die
- fi
- default
- if use client; then
- find "${ED}"/usr -name libiberty.a -delete || die
- fi
- cd "${S}" || die
-
- # Delete translations that conflict with binutils-libs. #528088
- # Note: Should figure out how to store these in an internal gdb dir.
- if use nls ; then
- find "${ED}" \
- -regextype posix-extended -regex '.*/(bfd|opcodes)[.]g?mo$' \
- -delete || die
- fi
-
- # Don't install docs when building a cross-gdb
- if [[ ${CTARGET} != ${CHOST} ]] ; then
- rm -rf "${ED}"/usr/share/{doc,info,locale} || die
- local f
- for f in "${ED}"/usr/share/man/*/* ; do
- if [[ ${f##*/} != ${CTARGET}-* ]] ; then
- mv "${f}" "${f%/*}/${CTARGET}-${f##*/}" || die
- fi
- done
- return 0
- fi
- # Install it by hand for now:
- # https://sourceware.org/ml/gdb-patches/2011-12/msg00915.html
- # Only install if it exists due to the twisted behavior (see
- # notes in src_configure above).
- [[ -e gdb/gdbserver/gdbreplay ]] && dobin gdb/gdbserver/gdbreplay
-
- if use client ; then
- docinto gdb
- dodoc gdb/CONTRIBUTE gdb/README gdb/MAINTAINERS \
- gdb/NEWS gdb/ChangeLog gdb/PROBLEMS
- fi
- docinto sim
- dodoc sim/{ChangeLog,MAINTAINERS,README-HACKING}
- if use server ; then
- docinto gdbserver
- dodoc gdb/gdbserver/{ChangeLog,README}
- fi
-
- if [[ -n ${PATCH_VER} ]] ; then
- dodoc "${WORKDIR}"/extra/gdbinit.sample
- fi
-
- # Remove shared info pages
- rm -f "${ED}"/usr/share/info/{annotate,bfd,configure,standards}.info*
-
- # gcore is part of ubin on freebsd
- if [[ ${CHOST} == *-freebsd* ]]; then
- rm "${ED}"/usr/bin/gcore || die
- fi
-}
-
-pkg_postinst() {
- # portage sucks and doesnt unmerge files in /etc
- rm -vf "${EROOT}"/etc/skel/.gdbinit
-
- if use prefix && [[ ${CHOST} == *-darwin* ]] ; then
- ewarn "gdb is unable to get a mach task port when installed by Prefix"
- ewarn "Portage, unprivileged. To make gdb fully functional you'll"
- ewarn "have to perform the following steps:"
- ewarn " % sudo chgrp procmod ${EPREFIX}/usr/bin/gdb"
- ewarn " % sudo chmod g+s ${EPREFIX}/usr/bin/gdb"
- fi
-}
diff --git a/sys-devel/gdb/gdb-8.3.ebuild b/sys-devel/gdb/gdb-8.3.ebuild
deleted file mode 100644
index 8e01738db46c..000000000000
--- a/sys-devel/gdb/gdb-8.3.ebuild
+++ /dev/null
@@ -1,251 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python{3_6,3_7} )
-
-inherit eutils flag-o-matic python-single-r1
-
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CTARGET} == ${CHOST} ]] ; then
- if [[ ${CATEGORY} == cross-* ]] ; then
- export CTARGET=${CATEGORY#cross-}
- fi
-fi
-is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
-
-RPM=
-MY_PV=${PV}
-case ${PV} in
-9999*)
- # live git tree
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
- inherit git-r3
- SRC_URI=""
- ;;
-*.*.50.2???????)
- # weekly snapshots
- SRC_URI="ftp://sourceware.org/pub/gdb/snapshots/current/gdb-weekly-${PV}.tar.xz"
- ;;
-*)
- # Normal upstream release
- SRC_URI="mirror://gnu/gdb/${P}.tar.xz
- ftp://sourceware.org/pub/gdb/releases/${P}.tar.xz"
- ;;
-esac
-
-PATCH_VER=""
-PATCH_DEV=""
-DESCRIPTION="GNU debugger"
-HOMEPAGE="https://sourceware.org/gdb/"
-SRC_URI="${SRC_URI}
- ${PATCH_DEV:+https://dev.gentoo.org/~${PATCH_DEV}/distfiles/${P}-patches-${PATCH_VER}.tar.xz}
- ${PATCH_VER:+mirror://gentoo/${P}-patches-${PATCH_VER}.tar.xz}
-"
-
-LICENSE="GPL-2 LGPL-2"
-SLOT="0"
-if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="~alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
-fi
-IUSE="+client lzma multitarget nls +python +server source-highlight test vanilla xml"
-REQUIRED_USE="
- python? ( ${PYTHON_REQUIRED_USE} )
- || ( client server )
-"
-
-# ia64 kernel crashes when gdb testsuite is running
-# hppa kernel crashes when gdb testsuite is running
-RESTRICT="
- hppa? ( test )
- ia64? ( test )
-
- !test? ( test )
-"
-
-RDEPEND="
- client? (
- dev-libs/mpfr:0=
- >=sys-libs/ncurses-5.2-r2:0=
- sys-libs/readline:0=
- lzma? ( app-arch/xz-utils )
- python? ( ${PYTHON_DEPS} )
- xml? ( dev-libs/expat )
- sys-libs/zlib
- )
- source-highlight? (
- dev-util/source-highlight
- )
-"
-DEPEND="${RDEPEND}"
-BDEPEND="
- app-arch/xz-utils
- sys-apps/texinfo
- client? (
- virtual/yacc
- test? ( dev-util/dejagnu )
- nls? ( sys-devel/gettext )
- )"
-
-S=${WORKDIR}/${PN}-${MY_PV}
-
-pkg_setup() {
- use python && python-single-r1_pkg_setup
-}
-
-src_prepare() {
- [[ -n ${RPM} ]] && rpm_spec_epatch "${WORKDIR}"/gdb.spec
-
- default
-
- strip-linguas -u bfd/po opcodes/po
-}
-
-gdb_branding() {
- printf "Gentoo ${PV} "
- if ! use vanilla && [[ -n ${PATCH_VER} ]] ; then
- printf "p${PATCH_VER}"
- else
- printf "vanilla"
- fi
- [[ -n ${EGIT_COMMIT} ]] && printf " ${EGIT_COMMIT}"
-}
-
-src_configure() {
- strip-unsupported-flags
-
- local myconf=(
- --with-pkgversion="$(gdb_branding)"
- --with-bugurl='https://bugs.gentoo.org/'
- --disable-werror
- # Disable modules that are in a combined binutils/gdb tree. #490566
- --disable-{binutils,etc,gas,gold,gprof,ld}
- )
- local sysroot="${EPREFIX}/usr/${CTARGET}"
- is_cross && myconf+=(
- --with-sysroot="${sysroot}"
- --includedir="${sysroot}/usr/include"
- --with-gdb-datadir="\${datadir}/gdb/${CTARGET}"
- )
-
- if use server && ! use client ; then
- # just configure+build in the gdbserver subdir to speed things up
- cd gdb/gdbserver
- myconf+=( --program-transform-name='' )
- else
- # gdbserver only works for native targets (CHOST==CTARGET).
- # it also doesn't support all targets, so rather than duplicate
- # the target list (which changes between versions), use the
- # "auto" value when things are turned on.
- is_cross \
- && myconf+=( --disable-gdbserver ) \
- || myconf+=( $(use_enable server gdbserver auto) )
- fi
-
- if ! ( use server && ! use client ) ; then
- # if we are configuring in the top level, then use all
- # the additional global options
- myconf+=(
- --enable-64-bit-bfd
- --disable-install-libbfd
- --disable-install-libiberty
- # Disable guile for now as it requires guile-2.x #562902
- --without-guile
- # This only disables building in the readline subdir.
- # For gdb itself, it'll use the system version.
- --disable-readline
- --with-system-readline
- # This only disables building in the zlib subdir.
- # For gdb itself, it'll use the system version.
- --without-zlib
- --with-system-zlib
- --with-separate-debug-dir="${EPREFIX}"/usr/lib/debug
- $(use_with xml expat)
- $(use_with lzma)
- $(use_enable nls)
- $(use_enable source-highlight)
- $(use multitarget && echo --enable-targets=all)
- $(use_with python python "${EPYTHON}")
- )
- fi
- if use sparc-solaris || use x86-solaris ; then
- # disable largefile support
- # https://sourceware.org/ml/gdb-patches/2014-12/msg00058.html
- myconf+=( --disable-largefile )
- fi
-
- econf "${myconf[@]}"
-}
-
-src_install() {
- if use server && ! use client; then
- cd gdb/gdbserver || die
- fi
- default
- if use client; then
- find "${ED}"/usr -name libiberty.a -delete || die
- fi
- cd "${S}" || die
-
- # Delete translations that conflict with binutils-libs. #528088
- # Note: Should figure out how to store these in an internal gdb dir.
- if use nls ; then
- find "${ED}" \
- -regextype posix-extended -regex '.*/(bfd|opcodes)[.]g?mo$' \
- -delete || die
- fi
-
- # Don't install docs when building a cross-gdb
- if [[ ${CTARGET} != ${CHOST} ]] ; then
- rm -rf "${ED}"/usr/share/{doc,info,locale} || die
- local f
- for f in "${ED}"/usr/share/man/*/* ; do
- if [[ ${f##*/} != ${CTARGET}-* ]] ; then
- mv "${f}" "${f%/*}/${CTARGET}-${f##*/}" || die
- fi
- done
- return 0
- fi
- # Install it by hand for now:
- # https://sourceware.org/ml/gdb-patches/2011-12/msg00915.html
- # Only install if it exists due to the twisted behavior (see
- # notes in src_configure above).
- [[ -e gdb/gdbserver/gdbreplay ]] && dobin gdb/gdbserver/gdbreplay
-
- if use client ; then
- docinto gdb
- dodoc gdb/CONTRIBUTE gdb/README gdb/MAINTAINERS \
- gdb/NEWS gdb/ChangeLog gdb/PROBLEMS
- fi
- docinto sim
- dodoc sim/{ChangeLog,MAINTAINERS,README-HACKING}
- if use server ; then
- docinto gdbserver
- dodoc gdb/gdbserver/{ChangeLog,README}
- fi
-
- if [[ -n ${PATCH_VER} ]] ; then
- dodoc "${WORKDIR}"/extra/gdbinit.sample
- fi
-
- # Remove shared info pages
- rm -f "${ED}"/usr/share/info/{annotate,bfd,configure,standards}.info*
-
- # gcore is part of ubin on freebsd
- if [[ ${CHOST} == *-freebsd* ]]; then
- rm "${ED}"/usr/bin/gcore || die
- fi
-}
-
-pkg_postinst() {
- # portage sucks and doesnt unmerge files in /etc
- rm -vf "${EROOT}"/etc/skel/.gdbinit
-
- if use prefix && [[ ${CHOST} == *-darwin* ]] ; then
- ewarn "gdb is unable to get a mach task port when installed by Prefix"
- ewarn "Portage, unprivileged. To make gdb fully functional you'll"
- ewarn "have to perform the following steps:"
- ewarn " % sudo chgrp procmod ${EPREFIX}/usr/bin/gdb"
- ewarn " % sudo chmod g+s ${EPREFIX}/usr/bin/gdb"
- fi
-}
diff --git a/sys-devel/gdb/gdb-9.1.ebuild b/sys-devel/gdb/gdb-9.1.ebuild
index c27518d0c97d..9361fca6fb0c 100644
--- a/sys-devel/gdb/gdb-9.1.ebuild
+++ b/sys-devel/gdb/gdb-9.1.ebuild
@@ -4,7 +4,7 @@
EAPI=7
PYTHON_COMPAT=( python{3_6,3_7} )
-inherit eutils flag-o-matic python-single-r1
+inherit eutils flag-o-matic python-single-r1 toolchain-funcs
export CTARGET=${CTARGET:-${CHOST}}
if [[ ${CTARGET} == ${CHOST} ]] ; then
@@ -17,7 +17,7 @@ is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
case ${PV} in
9999*)
# live git tree
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
inherit git-r3
SRC_URI=""
;;
@@ -44,7 +44,7 @@ SRC_URI="${SRC_URI}
LICENSE="GPL-2 LGPL-2"
SLOT="0"
if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
IUSE="+client lzma multitarget nls +python +server source-highlight test vanilla xml xxhash"
REQUIRED_USE="
@@ -183,6 +183,9 @@ src_configure() {
myconf+=( --disable-largefile )
fi
+ # source-highlight is detected with pkg-config: bug #716558
+ export ac_cv_path_pkg_config_prog_path="$(tc-getPKG_CONFIG)"
+
mkdir "${GDB_BUILD_DIR}" || die
pushd "${GDB_BUILD_DIR}" || die
ECONF_SOURCE=${S}
diff --git a/sys-devel/gdb/gdb-9999.ebuild b/sys-devel/gdb/gdb-9999.ebuild
index 06bc04042454..056b99bbc890 100644
--- a/sys-devel/gdb/gdb-9999.ebuild
+++ b/sys-devel/gdb/gdb-9999.ebuild
@@ -4,7 +4,7 @@
EAPI=7
PYTHON_COMPAT=( python{3_6,3_7} )
-inherit eutils flag-o-matic python-single-r1
+inherit eutils flag-o-matic python-single-r1 toolchain-funcs
export CTARGET=${CTARGET:-${CHOST}}
if [[ ${CTARGET} == ${CHOST} ]] ; then
@@ -17,7 +17,7 @@ is_cross() { [[ ${CHOST} != ${CTARGET} ]] ; }
case ${PV} in
9999*)
# live git tree
- EGIT_REPO_URI="git://sourceware.org/git/binutils-gdb.git"
+ EGIT_REPO_URI="https://sourceware.org/git/binutils-gdb.git"
inherit git-r3
SRC_URI=""
;;
@@ -44,7 +44,7 @@ SRC_URI="${SRC_URI}
LICENSE="GPL-2 LGPL-2"
SLOT="0"
if [[ ${PV} != 9999* ]] ; then
- KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~ppc-aix ~x64-cygwin ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
fi
IUSE="+client lzma multitarget nls +python +server source-highlight test vanilla xml xxhash"
REQUIRED_USE="
@@ -181,6 +181,9 @@ src_configure() {
myconf+=( --disable-largefile )
fi
+ # source-highlight is detected with pkg-config: bug #716558
+ export ac_cv_path_pkg_config_prog_path="$(tc-getPKG_CONFIG)"
+
econf "${myconf[@]}"
}