Changeset 8c5e54b in rtems


Ignore:
Timestamp:
Oct 18, 1999, 7:10:03 PM (21 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
c5b8d6d
Parents:
18408af
Message:

Working on being able to cut RPMs. It now appears that the process
is working mostly for sparc at least.

There is one major problem -- the current process generates a unique
source file per RPM when in fact all of the source files are nearly
the same -- it is only the spec part of the rpm which differs.
The new file mkbinutils_subpackage_version is an attempt to
address this. It does part of the job right -- one source file
produces multiple binary RPMs. BUT the end user can not produce
the resulting RPMS themselves from SRPMS unless they also
build all targets.

Location:
scripts
Files:
8 added
4 edited

Legend:

Unmodified
Added
Removed
  • scripts/README

    r18408af r8c5e54b  
    1717sequence of building rpms for several bsps.
    1818
     19
     20mkbinutilspec
     21-------------
     22
     23mkbinutilspec takes two arguments:
     24
     25$1 ... the target_alias for binutils RPMs of this toolset
     26
     27Invoking mkbinutilspec will generate a <target_alias>-binutils.spec either in
     28
     29    /usr/src/packages/SPECS (SuSE convention) or
     30    /usr/src/redhat/SPECS (Redhat convention) or
     31    /usr/src/SPECS
     32
     33Eg. ./mkbinutilspec sparc-rtems generates
     34
     35On SuSE-6.2:   /usr/src/packages/SPECS/sparc-rtems-binutils.spec
     36On RedHat 6.0: /usr/src/redhat/SPECS/sparc-rtems-binutils.spec
     37
     38mkgccnewlibspec
     39---------------
     40
     41mkgccnewlibspec takes two arguments:
     42
     43$1 ... the target_alias for the gcc/newlib RPMs of this toolset
     44
     45Invoking mkgccnewlibspec will generate a <target_alias>-gccnewlibs.spec
     46either in:
     47
     48    /usr/src/packages/SPECS (SuSE convention) or
     49    /usr/src/redhat/SPECS (Redhat convention) or
     50    /usr/src/SPECS
     51
     52Eg. ./mkgccnewlibspec sparc-rtems generates
     53
     54On SuSE-6.2:   /usr/src/packages/SPECS/sparc-rtems-gcc_newlib.spec
     55On RedHat 6.0: /usr/src/redhat/SPECS/sparc-rtems-gcc_newlib.spec
     56
     57mkgdbspec
     58---------
     59
     60mkgdbspec takes two arguments:
     61
     62$1 ... the target_alias for the gdb RPMs of this toolset
     63
     64Invoking mkgdbspec will generate a <target_alias>-gdb.spec
     65either in:
     66
     67    /usr/src/packages/SPECS (SuSE convention) or
     68    /usr/src/redhat/SPECS (Redhat convention) or
     69    /usr/src/SPECS
     70
     71Eg. ./mkgdbspec sparc-rtems generates
     72
     73On SuSE-6.2:   /usr/src/packages/SPECS/sparc-rtems-gcc_newlib.spec
     74On RedHat 6.0: /usr/src/redhat/SPECS/sparc-rtems-gcc_newlib.spec
     75
     76
     77# XXX BSPs not tested yet by Joel
     78#
     79#  mkbspspec
     80#  ---------
     81
     82#  mkbspspec takes two arguments:
     83#  $1 ... the target_alias this bsp belongs to
     84#  $2 ... the bsp to be built
     85
     86#  Invoking mkbspspec will generate a rtems-<target_alias>-<bsp>.spec either in
     87#  /usr/src/packages/SPECS (SuSE convention) or
     88#  /usr/src/redhat/SPECS (Redhat convention) or
     89#  /usr/src/SPECS
     90
     91#  Eg. ./mkspec gensh1 sh-rtemself generates
     92#  /usr/src/packages/SPECS/rtems-sh-rtemself-gensh1.spec on SuSE-6.2.
     93
    1994mkspec
    20 ------
    21 
    22 mkspec takes two arguments:
    23 $1 ... the bsp to be built
    24 $2 ... the target_alias this bsp belongs to
    25 
    26 Invoking mkspecs will generate a rtems-<target_alias>-<bsp>.spec either in
    27 /usr/src/packages/SPECS (SuSE convention) or
    28 /usr/src/redhat/SPECS (Redhat convention) or
    29 /usr/src/SPECS
    30 
    31 Eg. ./mkspec gensh1 sh-rtemself generates
    32 /usr/src/packages/SPECS/rtems-sh-rtemself-gensh1.spec on SuSE-6.2.
     95---------
     96
     97mkspec takes two arguments:
     98
     99$1 ... the target_alias for the RPMs composing this toolset
     100$2 ... the bsp to be built
     101
     102Invoking mkspec will generate a set of spec files either in:
     103
     104    /usr/src/packages/SPECS (SuSE convention) or
     105    /usr/src/redhat/SPECS (Redhat convention) or
     106    /usr/src/SPECS
     107
     108Eg. ./mkspec sparc-rtems erc32 generates
     109
     110On SuSE-6.2:   /usr/src/packages/SPECS/sparc-rtems-binutils.spec
     111               /usr/src/packages/SPECS/sparc-rtems-gcc_newlib.spec
     112               /usr/src/packages/SPECS/sparc-rtems-gdb.spec
     113On RedHat 6.0: /usr/src/packages/SPECS/sparc-rtems-binutils.spec
     114               /usr/src/packages/SPECS/sparc-rtems-gcc_newlib.spec
     115               /usr/src/packages/SPECS/sparc-rtems-gdb.spec
     116
     117
     118Building binutils-rpms
     119----------------------
     120
     1210. Login as root.
     122
     1231. Install a tarball of the various tool sources (with the
     124version number attached!) to /usr/src/[packages|redhat]/SOURCES
     125
     126  cd /usr/src/[packages|redhat]/SOURCES
     127  cp .../binutils-<VERSION>  .
     128  cp .../binutils-<VERSION>-rtems-<DATE>.diff  .
     129
     1302. Generate and install the required rpm-spec file[s]
     131
     132cd rtems-<VERSION>/scripts/
     133mkbinutilspec <target_alias>
     134
     135where target_alias is of the form sparc-rtems or sh-rtems-elf.
     136
     1373. Build the rpms
     138
     139Building a binary rpm:
     140
     141rpm -bb /usr/src/[packages|redhat]/SPECS/rtems-<target_alias>-binutils.spec
     142
     143Building a source and binary rpm
     144rpm -ba /usr/src/[packages|redhat]/SPECS/rtems-<target_alias>-binutils.spec
     145
     146XXX Note: a BSP's src.rpm contains its spec-file and the tar-archive of the
     147sources (approx. 4-5MB per BSP).
     148
     149Building TOOL-rpms
     150------------------
     151
     1520. Login as root.
     153
     1541. Install a tarball of the various tool sources (with the
     155version number attached!) to /usr/src/[packages|redhat]/SOURCES
     156
     157  cd /usr/src/[packages|redhat]/SOURCES
     158  cp .../binutils-<VERSION>  .
     159  cp .../gcc-<VERSION>       .
     160  cp .../newlib-<VERSION>    .
     161
     1622. Generate and install the required rpm-spec file[s]
     163
     164cd rtems-<VERSION>/scripts/
     165mktoolspec <target_alias>
     166
     1673. Build the rpms
     168
     169Building a binary rpm:
     170rpm -bb /usr/src/[packages|redhat]/SPECS/rtems-<target_alias>.spec
     171
     172Building a source and binary rpm
     173rpm -ba /usr/src/[packages|redhat]/SPECS/rtems-<target_alias>.spec
     174
     175XXX Note: a BSP's src.rpm contains its spec-file and the tar-archive of the
     176sources (approx. 4-5MB per BSP).
    33177
    34178Building BSP-rpms
  • scripts/mkspec

    r18408af r8c5e54b  
    66sed -e 's%RTEMS[        ]*Version[      ]*\(.*\)[       ]*%\1%g'`
    77
    8 bsp=$1
    9 target_alias=$2
     8target_alias=$1
     9bsp=$2
    1010release=0
    1111
    12 ${RTEMS_DIR}/scripts/mkbspspec $bsp $target_alias
    13 ${RTEMS_DIR}/scripts/mktoolspec $target_alias
     12#${RTEMS_DIR}/scripts/mkbspspec $bsp $target_alias
     13#${RTEMS_DIR}/scripts/mkbinutilspec $target_alias
     14#${RTEMS_DIR}/scripts/mkgccnewlibspec $target_alias
     15#${RTEMS_DIR}/scripts/mkgdbspec $target_alias
     16./mkbinutilspec $target_alias
     17./mkgccnewlibspec $target_alias
     18./mkgdbspec $target_alias
    1419
  • scripts/mktoolspec

    r18408af r8c5e54b  
    11#!/bin/sh
     2#
     3#  Usage: mktoolspec CPU
    24#
    35
     
    68sed -e 's%RTEMS[        ]*Version[      ]*\(.*\)[       ]*%\1%g'`
    79
    8 bsp=$1
    9 target_alias=$2
     10target_alias=$1
    1011release=0
    1112
     
    3132> ${dst}/rtems-$target_alias-tools.spec
    3233
    33 
     34echo Generated ${dst}/rtems-$target_alias-tools.spec.
  • scripts/toolchain.spec.in

    r18408af r8c5e54b  
    1818
    1919Autoreqprov:  on
    20 Packager:     corsepiu@faw.uni-ulm.de
     20Packager:     corsepiu@faw.uni-ulm.de and joel@OARcorp.com
    2121
    2222Version:      @Version@
     
    2424Source0:        gcc-2.95.1.tar.gz
    2525Source1:        newlib-1.8.2.tar.gz
    26 Source2:        binutils-2.9.5.tar.gz
    27 Patch0:         gcc-2.95.1-rtems-19991014.diff
    28 Patch1:         newlib-1.8.2-rtems-19991014.diff
    29 Patch2:         binutils-2.9.5-rtems-19991014.diff
     26Source2:        binutils-990901.tar.gz
     27Patch0:         gcc-2.95.1-rtems-19991015.diff
     28Patch1:         newlib-1.8.2-rtems-19991015.diff
     29Patch2:         binutils-990901-rtems-19991015.diff
    3030
    3131Buildroot:    /tmp
    3232# Patch:
    3333%description
    34 RTEMS is a free operating system for embedded systems.
     34RTEMS is an open source operating system for embedded systems.
    3535
    3636Authors:
     
    6969  for f in bfd binutils gas gprof ld opcodes etc
    7070  do
    71        ln -s ../binutils-2.9.5/$f .
     71       ln -s ../binutils-990901/$f .
    7272  done
    7373
     
    8080( cd build
    8181  ../src/configure --target=@target_alias@ \
    82     --with-gnu-as --with-gnu-ld --verbose \
    83     --prefix=/opt/rtems \
    84     --with-sys-includes=$RPM_BUILD_ROOT/opt/rtems/@target_alias@/sys-include
     82    --with-gnu-as --with-gnu-ld --with-newlib --verbose \
     83    --prefix=/opt/rtems
    8584
    8685  test -d $RPM_BUILD_ROOT/opt \
Note: See TracChangeset for help on using the changeset viewer.