# New ports collection makefile for: mingw32-gcc # Date created: 24 October 2002 # Whom: Lev Serebryakov # # $FreeBSD$ # PORTNAME= gcc PORTVERSION= ${GCCVERSION}.${PATCHVERSION} PORTEPOCH= 1 CATEGORIES= devel MASTER_SITES= ${MASTER_SITE_SOURCEWARE} MASTER_SITE_SUBDIR= ${PORTNAME}/releases/${PORTNAME}-${GCCVERSION} PKGNAMEPREFIX= mingw32- DISTFILES= ${PORTNAME}-core-${GCCVERSION}${EXTRACT_SUFX} \ ${PORTNAME}-g++-${GCCVERSION}${EXTRACT_SUFX} \ ${PORTNAME}-objc-${GCCVERSION}${EXTRACT_SUFX} \ ${PORTNAME}-g77-${GCCVERSION}${EXTRACT_SUFX} \ ${PORTNAME}-ada-${GCCVERSION}${EXTRACT_SUFX} \ ${PORTNAME}-java-${GCCVERSION}${EXTRACT_SUFX} \ ${PORTNAME}-testsuite-${GCCVERSION}${EXTRACT_SUFX} PATCH_SITES= ${MASTER_SITE_SOURCEFORGE} # Special hack: I don't use SITE_SUBDIR & DIST_SUBDIR, and only pathces # will be placed to subdirectory # It allows to use main gcc sources from other ports. PATCHFILES= mingw/${PORTNAME}-${GCCVERSION}-${PATCHVERSION:S/./-/}-src.diff.gz # Skip patching of bohem-gc, it is bug of patch's authors PATCH_DIST_STRIP= -p1 MAINTAINER= lev@FreeBSD.org COMMENT= FSF gcc-3.4 for Windows cross-development BUILD_DEPENDS= ${PKGNAMEPREFIX}as:${PORTSDIR}/devel/${PKGNAMEPREFIX}binutils \ mingwm10.dll:${PORTSDIR}/devel/mingw32-bin-msvcrt RUN_DEPENDS= ${PKGNAMEPREFIX}as:${PORTSDIR}/devel/${PKGNAMEPREFIX}binutils GCCVERSION= 3.4.2 PATCHVERSION= 20040916.1 WRKSRC= ${WRKDIR}/${PORTNAME}-${GCCVERSION} USE_BZIP2= yes USE_PERL5_BUILD=yes USE_GMAKE= yes USE_LIBTOOL_VER= 13 CONFIGURE_ARGS= --target=${PKGNAMEPREFIX:S/-$//} \ --enable-languages=c,c++,f77,objc,java \ --with-gcc --with-gnu-ld --with-gnu-as \ --enable-threads --disable-nls \ --disable-win32-registry --disable-shared \ --enable-sjlj-exceptions --enable-libgcj \ --disable-java-awt --without-x \ --enable-java-gc=boehm --disable-libgcj-debug \ --enable-interpreter --enable-hash-synchronization \ --without-newlib \ --with-gxx-include-dir=${PREFIX}/${PKGNAMEPREFIX:S/-$//}/include/c++/${GCCVERSION} \ --infodir=${PREFIX}/${PKGNAMEPREFIX:S/-$//}/info \ --includedir=${PREFIX}/${PKGNAMEPREFIX:S/-$//}/include \ --datadir=${PREFIX}/${PKGNAMEPREFIX:S/-$//}/share MAKE_ENV= PATH=${PREFIX}/bin:${PATH} LIBTOOLFILES= configure gcc/configure MAN1= ${PKGNAMEPREFIX}gcc.1 ${PKGNAMEPREFIX}g++.1 ${PKGNAMEPREFIX}g77.1 \ ${PKGNAMEPREFIX}gcj.1 ${PKGNAMEPREFIX}grepjar.1 ${PKGNAMEPREFIX}jar.1 \ ${PKGNAMEPREFIX}cpp.1 ${PKGNAMEPREFIX}gcov.1 ${PKGNAMEPREFIX}jcf-dump.1 \ ${PKGNAMEPREFIX}jv-convert.1 ${PKGNAMEPREFIX}jv-scan.1 ${PKGNAMEPREFIX}rmic.1 \ ${PKGNAMEPREFIX}rmiregistry.1 ${PKGNAMEPREFIX}gcjh.1 ${PKGNAMEPREFIX}gij.1 PLIST_SUB+= PORTVERSION=${PORTVERSION} GCC_TARG=${PKGNAMEPREFIX:S/-$//} \ GCC_REV=${GCCVERSION} INFO= cpp cppinternals g77 gcc gccinstall gccint gcj INFO_PATH= ${PKGNAMEPREFIX:S/-$//}/info BINARIES= gcc cpp g++ g77 gcov gcj gcjh jcf-dump jv-scan grepjar jar .include .if ${ARCH} == "alpha" BROKEN= "C++ could not be compiled on Alphas" .endif post-configure: @${PERL} -pi.bak -e 's,^(TARGET_CONFIGDIRS\s*=\s*).+$$,\1libstdc++-v3 libf2c libobjc mingw,' ${WRKSRC}/Makefile @${PERL} -pi.bak -e 's,^(install-info:),\1\ndonot-\1,' ${WRKSRC}/gcc/Makefile post-install: .for F in ${BINARIES} @${LN} -f ${PREFIX}/bin/${PKGNAMEPREFIX}$F \ ${PREFIX}/${PKGNAMEPREFIX:S/-$//}/bin/$F .endfor .include