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
dependencies for the non-default multilib architecture(s)."
revision=1
Add_dependency run gcc-c++ ">=${version}"
Add_dependency run gcc-multilib ">=${version}"
Add_dependency run libstdc++32 ">=${version}"
Add_dependency run libstdc++32-devel ">=${version}"
do_install()
{

View File

@ -8,6 +8,8 @@ long_desc="
On architectures with multilib support, the package contains files and
dependencies for the non-default multilib architecture(s)."
revision=1
Add_dependency run gcc ">=${version}"
Add_dependency run gcc-multilib ">=${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."
revision=1
do_install()
{
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
for OpenMP v3.0 support."
revision=1
Add_dependency run libgcc32
Add_dependency run glibc32

View File

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

View File

@ -5,6 +5,8 @@ long_desc="
The libmudflap libraries are used by GCC for instrumenting pointer
and array dereferencing operations."
revision=1
Add_dependency run gcc-multilib
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
which is needed to run Objective-C dynamically linked programs."
revision=1
Add_dependency run libgcc32
Add_dependency run glibc32

View File

@ -6,6 +6,8 @@ long_desc="${long_desc}
This package contains the 32bit Stack Smashing Protection shared library
provided by GCC."
revision=1
Add_dependency run glibc32
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
C++ library 32bit for x86_64 systems."
revision=1
Add_dependency run libgcc32
Add_dependency run glibc32

View File

@ -1,6 +1,7 @@
# Template build file for 'gcc-multilib'
pkgname=gcc-multilib
version=4.5.0
revision=1
_gmp_ver=5.0.1
_mpfr_ver=2.4.2
_mpc_ver=0.8.1
@ -31,11 +32,11 @@ long_desc="
code on x86_64 systems."
subpackages="libgcc32 libssp32 libgomp32 libobjc32 libstdc++32 libmudflap32"
subpackages="${subpackages} libmudflap32-devel gcc-c++-multilib"
subpackages="${subpackages} gcc-objc-multilib gcc-objc++-multilib"
subpackages="${subpackages} libstdc++32-devel libmudflap32-devel"
subpackages="${subpackages} gcc-c++-multilib gcc-objc-multilib"
subpackages="${subpackages} gcc-objc++-multilib"
disable_parallel_build=yes
nostrip=yes
noverifyrdeps=yes
only_for_archs=x86_64
@ -65,9 +66,10 @@ pre_install()
post_install()
{
local libmddir="/usr/lib/gcc/x86_64-unknown-linux-gnu/${version}"
local dirn _dir_
# 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/lib32/{libiberty*,*.py}
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/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 -m644 ${wrksrc}/build/gcc/specs \
${DESTDIR}/${libmddir}

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

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