Name libgmp10
Description Multiprecision arithmetic library
Version 2:6.3.0+dfsg-2ubuntu6.1
Package Base gmp
Homepage https://gmplib.org/
Maintainers ['Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>']
Contributors ['Anton Gladky <gladk@debian.org>', 'Steve M. Robbins <smr@debian.org>']
Distro-repo https://git.launchpad.net/ubuntu/+source/gmp/tree/?h=ubuntu/noble
Sources ['https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/../?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0001-Add-.gitignore.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0002-x86-Add-GMP_ASM_X86_CET_MACROS-to-acinclude.m4.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0003-x86-defs.m4-Use-X86_GNU_PROPERTY-and-X86_ENDBR.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0004-x86-Append-missing-ASM_END-to-asm-files.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0005-x86_64-defs.m4-Use-X86_GNU_PROPERTY-and-X86_ENDBR.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0006-x86_64-Append-ASM_END-to-assembly-codes.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0007-x86_64-coreibwl-mullo_basecase.asm-Add-X86_ENDBR.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0008-x86_64-k10-popcount.asm-Prepend-X86_NOTRACK-to-jmp-r.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0009-mpn-x86_64-Add-X86_ENDBR-to-indirect-branch-targets.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0010-x86-aors_n.asm-Add-X86_ENDBR-to-indirect-jump-target.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0011-x86-p6-Prepend-X86_NOTRACK-to-jmp-reg.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0012-x86-k6-Prepend-X86_NOTRACK-to-jmp-reg.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0013-x86-k7-Prepend-X86_NOTRACK-to-indirect-branches.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/0014-s390x-revert_popcount_and_hamdist_back_from_z14_to_z13.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/Exclude-doc-Makefile.patch?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/gmp/plain/debian/patches/series?h=ubuntu/noble', 'https://git.launchpad.net/ubuntu/+source/libgmp10/plain/debian/watch?h=ubuntu/noble']
Dependencies ['libc6']
Optional-Dependencies []
Build-Dependencies ['m4', 'debhelper-compat']
Provides []
Builddate
Architecture amd64
Distro-Version noble
Licenses []
Hash 285f8a505dfa8e1b33f357a9d8d3477ad35bf18c0b34771a6df4c25923f3ae0d
#!/usr/bin/make -f

ifneq (,$(findstring $(DEB_HOST_ARCH), s390x))
  export DEB_BUILD_MAINT_OPTIONS=qa=-framepointer
endif

DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk
include /usr/share/dpkg/architecture.mk

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

# This has to be exported to make some magic below work.
export DH_OPTIONS

ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
  NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
  JOBSFLAG = -j$(NUMJOBS)
endif

MAKE_CHECK = : disabled make check
ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
  ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
    MAKE_CHECK = $(MAKE) check
  endif
endif

#export CFLAGS = -Wall -g
#export LDFLAGS = -Wl,-Bsymbolic-functions

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
  CFLAGS += -O0
else
  ifneq (,$(findstring $(DEB_HOST_ARCH), ia64))
    CFLAGS += -O2
  else
    CFLAGS += -O3
  endif
endif


confflags = --prefix=/usr --enable-cxx

ifneq (,$(filter $(DEB_HOST_ARCH), amd64 kfreebsd-amd64 lpia))
  confflags += --disable-fat
else
  confflags += --enable-fat
endif

ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
  AR = ar
  confflags_build += --build $(DEB_BUILD_GNU_TYPE)
else
  AR = $(DEB_HOST_GNU_TYPE)-ar
  confflags_build += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) --target $(DEB_HOST_GNU_TYPE)
endif

ifneq (,$(findstring $(DEB_HOST_ARCH), x32))
  confflags += ABI=x32
endif

ifneq (,$(filter $(DEB_HOST_ARCH), mips64 mips64el))
  confflags += ABI=64
endif

ifneq (,$(filter $(DEB_HOST_ARCH), s390x))
  confflags += MPN_PATH="s390_64/z13 s390_64 generic"
endif

confflags_ma = $(confflags) $(confflags_build) --libdir=/usr/lib/$(DEB_HOST_MULTIARCH)

CC   = $(DEB_HOST_GNU_TYPE)-gcc
CXX   = $(DEB_HOST_GNU_TYPE)-g++


configure: configure-stamp
configure-stamp:
	dh_autoreconf
	mkdir -p build
	cd build && ../configure $(confflags_ma) \
	    AR=$(AR) CC="$(CC)" CFLAGS="$(CFLAGS)" \
	    CXX="$(CXX)" CXXFLAGS="$(CXXFLAGS)" ASMFLAGS="--debug-prefix-map=$(CURDIR)=."
	touch $@

build: build-stamp
build-stamp: configure
	dh_testdir
	$(MAKE) $(JOBSFLAG) -C build
	$(MAKE_CHECK) -C build
	touch $@

clean:
	dh_testdir
	dh_testroot
	rm -rf build build-stamp
	dh_clean

install-prep:
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs

install: build-stamp install-prep
	rm -rf debian/tmp
	# Install places gmp.h in 'includeexecdir' which is non-standard and cannot be set at compile time,
	# so override it at install.
	$(MAKE) DESTDIR=`pwd`/debian/tmp includeexecdir=/usr/include/$(DEB_HOST_MULTIARCH) -C build install

	# Replace embedded build path with a placeholder string
	sed -i -e "s,$(CURDIR),BUILDPATH,g" debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/gmp.h

	dh_install -plibgmp10 usr/lib/*/libgmp.so.*
	dh_install -plibgmpxx4ldbl usr/lib/*/libgmpxx.so.*

	dh_install -plibgmp-dev usr/lib/*/lib*.so
	dh_install -plibgmp-dev usr/lib/*/lib*.a
	dh_install -plibgmp-dev usr/lib/*/pkgconfig
	dh_install -plibgmp-dev usr/include

	# Install upstream ChangeLog, AUTHORS, NEWS, and README only in -dev package
	dh_installchangelogs -plibgmp-dev
	dh_installdocs -plibgmp-dev AUTHORS NEWS README

# This single target is used to build all the packages, all at once, or
# one at a time. So keep in mind: any options passed to commands here will
# affect _all_ packages. Anything you want to only affect one package
# should be put in another target, such as the install target.
binary-common:
	# See 633312, http://wiki.debian.org/ReleaseGoals/LAFileRemoval
	sed -i "/dependency_libs/ s/'.*'/''/" `find debian/ -name '*.la'`
	dh_testdir
	dh_testroot
	dh_installchangelogs
	dh_installdocs
	dh_installexamples
	dh_installmenu
	dh_lintian
	dh_strip
	dh_link
	dh_compress
	dh_fixperms
	dh_makeshlibs
	dh_installdeb
	dh_shlibdeps
	dh_gencontrol
	dh_md5sums
	dh_builddeb

# Build architecture independant packages using the common target.
binary-indep: build install
	 $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common

# Build architecture dependant packages using the common target.
binary-arch: build install $(EXTRA_INSTALL)
	$(MAKE) -f debian/rules DH_OPTIONS=-a binary-common

# Any other binary targets build just one binary package at a time.
binary-%: build install
	make -f debian/rules binary-common DH_OPTIONS=-p$*

build-arch: build
build-indep: build

binary: binary-indep binary-arch
.PHONY: build build-arch build-indep clean binary-indep binary-arch binary-common binary install install-prep