diff --git a/srcpkgs/gcc-multilib/template b/srcpkgs/gcc-multilib/template index b7169836d4..31103d3c36 100644 --- a/srcpkgs/gcc-multilib/template +++ b/srcpkgs/gcc-multilib/template @@ -1,8 +1,11 @@ # Template build file for 'gcc-multilib' -pkgname=gcc-multilib +only_for_archs="x86_64" +_triplet="x86_64-unknown-linux-gnu" _majorver=4.7 + +pkgname=gcc-multilib version=${_majorver}.3 -revision=7 +revision=8 wrksrc="gcc-${version}" short_desc="The GNU C Compiler (multilib files)" maintainer="Juan RP " @@ -11,17 +14,10 @@ license="GFDL-1.2, GPL-3, LGPL-2.1" distfiles="http://ftp.gnu.org/pub/gnu/gcc/gcc-$version/gcc-$version.tar.bz2" checksum=2f7c37eb4fc14422ff2358a9ef59c974a75ab41204ef0e49fc34ab1d8981a9c3 -only_for_archs="x86_64" - hostmakedepends="perl flex zip unzip" -makedepends="zlib-devel libmpc-devel>=1.0.1_2 ppl-devel>=1.0 cloog-devel isl-devel - libfl-devel glibc32-devel" - -case "$XBPS_TARGET_MACHINE" in - i?86) _triplet="${XBPS_TARGET_MACHINE}-pc-linux-gnu";; - x86_64) _triplet="${XBPS_MACHINE}-unknown-linux-gnu";; - armv6l) _triplet="arm-linux-gnueabihf";; -esac +makedepends="zlib-devel libmpc-devel>=1.0.1_2 ppl-devel>=1.0 cloog-devel isl-devel libfl-devel glibc-devel-32bit" +depends="gcc>=${_majorver} libssp-32bit>=${_majorver} libgcc-32bit>=${_majorver} + libgomp-32bit>=${_majorver} libitm-32bit>=${_majorver} zlib-32bit glibc-devel-32bit" do_configure() { # As specified in the LFS book, disable installing libiberty. @@ -46,172 +42,42 @@ do_build() { } do_install() { + # Install to a tempdir and then only copy relevant files. if [ "$XBPS_TARGET_MACHINE" = "x86_64" ]; then vmkdir usr/lib cd ${DESTDIR}/usr ln -sf lib lib64 fi cd ${wrksrc} - make DESTDIR=${DESTDIR} install + make DESTDIR=${wrksrc}/${pkgname}-build install # Make version a symlink of major version to make all versions # from the same series work automagically. - mv ${DESTDIR}/usr/lib/gcc/${_triplet}/${version} \ - ${DESTDIR}/usr/lib/gcc/${_triplet}/${_majorver} - cd ${DESTDIR}/usr/lib/gcc/${_triplet} - ln -sf ${_majorver} ${version} + vmkdir usr/include/c++/${_majorver}/${_triplet} + vmkdir usr/lib/gcc/${_triplet}/${_majorver} - # Ditto for c++ headers. - mv ${DESTDIR}/usr/include/c++/${version} \ - ${DESTDIR}/usr/include/c++/${_majorver} - cd ${DESTDIR}/usr/include/c++ - ln -sf ${_majorver} ${version} + ln -s ${_majorver} ${DESTDIR}/usr/include/c++/${version} + ln -s ${_majorver} ${DESTDIR}/usr/lib/gcc/${_triplet}/${version} + + cp -a ${wrksrc}/${pkgname}-build/usr/lib/gcc/${_triplet}/${version}/32 \ + ${DESTDIR}/usr/lib/gcc/${_triplet}/${_majorver}/ + cp -a ${wrksrc}/${pkgname}-build/usr/include/c++/${version}/${_triplet}/32 \ + ${DESTDIR}/usr/include/c++/${_majorver}/${_triplet} + + vinstall ${wrksrc}/host-${_triplet}/gcc/specs 644 usr/lib/gcc/${_triplet}/${_majorver} rm -f ${DESTDIR}/usr/lib64 - - # Remove libffi stuff. - rm -f ${DESTDIR}/usr/lib/libffi* - rm -f ${DESTDIR}/usr/share/man/man3/ffi* - - if [ -d ${DESTDIR}/usr/lib32 ]; then - rm -f ${DESTDIR}/usr/lib32/libffi* - rm -f ${DESTDIR}/usr/lib32/libgfortran* - rm -f ${DESTDIR}/usr/lib32/libgo.{a,so*} - rm -f ${DESTDIR}/usr/lib32/libgobegin.a - rm -f ${DESTDIR}/usr/lib32/libquadmath* - rm -rf ${DESTDIR}/usr/lib32/go - fi - - # Remove all python scripts in libdir. - rm -f ${DESTDIR}/usr/lib/*.py - - # Remove more python stuff. - if [ -d ${DESTDIR}/usr/share/gcc-${version}/python ]; then - rm -rf ${DESTDIR}/usr/share/gcc-${version}/python - fi } gcc-c++-multilib_package() { - depends="gcc-c++>=${_majorver} gcc-multilib>=${_majorver} libstdc++32-devel>=${_majorver}" - short_desc="GCC C++ compiler (multilib files)" - noverifyrdeps=yes - pkg_install() { - vmkdir usr/lib/gcc/${_triplet}/${_majorver}/32 - mv ${DESTDIR}/usr/lib32/libstdc++.a \ - ${PKGDESTDIR}/usr/lib/gcc/${_triplet}/${_majorver}/32 - mv ${DESTDIR}/usr/lib32/libsupc++.a \ - ${PKGDESTDIR}/usr/lib/gcc/${_triplet}/${_majorver}/32 - } -} - -gcc-multilib_package() { - depends="gcc>=${_majorver} libgcc32>=${_majorver} libgomp32>=${_majorver} libitm32>=${_majorver} zlib32 glibc32-devel" - noverifyrdeps=yes - pkg_install() { - vmove usr/lib/gcc/${_triplet}/${_majorver}/32 - vmove "usr/lib32/libssp*.a" - vinstall ${wrksrc}/host-${_triplet}/gcc/specs 644 usr/lib/gcc/${_triplet}/${_majorver} - } + depends="gcc-c++>=${_majorver} gcc-multilib>=${_majorver} libstdc++-devel-32bit>=${_majorver}" + short_desc="GCC C++ compiler (multilib files)" + pkg_install() { + vmove usr/include/c++ + } } gcc-objc-multilib_package() { - depends="gcc-multilib>=${_majorver} gcc-objc>=${_majorver} libobjc32>=${_majorver}" - short_desc="The GNU Objective-C compiler (multilib files)" - noverifyrdeps=yes - pkg_install() { - vmkdir usr/lib/gcc/${_triplet}/${_majorver}/32 - mv ${DESTDIR}/usr/lib32/libobjc*.a \ - ${PKGDESTDIR}/usr/lib/gcc/${_triplet}/${_majorver}/32 - } -} - -libgcc32_package() { - short_desc="GCC library (32bit)" - noverifyrdeps=yes - pkg_install() { - vmove "usr/lib32/libgcc_s.so*" - } -} - -libgcj32_package() { - short_desc="GCC Java library (32bit)" - noverifyrdeps=yes - pkg_install() { - vmove "usr/lib32/libgcj*.so*" - vmove "usr/lib32/libgij.so*" - vmove usr/lib32/gcj-${version}-13 - vmove usr/lib32/logging.properties - vmove usr/lib32/security/classpath.security - } -} - -libgomp32_package() { - depends="libgcc32 glibc32" - short_desc="GCC OpenMP v3.0 library (32bit)" - noverifyrdeps=yes - pkg_install() { - vmove "usr/lib32/libgomp.*" - } -} - -libitm32_package() { - depends="libgcc32" - short_desc="GCC Transactional Memory library (32bit)" - noverifyrdeps=yes - pkg_install() { - vmove "usr/lib32/libitm*" - } -} - -libmudflap32-devel_package() { - depends="gcc-multilib glibc32-devel libmudflap32" - short_desc="GCC mudflap libraries (32bit) - development files" - pkg_install() { - vmove "usr/lib32/libmudflap*.a" - } -} - -libmudflap32_package() { - depends="gcc-multilib glibc32" - short_desc="GCC mudflap libraries (32bit)" - noverifyrdeps=yes - pkg_install() { - vmove "usr/lib32/libmudflap*.so*" - } -} - -libobjc32_package() { - depends="libgcc32 glibc32" - short_desc="GCC Objective-C library (32bit)" - noverifyrdeps=yes - pkg_install() { - vmove "usr/lib32/libobjc.so*" - } -} - -libssp32_package() { - depends="glibc32" - short_desc="GCC SSP library (32bit)" - noverifyrdeps=yes - pkg_install() { - vmove "usr/lib32/libssp.so*" - } -} - -libstdc++32-devel_package() { - depends="libstdc++-devel libstdc++32" - short_desc="GCC Standard C++ Library (32bit) - development files" - noverifyrdeps=yes - pkg_install() { - vmove usr/include/c++/${_majorver}/${_triplet}/32 - } -} - -libstdc++32_package() { - depends="libgcc32 glibc32 libstdc++" - short_desc="GCC Standard C++ Library (32bit)" - noverifyrdeps=yes - pkg_install() { - vmove "usr/lib32/libstdc++.so*" - } + depends="gcc-multilib>=${_majorver} gcc-objc>=${_majorver} libobjc-32bit>=${_majorver}" + short_desc="The GNU Objective-C compiler (multilib files)" } diff --git a/srcpkgs/glibc32-devel b/srcpkgs/glibc32-devel deleted file mode 120000 index e8a40a3e8e..0000000000 --- a/srcpkgs/glibc32-devel +++ /dev/null @@ -1 +0,0 @@ -glibc32 \ No newline at end of file diff --git a/srcpkgs/glibc32/INSTALL b/srcpkgs/glibc32/INSTALL deleted file mode 100644 index 67fb461791..0000000000 --- a/srcpkgs/glibc32/INSTALL +++ /dev/null @@ -1,8 +0,0 @@ -# -# Update ld.so(8) cache for lib32 shared libraries. -# -case "${ACTION}" in -post) - ldconfig -r . - ;; -esac diff --git a/srcpkgs/glibc32/REMOVE b/srcpkgs/glibc32/REMOVE deleted file mode 100644 index 67fb461791..0000000000 --- a/srcpkgs/glibc32/REMOVE +++ /dev/null @@ -1,8 +0,0 @@ -# -# Update ld.so(8) cache for lib32 shared libraries. -# -case "${ACTION}" in -post) - ldconfig -r . - ;; -esac diff --git a/srcpkgs/glibc32/template b/srcpkgs/glibc32/template deleted file mode 100644 index 1b55b480ee..0000000000 --- a/srcpkgs/glibc32/template +++ /dev/null @@ -1,63 +0,0 @@ -# Template file for 'glibc32' -pkgname=glibc32 -version=2.19 -revision=1 -distfiles=" - http://repo.voidlinux.eu/current/glibc-${version}_${revision}.i686.xbps - http://repo.voidlinux.eu/current//glibc-devel-${version}_${revision}.i686.xbps" -short_desc="The GNU C library (32 bits)" -homepage="http://www.gnu.org/software/libc" -license="GPL-2, LGPL-2.1, BSD" -maintainer="Juan RP " -checksum=" - 7da0f904fa49516962ee0f7f2989614dcfea7ee85799abbae27691edff49c0ca - 38e99837ee26bf0e7f95913cd64f3dd3e44c760ed83c727bf9bed322f54e1536" - -only_for_archs=x86_64 -nostrip=yes -noverifyrdeps=yes -create_wrksrc=yes -depends="glibc>=$version" - -do_extract() { - : -} - -do_install() { - for f in ${distfiles}; do - local srcfile="${XBPS_SRCDISTDIR}/$(basename ${f})" - tar xf ${srcfile} -C ${wrksrc} - done - - vinstall usr/include/gnu/stubs-32.h 644 usr/include/gnu - vmkdir usr/lib - vmkdir usr/lib32/gconv - install -m644 usr/lib/*.{a,o} ${DESTDIR}/usr/lib32 - install -m755 usr/lib/*.so ${DESTDIR}/usr/lib32 - vcopy "usr/lib/gconv/*" usr/lib32/gconv - cd ${DESTDIR}/usr/lib && ln -sf ../lib32/ld-linux.so.2 . - - # Add /lib32 and /usr/lib32 into ld.so(8) cache. - install -d ${DESTDIR}/etc/ld.so.conf.d - echo "/usr/lib32" > ${DESTDIR}/etc/ld.so.conf.d/glibc32.conf - - chmod 644 ${DESTDIR}/etc/ld.so.conf.d/glibc32.conf && ldconfig - - # Fix some .so files to find stuff in lib32 dirs. - for f in libc libpthread; do - sed -i -e "s|/lib/|/lib32/|g" \ - ${DESTDIR}/usr/lib32/${f}.so - done -} - -glibc32-devel_package() { - nostrip=yes - noverifyrdeps=yes - depends="glibc-devel>=$version glibc32>=$version" - short_desc+=" - development files" - pkg_install() { - vmove usr/include - vmove "usr/lib32/*.a" - vmove "usr/lib32/*.o" - } -} diff --git a/srcpkgs/libgcc32 b/srcpkgs/libgcc32 deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libgcc32 +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/libgcj32 b/srcpkgs/libgcj32 deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libgcj32 +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/libgomp32 b/srcpkgs/libgomp32 deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libgomp32 +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/libitm32 b/srcpkgs/libitm32 deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libitm32 +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/libmudflap32 b/srcpkgs/libmudflap32 deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libmudflap32 +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/libmudflap32-devel b/srcpkgs/libmudflap32-devel deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libmudflap32-devel +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/libobjc32 b/srcpkgs/libobjc32 deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libobjc32 +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/libssp32 b/srcpkgs/libssp32 deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libssp32 +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/libstdc++32 b/srcpkgs/libstdc++32 deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libstdc++32 +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/libstdc++32-devel b/srcpkgs/libstdc++32-devel deleted file mode 120000 index 9f2eca37b1..0000000000 --- a/srcpkgs/libstdc++32-devel +++ /dev/null @@ -1 +0,0 @@ -gcc-multilib \ No newline at end of file diff --git a/srcpkgs/zlib32-devel b/srcpkgs/zlib32-devel deleted file mode 120000 index 983c8823f0..0000000000 --- a/srcpkgs/zlib32-devel +++ /dev/null @@ -1 +0,0 @@ -zlib32 \ No newline at end of file diff --git a/srcpkgs/zlib32/template b/srcpkgs/zlib32/template deleted file mode 100644 index b09ce0500a..0000000000 --- a/srcpkgs/zlib32/template +++ /dev/null @@ -1,44 +0,0 @@ -# Template file for 'zlib32' -pkgname=zlib32 -version=1.2.8 -revision=3 -distfiles=" - http://repo.voidlinux.eu/current/zlib-${version}_${revision}.i686.xbps - http://repo.voidlinux.eu/current/zlib-devel-${version}_${revision}.i686.xbps" -short_desc="A compression/decompression Library (32 bits)" -homepage="http://www.zlib.net" -license="zlib" -maintainer="Juan RP " -checksum=" -aa11ecab97f5feb0585c5c50abb9acd7c432f6592246f6edc80fa41fa68bc6a8 -4fde2eb758f5b32dfce8eb25fd50f6ea7ad5c995511f247fc0c149878299749f" - -only_for_archs=x86_64 -nostrip=yes -noverifyrdeps=yes -create_wrksrc=yes -depends="glibc32" - -do_extract() { - : -} - -do_install() { - for f in ${distfiles}; do - local srcfile="${XBPS_SRCDISTDIR}/$(basename ${f})" - tar xf ${srcfile} -C ${wrksrc} - done - vmkdir usr/lib32 - vcopy "usr/lib/*.a" usr/lib32 - vcopy "usr/lib/*.so*" usr/lib32 -} - -zlib32-devel_package() { - depends="glibc32-devel zlib32>=${version}" - nostrip=yes - short_desc+=" - development files" - pkg_install() { - vmove usr/lib32/libz.a - vmove usr/lib32/libz.so - } -}