diff options
author | gerald <gerald@FreeBSD.org> | 2004-01-22 19:58:14 +0800 |
---|---|---|
committer | gerald <gerald@FreeBSD.org> | 2004-01-22 19:58:14 +0800 |
commit | 9cc67462a58699273ba8f48865c947989cf8db2d (patch) | |
tree | e34be78dabcd9f655249366228368a13670d47e4 /lang/gcc40 | |
parent | f0e2d039c7d94ec606fbdfdbff06a7c9414cede2 (diff) | |
download | freebsd-ports-gnome-9cc67462a58699273ba8f48865c947989cf8db2d.tar.gz freebsd-ports-gnome-9cc67462a58699273ba8f48865c947989cf8db2d.tar.zst freebsd-ports-gnome-9cc67462a58699273ba8f48865c947989cf8db2d.zip |
Update to the 2004-01-14 snapshot of GCC 3.4.
Merge in my 2004/01/17 change to the gcc33 port to configure with
--program-suffix and related and further simplifications.
Merge in my 2004/01/13 change to the gcc33 port to make the automatic
generation of the package list for libraries and include files more
failure tolerant, so that at least `make install` now works on sparc64.
Merge in my 2004/01/05 change to the gcc33 port to combine and simplify
the post-install handling of target libraries and GCJ include files.
libgcj still is not supported and packaging is broken on sparc64; mark
BROKEN on that platform.
Diffstat (limited to 'lang/gcc40')
-rw-r--r-- | lang/gcc40/Makefile | 53 | ||||
-rw-r--r-- | lang/gcc40/distinfo | 12 | ||||
-rw-r--r-- | lang/gcc40/files/patch-regrename.c | 19 | ||||
-rw-r--r-- | lang/gcc40/pkg-plist | 8 |
4 files changed, 54 insertions, 38 deletions
diff --git a/lang/gcc40/Makefile b/lang/gcc40/Makefile index 943b30d33c32..959695d51dab 100644 --- a/lang/gcc40/Makefile +++ b/lang/gcc40/Makefile @@ -5,9 +5,7 @@ # # $FreeBSD$ # - -SNAPDATE= 2004-01-07 -#CVS_DATE= ${SNAPDATE} 18:53:04 EDT +SNAPDATE= 2004-01-14 PORTNAME= gcc PORTVERSION= 3.4.0 @@ -42,6 +40,10 @@ NOMANCOMPRESS= yes # too hard to deal with differences on 5-cur and releng4 .include <bsd.port.pre.mk> +.if ${ARCH} == sparc64 +BROKEN= "libgcj is not supported/packaging is broken on this platform" +.endif + CONFIGURE_TARGET= ${ARCH}-portbld-freebsd${OSREL} SRCDIR= ${WRKDIR}/gcc-${VERSIONSTRING} @@ -52,11 +54,10 @@ GNU_CONFIGURE= yes USE_GMAKE= yes USE_BISON= yes CONFIGURE_ARGS= --disable-nls \ + --with-system-zlib \ --with-libiconv-prefix=${LOCALBASE} \ - --with-gxx-include-dir=${TARGLIB}/include/c++/${GCC_REV} -#CONFIGURE_ARGS+= --program-suffix=34 -# Java -CONFIGURE_ARGS+= --with-system-zlib + --program-suffix=34 \ + --with-gxx-include-dir=${TARGLIB}/include/c++/ MAKE_ARGS+= MAKEINFOFLAGS="--no-split" .if defined(WANT_SHAREDLIBS) CONFIGURE_ARGS+= --enable-shared @@ -128,28 +129,22 @@ check: build cd ${WRKSRC}; export RUNTESTFLAGS='--target_board ''unix{-pthread}'''; ${GMAKE} -sk check post-install: - @${RM} -f ${PREFIX}/bin/c++ ${PREFIX}/bin/${CONFIGURE_TARGET}-c++ -.for f in gcc g++ cpp gcov ${CONFIGURE_TARGET}-gcc ${CONFIGURE_TARGET}-g++ gcj gcjh gij jv-scan jcf-dump jv-convert jar grepjar rmic rmiregistry - ${STRIP_CMD} ${PREFIX}/bin/${f} - ${MV} -f ${PREFIX}/bin/${f} ${PREFIX}/bin/${f}34 - ( ${TEST} ! -e ${PREFIX}/man/man1/${f}.1 \ +.for f in c++ gcc g++ cpp gcov ${CONFIGURE_TARGET}-gcc ${CONFIGURE_TARGET}-g++ gcj gcjh gij jv-scan jcf-dump jv-convert jar grepjar rmic rmiregistry + if [ -e ${PREFIX}/bin/${f}34 ]; then \ + ${STRIP_CMD} ${PREFIX}/bin/${f}34; \ + ( ${TEST} ! -e ${PREFIX}/man/man1/${f}.1 \ || ${MV} -f ${PREFIX}/man/man1/${f}.1 \ - ${PREFIX}/man/man1/${f}34.1 ) -.endfor -.for f in g77 - ${MV} -f ${PREFIX}/bin/${f} ${PREFIX}/bin/${f}-34 - ( ${TEST} ! -e ${PREFIX}/man/man1/${f}.1 \ - || ${MV} -f ${PREFIX}/man/man1/${f}.1 \ - ${PREFIX}/man/man1/${f}-34.1 ) + ${PREFIX}/man/man1/${f}34.1 ); \ + fi .endfor - ${MV} -f ${PREFIX}/bin/gccbug ${PREFIX}/bin/gccbug34 - # These 3 libraries are moved from PREFIX/lib to avoid conflicts - # with the stock compiler. + ${MV} -f ${PREFIX}/bin/g7734 ${PREFIX}/bin/g77-34 + ${MV} -f ${PREFIX}/man/man1/g7734.1 ${PREFIX}/man/man1/g77-34.1 + # These libraries are moved from PREFIX/lib to avoid conflicts with + # the stock compiler. .for f in libstdc++ libsupc++ libg2c libfrtbegin libobjc ${EXTRA_SHLIB} ${MV} -f ${PREFIX}/lib/${f}.* ${TARGLIB} .endfor -${MV} -f ${PREFIX}/lib/ieee ${TARGLIB} - # Java -${MV} -f ${PREFIX}/lib/libgcj.* ${TARGLIB} ${RM} -f ${PREFIX}/lib/libiberty.a ${RM} -f ${TARGLIB}/*.la @@ -160,12 +155,12 @@ post-install: .endfor # Handle target libraries and GCJ include files. ${RM} -f ${WRKDIR}/PLIST.lib -.for inc in ${TARGLIB} include/gcj include/gnu include/java include/javax - cd ${PREFIX} ;\ - ${FIND} ${inc:S/^${PREFIX}\///} -type f -o -type l \ - >>${WRKDIR}/PLIST.lib ;\ - ${FIND} ${inc:S/^${PREFIX}\///} -type d \ - | ${SORT} -r | ${SED} -e 's/^/@dirrm /g' >>${WRKDIR}/PLIST.lib +.for d in ${TARGLIB:S/^${PREFIX}\///} include/gcj include/gnu include/java include/javax + cd ${PREFIX} ; if [ -d $d ]; then \ + ${FIND} $d -type f -o -type l >>${WRKDIR}/PLIST.lib ;\ + ${FIND} $d -type d | ${SORT} -r \ + | ${SED} -e 's/^/@dirrm /g' >>${WRKDIR}/PLIST.lib ;\ + fi .endfor (${ECHO_CMD} "@unexec rmdir %D/lib/gcc/${CONFIGURE_TARGET} 2>&1 || true" ; ${ECHO_CMD} "@unexec rmdir %D/lib/gcc 2>&1 || true") >> ${WRKDIR}/PLIST.lib ${ECHO_CMD} "r ${TMPPLIST}" > ${WRKDIR}/ex.script diff --git a/lang/gcc40/distinfo b/lang/gcc40/distinfo index 35f240627d81..beb1d8053304 100644 --- a/lang/gcc40/distinfo +++ b/lang/gcc40/distinfo @@ -1,6 +1,6 @@ -MD5 (gcc-core-3.4-20040107.tar.bz2) = 2de4606dde0d9dfafb96ab271e028081 -MD5 (gcc-g++-3.4-20040107.tar.bz2) = 5210c6e084b0e1bd9f02d4b012d936f8 -MD5 (gcc-g77-3.4-20040107.tar.bz2) = c30706a558bc88ca16f2c45b1b3eb244 -MD5 (gcc-java-3.4-20040107.tar.bz2) = ece8ad9079c75347516cfb9159543833 -MD5 (gcc-objc-3.4-20040107.tar.bz2) = c9d9d241639a883cf214756f08198452 -MD5 (gcc-testsuite-3.4-20040107.tar.bz2) = cff08732e9a7833c4461990eb68034f7 +MD5 (gcc-core-3.4-20040114.tar.bz2) = 2742be0bc0d14d5eadee3a75664b37bc +MD5 (gcc-g++-3.4-20040114.tar.bz2) = caa96c9ebfa7bdd120d7c03a9fb66bda +MD5 (gcc-g77-3.4-20040114.tar.bz2) = 92a1a266ca11743daa5510cc561956e1 +MD5 (gcc-java-3.4-20040114.tar.bz2) = 1ebfd7502c9600d1838af5eff5766d86 +MD5 (gcc-objc-3.4-20040114.tar.bz2) = ae08a05a56a312776f959db343bc5319 +MD5 (gcc-testsuite-3.4-20040114.tar.bz2) = 7ce504cbee33ab818845fcd9e4949a71 diff --git a/lang/gcc40/files/patch-regrename.c b/lang/gcc40/files/patch-regrename.c new file mode 100644 index 000000000000..a687acded7eb --- /dev/null +++ b/lang/gcc40/files/patch-regrename.c @@ -0,0 +1,19 @@ +Index: gcc/regrename.c +=================================================================== +RCS file: /cvs/gcc/gcc/gcc/regrename.c,v +retrieving revision 1.72 +retrieving revision 1.73 +diff -u -3 -p -r1.72 -r1.73 +--- gcc/regrename.c 14 Jan 2004 16:25:09 -0000 1.72 ++++ gcc/regrename.c 14 Jan 2004 17:55:20 -0000 1.73 +@@ -1345,8 +1345,8 @@ find_oldest_value_reg (enum reg_class cl + if (!TEST_HARD_REG_BIT (reg_class_contents[class], last)) + return NULL_RTX; + +- if (new = maybe_mode_change (oldmode, vd->e[regno].mode, mode, i, +- regno)) ++ new = maybe_mode_change (oldmode, vd->e[regno].mode, mode, i, regno); ++ if (new) + { + ORIGINAL_REGNO (new) = ORIGINAL_REGNO (reg); + REG_ATTRS (new) = REG_ATTRS (reg); diff --git a/lang/gcc40/pkg-plist b/lang/gcc40/pkg-plist index 0119d6a05859..a25a199e218e 100644 --- a/lang/gcc40/pkg-plist +++ b/lang/gcc40/pkg-plist @@ -1,14 +1,16 @@ @comment $FreeBSD$ +bin/c++34 bin/cpp34 bin/g++34 bin/g77-34 bin/gcc34 bin/gcov34 +bin/%%GNU_HOST%%-c++34 bin/%%GNU_HOST%%-gcc-%%GCC_VER%% bin/%%GNU_HOST%%-gcc34 bin/%%GNU_HOST%%-g++34 -bin/%%GNU_HOST%%-gcj -bin/%%GNU_HOST%%-gcjh +bin/%%GNU_HOST%%-gcj34 +bin/%%GNU_HOST%%-gcjh34 bin/gccbug34 bin/gcj34 bin/gcjh34 @@ -20,7 +22,7 @@ bin/jar34 bin/grepjar34 bin/rmic34 bin/rmiregistry34 -bin/addr2name.awk +bin/addr2name.awk34 include/ffi.h include/jni.h include/jvmpi.h |