1.1 --- a/patches/gcc/3.2.3/gcc-sh-linux.spec Wed Oct 28 12:03:38 2009 +0100
1.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
1.3 @@ -1,739 +0,0 @@
1.4 -Summary: The GNU Compiler Collection for SuperH.
1.5 -%define GCC_VERSION 3.2.3
1.6 -%define arch_list sh3-linux sh3eb-linux sh4-linux sh4eb-linux
1.7 -%define TARGET_LIBSTDC 1
1.8 -%define TARGET_JAVA 1
1.9 -
1.10 -Name: gcc
1.11 -Version: 3.2.3
1.12 -Release: 3
1.13 -
1.14 -Copyright: GPL
1.15 -Group: Development/Languages
1.16 -Source0: gcc-%{GCC_VERSION}.tar.bz2
1.17 -Patch1: gcc-20030210-sh-linux-1.patch
1.18 -Patch2: gcc-3.2.3-libffi-1.patch
1.19 -Patch3: gcc-3.2.3-sh-linux-dwarf2-1.patch
1.20 -Buildroot: /var/tmp/gcc-%{_target}-root
1.21 -ExclusiveArch: i386 sh3 sh3eb sh4 sh4eb
1.22 -
1.23 -%description
1.24 -This package contains the GNU Compiler Collection: gcc and g++.
1.25 -You'll need this package in order to compile C/C++ code.
1.26 -
1.27 -%ifarch i386
1.28 -
1.29 -# ==================== Cross Compiler ===============================
1.30 -
1.31 -%package sh-linux
1.32 -Summary: The GNU Compiler Collection for sh-linux.
1.33 -Group: Development/Languages
1.34 -Requires: binutils-sh-linux >= 2.13.2
1.35 -Provides: gcc-sh-linux
1.36 -Obsoletes: gcc-sh3-linux gcc-sh3eb-linux gcc-sh4-linux gcc-sh4eb-linux
1.37 -Obsoletes: gcc-sh3-linux-c++ gcc-sh3eb-linux-c++ gcc-sh4-linux-c++ gcc-sh4eb-linux-c++
1.38 -Obsoletes: libstdc++-sh3-linux libstdc++-sh3eb-linux libstdc++-sh4-linux libstdc++-sh4eb-linux
1.39 -AutoReqProv: no
1.40 -
1.41 -%description sh-linux
1.42 -The gcc-sh-linux package contains GNU Compiler Collection: gcc g++ and libstdc++-v3.
1.43 -
1.44 -It includes support for most of the current C++ specification, including templates and
1.45 -exception handling. It does also include the standard C++ library and C++ header files.
1.46 -You'll need this package in order to cross compile C/C++ code for sh-linux.
1.47 -
1.48 -%package -n libgcj-sh-linux
1.49 -Summary: Header files and libraries for sh-linux Java development.
1.50 -Group: Development/Libraries
1.51 -Requires: gcc-sh-linux = %{version}-%{release}
1.52 -AutoReqProv: no
1.53 -
1.54 -%description -n libgcj-sh-linux
1.55 -The Java static libraries and C header files. You will need this
1.56 -package to compile your Java programs for sh-linux using the gcc Java compiler (gcj).
1.57 -
1.58 -%else
1.59 -# =========================== Native Compiler =================================
1.60 -%package libgcc
1.61 -Summary: runtime libraries for the GNU Compiler Collection.
1.62 -Group: System Environment/Libraries
1.63 -
1.64 -%description libgcc
1.65 -This package contains libgcc shared libraries for the GNU C Compiler Collection.
1.66 -You'll need this package in order to execute C,C++,JAVA code
1.67 -that uses shared libgcc.
1.68 -
1.69 -%package c++
1.70 -Summary: C++ support for gcc
1.71 -Group: Development/Languages
1.72 -Requires: gcc = %{version}-%{release}
1.73 -
1.74 -%description c++
1.75 -This package adds C++ support to the GNU Compiler Collection. It includes
1.76 -support for most of the current C++ specification, including templates and
1.77 -exception handling. It does include the static standard C++
1.78 -library and C++ header files; the library for dynamically linking
1.79 -programs is available separately.
1.80 -
1.81 -%package -n libstdc++
1.82 -Summary: GNU c++ library.
1.83 -Group: System Environment/Libraries
1.84 -
1.85 -%description -n libstdc++
1.86 -The libstdc++ package contains a snapshot of the GCC Standard C++
1.87 -Library v3, an ongoing project to implement the ISO 14882 Standard C++
1.88 -library.
1.89 -
1.90 -%package -n libstdc++-devel
1.91 -Summary: Header files and libraries for C++ development
1.92 -Group: Development/Libraries
1.93 -Requires: libstdc++ = %{version}-%{release}, gcc-c++ = %{version}-%{release}
1.94 -
1.95 -%description -n libstdc++-devel
1.96 -This is the GNU implementation of the standard C++ libraries. This
1.97 -package includes the header files and libraries needed for C++
1.98 -development. This includes SGI's implementation of the STL.
1.99 -
1.100 -%package java
1.101 -Summary: Java support for gcc
1.102 -Group: Development/Languages
1.103 -Requires: gcc = %{version}-%{release}, libgcj = %{version}-%{release}, libgcj-devel = %{version}-%{release}
1.104 -
1.105 -%description java
1.106 -This package adds experimental support for compiling Java(tm) programs and
1.107 -bytecode into native code. To use this you will also need the libgcj and
1.108 -libgcj-devel packages.
1.109 -
1.110 -%package -n libgcj
1.111 -Summary: Java runtime library for gcc.
1.112 -Group: System Environment/Libraries
1.113 -
1.114 -%description -n libgcj
1.115 -The Java runtime library. You will need this package to run your Java
1.116 -programs compiled using the gcc Java compiler (gcj).
1.117 -
1.118 -%package -n libgcj-devel
1.119 -Summary: Header files and libraries for Java development.
1.120 -Group: Development/Libraries
1.121 -Requires: libgcj = %{version}-%{release}
1.122 -
1.123 -%description -n libgcj-devel
1.124 -The Java static libraries and C header files. You will need this
1.125 -package to compile your Java programs using the gcc Java compiler (gcj).
1.126 -
1.127 -%endif
1.128 -
1.129 -%prep
1.130 -%setup -q -n gcc-%{GCC_VERSION}
1.131 -%patch1 -p1
1.132 -%patch2 -p1
1.133 -##%patch3 -p1
1.134 -
1.135 -%build
1.136 -%ifarch i386
1.137 -# build cross compiler for i386-linux host
1.138 -for arch in sh-linux; do
1.139 - rm -rf ${arch}
1.140 - mkdir ${arch}
1.141 -
1.142 - CONFIG_ARGS="\
1.143 - --prefix=%{_prefix} \
1.144 - --mandir=%{_mandir} \
1.145 - --infodir=%{_infodir} \
1.146 - --target=${arch} \
1.147 - --host=%{_host} \
1.148 - --build=%{_build} \
1.149 - --enable-languages=c,c++,java \
1.150 - --with-system-zlib \
1.151 - --with-gxx-include-dir=%{_prefix}/${arch}/include/g++-v3 \
1.152 - --includedir=%{_prefix}/${arch}/include \
1.153 - --disable-checking \
1.154 - --disable-shared \
1.155 - --enable-__cxa_atexit \
1.156 - --enable-c99 \
1.157 - --enable-threads=posix \
1.158 - --enable-long-long"
1.159 - if [ %{TARGET_JAVA} -ne 0 ]; then
1.160 - CONFIG_ARGS="$CONFIG_ARGS --enable-libgcj"
1.161 - fi
1.162 - ( cd $arch
1.163 - ../configure ${CONFIG_ARGS}
1.164 - )
1.165 - if [ %{TARGET_LIBSTDC} -ne 0 -o %{TARGET_JAVA} -ne 0 ]; then
1.166 - sed -e s:-Dinhibit_libc::g ${arch}/gcc/Makefile >${arch}/gcc/Makefile.$$$
1.167 - mv -f ${arch}/gcc/Makefile.$$$ ${arch}/gcc/Makefile
1.168 - fi
1.169 - make all-gcc -C ${arch}
1.170 -
1.171 - if [ %{TARGET_LIBSTDC} -ne 0 ]; then
1.172 - CONFIG_ARGS="`echo $CONFIG_ARGS | sed -e s/--disable-shared/--enable-shared/`"
1.173 - make TARGET_CONFIGARGS="${CONFIG_ARGS} --with-cross-host" all-target-libstdc++-v3 -C ${arch}
1.174 - fi
1.175 -
1.176 - if [ %{TARGET_JAVA} -ne 0 ]; then
1.177 - make all-fastjar -C ${arch}
1.178 - CONFIG_ARGS="`echo $CONFIG_ARGS | sed -e s/--host=%{_host}/--host=${arch}/`"
1.179 - dir=`pwd`
1.180 -
1.181 - ac_cv_file__proc_self_exe=yes \
1.182 - ac_cv_prog_GCJ="$dir/$arch/gcc/gcj -B$dir/$arch/$arch/libjava/ -B$dir/$arch/gcc/ -B%{_prefix}/$arch/bin/ -B%{_prefix}/$arch/lib/ -isystem %{_prefix}/$arch/include" \
1.183 - make TARGET_CONFIGARGS="${CONFIG_ARGS} --with-cross-host --enable-multilib --with-target-subdir=${arch} --with-x=no" \
1.184 - all-target-libjava -C ${arch}
1.185 - fi
1.186 -
1.187 -%else
1.188 -# Canadian cross (build native compiler)
1.189 -for arch in %{_target}; do
1.190 - rm -rf ${arch}
1.191 - mkdir -p ${arch}
1.192 - CONFIG_ARGS="\
1.193 - --prefix=%{_prefix} \
1.194 - --mandir=%{_mandir} \
1.195 - --infodir=%{_infodir} \
1.196 - --target=${arch} \
1.197 - --host=${arch} \
1.198 - --build=%{_build} \
1.199 - --enable-languages=c,c++,java \
1.200 - --with-system-zlib \
1.201 - --with-gxx-include-dir=%{_prefix}/include/g++-v3 \
1.202 - --disable-checking \
1.203 - --disable-shared \
1.204 - --enable-__cxa_atexit \
1.205 - --enable-c99 \
1.206 - --enable-threads=posix \
1.207 - --enable-long-long"
1.208 -
1.209 - if [ %{TARGET_JAVA} -ne 0 ]; then
1.210 - CONFIG_ARGS="$CONFIG_ARGS --enable-libgcj"
1.211 - fi
1.212 -
1.213 - ( cd ${arch}
1.214 - CC=${arch}-gcc AR=${arch}-ar RANLIB=${arch}-ranlib CXX=${arch}-g++ \
1.215 - ../configure $CONFIG_ARGS
1.216 - )
1.217 -
1.218 - if [ %{TARGET_LIBSTDC} -ne 0 -o %{TARGET_JAVA} -ne 0 ]; then
1.219 - sed -e s:-Dinhibit_libc::g ${arch}/gcc/Makefile >${arch}/gcc/Makefile.$$$
1.220 - mv -f ${arch}/gcc/Makefile.$$$ ${arch}/gcc/Makefile
1.221 - fi
1.222 -
1.223 - make all-build-libiberty all-gcc -C ${arch}
1.224 -
1.225 - if [ %{TARGET_LIBSTDC} -ne 0 ]; then
1.226 - CONFIG_ARGS="`echo $CONFIG_ARGS | sed -e s/--disable-shared/--enable-shared/`"
1.227 - make TARGET_CONFIGARGS="${CONFIG_ARGS}" all-target-libstdc++-v3 -C ${arch}
1.228 - if [ %{TARGET_JAVA} -ne 0 ]; then
1.229 - ( mkdir -p ${arch}/fastjar; cd ${arch}/fastjar; rm *; ../../fastjar/configure --with-system-zlib; make )
1.230 - ac_cv_file__proc_self_exe=yes \
1.231 - CC=${arch}-gcc AR=${arch}-ar RANLIB=${arch}-ranlib CXX=${arch}-g++ GCJ=${arch}-gcj \
1.232 - make TARGET_CONFIGARGS="${CONFIG_ARGS} --with-x=no" configure-target-libjava -C ${arch}
1.233 -
1.234 - make -C ${arch}/${arch}/libffi
1.235 - make -C ${arch}/${arch}/boehm-gc
1.236 - make -C ${arch}/${arch}/zlib
1.237 - make GCJ=${arch}-gcj GCJH=${arch}-gcjh ZIP=${arch}-jar -C ${arch}/${arch}/libjava
1.238 - (
1.239 - rm -rf ${arch}/${arch}/fastjar
1.240 - mkdir -p ${arch}/${arch}/fastjar
1.241 - cd ${arch}/${arch}/fastjar
1.242 -
1.243 - ac_cv_sizeof_char=1 \
1.244 - ac_cv_sizeof_short=2 \
1.245 - ac_cv_sizeof_int=4 \
1.246 - ac_cv_sizeof_long=4 \
1.247 - ac_cv_sizeof_long_long=8 \
1.248 - ac_cv_sizeof_float=4 \
1.249 - ac_cv_sizeof_double=8 \
1.250 - ac_cv_sizeof_long_double=8 \
1.251 - ac_cv_sizeof_void_p=4 \
1.252 - ac_cv_file__proc_self_exe=yes \
1.253 - ac_cv_header_langinfo_h=yes \
1.254 - CC=${arch}-gcc ../../../fastjar/configure $CONFIG_ARGS
1.255 -
1.256 - make
1.257 - )
1.258 -
1.259 - fi
1.260 - fi
1.261 -%endif
1.262 -done
1.263 -
1.264 -%install
1.265 -rm -rf $RPM_BUILD_ROOT
1.266 -mkdir -p ${RPM_BUILD_ROOT}/{%{_prefix}/bin,lib}
1.267 -
1.268 -%ifarch i386
1.269 - ARCH_STRTIP=strip
1.270 - EXESUFFIX=""
1.271 - arch=sh-linux
1.272 - TOOLPREFIX=${arch}-
1.273 - mkdir -p ${RPM_BUILD_ROOT}%{_prefix}/${arch}/{bin,include,lib,share}
1.274 - mkdir -p ${RPM_BUILD_ROOT}%{_prefix}/${arch}/lib/{m4,mb/m4}
1.275 - make DESTDIR=${RPM_BUILD_ROOT} \
1.276 - install-gcc \
1.277 - install-fastjar \
1.278 - -C ${arch}
1.279 -%if 0
1.280 - ( cd ${RPM_BUILD_ROOT}%{_prefix}/sh-linux/lib
1.281 - rm -f libgcc_s_*.so
1.282 - mv libgcc_s_mb.so.1 mb/libgcc_s.so.1
1.283 - mv libgcc_s_m4.so.1 m4/libgcc_s.so.1
1.284 - mv libgcc_s_mb_m4.so.1 mb/m4/libgcc_s.so.1
1.285 - ln -s libgcc_s.so.1 mb/libgcc_s.so
1.286 - ln -s libgcc_s.so.1 m4/libgcc_s.so
1.287 - ln -s libgcc_s.so.1 mb/m4/libgcc_s.so
1.288 - )
1.289 -%endif
1.290 -
1.291 - if [ %{TARGET_LIBSTDC} -ne 0 ]; then
1.292 - make DESTDIR=${RPM_BUILD_ROOT} \
1.293 - install-target-libstdc++-v3 \
1.294 - -C ${arch}
1.295 - fi
1.296 - if [ %{TARGET_JAVA} -ne 0 ]; then
1.297 - make DESTDIR=${RPM_BUILD_ROOT} \
1.298 - install-target-libjava \
1.299 - install-target-boehm-gc \
1.300 - install-target-zlib \
1.301 - -C ${arch}
1.302 - make DESTDIR=${RPM_BUILD_ROOT} prefix=%{_prefix}/${arch} \
1.303 - install -C ${arch}/${arch}/libffi
1.304 - mv -f $RPM_BUILD_ROOT%{_prefix}/share/java $RPM_BUILD_ROOT%{_prefix}/sh-linux/share/
1.305 - fi
1.306 - rm -f $RPM_BUILD_ROOT%{_prefix}/bin/{gcov,gccbug}
1.307 - rm -f $RPM_BUILD_ROOT%{_prefix}/${arch}/bin/{gij,jv-convert}
1.308 - sed -e 's/@@VERSION@@/%{GCC_VERSION}/g' debian/shCPU-linux-GCC >$RPM_BUILD_ROOT%{_prefix}/bin/shCPU-linux-GCC
1.309 - chmod 0755 $RPM_BUILD_ROOT%{_prefix}/bin/shCPU-linux-GCC
1.310 -
1.311 - LIBSTDC=`cd $RPM_BUILD_ROOT%{_prefix}/sh-linux/lib; echo libstdc++.so*`
1.312 - LIBGCJ=`cd $RPM_BUILD_ROOT%{_prefix}/sh-linux/lib; echo libgcj.so*`
1.313 - LIBFFI=`cd $RPM_BUILD_ROOT%{_prefix}/sh-linux/lib; echo libffi*.so*`
1.314 - # literally (binary-ly) same
1.315 - PROGS="cpp c++ g++ g77 gcc gcj"
1.316 - DRIVERS="cc1 cc1obj cc1plus collect2 cpp0 f771 jc1 tradcpp0 jvgenmain"
1.317 - OBJS="crtbegin.o crtbeginS.o crtend.o crtendS.o crtbeginT.o"
1.318 - LIBS="libgcc.a libgcc_eh.a libobjc.a"
1.319 - LIBS_1="$LIBSTDC \
1.320 - $LIBGCJ libgcj.spec \
1.321 - $LIBFFI "
1.322 - LIBS_2="libstdc++.a libstdc++.la \
1.323 - libsupc++.a libsupc++.la \
1.324 - libgcj.a libgcj.la \
1.325 - libffi.a libffi.la"
1.326 - INCLUDE="include"
1.327 -
1.328 - for CPU in sh3 sh3eb sh4 sh4eb; do
1.329 - mkdir -p ${RPM_BUILD_ROOT}%{_prefix}/lib/gcc-lib/${CPU}-linux/%{GCC_VERSION}
1.330 - mkdir -p ${RPM_BUILD_ROOT}%{_prefix}/${CPU}-linux/{lib,share/java}
1.331 - # Make symbolic links for include dir.
1.332 - ln -s ../sh-linux/include $RPM_BUILD_ROOT%{_prefix}/${CPU}-linux/include
1.333 -
1.334 - # Make symbolic links for libgcj.jar
1.335 - ln -s ../../sh-linux/share/java/libgcj-%{GCC_VERSION}.jar $RPM_BUILD_ROOT%{_prefix}/${CPU}-linux/share/java/libgcj-%{GCC_VERSION}.jar
1.336 -
1.337 - # Make symbolic links for executables.
1.338 - for p in ${PROGS}; do
1.339 - ln -s shCPU-linux-GCC $RPM_BUILD_ROOT%{_prefix}/bin/${CPU}-linux-$p
1.340 - done
1.341 - ln -s sh-linux-gcjh $RPM_BUILD_ROOT%{_prefix}/bin/${CPU}-linux-gcjh
1.342 -
1.343 - case "${CPU}" in
1.344 - sh3)
1.345 - MULTILIBDIR=
1.346 - MULTIPARENTDIR=
1.347 - AS_ENDIAN_FLAG="-little"
1.348 - CPP_ENDIAN_DEF="-D__LITTLE_ENDIAN__"
1.349 - CPP_CPU_DEFS='-D__SH3__ -D__sh3__'
1.350 - CC1_CPU_ENDIAN_FLAGS="-ml -m3"
1.351 - CC1PLUS_CPU_ENDIAN_FLAGS="-ml -m3"
1.352 - LINKER_CPU_ENDIAN_FLAGS="-m shlelf_linux -EL --architecture sh3"
1.353 - LINKER_RPATH_LINK_FLAG="-rpath-link %{_prefix}/sh3-linux/lib"
1.354 - ;;
1.355 - sh3eb)
1.356 - MULTILIBDIR=/mb
1.357 - MULTIPARENTDIR=../
1.358 - AS_ENDIAN_FLAG="-big"
1.359 - CPP_ENDIAN_DEF="-D__BIG_ENDIAN__"
1.360 - CPP_CPU_DEFS='-D__SH3__ -D__sh3__'
1.361 - CC1_CPU_ENDIAN_FLAGS="-mb -m3"
1.362 - CC1PLUS_CPU_ENDIAN_FLAGS="-mb -m3"
1.363 - LINKER_CPU_ENDIAN_FLAGS="-m shelf_linux -EB --architecture sh3"
1.364 - LINKER_RPATH_LINK_FLAG="-rpath-link %{_prefix}/sh3eb-linux/lib"
1.365 - ;;
1.366 - sh4)
1.367 - MULTILIBDIR=/m4
1.368 - MULTIPARENTDIR=../
1.369 - AS_ENDIAN_FLAG="-little"
1.370 - CPP_ENDIAN_DEF="-D__LITTLE_ENDIAN__"
1.371 - CPP_CPU_DEFS="-D__SH4__"
1.372 - CC1_CPU_ENDIAN_FLAGS="-ml -m4"
1.373 - CC1PLUS_CPU_ENDIAN_FLAGS="-ml -m4"
1.374 - LINKER_CPU_ENDIAN_FLAGS="-m shlelf_linux -EL --architecture sh4"
1.375 - LINKER_RPATH_LINK_FLAG="-rpath-link %{_prefix}/sh4-linux/lib"
1.376 - ;;
1.377 - sh4eb)
1.378 - MULTILIBDIR=/mb/m4
1.379 - MULTIPARENTDIR=../../
1.380 - AS_ENDIAN_FLAG="-big"
1.381 - CPP_ENDIAN_DEF="-D__BIG_ENDIAN__"
1.382 - CPP_CPU_DEFS="-D__SH4__"
1.383 - CC1_CPU_ENDIAN_FLAGS="-mb -m4"
1.384 - CC1PLUS_CPU_ENDIAN_FLAGS="-mb -m4"
1.385 - LINKER_CPU_ENDIAN_FLAGS="-m shelf_linux -EB --architecture sh4"
1.386 - LINKER_RPATH_LINK_FLAG="-rpath-link %{_prefix}/sh4eb-linux/lib"
1.387 - ;;
1.388 - esac
1.389 -
1.390 - # Make symbolic links for GCC drivers, objects, libraries, and include dir.
1.391 - for f in ${DRIVERS} ${INCLUDE}; do
1.392 - if [ -a $RPM_BUILD_ROOT%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/$f ]; then
1.393 - ln -s ../../sh-linux/%{GCC_VERSION}/$f $RPM_BUILD_ROOT%{_prefix}/lib/gcc-lib/${CPU}-linux/%{GCC_VERSION}/$f
1.394 - fi
1.395 - done
1.396 - for f in ${OBJS} ${LIBS}; do
1.397 - if [ -a $RPM_BUILD_ROOT%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}${MULTILIBDIR}/$f ]; then
1.398 - ln -s ../../sh-linux/%{GCC_VERSION}${MULTILIBDIR}/$f $RPM_BUILD_ROOT%{_prefix}/lib/gcc-lib/${CPU}-linux/%{GCC_VERSION}/$f
1.399 - fi
1.400 - done
1.401 -
1.402 - for f in ${LIBS_1} ${LIBS_2}; do
1.403 - if [ -e $RPM_BUILD_ROOT%{_prefix}/sh-linux/lib${MULTILIBDIR}/$f ]; then
1.404 - mv -f $RPM_BUILD_ROOT%{_prefix}/sh-linux/lib${MULTILIBDIR}/$f $RPM_BUILD_ROOT%{_prefix}/${CPU}-linux/lib
1.405 - ln -s ${MULTIPARENTDIR}../../${CPU}-linux/lib/$f $RPM_BUILD_ROOT%{_prefix}/sh-linux/lib${MULTILIBDIR}/$f
1.406 - fi
1.407 - done
1.408 -
1.409 - sed -e "s+@AS_ENDIAN_FLAG@+${AS_ENDIAN_FLAG}+" \
1.410 - -e "s+@CPP_ENDIAN_DEF@+${CPP_ENDIAN_DEF}+" \
1.411 - -e "s+@CPP_CPU_DEFS@+${CPP_CPU_DEFS}+" \
1.412 - -e "s+@CC1_CPU_ENDIAN_FLAGS@+${CC1_CPU_ENDIAN_FLAGS}+" \
1.413 - -e "s+@CC1PLUS_CPU_ENDIAN_FLAGS@+${CC1PLUS_CPU_ENDIAN_FLAGS}+" \
1.414 - -e "s+@LINKER_CPU_ENDIAN_FLAGS@+${LINKER_CPU_ENDIAN_FLAGS}+" \
1.415 - -e "s+@LINKER_RPATH_LINK_FLAG@+${LINKER_RPATH_LINK_FLAG}+" \
1.416 - debian/edit-specs.in >${arch}/edit-specs-${CPU}.sed
1.417 -
1.418 - sed -f ${arch}/edit-specs-${CPU}.sed \
1.419 - $RPM_BUILD_ROOT%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/specs \
1.420 - > $RPM_BUILD_ROOT%{_prefix}/lib/gcc-lib/${CPU}-linux/%{GCC_VERSION}/specs
1.421 -
1.422 - done
1.423 -
1.424 -%else
1.425 - ARCH_STRTIP=%{_target}-strip
1.426 - EXESUFFIX=""
1.427 - TOOLPREFIX=""
1.428 - ln -s ..%{_prefix}/bin/cpp ${RPM_BUILD_ROOT}/lib/cpp
1.429 - ln -s gcc ${RPM_BUILD_ROOT}%{_prefix}/bin/cc
1.430 - arch=%{_target}
1.431 - make DESTDIR=${RPM_BUILD_ROOT} \
1.432 - install -C ${arch}
1.433 - if [ %{TARGET_JAVA} -ne 0 ]; then
1.434 - make DESTDIR=${RPM_BUILD_ROOT} install -C ${arch}/${arch}/libffi
1.435 - make DESTDIR=${RPM_BUILD_ROOT} install -C ${arch}/${arch}/fastjar
1.436 - mv -f ${RPM_BUILD_ROOT}/%{_prefix}/%{_lib}/libgcj.spec \
1.437 - ${RPM_BUILD_ROOT}/%{_prefix}/lib/gcc-lib/${arch}/%{GCC_VERSION}/
1.438 - fi
1.439 - $ARCH_STRTIP $RPM_BUILD_ROOT%{_prefix}/bin/gcov$EXESUFFIX || :
1.440 -
1.441 -cat >${arch}/edit-specs <<EOF
1.442 -/^*cross_compile:$/ {
1.443 -n
1.444 -c\\
1.445 -0
1.446 -}
1.447 -EOF
1.448 - sed -f ${arch}/edit-specs -e 's#-rpath-link.*/usr/%{_target}/lib##' \
1.449 - ${RPM_BUILD_ROOT}%{_prefix}/lib/gcc-lib/${arch}/%{GCC_VERSION}/specs \
1.450 - >${RPM_BUILD_ROOT}%{_prefix}/lib/gcc-lib/${arch}/%{GCC_VERSION}/specs.$$
1.451 - mv -f ${RPM_BUILD_ROOT}%{_prefix}/lib/gcc-lib/${arch}/%{GCC_VERSION}/specs.$$ \
1.452 - ${RPM_BUILD_ROOT}%{_prefix}/lib/gcc-lib/${arch}/%{GCC_VERSION}/specs
1.453 -
1.454 - sed -e "s/dependency_libs=.*/dependency_libs='-lm -lgcc -lc -lgcc'/" \
1.455 - ${RPM_BUILD_ROOT}%{_prefix}/lib/libstdc++.la \
1.456 - >${RPM_BUILD_ROOT}%{_prefix}/lib/libstdc++.la.$$
1.457 - mv -f ${RPM_BUILD_ROOT}%{_prefix}/lib/libstdc++.la.$$ \
1.458 - ${RPM_BUILD_ROOT}%{_prefix}/lib/libstdc++.la
1.459 -
1.460 - sed -e "s/dependency_libs=.*/dependency_libs='-lpthread -ldl -lz -lm -lgcc -lc -lgcc'/" \
1.461 - ${RPM_BUILD_ROOT}%{_prefix}/lib/libgcj.la \
1.462 - >${RPM_BUILD_ROOT}%{_prefix}/lib/libgcj.la.$$
1.463 - mv -f ${RPM_BUILD_ROOT}%{_prefix}/lib/libgcj.la.$$ \
1.464 - ${RPM_BUILD_ROOT}%{_prefix}/lib/libgcj.la
1.465 -
1.466 -cat >$RPM_BUILD_ROOT%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/syslimits.h <<EOF
1.467 -#define _GCC_NEXT_LIMITS_H /* tell gcc's limits.h to recurse */
1.468 -#include_next <limits.h>
1.469 -#undef _GCC_NEXT_LIMITS_H
1.470 -EOF
1.471 -
1.472 -%endif
1.473 -
1.474 - $ARCH_STRTIP $RPM_BUILD_ROOT%{_prefix}/bin/${TOOLPREFIX}{gcc,cpp,c++,c++filt,gcj,gcjh,gij,jar,grepjar,jcf-dump,jv-convert,jv-scan}$EXESUFFIX || :
1.475 - FULLPATH=$(dirname $RPM_BUILD_ROOT%{_prefix}/lib/gcc-lib/${arch}/%{GCC_VERSION}/cc1${EXESUFFIX})
1.476 - $ARCH_STRTIP $FULLPATH/{cc1${EXESUFFIX},cc1plus${EXESUFFIX},cpp0${EXESUFFIX},tradcpp0${EXESUFFIX},collect2${EXESUFFIX},jc1${EXESUFFIX},jvgenmain${EXESUFFIX}} || :
1.477 -
1.478 - # Strip static libraries
1.479 - sh-linux-strip -S -R .comment `find $RPM_BUILD_ROOT -type f -name "*.a"` || :
1.480 -
1.481 - # Strip ELF shared objects
1.482 - for f in `find $RPM_BUILD_ROOT -type f \( -perm -0100 -or -perm -0010 -or -perm -0001 \) `; do
1.483 - if file $f | grep -q "shared object.*not stripped"; then
1.484 - sh-linux-strip --strip-unneeded -R .comment $f
1.485 - fi
1.486 - done
1.487 -
1.488 -%clean
1.489 -rm -rf $RPM_BUILD_ROOT
1.490 -
1.491 -# ==================== Cross Compiler ===============================
1.492 -%ifarch i386
1.493 -
1.494 -%files sh-linux
1.495 -%defattr(-,root,root)
1.496 -%{_prefix}/bin/sh*
1.497 -%dir %{_prefix}/lib/gcc-lib/sh-linux
1.498 -%dir %{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}
1.499 -%dir %{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include
1.500 -%dir %{_prefix}/lib/gcc-lib/sh3-linux
1.501 -%dir %{_prefix}/lib/gcc-lib/sh3-linux/%{GCC_VERSION}
1.502 -%dir %{_prefix}/lib/gcc-lib/sh3eb-linux
1.503 -%dir %{_prefix}/lib/gcc-lib/sh3eb-linux/%{GCC_VERSION}
1.504 -%dir %{_prefix}/lib/gcc-lib/sh4-linux
1.505 -%dir %{_prefix}/lib/gcc-lib/sh4-linux/%{GCC_VERSION}
1.506 -%dir %{_prefix}/lib/gcc-lib/sh4eb-linux
1.507 -%dir %{_prefix}/lib/gcc-lib/sh4eb-linux/%{GCC_VERSION}
1.508 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/cc1
1.509 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/cc1plus
1.510 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/collect2
1.511 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/cpp0
1.512 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/*.o
1.513 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/libgcc*.a
1.514 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/specs
1.515 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/tradcpp0
1.516 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/jc1
1.517 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/jvgenmain
1.518 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/m4
1.519 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/mb
1.520 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include/stddef.h
1.521 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include/stdarg.h
1.522 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include/varargs.h
1.523 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include/float.h
1.524 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include/limits.h
1.525 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include/stdbool.h
1.526 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include/iso646.h
1.527 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include/syslimits.h
1.528 -%{_prefix}/lib/gcc-lib/sh-linux/%{GCC_VERSION}/include/README
1.529 -%{_prefix}/lib/gcc-lib/sh3-linux/%{GCC_VERSION}/*
1.530 -%{_prefix}/lib/gcc-lib/sh3eb-linux/%{GCC_VERSION}/*
1.531 -%{_prefix}/lib/gcc-lib/sh4-linux/%{GCC_VERSION}/*
1.532 -%{_prefix}/lib/gcc-lib/sh4eb-linux/%{GCC_VERSION}/*
1.533 -%{_mandir}/man1/sh-linux-*
1.534 -%dir %{_prefix}/sh-linux/include
1.535 -%{_prefix}/sh3-linux/include
1.536 -%{_prefix}/sh3eb-linux/include
1.537 -%{_prefix}/sh4-linux/include
1.538 -%{_prefix}/sh4eb-linux/include
1.539 -%endif
1.540 -
1.541 -%if %{TARGET_LIBSTDC}
1.542 -%ifarch i386
1.543 -%{_prefix}/sh-linux/include/g++-v3
1.544 -%{_prefix}/sh-linux/lib/libs*
1.545 -%{_prefix}/sh-linux/lib/m4/libs*
1.546 -%{_prefix}/sh-linux/lib/mb/libs*
1.547 -%{_prefix}/sh-linux/lib/mb/m4/libs*
1.548 -%{_prefix}/sh3-linux/lib/libs*
1.549 -%{_prefix}/sh4-linux/lib/libs*
1.550 -%{_prefix}/sh3eb-linux/lib/libs*
1.551 -%{_prefix}/sh4eb-linux/lib/libs*
1.552 -%endif
1.553 -%endif
1.554 -
1.555 -%if %{TARGET_JAVA}
1.556 -%ifarch i386
1.557 -%files -n libgcj-sh-linux
1.558 -%defattr(-,root,root)
1.559 -%{_prefix}/sh-linux/include/*.h
1.560 -%{_prefix}/sh-linux/include/gcj
1.561 -%{_prefix}/sh-linux/include/gnu/*
1.562 -%{_prefix}/sh-linux/include/java
1.563 -%{_prefix}/sh-linux/lib/lib*gcj*
1.564 -%{_prefix}/sh-linux/lib/m4/lib*gcj*
1.565 -%{_prefix}/sh-linux/lib/mb/lib*gcj*
1.566 -%{_prefix}/sh-linux/lib/mb/m4/lib*gcj*
1.567 -%{_prefix}/sh-linux/lib/libffi*
1.568 -%{_prefix}/sh-linux/lib/m4/libffi*
1.569 -%{_prefix}/sh-linux/lib/mb/libffi*
1.570 -%{_prefix}/sh-linux/lib/mb/m4/libffi*
1.571 -%{_prefix}/sh-linux/share/java/libgcj-%{GCC_VERSION}.jar
1.572 -%{_prefix}/sh3-linux/lib/lib*gcj*
1.573 -%{_prefix}/sh3-linux/lib/libffi*
1.574 -%{_prefix}/sh3-linux/share/java/libgcj-%{GCC_VERSION}.jar
1.575 -%{_prefix}/sh4-linux/lib/lib*gcj*
1.576 -%{_prefix}/sh4-linux/lib/libffi*
1.577 -%{_prefix}/sh4-linux/share/java/libgcj-%{GCC_VERSION}.jar
1.578 -%{_prefix}/sh3eb-linux/lib/lib*gcj*
1.579 -%{_prefix}/sh3eb-linux/lib/libffi*
1.580 -%{_prefix}/sh3eb-linux/share/java/libgcj-%{GCC_VERSION}.jar
1.581 -%{_prefix}/sh4eb-linux/lib/lib*gcj*
1.582 -%{_prefix}/sh4eb-linux/lib/libffi*
1.583 -%{_prefix}/sh4eb-linux/share/java/libgcj-%{GCC_VERSION}.jar
1.584 -%endif
1.585 -%endif
1.586 -
1.587 -%ifarch sh3 sh3eb sh4 sh4eb
1.588 -# =========================== Native Compiler =================================
1.589 -%files
1.590 -%defattr(-,root,root)
1.591 -%dir %{_prefix}/lib/gcc-lib/%{_target}
1.592 -%dir %{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}
1.593 -%dir %{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include
1.594 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/cc1
1.595 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/collect2
1.596 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/cpp0
1.597 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/crt*.o
1.598 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/libgcc*.a
1.599 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/specs
1.600 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/tradcpp0
1.601 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/stddef.h
1.602 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/stdarg.h
1.603 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/varargs.h
1.604 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/float.h
1.605 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/limits.h
1.606 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/stdbool.h
1.607 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/iso646.h
1.608 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/syslimits.h
1.609 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/include/README
1.610 -%{_prefix}/bin/gcc
1.611 -%{_prefix}/bin/%{_target}-gcc
1.612 -%{_prefix}/bin/cpp
1.613 -%{_prefix}/bin/gccbug
1.614 -%{_prefix}/bin/gcov
1.615 -%{_prefix}/bin/cc
1.616 -/lib/cpp
1.617 -%{_infodir}/cpp*
1.618 -%{_infodir}/gcc*
1.619 -
1.620 -%if 0
1.621 -%files libgcc
1.622 -%defattr(-,root,root)
1.623 -/lib/libgcc_s.so*
1.624 -%endif
1.625 -
1.626 -%files c++
1.627 -%defattr(-,root,root)
1.628 -%{_prefix}/bin/c++
1.629 -%{_prefix}/bin/g++
1.630 -%{_prefix}/bin/c++filt
1.631 -%{_prefix}/bin/%{_target}-c++
1.632 -%{_prefix}/bin/%{_target}-g++
1.633 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/cc1plus
1.634 -%endif
1.635 -
1.636 -%if %{TARGET_LIBSTDC}
1.637 -%ifarch sh3 sh3eb sh4 sh4eb
1.638 -%files -n libstdc++
1.639 -%defattr(-,root,root)
1.640 -%{_prefix}/lib/libstdc++.so*
1.641 -
1.642 -%files -n libstdc++-devel
1.643 -%defattr(-,root,root)
1.644 -%{_prefix}/include/g++-v3
1.645 -%{_prefix}/lib/libstdc++.*a
1.646 -%endif
1.647 -%endif
1.648 -
1.649 -%if %{TARGET_JAVA}
1.650 -%ifarch sh3 sh3eb sh4 sh4eb
1.651 -%files java
1.652 -%defattr(-,root,root)
1.653 -%{_prefix}/bin/addr2name.awk
1.654 -%{_prefix}/bin/gcj
1.655 -%{_prefix}/bin/gcjh
1.656 -%{_prefix}/bin/gij
1.657 -%{_prefix}/bin/jar
1.658 -%{_prefix}/bin/grepjar
1.659 -%{_prefix}/bin/jcf-dump
1.660 -%{_prefix}/bin/jv-convert
1.661 -%{_prefix}/bin/jv-scan
1.662 -%dir %{_prefix}/lib/gcc-lib
1.663 -%dir %{_prefix}/lib/gcc-lib/%{_target}
1.664 -%dir %{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}
1.665 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/jc1
1.666 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/jvgenmain
1.667 -%{_infodir}/gcj*
1.668 -
1.669 -%files -n libgcj
1.670 -%defattr(-,root,root)
1.671 -%{_prefix}/%{_lib}/libgcj.so*
1.672 -%{_prefix}/%{_lib}/libffi*.so*
1.673 -%{_prefix}/lib/gcc-lib/%{_target}/%{GCC_VERSION}/libgcj.spec
1.674 -%{_prefix}/share/java/libgcj-%{GCC_VERSION}.jar
1.675 -
1.676 -%files -n libgcj-devel
1.677 -%defattr(-,root,root)
1.678 -%{_prefix}/include/*.h
1.679 -%{_prefix}/include/gcj
1.680 -%{_prefix}/include/gnu/*
1.681 -%{_prefix}/include/java
1.682 -%{_prefix}/lib/libgcj.*a
1.683 -%{_prefix}/lib/libffi.*a
1.684 -%endif
1.685 -%endif
1.686 -
1.687 -%changelog
1.688 -* Wed Feb 19 2003 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.689 -- version 3.2.2.
1.690 -
1.691 -* Tue Feb 19 2002 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.692 -- version 3.0.4.
1.693 -
1.694 -* Tue Feb 12 2002 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.695 -- add java support.
1.696 -
1.697 -* Thu Feb 7 2002 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.698 -- follow debian/SH update.
1.699 -
1.700 -* Tue Feb 5 2002 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.701 -- follow debian/SH update.
1.702 -
1.703 -* Thu Jan 24 2002 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.704 -- rebuild with new binutils.
1.705 -
1.706 -* Tue Jan 22 2002 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.707 -- leaf function optimization fixed.
1.708 -
1.709 -* Thu Dec 06 2001 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.710 -- add gcc-ice-rml patch.
1.711 -
1.712 -* Tue Nov 13 2001 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.713 -- add configure option.
1.714 -
1.715 -* Thu Nov 01 2001 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.716 -- tablejump fix by gniibe.
1.717 -
1.718 -* Mon Oct 22 2001 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.719 -- updated gcc patch.
1.720 -
1.721 -* Wed Oct 17 2001 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.722 -- updated gcc patch.
1.723 -
1.724 -* Tue Oct 02 2001 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.725 -- gcc/config/sh/sh.c bug fix.
1.726 -
1.727 -* Fri Aug 24 2001 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.728 -- gcc version 3.0.1.
1.729 -
1.730 -* Thu Jun 28 2001 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.731 -- gcc version 3.0.
1.732 -- Add libstdc++ package.
1.733 -
1.734 -* Mon Apr 23 2001 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.735 -- Add cygwin host.
1.736 -
1.737 -* Sat Dec 23 2000 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.738 -- fix file attribute.
1.739 -- add asmspecs patch.
1.740 -
1.741 -* Sat Nov 11 2000 SUGIOKA Toshinobu <sugioka@itonet.co.jp>
1.742 -- initial version.