como fazer o patch do PKGBUILD para lib32

0

Eu instalei a biblioteca do Poco no meu sistema Arch64 usando o AUR. Fontes foram baixadas, compiladas e o pacote instalado com sucesso. Mas agora eu preciso corrigir o PKGBUILD para que eu possa compilar a versão de 32 bits da biblioteca e instalá-lo ao lado da versão de 64 bits.

Este é o PKGBUILD original:

# Maintainer: Robert Knauer 
# Contributor: Rodrigo Grumiche Silva 
# Contributor: nozog
# Contributor: davidhjelm
# Contributor: Ray Kohler 
# Contributor: Nathan Owe 

pkgname=poco
pkgver=1.4.6
pkgrel=1
pkgdesc="C++ class libraries for network-centric, portable applications, complete edition"
arch=('i686' 'x86_64')
url="http://www.pocoproject.org/"
license=('custom:boost')
depends=('unixodbc' 'libmysqlclient' 'openssl')
makedepends=('gcc' 'make' 'unixodbc' 'libmysqlclient' 'openssl' 'chrpath')
source=(
  "${pkgname}-${pkgver}-all.tar.gz"::"https://sourceforge.net/projects/${pkgname}/files/sources/${pkgname}-${pkgver}/${pkgname}-${pkgver}-all.tar.gz/download"
)
sha256sums=(
  'cf8229310f047e731cc6273a8df55e03b76f0ed7d5b5d251f99a0f80f6c2c763'
)

build()
{
  cd "${srcdir}/${pkgname}-${pkgver}-all"
  ./configure --prefix=/usr --no-samples --no-tests
  make ODBCLIBDIR="/usr/lib"
}

package()
{
  cd "${srcdir}/${pkgname}-${pkgver}-all"
  make ODBCLIBDIR="/usr/lib" DESTDIR="${pkgdir}" install
  install -Dm644 'LICENSE' "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
  # remove rpath information from binaries
  chrpath -d "${pkgdir}/usr/bin/cpspc"
  chrpath -d "${pkgdir}/usr/bin/cpspcd"
  chrpath -d "${pkgdir}/usr/bin/f2cpspd"
  chrpath -d "${pkgdir}/usr/bin/f2cpsp"
  # remove debugging libraries
  rm "${pkgdir}/usr/lib/libPoco"*"d.so"*
}

A primeira coisa que tentei foi dar uma olhada em outro pacote lib32- * AUR, mas falhei em adicionar o -m32 flag.

    
por Adam Trhon 19.02.2013 / 22:42

1 resposta

1

Você precisa,

  1. Altere o nome do pacote para lib32-XX

  2. coloque um export CFLAGS="-m32" antes de make ou ./configure (nesse caso, seria a função build()

  3. E você precisa alterar o caminho da instalação, para /usr/lib32 , nesse caso, "poderia" ser toda a ocorrência de ODBCLIBDIR="/usr/lib" , vale a pena tentar

E examine o conteúdo de pkg antes de instalar qualquer coisa, veja se está certo.

    
por 20.02.2013 / 03:46