void-packages/srcpkgs/gdb/template

66 lines
2.1 KiB
Bash

# Template file for 'gdb'
pkgname=gdb
version=10.1
revision=2
build_style=gnu-configure
pycompile_dirs="/usr/share/gdb/python"
configure_args="--disable-werror --disable-nls --with-system-readline
--with-system-gdbinit=/etc/gdb/gdbinit --with-system-zlib $(vopt_enable gdbserver)
$(vopt_if static 'CFLAGS=-static CXXFLAGS=-static LDFLAGS=-static')
$(vopt_if python --with-python=/usr/bin/python3)
$(vopt_with debuginfod)"
hostmakedepends="texinfo perl pkg-config $(vopt_if python python3-devel)"
makedepends="ncurses-devel zlib-devel readline-devel expat-devel
$(vopt_if python 'python3-devel gettext-libs')
$(vopt_if debuginfod elfutils-devel)"
short_desc="GNU Debugger"
maintainer="Anthony Iliopoulos <ailiop@altatus.com>"
license="GPL-3.0-or-later"
homepage="https://www.gnu.org/software/gdb/"
distfiles="${GNU_SITE}/${pkgname}/${pkgname}-${version}.tar.xz"
checksum=f82f1eceeec14a3afa2de8d9b0d3c91d5a3820e23e0a01bbb70ef9f0276b62c0
python_version=3
patch_args="-Np1"
if [ "${CROSS_BUILD}" ]; then
# Make python3.x detection work in cross builds
CFLAGS="-I${XBPS_CROSS_BASE}/${py3_inc}"
CXXFLAGS="-I${XBPS_CROSS_BASE}/${py3_inc}"
fi
CFLAGS+=" -fcommon"
CXXFLAGS+=" -fcommon"
# Package build options
build_options="gdbserver static python debuginfod"
desc_option_gdbserver="Enable support for building GDB server"
desc_option_debuginfod="Enable support for libdebuginfod"
# Enable gdbserver if !static.
build_options_default="gdbserver python debuginfod"
# Both options cannot be enabled at the same time
vopt_conflict gdbserver static
post_extract() {
vsed -i 's,sgidefs.h,asm/sgidefs.h,' gdb/mips-linux-nat.c
mkdir -p build
}
do_configure() {
cd build
../configure ${configure_args/with-sysroot/with-build-sysroot} \
CFLAGS_FOR_BUILD="${CFLAGS_FOR_BUILD} -fcommon"
export gl_cv_func_gettimeofday_clobber=no
export gl_cv_func_working_strerror=yes
export gl_cv_func_strerror_0_works=yes
}
do_build() {
cd build
make ${makejobs} all
}
do_install() {
cd build
make DESTDIR=${DESTDIR} ${makejobs} install
# resolve conflicts with binutils
rm -rf ${DESTDIR}/usr/{include,lib,lib64}
for f in bfd configure standards; do
rm -f ${DESTDIR}/usr/share/info/${f}.info*
done
}