Name libtool
Description A generic library support script
Version 2.6.0-4
Package Base libtool
Homepage https://www.gnu.org/software/libtool
Maintainers ['Frederik Schwan <freswa@archlinux.org>', 'Giancarlo Razzolini <grazzolini@archlinux.org>']
Contributors ['Allan McRae <allan@archlinux.org>', 'Bartłomiej Piotrowski <bpiotrowski@archlinux.org>', 'judd <jvinet@zeroflux.org>']
Distro-repo https://gitlab.archlinux.org/archlinux/packaging/packages/libtool
Sources ['git+https://git.savannah.gnu.org/git/gnulib.git', 'git+https://git.savannah.gnu.org/git/libtool.git#commit=e40fdc22cf727fb885f9df7d9affa827e3253d1c', 'gnulib-bootstrap::git+https://github.com/gnulib-modules/bootstrap.git']
Dependencies ['glibc', 'sh', 'tar']
Optional-Dependencies []
Build-Dependencies ['gcc', 'git', 'glibc', 'lib32-gcc-libs', 'lib32-glibc', 'help2man']
Provides ['libltdl', 'libtool-multilib']
Builddate 09-02-2026 17:38:20
Architecture x86_64
Distro-Version
Licenses ['LGPL-2.0-or-later WITH Libtool-exception']
Hash c1a58e359f64e4d20d0b279fa64fe1ee87773cf392f7f19c34ee040ecfd36330
# Maintainer: Giancarlo Razzolini <grazzolini@archlinux.org>
# Maintainer: Frederik Schwan <freswa at archlinux dot org>
# Contributor: Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Contributor: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>

# NOTE: requires rebuilt with each new gcc version

pkgbase=libtool
pkgname=(libtool lib32-libltdl)
pkgver=2.6.0
_commit=e40fdc22cf727fb885f9df7d9affa827e3253d1c
pkgrel=4
_gccver=15.2.1
pkgdesc='A generic library support script'
arch=(x86_64)
url='https://www.gnu.org/software/libtool'
license=('LGPL-2.0-or-later WITH Libtool-exception')
depends=(
  sh
  tar
)
makedepends=(
  "gcc>=$_gccver"
  git
  glibc
  lib32-gcc-libs
  lib32-glibc
  help2man
)
checkdepends=(
  gcc-fortran
)
source=(
  git+https://git.savannah.gnu.org/git/libtool.git#commit=$_commit
  git+https://git.savannah.gnu.org/git/gnulib.git
  gnulib-bootstrap::git+https://github.com/gnulib-modules/bootstrap.git
)
b2sums=('944513327da07374709975c44ad8a80e953727ec11a68bdf6dd3a376acb02339000a0d5982011db9eeb863be0362991cbab1e2fe6c56d7710c1d527ea40bbcde'
        'SKIP'
        'SKIP')

pkgver() {
  cd libtool
  git describe --tags | sed 's/^v//;s/[^-]*-g/r&/;s/-/+/g'
}

prepare() {
  cd libtool

  git submodule init
  git config --local submodule.gnulib.url "${srcdir}"/gnulib
  git config --local submodule.gl-mod/bootstrap.url "${srcdir}"/gnulib-bootstrap
  git -c protocol.file.allow=always submodule update

  ./bootstrap

  cp -ar "${srcdir}"/libtool "${srcdir}"/libtool32
}

build() {
  cd libtool
  ./configure --prefix=/usr lt_cv_sys_lib_dlsearch_path_spec="/usr/lib /usr/lib32"
  make

  #lib32
  cd "${srcdir}"/libtool32
  export CC="gcc -m32" CXX="g++ -m32"
  ./configure --prefix=/usr lt_cv_sys_lib_dlsearch_path_spec="/usr/lib /usr/lib32" --libdir=/usr/lib32
  make
}

check() {
  cd libtool
  make check gl_public_submodule_commit=
}

package_libtool() {
  depends+=(
    glibc
  )
  provides=(
    "libltdl=$pkgver"
    "libtool-multilib=$pkgver"
  )
  conflicts=(
    libltdl
    libtool-multilib
  )
  replaces=(
    libltdl
    libtool-multilib
  )

  cd libtool
  make DESTDIR="$pkgdir" install
}

package_lib32-libltdl() {
  depends+=(
    lib32-glibc
    libtool
  )
  provides=(
    "lib32-libtool=$pkgver"
  )
  conflicts=(
    lib32-libtool
  )
  replaces=(
    lib32-libtool
  )

  cd libtool32
  make DESTDIR="$pkgdir" install-libLTLIBRARIES
}