source: rtems/scripts/gccnewlib/base-gcc.add @ 63cf252f

Last change on this file since 63cf252f was 63cf252f, checked in by Joel Sherrill <joel.sherrill@…>, on 05/28/00 at 18:14:55

Patch rtems-rc-4.5.0-21.diff from Ralf Corsepius <corsepiu@…>
which splits the current monolithic specs files into a sequence of
subparts. These can be concatenated togather to make a the whole .spec
file. This cleans up the maintenance problem of having "all languages"
and a "C/C++ only" gccnewlib spec files. Plus it should make it easier
to produce variants like the gdb-m68k-bdm which require special hackery. :)
Ralf's comments:

It addresses the way *.spec.in get composed inside of the source
tree.

Changes:

  • Each spec.in is broken into several files (*.add), one *.add file per sub-package.
  • Each Makefile.am composes spec.ins from the *.add files
  • Removal of redundant automake support files.
  • Default value for BuildRoot? changed to /tmp/<spec-file-name>
  • %clean stage added to *specs

Advantages (IMHO).

  • The *.add files are easier to adminstrate and more flexible in comparison to the former *.specs.ins.
  • gccnewlib_c_only.spec.in now is composed from the same sources as gccnewlib.spec.in (less errors)
  • If using the default BuildRoot? --clean now deletes all files that were generated while building.

Notes:

  • rtems.spec.in has not yet been adapted to the scheme used for the other *spec.ins
  • Except for cosmetical changes the internals of the *.spec files should not have changed.

To Apply:

cvs rm -f scripts/binutils/binutils.spec.in
cvs rm -f scripts/gccnewlib/gccnewlib.spec.in
cvs rm -f scripts/gccnewlib/gccnewlib_c_only.spec.in
cvs rm -f scripts/gdb/gdb.spec.in
cvs rm -f scripts/config.sub
cvs rm -f scripts/config.guess
cvs rm -f scripts/install-sh
cvs rm -f scripts/mkinstalldirs
cvs rm -f scripts/missing

patch -p1 < rtems-rc-4.5.0-21.diff

cvs add scripts/*/*.add
cvs add scripts/*/README

  • Property mode set to 100644
File size: 1.4 KB
Line 
1# ==============================================================
2# rtems-base-gcc
3# ==============================================================
4%package -n rtems-base-gcc
5Provides:       rtems-base-gcc
6Summary:        base package for rtems gcc and newlib C Library
7Group: rtems
8
9%description -n rtems-base-gcc
10
11RTEMS is an open source operating system for embedded systems.
12
13This is the files for gcc and newlib that are shared by all targets.
14
15%files -n rtems-base-gcc
16%dir /opt/rtems/info
17%doc /opt/rtems/info/cpp.info*.gz
18%doc /opt/rtems/info/gcc.info*.gz
19%doc /opt/rtems/info/libc.info*.gz
20%doc /opt/rtems/info/libm.info*.gz
21
22%dir /opt/rtems/bin
23/opt/rtems/bin/cpp@exe_ext@
24/opt/rtems/bin/gcov@exe_ext@
25
26%dir /opt/rtems/man
27%dir /opt/rtems/man/man1
28%doc /opt/rtems/man/man1/cccp.1
29
30%dir /opt/rtems/include
31/opt/rtems/include/g++-3
32
33%post -n rtems-base-gcc
34  if test -d $RPM_INSTALL_PREFIX/rtems/info;
35  then
36    rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
37    f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info.gz'`
38    test -n "$f" && for i in $f; do
39      install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
40    done
41  fi
42
43%postun -n rtems-base-gcc
44  if test -d $RPM_INSTALL_PREFIX/rtems/info;
45  then
46    rm -f $RPM_INSTALL_PREFIX/rtems/info/dir
47    f=`find $RPM_INSTALL_PREFIX/rtems/info -name '*.info&gz'`
48    test -n "$f" && for i in $f; do
49      install-info $i $RPM_INSTALL_PREFIX/rtems/info/dir
50    done
51  fi
52
Note: See TracBrowser for help on using the repository browser.