Complete overhaul and update to 3.4.6.

This commit is contained in:
Tom G. Christensen 2008-09-26 13:04:06 +00:00 committed by Tom G. Christensen
parent 65b85d23f3
commit b830fb3b67
4 changed files with 302 additions and 53 deletions

View File

@ -9,26 +9,38 @@
########################################################### ###########################################################
# Check the following 4 variables before running the script # Check the following 4 variables before running the script
topdir=gcc topdir=gcc
version=3.3.6 version=3.4.6
pkgver=1 pkgver=4
source[0]=$topdir-$version.tar.bz2 source[0]=$topdir-$version.tar.bz2
## If there are no patches, simply comment this ## If there are no patches, simply comment this
#patch[0]= #patch[0]=
# Source function library # Source function library
. ${HOME}/buildpkg/scripts/buildpkg.functions . ${BUILDPKG_BASE}/scripts/buildpkg.functions
# GCC package naming guide
# gcc - c
# gcc-c++ - cx
# gcc-gnat - gn
# gcc-objc - ob
# gcc-objc++ - ox
# gcc-java - jv
# Global settings # Global settings
prefix=/usr/local prefix=/usr/tgcware/$topdir-$version
configure_args="--prefix=${prefix}/gcc-$version --disable-nls --with-as=/usr/ccs/bin/as --with-ld=/usr/ccs/bin/ld --with-system-zlib --enable-languages=c,c++,f77 --with-cpu=ultrasparc" __configure="../$topsrcdir/configure"
make_build_target=bootstrap
objdir=$srcdir/objdir
# Define abbreviated version number (for pkgdef) # Define abbreviated version number (for pkgdef)
abbrev_ver=$(echo $version|sed -e 's/\.//g') abbrev_ver=$(echo $version | ${__tr} -d '.')
# gcc base dir (for pkgdef) global_config_args="--prefix=$prefix --with-local-prefix=$prefix --disable-nls --enable-shared"
gccdir=gcc-$version langs="--enable-languages=c,c++,f77,objc,ada"
configure_args="$global_config_args $langs $platform_configure_args"
objdir=cccgoa_native
export CC=/export/home/tgc/gnat/bin/gcc
export GNATROOT=/export/home/tgc/gnat
export PATH=/export/home/tgc/gnat/bin:$PATH
reg prep reg prep
prep() prep()
@ -39,46 +51,66 @@ prep()
reg build reg build
build() build()
{ {
$MKDIR "$objdir" setdir source
setdir "$objdir" ${__mkdir} -p ../$objdir
$srcdir/$topsrcdir/configure $configure_args echo "$__configure $configure_args"
$MAKE_PROG setdir $srcdir/$objdir
${__configure} $configure_args
${__make} $make_build_target
setdir ${srcdir}/${objdir}
${__make} -C gcc gnatlib
${__make} -C gcc gnattools
} }
reg install reg install
install() install()
{ {
setdir $objdir clean stage
$MAKE_PROG DESTDIR=$stagedir install setdir ${srcdir}/${objdir}
${__make} DESTDIR=$stagedir install
custom_install=1
generic_install
${__find} ${stagedir} -name '*.la' -print | ${__xargs} ${__rm} -f
# Prepare for split lib packages
lprefix=$topinstalldir
${__mkdir} -p ${stagedir}${lprefix}/${_libdir}
setdir ${stagedir}${prefix}/${_libdir}
${__tar} -cf - libgcc_s.so.1 libstdc++.so.6* libg2c.so.0* libobjc.so.1* |
(cd ${stagedir}${lprefix}/${_libdir}; ${__tar} -xvBpf -)
# Place share/docs in the regular location
prefix=$topinstalldir
doc COPYING* BUGS FAQ MAINTAINERS NEWS
for pkg in libg2c0 libgcc_s1 libobjc1 libstdc++6
do
${__rm} -f $metadir/compver.$pkg
compat $pkg 3.4.6 1 $pkgver
done
}
reg check
check()
{
setdir source
setdir ../$objdir
${__make} -k check
} }
reg pack reg pack
pack() pack()
{ {
# We want to create gcc, libstdc++ and libgcc packages iprefix=$topdir-$version
# Copy files for libgcc package
$MKDIR -p ${stagedir}${prefix}/lib
$MKDIR -p ${stagedir}${prefix}/lib/sparcv9
$CP ${stagedir}${prefix}/$gccdir/lib/libgcc_s.so.1 ${stagedir}${prefix}/lib
$CP ${stagedir}${prefix}/$gccdir/lib/sparcv9/libgcc_s.so.1 ${stagedir}${prefix}/lib/sparcv9
# Copy files for libstdc++ package
$MKDIR -p ${stagedir}${prefix}/lib
$MKDIR -p ${stagedir}${prefix}/lib/sparcv9
$CP ${stagedir}${prefix}/$gccdir/lib/libstdc++.so.* ${stagedir}${prefix}/lib
$CP ${stagedir}${prefix}/$gccdir/lib/sparcv9/libstdc++.so.* ${stagedir}${prefix}/lib/sparcv9
# rm -f ${stagedir}${prefix}/lib/libstdc++.so
# rm -f ${stagedir}${prefix}/lib/sparcv9/libstdc++.so
# now create packages according to pkgdef
generic_pack generic_pack
} }
reg distclean reg distclean
distclean() distclean()
{ {
META_CLEAN="$META_CLEAN compver.*"
clean distclean clean distclean
$RM -rf $objdir ${__rm} -rf $srcdir/$objdir
} }
################################################### ###################################################

4
gcc/meta/depend Normal file
View File

@ -0,0 +1,4 @@
TGCg346gn gcc auto
TGCg346cx gcc auto
TGCg346ob gcc auto
TGCg346g7 gcc auto

View File

@ -1,34 +1,220 @@
[gcc] [gcc]
pkgname="$pkgprefix""gcc""$abbrev_ver" pkgname="${pkgprefix}g${abbrev_ver}c"
name="GCC - GNU Compiler Collection" name="gcc"
pkgvendor="http://gcc.gnu.org" pkgvendor="http://gcc.gnu.org"
pkgdesc="GNU Compiler Collection (C, C++)" pkgdesc="GNU Compiler Collection (C)"
pkgver="$pkgver" pkgver="$pkgver"
files(-,root,bin) files(-,root,bin)
$gccdir dir $iprefix
dir $iprefix/bin
dir $iprefix/lib/gcc/sparc-sun-solaris*/3.4.6/include
dir $iprefix/lib/gcc/sparc-sun-solaris*/3.4.6
dir $iprefix/lib/gcc/sparc-sun-solaris*
dir $iprefix/lib/gcc
dir $iprefix/lib
dir $iprefix/man
dir $iprefix/man/man1
dir $iprefix/man/man7
dir $iprefix/info
dir $iprefix/share
dir $iprefix/libexec/gcc/sparc-sun-solaris*/$version
dir $iprefix/libexec/gcc/sparc-sun-solaris*
dir $iprefix/libexec/gcc
dir $iprefix/libexec
$iprefix/bin/*gcc*
$iprefix/bin/gcov
$iprefix/bin/cpp
$iprefix/lib/gcc/sparc-sun-solaris*/$version/gcrt*
$iprefix/lib/gcc/sparc-sun-solaris*/$version/crt*
$iprefix/lib/gcc/sparc-sun-solaris*/$version/libgcc*
$iprefix/lib/gcc/sparc-sun-solaris*/$version/libgcov*
$iprefix/lib/gcc/sparc-sun-solaris*/$version/specs
$iprefix/lib/gcc/sparc-sun-solaris*/$version/gmon.o
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/README
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/X11
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/curses.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/float.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/floatingpoint.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/g2c.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/iso646.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/limits.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/math.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/memory.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/pthread.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/root
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/rpc
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/stdarg.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/stdbool.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/stddef.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/stdio.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/stdlib.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/sys
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/syslimits.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/unistd.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/unwind.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/varargs.h
$iprefix/lib/gcc/sparc-sun-solaris*/$version/install-tools
$iprefix/libexec/gcc/sparc-sun-solaris*/$version/install-tools
$iprefix/libexec/gcc/sparc-sun-solaris*/$version/collect2
$iprefix/libexec/gcc/sparc-sun-solaris*/$version/cc1
$iprefix/info/gcc*
$iprefix/info/cpp*
$iprefix/lib/libiberty.a
$iprefix/lib/libgcc*
$iprefix/man/?a?1/gcc.1
$iprefix/man/?a?1/cpp.1
$iprefix/man/?a?1/gcov.1
$iprefix/man/?a?7/*.7
$_sharedir
[libgcc] [gcc-gnat]
pkgname="$pkgprefix""libgccso1" pkgname="${pkgprefix}g${abbrev_ver}gn"
name="libgcc - GCC runtime support" name="gcc-gnat"
pkgcat="library"
pkgvendor="http://gcc.gnu.org" pkgvendor="http://gcc.gnu.org"
pkgdesc="Runtime support for programs built with gcc 3.x" pkgdesc="GNU Compiler Collection (Ada)"
pkgver="$pkgver"
files(-,root,bin)
dir $iprefix
dir $iprefix/bin
dir $iprefix/lib/gcc/sparc-sun-solaris*/$version/adainclude
dir $iprefix/lib/gcc/sparc-sun-solaris*/$version/adalib
dir $iprefix/lib/gcc/sparc-sun-solaris*/$version
dir $iprefix/lib/gcc/sparc-sun-solaris*
dir $iprefix/lib/gcc
dir $iprefix/lib
dir $iprefix/libexec/gcc/sparc-sun-solaris*/3.4.6
dir $iprefix/libexec/gcc/sparc-sun-solaris*
dir $iprefix/libexec/gcc
dir $iprefix/libexec
dir $iprefix/man/man1
dir $iprefix/share/gnat
dir $iprefix/share
$iprefix/bin/gnat*
$iprefix/bin/gpr*
$iprefix/lib/gcc/sparc-sun-solaris*/$version/adainclude
$iprefix/lib/gcc/sparc-sun-solaris*/$version/adalib
$iprefix/libexec/gcc/sparc-sun-solaris*/$version/gnat1
$iprefix/share/gnat/Makefile.*
[gcc-c++]
pkgname="${pkgprefix}g${abbrev_ver}cx"
name="gcc-c++"
pkgvendor="http://gcc.gnu.org"
pkgdesc="GNU Compiler Collection (C++)"
pkgver="$pkgver"
files(-,root,bin)
dir $iprefix
dir $iprefix/bin
dir $iprefix/include
dir $iprefix/lib
dir $iprefix/libexec/gcc/sparc-sun-solaris*/3.4.6
dir $iprefix/libexec/gcc/sparc-sun-solaris*
dir $iprefix/libexec/gcc
dir $iprefix/libexec
dir $iprefix/man/man1
dir $iprefix/man
$iprefix/bin/*++*
$iprefix/include/c++
$iprefix/lib/libstdc++.*
$iprefix/lib/libsupc++.a
$iprefix/libexec/gcc/sparc-sun-solaris*/$version/cc1plus
$iprefix/man/man1/g++.1
[gcc-objc]
pkgname="${pkgprefix}g${abbrev_ver}ob"
name="gcc-objc"
pkgvendor="http://gcc.gnu.org"
pkgdesc="GNU Compiler Collection (Objective-C)"
pkgver="$pkgver"
files(-,root,bin)
dir $iprefix
dir $iprefix/lib
dir $iprefix/lib/gcc/sparc-sun-solaris*/$version/include/objc
dir $iprefix/lib/gcc/sparc-sun-solaris*/$version/include
dir $iprefix/lib/gcc/sparc-sun-solaris*/$version
dir $iprefix/lib/gcc/sparc-sun-solaris*
dir $iprefix/lib/gcc
dir $iprefix/lib
dir $iprefix/libexec/gcc/sparc-sun-solaris*/$version
dir $iprefix/libexec/gcc/sparc-sun-solaris*
dir $iprefix/libexec/gcc
dir $iprefix/libexec
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/objc
$iprefix/lib/libobjc.*
$iprefix/libexec/gcc/sparc-sun-solaris*/$version/cc1obj
[gcc-g77]
pkgname="${pkgprefix}g${abbrev_ver}g7"
name="gcc-g77"
pkgvendor="http://gcc.gnu.org"
pkgdesc="GNU Compiler Collection (Fortran 77)"
pkgver="$pkgver"
files(-,root,bin)
dir $iprefix
dir $iprefix/bin
dir $iprefix/lib
dir $iprefix/lib/gcc/sparc-sun-solaris*/$version/include
dir $iprefix/lib/gcc/sparc-sun-solaris*/$version
dir $iprefix/lib/gcc/sparc-sun-solaris*
dir $iprefix/lib/gcc
dir $iprefix/lib
dir $iprefix/libexec/gcc/sparc-sun-solaris*/$version
dir $iprefix/libexec/gcc/sparc-sun-solaris*
dir $iprefix/libexec/gcc
dir $iprefix/libexec
dir $iprefix/share
dir $iprefix/info
dir $iprefix/man
dir $iprefix/man/man1
$iprefix/bin/?77
$iprefix/lib/gcc/sparc-sun-solaris*/$version/include/g2c.h
$iprefix/lib/libfrtbegin.a
$iprefix/lib/libg2c.*
$iprefix/libexec/gcc/sparc-sun-solaris*/$version/f771
$iprefix/man/?a?1/g77.1
$iprefix/info/g77.info*
[libgcc_s1]
pkgname="${pkgprefix}lgcc1"
name="libgcc_s1"
pkgcat="system"
pkgvendor="http://gcc.gnu.org"
pkgdesc="GCC shared support library"
pkgver="$pkgver" pkgver="$pkgver"
files(-,root,bin) files(-,root,bin)
dir $_libdir dir $_libdir
dir $_libdir/sparcv9 $_libdir/libgcc_s.so.1*
$_libdir/libgcc_s*
$_libdir/sparcv9/libgcc_s*
[libstdc++] [libstdc++6]
pkgname="$pkgprefix""libstdcso5" pkgname="${pkgprefix}lstdc6"
name="libstdc++ - GCC runtime support" name="libstdc++6"
pkgcat="library" pkgcat="system"
pkgvendor="http://gcc.gnu.org" pkgvendor="http://gcc.gnu.org"
pkgdesc="Runtime support for c++ programs" pkgdesc="GNU Standard C++ Library"
pkgver="$pkgver" pkgver="$pkgver"
files(-,root,bin) files(-,root,bin)
dir $_libdir dir $_libdir
dir $_libdir/sparcv9 $_libdir/libstdc++.so.6*
$_libdir/libstdc++*
$_libdir/sparcv9/libstdc++* [libobjc1]
pkgname="${pkgprefix}lobjc1"
name="libobjc1"
pkgcat="system"
pkgvendor="http://gcc.gnu.org"
pkgdesc="GNU Objective-C shared support library"
pkgver="$pkgver"
files(-,root,bin)
dir $_libdir
$_libdir/libobjc.so.1*
[libg2c0]
pkgname="${pkgprefix}lg2c0"
name="libg2c0"
pkgcat="system"
pkgvendor="http://gcc.gnu.org"
pkgdesc="GNU g77 shared support library"
pkgver="$pkgver"
files(-,root,bin)
dir $_libdir
$_libdir/libg2c.so.0*

27
gcc/meta/relnotes Normal file
View File

@ -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
--------------------