2013-07-21 13:00:46 +00:00
|
|
|
# Created by: John Marino <marino@FreeBSD.org>
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
# $FreeBSD$
|
|
|
|
|
|
|
|
PORTNAME= gcc-aux
|
|
|
|
PORTVERSION= ${SNAPSHOT}
|
2013-07-21 13:00:46 +00:00
|
|
|
PORTREVISION= 2
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
CATEGORIES= lang
|
|
|
|
MASTER_SITES= http://downloads.dragonlace.net/src/:boot \
|
|
|
|
${MASTER_SITE_GCC}
|
|
|
|
MASTER_SITE_SUBDIR= releases/gcc-${GCC_VERSION}
|
|
|
|
DISTFILES= gcc-${GCC_VERSION}.tar.bz2
|
|
|
|
|
2013-07-12 13:40:50 +00:00
|
|
|
MAINTAINER= marino@FreeBSD.org
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
COMMENT= Version of GCC ${GCC_BRANCH} with full Ada support
|
|
|
|
|
2013-09-20 19:53:09 +00:00
|
|
|
NO_STAGE= yes
|
2013-08-15 14:39:14 +00:00
|
|
|
.include "${.CURDIR}/Makefile.common"
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
|
|
|
|
LANGS= c
|
|
|
|
APPLY_DIFFS= core
|
|
|
|
INTENDED_COMPILER= NATIVE
|
|
|
|
BOOTSTRAP_COMPILER= NOT_REQUIRED
|
|
|
|
BOOTSTRAP_TRIPLET= NOT_SET
|
|
|
|
FULL_GNATGCC= NOT_SET
|
2013-04-30 11:38:19 +00:00
|
|
|
OS_LABEL4VERS= [${OPSYS}]
|
|
|
|
GARCH= ${ARCH:S/amd64/x86_64/}
|
|
|
|
|
2013-08-15 14:39:14 +00:00
|
|
|
OPTIONS_DEFINE= ADA CXX FORT OBJC STATIC TESTSUITE NLS
|
2013-04-30 11:38:19 +00:00
|
|
|
OPTIONS_DEFAULT= ADA CXX FORT OBJC
|
|
|
|
NO_OPTIONS_SORT= yes
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
ADA_DESC= Build Ada language
|
|
|
|
CXX_DESC= Build C++ language
|
|
|
|
FORT_DESC= Build Fortran language
|
2013-08-15 14:39:14 +00:00
|
|
|
OBJC_DESC= Build Objective-C language
|
|
|
|
STATIC_DESC= Build with no shared libraries other than libc
|
2013-04-30 11:38:19 +00:00
|
|
|
TESTSUITE_DESC= Activate test support
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
|
2013-08-01 06:31:18 +00:00
|
|
|
USES+= perl5
|
2013-07-31 06:54:09 +00:00
|
|
|
USE_PERL5= extract
|
|
|
|
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
.include <bsd.port.options.mk>
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${OPSYS} == FreeBSD
|
|
|
|
. if ${OSVERSION} < 900000
|
|
|
|
USE_BINUTILS= yes
|
|
|
|
EXTRA_CONFIG+= --with-as=${LOCALBASE}/bin/as
|
|
|
|
EXTRA_CONFIG+= --with-ld=${LOCALBASE}/bin/ld
|
|
|
|
RUN_DEPENDS+= ${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils
|
|
|
|
. endif
|
|
|
|
. if ${GARCH} == x86_64
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
OS_LABEL4VERS= [FreeBSD64]
|
|
|
|
BOOTSTRAP_TRIPLET= x86_64-bootstrap-freebsd8.1/4.6.0
|
2013-04-30 11:38:19 +00:00
|
|
|
. else
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
BOOTSTRAP_TRIPLET= i386-bootstrap-freebsd8.0/4.6.0
|
2013-04-30 11:38:19 +00:00
|
|
|
. endif
|
|
|
|
.endif
|
|
|
|
.if ${OPSYS} == DragonFly
|
|
|
|
. if ${GARCH} == x86_64
|
|
|
|
OS_LABEL4VERS= [DragonFly64]
|
|
|
|
BOOTSTRAP_TRIPLET= x86_64-bootstrap-dragonfly2.8/4.6.0
|
|
|
|
. else
|
|
|
|
BOOTSTRAP_TRIPLET= i386-bootstrap-dragonfly2.8/4.6.0
|
|
|
|
. endif
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
.endif
|
2013-04-30 11:38:19 +00:00
|
|
|
BLD_TARGET= ${GARCH}-aux-${OPSYS:L}${OSREL}
|
|
|
|
BOOTSTRAP_COMPILER= gnat-bootstrap.${GARCH}.${OPSYS:L}.tar.bz2
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
|
|
|
|
WRKSRC= ${WRKDIR}/gcc-${GCC_VERSION}
|
|
|
|
BUILDDIR= ${WRKDIR}/build
|
|
|
|
CFG_SCRIPT= ${WRKSRC}/configure
|
|
|
|
REVFILE= ${WRKSRC}/gcc/REVISION
|
|
|
|
BOOTSTRAP_PREFIX= ${WRKDIR}/bootstrap
|
|
|
|
DESTINY= ${WRKDIR}/destdir
|
|
|
|
PKG_PREFIX= ${PREFIX}/${PORTNAME}
|
|
|
|
STICONV= ${PREFIX}/lib/libiconv.a
|
|
|
|
STINTL= \$${top_builddir}/../intl/libintl.a
|
|
|
|
USE_LDCONFIG= ${PREFIX}/${PORTNAME}/lib ${PREFIX}/${PORTNAME}/lib/gcc
|
|
|
|
MAN1= cpp.1 gcc.1 gcov.1
|
|
|
|
MAN1PREFIX= ${PREFIX}/${PORTNAME}/share
|
|
|
|
MAN7PREFIX= ${PREFIX}/${PORTNAME}/share
|
|
|
|
NO_MANCOMPRESS= yes
|
|
|
|
|
|
|
|
# If we find gnatmake and friends in a standard location, then we'll use this
|
|
|
|
# compiler instead of downloading the bootstrap.
|
|
|
|
.if exists (${PREFIX}/${PORTNAME}/bin/ada)
|
|
|
|
.if exists (${PREFIX}/${PORTNAME}/bin/gnatbind)
|
|
|
|
.if exists (${PREFIX}/${PORTNAME}/bin/gnatlink)
|
|
|
|
.if exists (${PREFIX}/${PORTNAME}/bin/gnatmake)
|
|
|
|
FULL_GNATGCC=${PREFIX}/${PORTNAME}/bin/ada
|
|
|
|
FULL_PATH=/sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/${PORTNAME}/bin:${PREFIX}/bin
|
|
|
|
.endif
|
|
|
|
.endif
|
|
|
|
.endif
|
|
|
|
.endif
|
|
|
|
|
|
|
|
# If FULL_GNATGCC is not set, we'll request the bootstrap compiler
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${FULL_GNATGCC} == NOT_SET
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
INTENDED_COMPILER=BOOTSTRAP
|
|
|
|
FULL_GNATGCC=${BOOTSTRAP_PREFIX}/bin/gnatgcc
|
|
|
|
FULL_PATH=${BOOTSTRAP_PREFIX}/bin:/sbin:/bin:/usr/sbin:/usr/bin:${PREFIX}/bin
|
|
|
|
DISTFILES+= ${BOOTSTRAP_COMPILER}:boot
|
2013-07-21 13:00:46 +00:00
|
|
|
.if ${OPSYS} == DragonFly && ${DFLYVERSION} > 300500
|
|
|
|
BUILD_DEPENDS+= ${LOCALBASE}/lib/compat/libc.so.7:${PORTSDIR}/misc/compat34x
|
|
|
|
.endif
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
.endif
|
|
|
|
|
|
|
|
# for port maintenance, invoke "make makesum PLUS_BOOTSTRAPS=1"
|
|
|
|
.if defined(PLUS_BOOTSTRAPS)
|
|
|
|
DISTFILES=gcc-${GCC_VERSION}.tar.bz2 \
|
2013-04-30 11:38:19 +00:00
|
|
|
gnat-bootstrap.i386.dragonfly.tar.bz2:boot \
|
|
|
|
gnat-bootstrap.x86_64.dragonfly.tar.bz2:boot \
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
gnat-bootstrap.i386.freebsd.tar.bz2:boot \
|
|
|
|
gnat-bootstrap.x86_64.freebsd.tar.bz2:boot
|
|
|
|
.endif
|
|
|
|
|
|
|
|
###########
|
|
|
|
## Ada ##
|
|
|
|
###########
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MADA}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
LANGS+= ada
|
|
|
|
APPLY_DIFFS+= ada
|
|
|
|
.endif
|
|
|
|
|
|
|
|
###########
|
|
|
|
## C++ ##
|
|
|
|
###########
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MCXX}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
LANGS+= c++
|
|
|
|
APPLY_DIFFS+= cxx
|
|
|
|
MAN1+= g++.1
|
|
|
|
.endif
|
|
|
|
|
|
|
|
###############
|
|
|
|
## Fortran ##
|
|
|
|
###############
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MFORT}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
LANGS+= fortran
|
|
|
|
APPLY_DIFFS+= fortran
|
|
|
|
MAN1+= gfortran.1
|
|
|
|
EXTRA_CONFIG+= --enable-libquadmath
|
|
|
|
.else
|
|
|
|
EXTRA_CONFIG+= --disable-libquadmath
|
|
|
|
.endif
|
|
|
|
|
|
|
|
###################
|
|
|
|
## Objective-C ##
|
|
|
|
###################
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MOBJC}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
LANGS+= objc
|
|
|
|
.endif
|
|
|
|
|
|
|
|
#########################
|
|
|
|
## Testsuite Support ##
|
|
|
|
#########################
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MTESTSUITE}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
BUILD_DEPENDS= dejagnu>=1.4:${PORTSDIR}/misc/dejagnu
|
|
|
|
APPLY_DIFFS+= ada-testsuite
|
|
|
|
APPLY_DIFFS+= fortran-testsuite
|
|
|
|
APPLY_DIFFS+= cxx-testsuite
|
|
|
|
APPLY_DIFFS+= gcc-testsuite
|
|
|
|
.endif
|
|
|
|
|
|
|
|
#################################
|
|
|
|
## NATIONAL LANGUAGE SUPPORT ##
|
|
|
|
#################################
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MNLS}
|
|
|
|
USES+= gettext:build
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
EXTRA_CONFIG+= --enable-nls
|
|
|
|
.else
|
|
|
|
EXTRA_CONFIG+= --disable-nls
|
|
|
|
.endif
|
|
|
|
|
|
|
|
###############################
|
|
|
|
## STATICALLY BUILT OPTION ##
|
|
|
|
###############################
|
|
|
|
#
|
|
|
|
# The "static" option is handled in the post-extract phase.
|
|
|
|
|
|
|
|
# Establish Ada-aware compiler for use
|
|
|
|
ADA_CONFIGURE_ENV= CC=${FULL_GNATGCC}
|
|
|
|
ADA_CONFIGURE_ENV+= PATH=${FULL_PATH}
|
|
|
|
ADA_MAKE_ENV= PATH=${FULL_PATH}
|
|
|
|
ADA_MAKE_ENV+= ICONVPREFIX=${PREFIX}
|
|
|
|
ADA_MAKE_ENV+= LD_LIBRARY_PATH=${BUILDDIR}/gcc
|
|
|
|
|
|
|
|
# The standard configuration options
|
|
|
|
ADA_CONFIG_ARGS= --enable-languages=${LANGS:Q}
|
|
|
|
ADA_CONFIG_ARGS+= --build=${BLD_TARGET}
|
|
|
|
ADA_CONFIG_ARGS+= --prefix=${PKG_PREFIX:Q}
|
|
|
|
ADA_CONFIG_ARGS+= --with-system-zlib
|
|
|
|
ADA_CONFIG_ARGS+= --with-gmp=${PREFIX}
|
|
|
|
ADA_CONFIG_ARGS+= --with-mpfr=${PREFIX}
|
|
|
|
ADA_CONFIG_ARGS+= --with-mpc=${PREFIX}
|
2013-09-04 20:01:05 +00:00
|
|
|
ADA_CONFIG_ARGS+= ${ICONV_CONFIGURE_ARG}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
ADA_CONFIG_ARGS+= --enable-shared
|
|
|
|
ADA_CONFIG_ARGS+= --enable-threads=posix
|
|
|
|
ADA_CONFIG_ARGS+= --disable-bootstrap
|
|
|
|
ADA_CONFIG_ARGS+= --disable-libmudflap
|
|
|
|
ADA_CONFIG_ARGS+= --disable-libgomp
|
|
|
|
ADA_CONFIG_ARGS+= --disable-libssp
|
|
|
|
ADA_CONFIG_ARGS+= ${EXTRA_CONFIG}
|
|
|
|
|
|
|
|
post-extract:
|
|
|
|
# Personalize GNAT for each different machine
|
|
|
|
@${ECHO} "-=> GNAT AUX ${OS_LABEL4VERS}" > ${REVFILE}
|
|
|
|
|
|
|
|
# Create new directories in preparation of applying diff files
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MCXX}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
${MKDIR} ${WRKSRC}/libstdc++-v3/config/locale/dragonfly
|
|
|
|
${MKDIR} ${WRKSRC}/libstdc++-v3/config/os/bsd/dragonfly
|
|
|
|
.endif
|
|
|
|
|
|
|
|
# Apply required composite diff files
|
|
|
|
.for suffix in ${APPLY_DIFFS}
|
|
|
|
@${ECHO} "Applying composite patch diff-${suffix}"
|
|
|
|
@${PATCH} -d ${WRKSRC} -s -E < ${FILESDIR}/diff-${suffix}
|
|
|
|
.endfor
|
|
|
|
|
2012-08-09 06:29:42 +00:00
|
|
|
# Update LINK_SPEC to add gcc-aux lib runpath in every binary
|
|
|
|
@${ECHO} "Configuring LINK_SPEC runpath"
|
2013-04-30 11:38:19 +00:00
|
|
|
@${PERL} -pi -e 's;\@PREFIX\@;${PREFIX};' \
|
|
|
|
${WRKSRC}/gcc/config/dragonfly.h \
|
2012-08-09 06:29:42 +00:00
|
|
|
${WRKSRC}/gcc/config/i386/freebsd64.h \
|
|
|
|
${WRKSRC}/gcc/config/i386/freebsd.h
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MSTATIC}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
@${ECHO} "Reconfiguring GCC Makefile to build compiler statically"
|
|
|
|
@${PATCH} -d ${WRKSRC} -s -E < ${FILESDIR}/diff-static-version
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MNLS}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
@${PERL} -pi -e 's;\@LIBINTL\@;${STINTL} ${STICONV};' ${WRKSRC}/intl/config.intl.in
|
|
|
|
@${PERL} -pi -e 's;\@LIBICONV\@;;' \
|
|
|
|
${WRKSRC}/gcc/Makefile.in \
|
|
|
|
${WRKSRC}/libcpp/Makefile.in \
|
|
|
|
${WRKSRC}/gcc/ada/gcc-interface/Makefile.in
|
|
|
|
.else
|
|
|
|
@${PERL} -pi -e 's;\@LIBICONV\@;${STICONV};' \
|
|
|
|
${WRKSRC}/gcc/Makefile.in \
|
|
|
|
${WRKSRC}/libcpp/Makefile.in \
|
|
|
|
${WRKSRC}/gcc/ada/gcc-interface/Makefile.in
|
|
|
|
.endif
|
|
|
|
.endif
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${INTENDED_COMPILER} == BOOTSTRAP
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
${MKDIR} ${BOOTSTRAP_PREFIX}
|
|
|
|
${MV} ${BOOTSTRAP_PREFIX}/../bin ${BOOTSTRAP_PREFIX}
|
|
|
|
${MV} ${BOOTSTRAP_PREFIX}/../lib ${BOOTSTRAP_PREFIX}
|
|
|
|
${MV} ${BOOTSTRAP_PREFIX}/../libexec ${BOOTSTRAP_PREFIX}
|
|
|
|
|
|
|
|
# Bootstrap compiler has statically linked z, gmp, mpc, mpfr and iconv
|
|
|
|
# The only shared lib is libc.so.7, so it should work for a long time.
|
|
|
|
|
|
|
|
${RM} -rf ${BOOTSTRAP_PREFIX}/lib/gcc/${BOOTSTRAP_TRIPLET}/include-fixed
|
|
|
|
.endif
|
|
|
|
|
|
|
|
do-configure:
|
|
|
|
${MKDIR} ${BUILDDIR}
|
|
|
|
cd ${BUILDDIR} && ${SETENV} ${ADA_CONFIGURE_ENV} \
|
|
|
|
${CFG_SCRIPT} ${ADA_CONFIG_ARGS}
|
|
|
|
|
|
|
|
do-build:
|
|
|
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} ${_MAKE_JOBS} all
|
|
|
|
|
|
|
|
test: build test-ada test-fortran test-objc test-cxx test-c
|
|
|
|
|
|
|
|
test-ada:
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MADA} && ${PORT_OPTIONS:MTESTSUITE}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-ada
|
|
|
|
.endif
|
|
|
|
|
|
|
|
test-fortran:
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MFORT} && ${PORT_OPTIONS:MTESTSUITE}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-fortran
|
|
|
|
.endif
|
|
|
|
|
|
|
|
test-objc:
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MOBJC} && ${PORT_OPTIONS:MTESTSUITE}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-objc
|
|
|
|
.endif
|
|
|
|
|
|
|
|
test-cxx:
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MCXX} && ${PORT_OPTIONS:MTESTSUITE}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
# libstdc++ testsuite will break every time, TRUE used to force continuation
|
|
|
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-c++ || true
|
|
|
|
.endif
|
|
|
|
|
|
|
|
test-c:
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${PORT_OPTIONS:MTESTSUITE}
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} -sk check-c
|
|
|
|
.endif
|
|
|
|
|
|
|
|
do-install:
|
|
|
|
cd ${BUILDDIR} && ${SETENV} ${ADA_MAKE_ENV} ${GMAKE} install-strip DESTDIR=${DESTINY}
|
2013-07-21 13:00:46 +00:00
|
|
|
cd ${DESTINY}${PREFIX}; ${FIND} * -type d -empty -print | ${XARGS} ${RMDIR}
|
2013-04-30 11:38:19 +00:00
|
|
|
${CP} -pR ${DESTINY}${PREFIX}/ ${PREFIX}/
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
|
|
|
|
post-install:
|
|
|
|
${RM} -f ${WRKDIR}/PLIST.all
|
|
|
|
${RM} -rf ${DESTINY}/man
|
|
|
|
${MV} ${DESTINY}${PREFIX}/${PORTNAME}/share/man ${DESTINY}/
|
|
|
|
cd ${DESTINY}; ${FIND} man -type d \
|
|
|
|
-exec ${MKDIR} ${DESTINY}${PREFIX}/${PORTNAME}/share/{} \;
|
|
|
|
cd ${DESTINY}${PREFIX}; ${FIND} ${PORTNAME} \( -type f -or -type l \) | \
|
|
|
|
${SORT} >> ${WRKDIR}/PLIST.all
|
|
|
|
cd ${DESTINY}${PREFIX}; ${FIND} ${PORTNAME} -type d | ${SORT} -r | \
|
|
|
|
${SED} -e 's/^/@dirrm /g' >> ${WRKDIR}/PLIST.all
|
|
|
|
|
|
|
|
cd ${WRKDIR}; ${SED} -i -e "/PLIST.all/ r PLIST.all" ${TMPPLIST}
|
2013-04-30 11:38:19 +00:00
|
|
|
.if ${OPSYS} == FreeBSD
|
|
|
|
. if ${OSVERSION} > 900000 && ${OSVERSION} < 900507
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
@${ECHO_MSG} "===================================================================="
|
|
|
|
@${ECHO_MSG} " NOTICE REGARDING ADA TASKING ON FREEBSD 9.0:"
|
|
|
|
@${ECHO_MSG} " Due to a bug in the FreeBSD 9.0 threading library, an exiting task"
|
|
|
|
@${ECHO_MSG} " panics with the message: 'thread exits with resources held!'."
|
|
|
|
@${ECHO_MSG} " This behavior breaks Ada tasking. These are two solutions:"
|
|
|
|
@${ECHO_MSG} " 1) Upgrade to FreeBSD 9.1 or higher"
|
|
|
|
@${ECHO_MSG} " 2) Patch and rebuild thread library as described in"
|
|
|
|
@${ECHO_MSG} " http://www.dragonlace.net/posts/F9_Fix/"
|
|
|
|
@${ECHO_MSG} "===================================================================="
|
2013-04-30 11:38:19 +00:00
|
|
|
. endif
|
gcc-aux is the successor to the gcc-4.6-based lang/gnat-aux. Originally it
was planned for lang/gnat-aux to upgrade to version 4.7, then 4.8, etc.
However, some cross-compilers are based on it and there are some significant
differences between gcc 4.6 and 4.7. lang/gnat-aux also installs with a
${LOCALBASE} of /usr/local which has a high potential of file conflicts with
other lang/ compilers. Another reason for keeping them separate is just about
every Ada program will need to be patched for it due to new binding
interpretations stemming from Ada-2012 work. Simply updating gnat-aux would
break them all instantly.
The AUX compiler supports several languages: Ada, C, C++, Fortran and
Objective-C. Since Ada support must be built by an Ada-capable compiler, only
platforms for which a bootstrap compiler is available can build the AUX
compiler.
The AUX compiler is based on release versions of the Free Software Foundation's
GNU Compiler Collection. It carries with it the GMGPL license, the modified
version of the GPL that exempts generic instantiation from resulting in a
GPL-licensed executable. It also carries the GCC Runtime Library Exception, so
the resulting binaries have no licensing requirements. Binaries produced by
the AUX compiler should be legally handled the same as binaries produced by any
FSF compiler.
The AUX GNAT compiler implements the full Ada-83, Ada-95, Ada-2005 standard and
provides a partial implementation of Ada-2012.
WWW: http://www.dragonlace.net/
PR: ports/169951
Submitted by: John Marino <draco@marino.st>
2012-07-31 17:35:29 +00:00
|
|
|
.endif
|
|
|
|
|
2013-04-30 11:38:19 +00:00
|
|
|
.include <bsd.port.mk>
|