1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-14 23:46:10 +00:00
freebsd-ports/lang/gcc45/Makefile
David E. O'Brien ccfd6f92ac I give you the latest and greatest of the EGCS snapshot series.
This is their bleeding edge offering.  This will enable us to better track
the direction EGCS is going for future upgrades of /usr/contrib/egcs/.

Above ver 1.1.2, this offering gives you many C++ fixes/enhancements, *and*
a native Java compiler.
1999-04-21 07:48:59 +00:00

117 lines
4.1 KiB
Makefile

# ex:ts=8
# Ports collection makefile for: egcs
# Version required: 1998-09-14
# Date created: 9 Jan 1998
# Whom: John Polstra <jdp@polstra.com>
#
# $Id: Makefile,v 1.35 1998/10/01 21:40:03 obrien Exp $
#
SNAPDATE= 1999-04-18
SNAPVER= ${SNAPDATE:S/-//g}
DISTNAME= egcs-${SNAPVER}
PKGNAME= egcs-devel-${SNAPVER}
CATEGORIES= lang
MASTER_SITES= ftp://go.cygnus.com/pub/ftp.cygnus.com/egcs/snapshots/${SNAPDATE}/ \
ftp://egcs.cygnus.com/pub/egcs/snapshots/${SNAPDATE}/ \
ftp://ftp.nluug.nl/pub/languages/egcs/snapshots/${SNAPDATE}/ \
ftp://ftp.iij.ad.jp/pub/egcs/snapshots/${SNAPDATE}/ \
ftp://ftp.fu-berlin.de/unix/languages/egcs/snapshots/ \
ftp://cambridge.cygnus.com/pub/egcs/snapshots/${SNAPDATE}/
DISTFILES= egcs-chill-${SNAPVER}${EXTRACT_SUFX} \
egcs-core-${SNAPVER}${EXTRACT_SUFX} \
egcs-g++-${SNAPVER}${EXTRACT_SUFX} \
egcs-g77-${SNAPVER}${EXTRACT_SUFX} \
egcs-java-${SNAPVER}${EXTRACT_SUFX} \
egcs-objc-${SNAPVER}${EXTRACT_SUFX}
MAINTAINER= obrien@FreeBSD.org
WWW_SITE= http://egcs.cygnus.com
NO_CDROM= 'dated material'
.include <bsd.port.pre.mk>
EGCS_REV= egcs-2.93.19
LIBSTDCPP_REV= 4
.if ${PORTOBJFORMAT} == "elf"
PLIST= ${WRKDIR}/PLIST
CONFIGURE_TARGET= ${ARCH}-portbld-freebsd${OSREL}
.else
CONFIGURE_TARGET= ${ARCH}-portbld-freebsdaout${OSREL}
.endif
PLIST_SUB= EGCS_REV=${EGCS_REV} GNU_HOST=${CONFIGURE_TARGET}
GNU_CONFIGURE= yes
USE_GMAKE= yes
CONFIGURE_ARGS= --with-gnu-as --with-gnu-ld \
--with-gxx-include-dir=${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}/include/g++
.if defined(WANT_SHAREDLIBS)
CONFIGURE_ARGS+= --enable-shared
.endif
ALL_TARGET= bootstrap
MAN1= cccp.1 eg++.1 eg77.1 egcc.1
pre-patch:
${MV} ${WRKSRC}/gcc/config/i386/t-freebsd ${WRKSRC}/gcc/config/
${MV} ${WRKSRC}/gcc/config/i386/freebsd.h ${WRKSRC}/gcc/config/i386/freebsd-aout.h
${MV} ${WRKSRC}/gcc/config/i386/freebsd-elf.h ${WRKSRC}/gcc/config/i386/freebsd.h
${CP} ${FILESDIR}/alpha-freebsd.h ${WRKSRC}/gcc/config/alpha/freebsd.h
pre-configure:
@# Keep from running `autoconf' and `autoheader' since we modified
@# configure.in by patching it.
@touch ${WRKSRC}/gcc/configure
@touch ${WRKSRC}/gcc/cstamp-h.in
@(MAJ=`sysctl -n kern.osreldate | ${SED} -e '/.....$$/s///'` ; \
${SED} -e "s:__FreeBSD__:__FreeBSD__=$${MAJ}:" ${FILESDIR}/freebsd.h \
>${WRKSRC}/gcc/config/freebsd.h )
.if ${PORTOBJFORMAT} == "elf" && ${MACHINE_ARCH} == "i386"
@${SED} -e 's/^@comment ELF-only://' ${PKGDIR}/PLIST >${PLIST}
.endif
pre-install:
${MKDIR} ${PREFIX}/info
post-install:
@${RM} -f ${PREFIX}/bin/c++
@${MV} -f ${PREFIX}/bin/c++filt ${PREFIX}/bin/g++filt
@(for prog in ${PREFIX}/bin/gcc ${PREFIX}/bin/g++ \
${PREFIX}/bin/g++filt ${PREFIX}/bin/g77 ${PREFIX}/bin/gcov \
${PREFIX}/bin/protoize ${PREFIX}/bin/unprotoize \
${PREFIX}/bin/${CONFIGURE_TARGET}-gcc \
${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}/cc1 \
${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}/cc1obj \
${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}/cc1plus \
${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}/cpp \
${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}/collect2 \
${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}/f771 ; \
do strip $$prog ; \
done)
${MV} ${PREFIX}/bin/gcc ${PREFIX}/bin/egcc
${MV} ${PREFIX}/bin/g++ ${PREFIX}/bin/eg++
${MV} ${PREFIX}/bin/g77 ${PREFIX}/bin/eg77
${MV} ${PREFIX}/bin/g++filt ${PREFIX}/bin/eg++filt
${MV} ${PREFIX}/lib/libiberty.a \
${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}
${MV} -f ${PREFIX}/lib/libstdc++.a.${LIBSTDCPP_REV} \
${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}/libstdc++.a
${MV} ${PREFIX}/man/man1/gcc.1 ${PREFIX}/man/man1/egcc.1
${MV} ${PREFIX}/man/man1/g++.1 ${PREFIX}/man/man1/eg++.1
${MV} ${PREFIX}/man/man1/g77.1 ${PREFIX}/man/man1/eg77.1
.if defined(WANT_SHAREDLIBS)
${MV} -f ${PREFIX}/lib/libstdc++.so* \
${PREFIX}/lib/gcc-lib/${CONFIGURE_TARGET}/${EGCS_REV}
.endif
if [ ! -f ${PREFIX}/info/dir ]; then \
${SED} -ne '1,/Menu:/p' /usr/share/info/dir > ${PREFIX}/info/dir; \
fi
.for info in cpp g77 gcc
install-info ${PREFIX}/info/${info}.info ${PREFIX}/info/dir
.endfor
.include <bsd.port.post.mk>