diff options
author | Ralf Corsepius <ralf.corsepius@rtems.org> | 2002-08-12 10:11:44 +0000 |
---|---|---|
committer | Ralf Corsepius <ralf.corsepius@rtems.org> | 2002-08-12 10:11:44 +0000 |
commit | 4aba88a119b6844e725b0fce452b1498f8fc3c87 (patch) | |
tree | d012b276961e2f14ee7f48be69ad55562ad69ccb /scripts | |
parent | 2002-08-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de> (diff) | |
download | rtems-4aba88a119b6844e725b0fce452b1498f8fc3c87.tar.bz2 |
2002-08-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* mkgcc3newlibspec.in: Remove
* gcc3newlib/mkspec.in: New.
* configure.ac: Reflect changes above.
* gcc3newlib/gccnewlib.add: Add build_XXX defines.
Add preliminary gnat support.
* gcc3newlib/base-g77.add: Add build_g77.
* gcc3newlib/base-gcj.add: Add build_gcj.
* gcc3newlib/base-gnat.add: New.
* gcc3newlib/target-c++.add: Add build_cxx.
* gcc3newlib/target-g77.add: Add build_g77.
* gcc3newlib/target-gcj.add: Add build_gcj.
* gcc3newlib/target-objc.add: Add build_objc.
* gcc3newlib/target-gnat.add: New.
* gcc3newlib/Makefile.am: Use ./mkspec. Use unified spec.
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/ChangeLog | 17 | ||||
-rw-r--r-- | scripts/configure.ac | 2 | ||||
-rw-r--r-- | scripts/gcc3newlib/Makefile.am | 67 | ||||
-rw-r--r-- | scripts/gcc3newlib/base-g77.add | 2 | ||||
-rw-r--r-- | scripts/gcc3newlib/base-gcj.add | 2 | ||||
-rw-r--r-- | scripts/gcc3newlib/base-gnat.add | 18 | ||||
-rw-r--r-- | scripts/gcc3newlib/gccnewlib.add | 51 | ||||
-rw-r--r-- | scripts/gcc3newlib/mkspec.in (renamed from scripts/mkgcc3newlibspec.in) | 15 | ||||
-rw-r--r-- | scripts/gcc3newlib/target-c++.add | 2 | ||||
-rw-r--r-- | scripts/gcc3newlib/target-g77.add | 2 | ||||
-rw-r--r-- | scripts/gcc3newlib/target-gcj.add | 2 | ||||
-rw-r--r-- | scripts/gcc3newlib/target-gnat.add | 22 | ||||
-rw-r--r-- | scripts/gcc3newlib/target-objc.add | 2 |
13 files changed, 158 insertions, 46 deletions
diff --git a/scripts/ChangeLog b/scripts/ChangeLog index 72cf629a1d..5d4e7a4592 100644 --- a/scripts/ChangeLog +++ b/scripts/ChangeLog @@ -1,3 +1,20 @@ +2002-08-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de> + + * mkgcc3newlibspec.in: Remove + * gcc3newlib/mkspec.in: New. + * configure.ac: Reflect changes above. + * gcc3newlib/gccnewlib.add: Add build_XXX defines. + Add preliminary gnat support. + * gcc3newlib/base-g77.add: Add build_g77. + * gcc3newlib/base-gcj.add: Add build_gcj. + * gcc3newlib/base-gnat.add: New. + * gcc3newlib/target-c++.add: Add build_cxx. + * gcc3newlib/target-g77.add: Add build_g77. + * gcc3newlib/target-gcj.add: Add build_gcj. + * gcc3newlib/target-objc.add: Add build_objc. + * gcc3newlib/target-gnat.add: New. + * gcc3newlib/Makefile.am: Use ./mkspec. Use unified spec. + 2002-08-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de> * setup.def: Increment release for gcc3newlib. diff --git a/scripts/configure.ac b/scripts/configure.ac index ef33954620..4e46dd5f3a 100644 --- a/scripts/configure.ac +++ b/scripts/configure.ac @@ -93,8 +93,8 @@ AC_CONFIG_FILES([buildall],[chmod +x buildall]) AC_CONFIG_FILES([mkgdbspec],[chmod +x mkgdbspec]) AC_CONFIG_FILES([mkbinutilspec],[chmod +x mkbinutilspec]) AC_CONFIG_FILES([mkgccnewlibspec],[chmod +x mkgccnewlibspec]) -AC_CONFIG_FILES([mkgcc3newlibspec],[chmod +x mkgcc3newlibspec]) AC_CONFIG_FILES([mkbspspec],[chmod +x mkbspspec]) +AC_CONFIG_FILES([gcc3newlib/mkspec],[chmod +x gcc3newlib/mkspec]) AC_CONFIG_FILES([cpukit/mkspec],[chmod +x cpukit/mkspec]) AC_CONFIG_COMMANDS([default],[[chmod 755 buildall diff --git a/scripts/gcc3newlib/Makefile.am b/scripts/gcc3newlib/Makefile.am index ee77454223..6eee24319e 100644 --- a/scripts/gcc3newlib/Makefile.am +++ b/scripts/gcc3newlib/Makefile.am @@ -2,18 +2,20 @@ ## $Id$ ## -MKGCCNEWLIBSPEC = $(SHELL) $(top_builddir)/mkgcc3newlibspec +MKSPEC = $(SHELL) ./mkspec SUBPACKAGES = gccnewlib.add \ base-gcc.add target-gcc.add \ base-g77.add target-g77.add \ base-gcj.add target-gcj.add \ target-objc.add \ - target-c++.add + target-c++.add \ + base-gnat.add target-gnat.add + +noinst_DATA = gccnewlib.spec.in gccnewlib_c_only.spec.in gccnewlib.spec.in: $(SUBPACKAGES) - cat $^ \ - | sed -e 's%@GCCLANGS@%%g' > $@ + cat $^ > $@ CLEANFILES = gccnewlib.spec.in gccnewlib_c_only.spec.in: gccnewlib.add base-gcc.add target-gcc.add \ @@ -29,55 +31,60 @@ MKGCCNEWLIBSPEC_DEPS = $(top_builddir)/mkgcc3newlibspec gccnewlib.spec.in \ MKGCCNEWLIB_C_ONLY_SPEC_DEPS = $(top_builddir)/mkgcc3newlibspec \ gccnewlib_c_only.spec.in $(top_builddir)/setup.cache +RPM_SPECS_DATA = + arm-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . arm-rtems + $(MKSPEC) -cfg $(top_builddir)/setup.cache arm-rtems > $@ +RPM_SPECS_DATA += arm-rtems-$(GCC3NEWLIBVERS).spec c4x-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIB_C_ONLY_SPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . c4x-rtems + $(MKSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache c4x-rtems > $@ +RPM_SPECS_DATA += c4x-rtems-$(GCC3NEWLIBVERS).spec -h8300-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIB_C_ONLY_SPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . h8300-rtems +h8300-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) + $(MKSPEC) -cfg $(top_builddir)/setup.cache h8300-rtems > $@ +RPM_SPECS_DATA += h8300-rtems-$(GCC3NEWLIBVERS).spec hppa1.1-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . hppa1.1-rtems + $(MKSPEC) -cfg $(top_builddir)/setup.cache hppa1.1-rtems > $@ +RPM_SPECS_DATA += hppa1.1-rtems-$(GCC3NEWLIBVERS).spec i386-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . i386-rtems + $(MKSPEC) -cfg $(top_builddir)/setup.cache i386-rtems > $@ +RPM_SPECS_DATA += i386-rtems-$(GCC3NEWLIBVERS).spec -i960-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIB_C_ONLY_SPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . i960-rtems +i960-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) + $(MKSPEC) -cfg $(top_builddir)/setup.cache i960-rtems > $@ +RPM_SPECS_DATA += i960-rtems-$(GCC3NEWLIBVERS).spec m68k-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . m68k-rtems + $(MKSPEC) -cfg $(top_builddir)/setup.cache m68k-rtems > $@ +RPM_SPECS_DATA += m68k-rtems-$(GCC3NEWLIBVERS).spec mips64orion-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . mips64orion-rtems + $(MKSPEC) -cfg $(top_builddir)/setup.cache mips64orion-rtems > $@ +RPM_SPECS_DATA += mips64orion-rtems-$(GCC3NEWLIBVERS).spec mips-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . mips-rtems + $(MKSPEC) -cfg $(top_builddir)/setup.cache mips-rtems > $@ +RPM_SPECS_DATA += mips-rtems-$(GCC3NEWLIBVERS).spec powerpc-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . powerpc-rtems + $(MKSPEC) -cfg $(top_builddir)/setup.cache powerpc-rtems > $@ +RPM_SPECS_DATA += powerpc-rtems-$(GCC3NEWLIBVERS).spec sh-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . sh-rtems + $(MKSPEC) -cfg $(top_builddir)/setup.cache sh-rtems > $@ +RPM_SPECS_DATA += sh-rtems-$(GCC3NEWLIBVERS).spec sh-rtemself-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . sh-rtemself + $(MKSPEC) -cfg $(top_builddir)/setup.cache sh-rtemself > $@ +RPM_SPECS_DATA += sh-rtemself-$(GCC3NEWLIBVERS).spec sparc-rtems-$(GCC3NEWLIBVERS).spec: $(MKGCCNEWLIBSPEC_DEPS) - $(MKGCCNEWLIBSPEC) $(C_ONLY_ARG) -cfg $(top_builddir)/setup.cache -o . sparc-rtems - -RPM_SPECS_DATA = \ - arm-rtems-$(GCC3NEWLIBVERS).spec \ - c4x-rtems-$(GCC3NEWLIBVERS).spec \ - h8300-rtems-$(GCC3NEWLIBVERS).spec \ - hppa1.1-rtems-$(GCC3NEWLIBVERS).spec \ - i386-rtems-$(GCC3NEWLIBVERS).spec i960-rtems-$(GCC3NEWLIBVERS).spec \ - m68k-rtems-$(GCC3NEWLIBVERS).spec \ - mips-rtems-$(GCC3NEWLIBVERS).spec mips64orion-rtems-$(GCC3NEWLIBVERS).spec \ - powerpc-rtems-$(GCC3NEWLIBVERS).spec sh-rtems-$(GCC3NEWLIBVERS).spec \ - sh-rtemself-$(GCC3NEWLIBVERS).spec sparc-rtems-$(GCC3NEWLIBVERS).spec + $(MKSPEC) -cfg $(top_builddir)/setup.cache sparc-rtems > $@ +RPM_SPECS_DATA += sparc-rtems-$(GCC3NEWLIBVERS).spec + CLEANFILES += $(RPM_SPECS_DATA) EXTRA_DIST = $(SUBPACKAGES) diff --git a/scripts/gcc3newlib/base-g77.add b/scripts/gcc3newlib/base-g77.add index 96f7d28efd..b1e2ba9f1f 100644 --- a/scripts/gcc3newlib/base-g77.add +++ b/scripts/gcc3newlib/base-g77.add @@ -1,3 +1,4 @@ +%if %build_g77 # ============================================================== # rtems-base-g77 # ============================================================== @@ -40,3 +41,4 @@ This is the files for gcc/g77 that are shared by all targets. done fi +%endif diff --git a/scripts/gcc3newlib/base-gcj.add b/scripts/gcc3newlib/base-gcj.add index b3ff2a2608..5926be30e9 100644 --- a/scripts/gcc3newlib/base-gcj.add +++ b/scripts/gcc3newlib/base-gcj.add @@ -1,3 +1,4 @@ +%if %build_gcj # ============================================================== # rtems-base-gcj # ============================================================== @@ -18,3 +19,4 @@ This is the files for gcc/java (gcj) that are shared by all targets. %{_prefix}/bin/jv-scan@exe_ext@ %{_prefix}/bin/gcjh@exe_ext@ +%endif diff --git a/scripts/gcc3newlib/base-gnat.add b/scripts/gcc3newlib/base-gnat.add new file mode 100644 index 0000000000..0996f3034c --- /dev/null +++ b/scripts/gcc3newlib/base-gnat.add @@ -0,0 +1,18 @@ +%if %build_gnat +# ============================================================== +# base-gnat +# ============================================================== +%package -n base-gnat +Provides: base-gnat +Summary: gcc/gnat tools +Group: rtems + +%description -n base-gnat +RTEMS is an open source operating system for embedded systems. + +This is the gcc/gnat tools for the gcc/gnat compiler + +%files -n base-gnat +%dir %{_prefix}/bin +%{_prefix}/bin/gnat* +%endif diff --git a/scripts/gcc3newlib/gccnewlib.add b/scripts/gcc3newlib/gccnewlib.add index 36eceaf02d..23e7790610 100644 --- a/scripts/gcc3newlib/gccnewlib.add +++ b/scripts/gcc3newlib/gccnewlib.add @@ -43,6 +43,26 @@ Buildroot: %{_tmppath}/%{name} NoSource: 0 NoSource: 1 +%define build_cxx 1 +%define build_g77 0 +%define build_objc 0 +%define build_gcj 0 +%define build_gnat 0 + +%if "@target_alias@" == "c4x-rtems" +%define build_gnat 0 +%define build_cxx 0 +%elseif "@target_alias@" == "i386-rtems" +%define build_gnat 1 +%elseif "@target_alias@" == "i960-rtems" +%define build_gnat 0 +%define build_cxx 0 +%elseif "@target_alias@" == "powerpc-rtems" +%define build_gnat 1 +%elseif "@target_alias@" == "sparc-rtems" +%define build_gnat 1 +%endif + %description RTEMS is an open source operating system for embedded systems. @@ -82,12 +102,38 @@ This is gcc's and newlib C Library's sources with patches for RTEMS. # CONFIGURE_ARGS="--build=%{_build} --host=%{_target}" # %endif + languages="c,c++" +%if %build_g77 + languages="$languages,g77" +%endif +%if %build_gcj + languages="$languages,gcj" +%endif +%if %build_objc + languages="$languages,objc" +%endif +%if %build_gnat + languages="$languages,ada" +%endif ../gcc-@gcc_version@/configure $CONFIGURE_ARGS --target=@target_alias@ \ --with-gnu-as --with-gnu-ld --with-newlib --verbose \ --with-system-zlib --disable-nls \ --enable-version-specific-runtime-libs \ - --enable-threads=rtems --prefix=%{_prefix} @GCCLANGS@ + --enable-threads=rtems --prefix=%{_prefix} \ + --enable-languages=$languages +%if %build_gnat + cd ../gcc-@gcc_version@/gcc/ada + touch treeprs.ads [es]info.h nmake.ad[bs] + cd ../../../build +%endif make all +%if %build_gnat + cd gcc +# This is what is documented, but it doesn't work for me (RC) +# make gnatlib_and_tools + make cross-gnattools + cd .. +%endif make info %install @@ -100,7 +146,8 @@ This is gcc's and newlib C Library's sources with patches for RTEMS. make prefix=$RPM_BUILD_ROOT%{_prefix} install cd @target_alias@/newlib - make prefix=$RPM_BUILD_ROOT%{_prefix} install-info + make prefix=$RPM_BUILD_ROOT%{_prefix} \ + bindir=$RPM_BUILD_ROOT%{_bindir} install-info # cd back to build/ cd ../.. diff --git a/scripts/mkgcc3newlibspec.in b/scripts/gcc3newlib/mkspec.in index 89d322305c..ffe0591b39 100644 --- a/scripts/mkgcc3newlibspec.in +++ b/scripts/gcc3newlib/mkspec.in @@ -5,8 +5,7 @@ RTEMS_DIR=`dirname $0`/@top_srcdir@ -CFG=setup.cache -dst=@RPM_SPECSdir@ +CFG=../setup.cache exe_ext=@EXEEXT@ usage() @@ -27,11 +26,6 @@ case $1 in CFG=$1 shift ;; --o) - shift - dst=$1 - shift - ;; -a) # alternate specs file shift specsrc=$1 @@ -55,8 +49,6 @@ target_alias=$1 . ./$CFG -specfile=${dst}/${target_alias}-gcc-${gcc3_version}-newlib-${gcc3newlib_version}.spec - patchn=-1 if test -n "${gcc3_patch_version}"; then patchn=`expr $patchn + 1` @@ -84,7 +76,4 @@ sed -e "s,@PATCH1\@,${PATCH1}," \ -e "s%@newlib_version\@%${gcc3newlib_version}%g" \ -e "s%@newlib_patch_version\@%${gcc3newlib_patch_version}%g" \ -e "s%@exe_ext\@%${exe_ext}%g" \ -< ${specsrc} \ -> ${specfile} - -echo Generated ${specfile}. +< ${specsrc} diff --git a/scripts/gcc3newlib/target-c++.add b/scripts/gcc3newlib/target-c++.add index 5e310a9e4e..0850623447 100644 --- a/scripts/gcc3newlib/target-c++.add +++ b/scripts/gcc3newlib/target-c++.add @@ -1,3 +1,4 @@ +%if %build_cxx # ============================================================== # @target_alias@-c++ # ============================================================== @@ -23,3 +24,4 @@ This is the gcc/g++ compiler for @target_alias@ %{_prefix}/lib/gcc-lib/@target_alias@/@gcc_version@/cc1plus@exe_ext@ %dir %{_prefix}/lib/gcc-lib/@target_alias@/@gcc_version@/include %{_prefix}/lib/gcc-lib/@target_alias@/@gcc_version@/include/g++ +%endif diff --git a/scripts/gcc3newlib/target-g77.add b/scripts/gcc3newlib/target-g77.add index e2c576a469..01a897a18d 100644 --- a/scripts/gcc3newlib/target-g77.add +++ b/scripts/gcc3newlib/target-g77.add @@ -1,3 +1,4 @@ +%if %build_g77 # ============================================================== # @target_alias@-g77 # ============================================================== @@ -17,3 +18,4 @@ This is the gcc/g77 compiler for @target_alias@ %{_prefix}/bin/@target_alias@-g77@exe_ext@ %{_prefix}/lib/gcc-lib/@target_alias@/@gcc_version@/f771@exe_ext@ +%endif diff --git a/scripts/gcc3newlib/target-gcj.add b/scripts/gcc3newlib/target-gcj.add index 6a09abd423..8a5d4a8b2b 100644 --- a/scripts/gcc3newlib/target-gcj.add +++ b/scripts/gcc3newlib/target-gcj.add @@ -1,3 +1,4 @@ +%if %build_gcj # ============================================================== # @target_alias@-gcj # ============================================================== @@ -19,3 +20,4 @@ This is the gcc/java compiler for @target_alias@ %{_prefix}/lib/gcc-lib/@target_alias@/@gcc_version@/jc1@exe_ext@ %{_prefix}/lib/gcc-lib/@target_alias@/@gcc_version@/jvgenmain@exe_ext@ +%endif diff --git a/scripts/gcc3newlib/target-gnat.add b/scripts/gcc3newlib/target-gnat.add new file mode 100644 index 0000000000..f47d227c1d --- /dev/null +++ b/scripts/gcc3newlib/target-gnat.add @@ -0,0 +1,22 @@ +%if %build_gnat +# ============================================================== +# @target_alias@-gnat +# ============================================================== +%package -n @target_alias@-gnat +Provides: @target_alias@-gnat +Summary: gcc/gnat compiler for @target_alias@ +Group: rtems +Requires: rtems-base-gnat @target_alias@-gcc + +%description -n @target_alias@-gnat +RTEMS is an open source operating system for embedded systems. + +This is the gcc/gnat compiler for @target_alias@ + +%files -n @target_alias@-gnat +# %files -n @target_alias@-gnat -f build/files.gnat +%dir %{_prefix}/bin +%{_prefix}/bin/@target_alias@-gnat* + +%{_prefix}/lib/gcc-lib/@target_alias@/@gcc_version@/gnat1@exe_ext@ +%endif diff --git a/scripts/gcc3newlib/target-objc.add b/scripts/gcc3newlib/target-objc.add index c7eb2b1b7d..8bf6468d39 100644 --- a/scripts/gcc3newlib/target-objc.add +++ b/scripts/gcc3newlib/target-objc.add @@ -1,3 +1,4 @@ +%if %build_objc # ============================================================== # @target_alias@-objc # ============================================================== @@ -15,3 +16,4 @@ This is the gcc/objc compiler for @target_alias@ %files -n @target_alias@-objc -f build/files.objc %{_prefix}/lib/gcc-lib/@target_alias@/@gcc_version@/cc1obj@exe_ext@ %{_prefix}/lib/gcc-lib/@target_alias@/@gcc_version@/include/objc +%endif |