Prune devel/py-EnthoughtBase
[dports.git] / devel / mingw32-gcc / Makefile
1 # Created by: Lev Serebryakov <lev@serebryakov.spb.ru>
2 # $FreeBSD$
3
4 PORTNAME=       gcc
5 PORTVERSION=    ${GCCVERSION}
6 PORTEPOCH=      1
7 CATEGORIES=     devel
8 MASTER_SITES=   GCC
9 PKGNAMEPREFIX=  mingw32-
10
11 MAINTAINER=     cyberbotx@cyberbotx.com
12 COMMENT=        FSF gcc-4 for Windows cross-development
13
14 LICENSE=        GPLv3 GPLv3RLE
15 LICENSE_COMB=   multi
16
17 BUILD_DEPENDS=  ${PKGNAMEPREFIX}as:${PORTSDIR}/devel/${PKGNAMEPREFIX}binutils \
18                 mingwm10.dll:${PORTSDIR}/devel/${PKGNAMEPREFIX}bin-msvcrt
19 RUN_DEPENDS=    ${PKGNAMEPREFIX}as:${PORTSDIR}/devel/${PKGNAMEPREFIX}binutils
20 LIB_DEPENDS=    libgmp.so:${PORTSDIR}/math/gmp \
21                 libmpfr.so:${PORTSDIR}/math/mpfr \
22                 libmpc.so:${PORTSDIR}/math/mpc
23
24 GCCVERSION=     4.8.1
25
26 SSP_UNSAFE=     yes
27
28 ONLY_FOR_ARCHS= amd64 i386 powerpc powerpc64 sparc64
29 USE_LDCONFIG=   yes
30 USES=           bison iconv gmake libtool makeinfo perl5 tar:bzip2
31 USE_PERL5=      build
32
33 GCC_TARG=       ${PKGNAMEPREFIX:S/-$//}
34
35 PATCH_WRKSRC=   ${SRCDIR}
36 CONFIGURE_SCRIPT=       ../${SRCDIR:C/${WRKDIR}//}/configure
37
38 BINARIES=       c++ cpp g++ gcc gcov gfortran
39
40 .include <bsd.port.pre.mk>
41
42 .if ${ARCH} == "x86_64"
43 CONFIGURE_TARGET=       x86_64-portbld-${OPSYS:tl}${OSREL}
44 .else
45 CONFIGURE_TARGET=       ${ARCH}-portbld-${OPSYS:tl}${OSREL}
46 .endif
47
48 .if ${ARCH} == powerpc64
49 CONFIGURE_ENV+= UNAME_m="powerpc64"
50 .endif
51
52 LANGUAGES:=     c,c++,fortran,objc,obj-c++
53 SRCDIR=         ${WRKDIR}/${PORTNAME}-${GCCVERSION}
54 WRKSRC=         ${WRKDIR}/build
55 GNU_CONFIGURE=  yes
56 CONFIGURE_ARGS= --disable-nls --target=${GCC_TARG} \
57                 --with-gxx-include-dir=${PREFIX}/${GCC_TARG}/include/c++/${GCCVERSION} \
58                 --disable-build-poststage1-with-cxx \
59                 --includedir=${PREFIX}/${GCC_TARG}/include \
60                 --datadir=${PREFIX}/${GCC_TARG}/share \
61                 --enable-shared --with-gnu-ld \
62                 --enable-lto --disable-multilib \
63                 --enable-languages=${LANGUAGES} \
64                 --disable-sjlj-exceptions \
65                 --with-dwarf2 --disable-win32-registry \
66                 --enable-libstdcxx-debug \
67                 --enable-version-specific-runtime-libs \
68                 --with-gmp=${LOCALBASE} \
69                 --with-system-zlib --with-gnu-as \
70                 --enable-decimal-float=yes \
71                 --disable-libgomp --disable-threads \
72                 ${ICONV_CONFIGURE_ARG} \
73                 --disable-bootstrap
74 MAKE_ARGS+=     MAKEINFOFLAGS="--no-split"
75 PLIST_SUB+=     GCC_TARG=${GCC_TARG} GCC_REV=${GCCVERSION}
76 INFO_PATH=      ${GCC_TARG}/info
77 INFO=           cpp cppinternals gcc gccinstall gccint gfortran
78 .if ${ARCH} == "i386" || ${ARCH} == "x86_64"
79 INFO+=          libquadmath
80 .endif
81 INSTALL_TARGET= install-strip
82
83 post-patch:
84         ${REINPLACE_CMD} -e "s,# include <sys/sysctl.h>,," \
85                 ${SRCDIR}/libiberty/physmem.c
86
87 pre-configure:
88         cd ${SRCDIR} ; contrib/gcc_update --touch
89         @${RM} -f ${SRCDIR}/gcc/*/*.info*
90         @${MKDIR} ${CONFIGURE_WRKSRC}
91
92 post-install:
93         @${RM} ${STAGEDIR}${PREFIX}/lib/libiberty.a
94         @${MKDIR} ${STAGEDIR}${PREFIX}/${GCC_TARG}/bin
95 .for F in ${BINARIES}
96         @${LN} -f ${STAGEDIR}${PREFIX}/bin/${PKGNAMEPREFIX}$F \
97                 ${STAGEDIR}${PREFIX}/${GCC_TARG}/bin/$F
98 .endfor
99
100 .include <bsd.port.post.mk>