gcc-multilib: install some multilib headers required for g++ -m32.

This commit is contained in:
Juan RP 2010-05-21 00:29:47 +02:00
parent 4afc391e39
commit 50150858eb
12 changed files with 51 additions and 7 deletions

View file

@ -7,9 +7,11 @@ long_desc="
On architectures with multilib support, the package contains files and On architectures with multilib support, the package contains files and
dependencies for the non-default multilib architecture(s)." dependencies for the non-default multilib architecture(s)."
revision=1
Add_dependency run gcc-c++ ">=${version}" Add_dependency run gcc-c++ ">=${version}"
Add_dependency run gcc-multilib ">=${version}" Add_dependency run gcc-multilib ">=${version}"
Add_dependency run libstdc++32 ">=${version}" Add_dependency run libstdc++32-devel ">=${version}"
do_install() do_install()
{ {

View file

@ -8,6 +8,8 @@ long_desc="
On architectures with multilib support, the package contains files and On architectures with multilib support, the package contains files and
dependencies for the non-default multilib architecture(s)." dependencies for the non-default multilib architecture(s)."
revision=1
Add_dependency run gcc ">=${version}" Add_dependency run gcc ">=${version}"
Add_dependency run gcc-multilib ">=${version}" Add_dependency run gcc-multilib ">=${version}"
Add_dependency run gcc-objc ">=${version}" Add_dependency run gcc-objc ">=${version}"

View file

@ -5,6 +5,8 @@ long_desc="${long_desc}
This package contains the 32bit GCC shared library for x86_64 systems." This package contains the 32bit GCC shared library for x86_64 systems."
revision=1
do_install() do_install()
{ {
mkdir -p ${DESTDIR}/usr/lib32 mkdir -p ${DESTDIR}/usr/lib32

View file

@ -6,6 +6,8 @@ long_desc="${long_desc}
This package contains the 32bit GCC shared support library which is needed This package contains the 32bit GCC shared support library which is needed
for OpenMP v3.0 support." for OpenMP v3.0 support."
revision=1
Add_dependency run libgcc32 Add_dependency run libgcc32
Add_dependency run glibc32 Add_dependency run glibc32

View file

@ -7,6 +7,8 @@ long_desc="
This package contains the headers and the static libraries." This package contains the headers and the static libraries."
revision=1
Add_dependency run gcc-multilib Add_dependency run gcc-multilib
Add_dependency run glibc32-devel Add_dependency run glibc32-devel
Add_dependency run libmudflap32 Add_dependency run libmudflap32

View file

@ -5,6 +5,8 @@ long_desc="
The libmudflap libraries are used by GCC for instrumenting pointer The libmudflap libraries are used by GCC for instrumenting pointer
and array dereferencing operations." and array dereferencing operations."
revision=1
Add_dependency run gcc-multilib Add_dependency run gcc-multilib
Add_dependency run glibc32 Add_dependency run glibc32

View file

@ -6,6 +6,8 @@ long_desc="${long_desc}
This package contains the 32bit GCC Objective-C shared support library This package contains the 32bit GCC Objective-C shared support library
which is needed to run Objective-C dynamically linked programs." which is needed to run Objective-C dynamically linked programs."
revision=1
Add_dependency run libgcc32 Add_dependency run libgcc32
Add_dependency run glibc32 Add_dependency run glibc32

View file

@ -6,6 +6,8 @@ long_desc="${long_desc}
This package contains the 32bit Stack Smashing Protection shared library This package contains the 32bit Stack Smashing Protection shared library
provided by GCC." provided by GCC."
revision=1
Add_dependency run glibc32 Add_dependency run glibc32
do_install() do_install()

View file

@ -0,0 +1,16 @@
# Template file for 'libstdc++32-devel'.
#
short_desc="GCC Standard C++ Library (32bit) development files"
long_desc="${long_desc}
This package contains a rewritten 32bit standard compliant GCC Standard
C++ development files and headers for x86_64 systems."
Add_dependency run libstdc++-devel
Add_dependency run libstdc++32
do_install()
{
mkdir -p ${DESTDIR}/usr
mv ${SRCPKGDESTDIR}/usr/include ${DESTDIR}/usr
}

View file

@ -6,6 +6,8 @@ long_desc="${long_desc}
This package contains a rewritten standard compliant GCC Standard This package contains a rewritten standard compliant GCC Standard
C++ library 32bit for x86_64 systems." C++ library 32bit for x86_64 systems."
revision=1
Add_dependency run libgcc32 Add_dependency run libgcc32
Add_dependency run glibc32 Add_dependency run glibc32

View file

@ -1,6 +1,7 @@
# Template build file for 'gcc-multilib' # Template build file for 'gcc-multilib'
pkgname=gcc-multilib pkgname=gcc-multilib
version=4.5.0 version=4.5.0
revision=1
_gmp_ver=5.0.1 _gmp_ver=5.0.1
_mpfr_ver=2.4.2 _mpfr_ver=2.4.2
_mpc_ver=0.8.1 _mpc_ver=0.8.1
@ -31,11 +32,11 @@ long_desc="
code on x86_64 systems." code on x86_64 systems."
subpackages="libgcc32 libssp32 libgomp32 libobjc32 libstdc++32 libmudflap32" subpackages="libgcc32 libssp32 libgomp32 libobjc32 libstdc++32 libmudflap32"
subpackages="${subpackages} libmudflap32-devel gcc-c++-multilib" subpackages="${subpackages} libstdc++32-devel libmudflap32-devel"
subpackages="${subpackages} gcc-objc-multilib gcc-objc++-multilib" subpackages="${subpackages} gcc-c++-multilib gcc-objc-multilib"
subpackages="${subpackages} gcc-objc++-multilib"
disable_parallel_build=yes disable_parallel_build=yes
nostrip=yes
noverifyrdeps=yes noverifyrdeps=yes
only_for_archs=x86_64 only_for_archs=x86_64
@ -65,9 +66,10 @@ pre_install()
post_install() post_install()
{ {
local libmddir="/usr/lib/gcc/x86_64-unknown-linux-gnu/${version}" local libmddir="/usr/lib/gcc/x86_64-unknown-linux-gnu/${version}"
local dirn _dir_
# We are only interested in 32bit stuff, remove anything else. # We are only interested in 32bit stuff, remove anything else.
rm -rf ${DESTDIR}/usr/{lib64,include,libexec,bin,share} rm -rf ${DESTDIR}/usr/{lib64,libexec,bin,share}
rm -f ${DESTDIR}/usr/lib/*.{spec,a,so*} rm -f ${DESTDIR}/usr/lib/*.{spec,a,so*}
rm -f ${DESTDIR}/usr/lib32/{libiberty*,*.py} rm -f ${DESTDIR}/usr/lib32/{libiberty*,*.py}
rm -rf ${DESTDIR}/${libmddir}/{include,include-fixed,install-tools,plugin} rm -rf ${DESTDIR}/${libmddir}/{include,include-fixed,install-tools,plugin}
@ -78,6 +80,13 @@ post_install()
mv ${DESTDIR}/usr/lib32/lib{gomp,objc*}.a ${DESTDIR}/${libmddir}/32 mv ${DESTDIR}/usr/lib32/lib{gomp,objc*}.a ${DESTDIR}/${libmddir}/32
mv ${DESTDIR}/usr/lib32/libssp*.a ${DESTDIR}/${libmddir}/32 mv ${DESTDIR}/usr/lib32/libssp*.a ${DESTDIR}/${libmddir}/32
# Keep libstdc++ 32bit headers, remove anything else.
mv ${DESTDIR}/usr/include/c++/${version}/x86_64-unknown-linux-gnu/32 \
${wrksrc}/xbps_32bits_libstdc++
rm -rf ${DESTDIR}/usr/include/c++/${version}/*
install -d ${DESTDIR}/usr/include/c++/${version}/x86_64-unknown-linux-gnu
mv ${wrksrc}/xbps_32bits_libstdc++ \
${DESTDIR}/usr/include/c++/${version}/x86_64-unknown-linux-gnu/32
# Install specs file overriding native gcc with no multilib support. # Install specs file overriding native gcc with no multilib support.
install -m644 ${wrksrc}/build/gcc/specs \ install -m644 ${wrksrc}/build/gcc/specs \
${DESTDIR}/${libmddir} ${DESTDIR}/${libmddir}

1
srcpkgs/libstdc++32-devel Symbolic link
View file

@ -0,0 +1 @@
gcc-multilib