From f52cc0622050bafbe964cacfb2aba5f52c3c166b Mon Sep 17 00:00:00 2001 From: "Tom G. Christensen" Date: Thu, 29 May 2008 19:31:28 +0000 Subject: [PATCH] gcc 4.1.2 for 2.6/sparc --- gcc41/build.sh | 115 ++++++++++++++++++++++++++++ gcc41/meta/depend | 6 ++ gcc41/meta/pkgdef | 179 ++++++++++++++++++++++++++++++++++++++++++++ gcc41/meta/relnotes | 27 +++++++ 4 files changed, 327 insertions(+) create mode 100755 gcc41/build.sh create mode 100644 gcc41/meta/depend create mode 100644 gcc41/meta/pkgdef create mode 100644 gcc41/meta/relnotes diff --git a/gcc41/build.sh b/gcc41/build.sh new file mode 100755 index 0000000..4119b3c --- /dev/null +++ b/gcc41/build.sh @@ -0,0 +1,115 @@ +#!/bin/bash +# +# This is a generic build.sh script +# It can be used nearly unmodified with many packages +# +# build.sh helper functions +. ${BUILDPKG_BASE}/scripts/build.sh.functions +# +########################################################### +# Check the following 4 variables before running the script +snapshot= +topdir=gcc +version=4.1.2 +pkgver=1 +source[0]=$topdir-$version.tar.bz2 +[ -n "$snapshot" ] && source[0]=$topdir-$version-$snapshot.tar.bz2 +## If there are no patches, simply comment this +#patch[0]= + +# Source function library +. ${BUILDPKG_BASE}/scripts/buildpkg.functions + +# Global settings +[ -n "$snapshot" ] && topsrcdir=gcc-$version-$snapshot +lprefix=$prefix +prefix=/usr/tgcware/$topdir-$version +__configure="../$topsrcdir/configure" +make_build_target=bootstrap + +# Define abbreviated version number (for pkgdef) +abbrev_ver=$(echo $version | ${__tr} -d '.') + +# Configure args +global_config_args="--prefix=$prefix --with-local-prefix=$prefix --with-libiconv-prefix=$lprefix --with-gmp=$lprefix --with-mpfr=$lprefix --disable-nls --enable-shared --enable-threads=posix95" +langs="--enable-languages=c,ada,c++,fortran,objc,obj-c++" +objdir=all_native +# platform/arch specific options +[ "$_os" = "sunos56" -a "$arch" = "i386" ] && platform_configure_args="--with-gnu-as --with-as=$lprefix/bin/gas" +[ "$arch" = "sparc" ] && vendor="sun" || vendor="pc" + +configure_args="$global_config_args $langs $platform_configure_args" + +reg prep +prep() +{ + generic_prep +} + +reg build +build() +{ + setdir source + ${__mkdir} -p ../$objdir + echo "$__configure $configure_args" + generic_build ../$objdir +} + +reg install +install() +{ + clean stage + setdir ${srcdir}/${objdir} + ${__make} SHELL=/bin/ksh DESTDIR=$stagedir install + custom_install=1 + generic_install + ${__find} ${stagedir} -name '*.la' -print | ${__xargs} ${__rm} -f + + # Prepare for split lib packages + ${__mkdir} -p ${stagedir}${lprefix}/${_libdir} + setdir ${stagedir}${prefix}/${_libdir} + ${__tar} -cf - libgcc_s.so.1 libstdc++.so.6* libgfortran.so.1* libobjc.so.1* | + (cd ${stagedir}${lprefix}/${_libdir}; ${__tar} -xvBpf -) + + # Place share/docs in the regular location + prefix=$topinstalldir + doc COPYING* BUGS FAQ MAINTAINERS NEWS + + # Setup compat files + for pkg in libgcc_s1 libstdc++6 + do + ${__rm} -f $metadir/compver.$pkg + compat $pkg 3.4.6 1 5 + compat $pkg 4.0.4 1 2 + done + compat libobjc1 4.0.4 1 2 +} + +reg check +check() +{ + setdir source + setdir ../$objdir + ${__make} -k check +} + +reg pack +pack() +{ + iprefix=$topdir-$version + generic_pack +} + +reg distclean +distclean() +{ + META_CLEAN="$META_CLEAN compver.*" + clean distclean + setdir $srcdir + ${__rm} -rf $objdir +} + +################################################### +# No need to look below here +################################################### +build_sh $* diff --git a/gcc41/meta/depend b/gcc41/meta/depend new file mode 100644 index 0000000..54b1848 --- /dev/null +++ b/gcc41/meta/depend @@ -0,0 +1,6 @@ +TGCg412c libgcc_s1 auto +TGCg412gn gcc auto +TGCg412cx gcc auto +TGCg412ob gcc auto +TGCg412ft gcc auto +TGCg412ox gcc auto diff --git a/gcc41/meta/pkgdef b/gcc41/meta/pkgdef new file mode 100644 index 0000000..767c06a --- /dev/null +++ b/gcc41/meta/pkgdef @@ -0,0 +1,179 @@ +[gcc] +pkgname="${pkgprefix}g${abbrev_ver}c" +name="GCC - GNU Compiler Collection" +pkgvendor="http://gcc.gnu.org" +pkgdesc="GNU Compiler Collection (C, C++)" +pkgver="$pkgver" +files(-,root,bin) +dir $iprefix/share +$iprefix/$_bindir/*gcc* +$iprefix/$_bindir/*gcov* +$iprefix/$_bindir/cpp +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/gcrt* +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/crt* +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/libgcc* +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/libgcov* +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/gmon.o +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/README +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/X11 +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/Xm +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/kcms +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/ssp +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/xil +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/curses.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/float.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/iso646.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/limits.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/math.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/memory.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/pthread.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/root +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/stdarg.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/stdbool.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/stddef.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/stdio.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/stdlib.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/sys +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/syslimits.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/unistd.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/unwind.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/varargs.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/alloca.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/ctype.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/gelf.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/kerberos/osconf.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/libelf.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/link.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/locale.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/netinet/if_ether.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/proc_service.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/prof.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/setjmp.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/signal.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/ssp/ssp.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/ssp/stdio.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/ssp/string.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/ssp/unistd.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/string.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/thread.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/thread_db.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/time.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/tzfile.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/widec.h +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/install-tools +$iprefix/libexec/gcc/${arch}-${vendor}-solaris*/$version/install-tools +$iprefix/libexec/gcc/${arch}-${vendor}-solaris*/$version/collect2 +$iprefix/libexec/gcc/${arch}-${vendor}-solaris*/$version/cc1 +$iprefix/info/dir +$iprefix/info/gcc* +$iprefix/lib/libiberty.a +$iprefix/lib/libgcc* +$iprefix/lib/libssp* +$iprefix/man/?a?1/gcc.1 +$iprefix/man/?a?1/cpp.1 +$iprefix/man/?a?1/gcov.1 +$iprefix/man/?a?7/*.7 +$_sharedir +# Only on i386 +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/*intrin.h + +[gcc-gnat] +pkgname="${pkgprefix}g${abbrev_ver}gn" +name="gcc-gnat - GNU Compiler Collection (Ada)" +pkgvendor="http://gcc.gnu.org" +pkgdesc="Ada support for GCC" +pkgver="$pkgver" +files(-,root,bin) +$iprefix/bin/gnat* +$iprefix/bin/gpr* +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/adainclude +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/adalib +$iprefix/libexec/gcc/${arch}-${vendor}-solaris*/$version/gnat1 + +[gcc-c++] +pkgname="${pkgprefix}g${abbrev_ver}cx" +name="gcc-c++ - GNU Compiler Collection (C++)" +pkgvendor="http://gcc.gnu.org" +pkgdesc="C++ support for GCC" +pkgver="$pkgver" +files(-,root,bin) +$iprefix/bin/*++* +$iprefix/include/c++ +$iprefix/lib/libstdc++.* +$iprefix/lib/libsupc++.a +$iprefix/libexec/gcc/${arch}-${vendor}-solaris*/$version/cc1plus +$iprefix/man/man1/g++.1 + +[gcc-objc] +pkgname="${pkgprefix}g${abbrev_ver}ob" +name="gcc-objc - GNU Compiler Collection (Objective-C)" +pkgvendor="http://gcc.gnu.org" +pkgdesc="Objective-C support for GCC" +pkgver="$pkgver" +files(-,root,bin) +$iprefix/lib/gcc/${arch}-${vendor}-solaris*/$version/include/objc +$iprefix/lib/libobjc.* +$iprefix/libexec/gcc/${arch}-${vendor}-solaris*/$version/cc1obj + +[gcc-objc++] +pkgname="${pkgprefix}g${abbrev_ver}ox" +name="gcc-objc++ - GNU Compiler Collection (Objective-C++)" +pkgvendor="http://gcc.gnu.org" +pkgdesc="Objective-C++ support for GCC" +pkgver="$pkgver" +files(-,root,bin) +$iprefix/libexec/gcc/${arch}-${vendor}-solaris*/$version/cc1objplus + +[gcc-gfortran] +pkgname="${pkgprefix}g${abbrev_ver}ft" +name="gcc-gfortran - GNU Compiler Collection (Fortran)" +pkgvendor="http://gcc.gnu.org" +pkgdesc="Fortran support for GCC" +pkgver="$pkgver" +files(-,root,bin) +$iprefix/bin/*fortran +$iprefix/lib/libgfortran.* +$iprefix/lib/libgfortranbegin.a +$iprefix/libexec/gcc/${arch}-${vendor}-solaris*/$version/f951 +$iprefix/man/?a?1/gfortran.1 + +[libgcc_s1] +pkgname="${pkgprefix}lgcc1" +name="libgcc_s1 - GCC shared support library" +pkgcat="system" +pkgvendor="http://gcc.gnu.org" +pkgdesc="Runtime support library for C" +pkgver="$pkgver" +files(-,root,bin) +$_libdir/libgcc_s.so.1* + +[libstdc++6] +pkgname="${pkgprefix}lstdc6" +name="libstdc++6 - GNU Standard C++ library" +pkgcat="system" +pkgvendor="http://gcc.gnu.org" +pkgdesc="Runtime support library for C++" +pkgver="$pkgver" +files(-,root,bin) +$_libdir/libstdc++.so.6* + +[libobjc1] +pkgname="${pkgprefix}lobjc1" +name="libojc1 - GNU Objective-C shared support library" +pkgcat="system" +pkgvendor="http://gcc.gnu.org" +pkgdesc="Runtime support library for Objective-C" +pkgver="$pkgver" +files(-,root,bin) +$_libdir/libobjc.so.1* + +[libgfortran1] +pkgname="${pkgprefix}lgft1" +name="libgfortran1 - GNU Fortran shared support library" +pkgcat="system" +pkgvendor="http://gcc.gnu.org" +pkgdesc="Runtime support library for Fortran" +pkgver="$pkgver" +files(-,root,bin) +$_libdir/libgfortran.so.1* + diff --git a/gcc41/meta/relnotes b/gcc41/meta/relnotes new file mode 100644 index 0000000..bd83629 --- /dev/null +++ b/gcc41/meta/relnotes @@ -0,0 +1,27 @@ +PACKAGE DETAILS +--------------- +Name: %%PKGNAME%% +Version: %%SOURCE_AND_VER%% +Vendor: %%VENDOR%% +Packager: %%PKGEDBY%% + +Source (sha1sum): +%%SOURCE_SHA1SUM%% + +BUILD DETAILS +------------- +Compiler: +%%COMPILER%% + +Environment: +%%ENVIRONMENT%% + +Configure: +%%CONFIGURE%% + +KNOWN DEPENDENCIES +------------------ +%%DEPENDENCIES%% + +ERRORS/MISCELLANEOUS +--------------------