OpenPKG CVS Repository
  http://cvs.openpkg.org/
  ____________________________________________________________________________

  Server: cvs.openpkg.org                  Name:   Ralf S. Engelschall
  Root:   /e/openpkg/cvs                   Email:  [EMAIL PROTECTED]
  Module: openpkg-src openpkg-web          Date:   08-Feb-2003 14:45:13
  Branch: HEAD                             Handle: 2003020813450705

  Modified files:
    openpkg-src/gcc         gcc.spec
    openpkg-web             news.txt

  Log:
    Completely work off our GCC packaging. This especially now uses the (now
    finally working) DESTDIR support in GCC and cleans up the parameter
    determinations. As a side-effect the packaging shrunk by about 1KB, too.

  Summary:
    Revision    Changes     Path
    1.45        +65 -81     openpkg-src/gcc/gcc.spec
    1.3236      +2  -0      openpkg-web/news.txt
  ____________________________________________________________________________

  patch -p0 <<'@@ .'
  Index: openpkg-src/gcc/gcc.spec
  ============================================================================
  $ cvs diff -u -r1.44 -r1.45 gcc.spec
  --- openpkg-src/gcc/gcc.spec  5 Feb 2003 10:33:45 -0000       1.44
  +++ openpkg-src/gcc/gcc.spec  8 Feb 2003 13:45:12 -0000       1.45
  @@ -23,11 +23,6 @@
   ##  SUCH DAMAGE.
   ##
   
  -#   package versions
  -%define       V_major        3.2.2
  -%define       V_short        3.2.2
  -%define       V_long         3.2.2
  -
   #   package information
   Name:         gcc
   Summary:      GNU Compiler Collection
  @@ -37,8 +32,8 @@
   Distribution: OpenPKG [CORE]
   Group:        Language
   License:      GPL
  -Version:      %{V_short}
  -Release:      20030205
  +Version:      3.2.2
  +Release:      20030208
   
   #   package options
   %option       with_cxx       yes
  @@ -47,7 +42,7 @@
   %option       with_threads   yes
   
   #   list of sources
  -Source0:      ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{V_long}/gcc-%{V_long}.tar.bz2
  +Source0:      
ftp://gcc.gnu.org/pub/gcc/releases/gcc-%{version}/gcc-%{version}.tar.bz2
   Patch0:       gcc.patch
   
   #   build information
  @@ -67,20 +62,44 @@
       highly portable ISO C and ISO C++ compiler.
   
   %prep
  -    %setup -q -n gcc-%{V_long}
  +    %setup -q -n gcc-%{version}
       %patch -p0
       %{l_shtool} subst -v -s \
           -e "s;PREFIX_INCLUDE_DIR;PREFIX_INCLUDE_DIR_DISABLED;g" \
           gcc/configure
   
   %build
  -    #   configure the package
  +    #   create build sub-directory
       mkdir obj
       cd obj
  -    options=""
  +
  +    #   determine ld(1) and as(1) usage
  +    l_with_gnu_ld_as=""
  +%if "%{with_binutils}" == "yes"
  +    l_with_gnu_ld_as="${l_with_gnu_ld_as} --with-gnu-ld 
--with-ld=%{l_prefix}/bin/ld"
  +    l_with_gnu_ld_as="${l_with_gnu_ld_as} --with-gnu-as 
--with-as=%{l_prefix}/bin/as"
  +%else
       case "%{l_target}" in
  -       *-linux* | *-freebsd* ) options="--with-gnu-as --with-gnu-ld" ;;
  +       *-linux* | *-freebsd* )
  +           l_with_gnu_ld_as="${l_with_gnu_ld_as} --with-gnu-as --with-gnu-ld"
  +           ;;
       esac
  +%endif
  +
  +    #   determine threads usage
  +%if "%{with_threads}" == "yes"
  +    l_enable_threads="posix"
  +%else
  +    l_enable_threads="single"
  +%endif
  +
  +    #   determine language usage
  +    l_enable_languages="c"
  +%if "%{with_cxx}" == "yes"
  +    l_enable_languages="${l_enable_languages},c++"
  +%endif
  +
  +    #   configure the package
       CC="%{l_cc}" \
       CFLAGS="%{l_cflags}" \
       ../configure \
  @@ -89,93 +108,56 @@
           --includedir=%{l_prefix}/include/gcc \
           --with-gxx-include-dir=%{l_prefix}/include/g++ \
           --with-local-prefix=%{l_prefix}/lib/gcc-lib \
  -%if "%{with_cxx}" == "yes"
  -        --enable-languages="c,c++" \
  -%else
  -        --enable-languages="c" \
  -%endif
  -%if "%{with_threads}" == "yes"
  -        --enable-threads=posix \
  -%else
  -        --enable-threads=single \
  -%endif
  +        --enable-languages="${l_enable_languages}" \
  +        --enable-threads="${l_enable_threads}" \
           --disable-maintainer-mode \
           --disable-shared \
           --disable-nls \
  -%if "%{with_binutils}" == "yes"
  -        --with-gnu-ld --with-ld=%{l_prefix}/bin/ld \
  -        --with-gnu-as --with-as=%{l_prefix}/bin/as \
  -%endif
  -        $options
  +        ${l_with_gnu_ld_as}
   
  -    #   build the package
  +    #   determine build parameters
   %if "%{with_optimize}" == "yes"
       l_boot_cflags="-O2"
       l_cflags="-O"
       l_libcflags="-g -O2"
       l_libcxxflags="-g -O2 -fno-implicit-templates"
  -    case "%{l_target}" in
  -       *-osf* ) l_boot_cflags="-O" ;;
  -    esac
   %else
       l_boot_cflags="-O0"
       l_cflags=""
       l_libcflags="-g -O0"
       l_libcxxflags="-g -O0"
   %endif
  +
  +    #   build the package
       %{l_make} %{l_mflags} \
           MAKE="%{l_make} %{l_mflags}" \
  -        BOOT_CFLAGS="$l_boot_cflags" \
  -        CFLAGS="$l_cflags" \
  -        LIBCFLAGS="$l_libcflags" \
  -        LIBCXXFLAGS="$l_libcxxflags" \
  +        BOOT_CFLAGS="${l_boot_cflags}" \
  +        CFLAGS="${l_cflags}" \
  +        LIBCFLAGS="${l_libcflags}" \
  +        LIBCXXFLAGS="${l_libcxxflags}" \
           bootstrap-lean
   
   %install
       rm -rf $RPM_BUILD_ROOT
  -    triple=`./config.guess`
  -    triple=`./config.sub $triple | sed -e 's;-unknown-;--;'`
  -    cd obj
  -
  -    #   redirect to temporary build root
  -    %{l_shtool} subst -v -s \
  -        -e "s;^\\(prefix[    ]*=\\).*;\\1 $RPM_BUILD_ROOT%{l_prefix};" \
  -        -e "s;^\\(exec_prefix[       ]*=\\).*;\\1 $RPM_BUILD_ROOT%{l_prefix};" \
  -        -e "s;^\\(gcc_gxx_include_dir[       ]*=\\).*;\\1 
$RPM_BUILD_ROOT%{l_prefix}/include/g++;" \
  -        -e "s;^\\(gxx_include_dir[   ]*=\\).*;\\1 
$RPM_BUILD_ROOT%{l_prefix}/include/g++;" \
  -        -e "s;^\\(glibcppinstalldir[         ]*=\\).*;\\1 
$RPM_BUILD_ROOT%{l_prefix}/include/g++;" \
  -        -e "s;^\\(local_prefix[      ]*=\\).*;\\1 
$RPM_BUILD_ROOT%{l_prefix}/lib/gcc-lib;" \
  -        -e "s;^\\(includedir[        ]*=\\).*;\\1 
$RPM_BUILD_ROOT%{l_prefix}/include/gcc;" \
  -        `find . -name Makefile -type f -print`
   
  -    #   make sure the install procedure doesn't compile anything
  -    #   (or else we would have wrong paths hard-coded in the programs)
  -    %{l_shtool} subst -v -s \
  -        -e 's;^install-cpp:.*;install-cpp:;' \
  -        -e 's;^install-common:.*;install-common: installdirs lang.install-common;' \
  -        -e 's;^install-driver:.*;install-driver:;' \
  -        -e 's;^install-libgcc:.*;install-libgcc: installdirs;' \
  -        -e 's;^install-build:.*;install-build:;' \
  -        -e 's;^install-collect2:.*;install-collect2: installdirs;' \
  -        -e 's;^install-assert-h:.*;install-assert-h: installdirs;' \
  -        -e 's;^install: stmp-dirs ./libgcc.a;install: stmp-dirs;' \
  -        -e 's;^\(install-.*:.*\) all *\(.*\)$;\1\2;' \
  -        gcc/Makefile gcc/libgcc.mk gcc/*/Makefile
  -
  -    #   make sure the Makefiles are not re-generated
  -    for file in `find . -name config.status -print`; do
  -        ( echo "#!/bin/sh"
  -          echo ":"
  -        ) >$file
  -    done
  -
  -    #   run the standard installation procedure
  -    %{l_make} %{l_mflags} install
  +    #   fetch GNU platform triple
  +    triple=`./config.guess`
  +    triple=`./config.sub ${triple}`
   
  -    #   strip the installation
  -    mv $RPM_BUILD_ROOT%{l_prefix}/$triple/include/* \
  -       $RPM_BUILD_ROOT%{l_prefix}/lib/gcc-lib/$triple/%{V_major}/include/ 
>/dev/null 2>&1 || true
  -    rm -rf $RPM_BUILD_ROOT%{l_prefix}/$triple
  +    #   perform the standard installation procedure
  +    ( cd obj
  +      %{l_make} %{l_mflags} install DESTDIR=$RPM_BUILD_ROOT )
  +
  +    #   cleanup installation tree
  +    mv $RPM_BUILD_ROOT%{l_prefix}/lib/lib*.a \
  +       $RPM_BUILD_ROOT%{l_prefix}/lib/gcc-lib/${triple}/%{version}/
  +    mv $RPM_BUILD_ROOT%{l_prefix}/${triple}/include/* \
  +       $RPM_BUILD_ROOT%{l_prefix}/lib/gcc-lib/${triple}/%{version}/include/ \
  +           >/dev/null 2>&1 || true
  +
  +    #   strip installation tree
  +    rm -rf $RPM_BUILD_ROOT%{l_prefix}/${triple}
  +    rm -rf $RPM_BUILD_ROOT%{l_prefix}/man/man7 >/dev/null 2>&1 || true
       rm -f $RPM_BUILD_ROOT%{l_prefix}/lib/*.la  >/dev/null 2>&1 || true
       rm -f $RPM_BUILD_ROOT%{l_prefix}/bin/*-gcc >/dev/null 2>&1 || true
   %if "%{with_cxx}" == "yes"
  @@ -184,11 +166,13 @@
   %endif
       strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true
       for prog in cc1 cc1plus collect2 cpp; do
  -        strip $RPM_BUILD_ROOT%{l_prefix}/lib/gcc-lib/$triple/%{V_major}/$prog 
>/dev/null 2>&1 || true
  +        strip $RPM_BUILD_ROOT%{l_prefix}/lib/gcc-lib/${triple}/%{version}/${prog} \
  +            >/dev/null 2>&1 || true
       done
   
  -    #   make additional links
  -    ln $RPM_BUILD_ROOT%{l_prefix}/bin/gcc $RPM_BUILD_ROOT%{l_prefix}/bin/cc
  +    #   bump up installation tree
  +    ln $RPM_BUILD_ROOT%{l_prefix}/bin/gcc \
  +       $RPM_BUILD_ROOT%{l_prefix}/bin/cc
       ln $RPM_BUILD_ROOT%{l_prefix}/man/man1/gcc.1 \
          $RPM_BUILD_ROOT%{l_prefix}/man/man1/cc.1
   %if "%{with_cxx}" == "yes"
  @@ -196,8 +180,8 @@
          $RPM_BUILD_ROOT%{l_prefix}/man/man1/c++.1
   %endif
   
  -    #   create file list
  -    %{l_rpmtool} files -v -o$RPM_BUILD_DIR/gcc-%{V_long}/files -r$RPM_BUILD_ROOT 
%{l_files_std}
  +    #   determine installation file list
  +    %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
   
   %files -f files
   
  @@ .
  patch -p0 <<'@@ .'
  Index: openpkg-web/news.txt
  ============================================================================
  $ cvs diff -u -r1.3235 -r1.3236 news.txt
  --- openpkg-web/news.txt      8 Feb 2003 10:59:21 -0000       1.3235
  +++ openpkg-web/news.txt      8 Feb 2003 13:45:07 -0000       1.3236
  @@ -1,3 +1,5 @@
  +08-Feb-2003: Upgraded package: P<gcc-3.2.2-20030208>
  +08-Feb-2003: New package: P<pnetlib-0.5.2-20030208>
   08-Feb-2003: Upgraded package: P<xalan-c-1.4-20030208>
   08-Feb-2003: New package: P<pnet-0.5.2-20030208>
   08-Feb-2003: New package: P<libffi-20030208-20030208>
  @@ .
______________________________________________________________________
The OpenPKG Project                                    www.openpkg.org
CVS Repository Commit List                     [EMAIL PROTECTED]

Reply via email to