aboutsummaryrefslogtreecommitdiff
path: root/lang/gnat-gcc41
diff options
context:
space:
mode:
authorBoris Samorodov <bsam@FreeBSD.org>2006-09-04 16:28:30 +0000
committerBoris Samorodov <bsam@FreeBSD.org>2006-09-04 16:28:30 +0000
commit09a6dffa062087c357d7438807a6671fd6051920 (patch)
tree9dedd3394f208db4c4081ddac99e628e4ecc2748 /lang/gnat-gcc41
parent7f14b041478f87ee0ec7b650ba593a32a682d196 (diff)
downloadports-09a6dffa062087c357d7438807a6671fd6051920.tar.gz
ports-09a6dffa062087c357d7438807a6671fd6051920.zip
Notes
Diffstat (limited to 'lang/gnat-gcc41')
-rw-r--r--lang/gnat-gcc41/Makefile172
-rw-r--r--lang/gnat-gcc41/distinfo18
-rw-r--r--lang/gnat-gcc41/pkg-descr4
-rw-r--r--lang/gnat-gcc41/pkg-plist6
4 files changed, 82 insertions, 118 deletions
diff --git a/lang/gnat-gcc41/Makefile b/lang/gnat-gcc41/Makefile
index a16eb75a07fd..6a29d7ec47e7 100644
--- a/lang/gnat-gcc41/Makefile
+++ b/lang/gnat-gcc41/Makefile
@@ -7,158 +7,126 @@
#
PORTNAME= gnat-gcc
-PORTVERSION= 3.4.6
+PORTVERSION= 4.1.2
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GCC}
-MASTER_SITE_SUBDIR= releases/gcc-${PORTVERSION}
-DISTFILES= gcc-core-${PORTVERSION}.tar.gz \
- gcc-ada-${PORTVERSION}.tar.gz
+MASTER_SITE_SUBDIR= snapshots/${versionstring}
+DISTFILES= gcc-core-${versionstring}${EXTRACT_SUFX} \
+ gcc-ada-${versionstring}${EXTRACT_SUFX} \
+ gcc-testsuite-${versionstring}${EXTRACT_SUFX}
MAINTAINER= karel@lovetemple.net
COMMENT= The GNU Ada Compiler system
-USE_GMAKE= yes
-USE_PERL5= yes
-USE_BISON= yes
-
-CONFLICTS= gcc-3.4.*
-WRKSRC= ${WRKDIR}/gcc-${PORTVERSION}
-
-MAN1= cpp${gcc_suffix}.1 \
- gcc${gcc_suffix}.1 \
- gcov${gcc_suffix}.1
-MAN7= fsf-funding.7 gfdl.7 gpl.7
-NOMANCOMPRESS= yes # too hard to deal with differences on 5-cur and releng4
-INFO= gcc${gcc_suffix}/cpp \
- gcc${gcc_suffix}/cppinternals \
- gcc${gcc_suffix}/gcc \
- gcc${gcc_suffix}/gccinstall \
- gcc${gcc_suffix}/gccint \
- gcc${gcc_suffix}/gnat-style \
- gcc${gcc_suffix}/gnat_rm \
- gcc${gcc_suffix}/gnat_ugn_unw
+ONLY_FOR_ARCHS= i386
-.include <bsd.port.pre.mk>
+USE_BZIP2= yes
+USE_GMAKE= yes
+USE_ICONV= yes
+USE_PERL5_BUILD= yes
+USE_BISON= yes
+
+CONFLICTS= gcc-4.1.*
+WRKSRC= ${WRKDIR}/build
+
+MAN1= cpp${gcc_suffix}.1 \
+ gcc${gcc_suffix}.1 \
+ gcov${gcc_suffix}.1
+MAN7= ${fsf_mans:S/$/${fsf_suffix}.7/}
+NOMANCOMPRESS= yes # 5-cur and releng4 problems?
+INFO= gcc${gcc_suffix}/cpp \
+ gcc${gcc_suffix}/cppinternals \
+ gcc${gcc_suffix}/gcc \
+ gcc${gcc_suffix}/gccinstall \
+ gcc${gcc_suffix}/gccint \
+ gcc${gcc_suffix}/gnat-style \
+ gcc${gcc_suffix}/gnat_rm \
+ gcc${gcc_suffix}/gnat_ugn_unw
+
+LATEST_LINK= ${PORTNAME}${gcc_suffix}
-.if ${OSVERSION} < 500000
-BROKEN= does not deinstall cleanly at 4.x (PR/101809 pending)
-.endif
+.include <bsd.port.pre.mk>
-gcc_suffix= 34
+gcc_snapshot= 20060818
+versionstring= ${PORTVERSION:C/\.[0-9]*$//}-${gcc_snapshot}
+srcdir= ${WRKDIR}/gcc-${versionstring}
+gcc_suffix= 41
+fsf_mans= fsf-funding gfdl gpl
+fsf_suffix= -${PORTNAME}${gcc_suffix}
targlib= ${PREFIX}/lib/gcc/${CONFIGURE_TARGET}/${PORTVERSION}
-PATCH_WRKSRC= ${WRKSRC}
+PATCH_WRKSRC= ${srcdir}
GNU_CONFIGURE= yes
-CONFIGURE_WRKSRC= ${WRKDIR}/build
-CONFIGURE_SCRIPT= ../${WRKSRC:C/${WRKDIR}\///}/configure
+CONFIGURE_SCRIPT= ../${srcdir:C/${WRKDIR}//}/configure
CONFIGURE_ARGS= --enable-languages="c,ada" \
--disable-nls \
--with-system-zlib \
--with-libiconv-prefix=${LOCALBASE} \
- --enable-threads=posix \
--program-suffix=${gcc_suffix} \
--bindir=${PREFIX}/bin/gcc${gcc_suffix} \
--libdir=${targlib} \
--infodir=${PREFIX}/${INFO_PATH}/gcc${gcc_suffix}
-BUILD_WRKSRC= ${WRKDIR}/build
-
-INSTALL_WRKSRC= ${WRKDIR}/build
-INSTALLS_SHLIB= yes
-
-USE_LDCONFIG= ${targlib}
+ALL_TARGET= bootstrap-lean
+MAKE_ARGS+= MAKEINFOFLAGS="--no-split"
PLIST_SUB= GCC_VER=${PORTVERSION} \
GNU_HOST=${CONFIGURE_TARGET} \
SUFFIX=${gcc_suffix}
-ONLY_FOR_ARCHS= i386
-
-# You need a compiler who calls an existing GNAT compiler (3.15 or greater).
-# By default, we'll look for one in the path. If we can't find one, we'll
-# fetch a distfile containing a minimum (still pretty large) compiler toolset
-# and use that to build.
-gnat_gcc!= if ${WHICH} adagcc > /dev/null 2>&1; then \
- ${ECHO_CMD} "`${WHICH} adagcc`"; \
- else \
- ${ECHO_CMD} ""; \
- fi
-gnat_bind!= if ${WHICH} gnatbind > /dev/null 2>&1; then \
- ${ECHO_CMD} "`${WHICH} gnatbind`"; \
- else \
- ${ECHO_CMD} ""; \
- fi
-.if empty(gnat_gcc)
-gnat_gcc!= if ${WHICH} gnatgcc > /dev/null 2>&1; then \
- ${ECHO_CMD} "`${WHICH} gnatgcc`"; \
- else \
- ${ECHO_CMD} ""; \
- fi
-.endif
+USE_LDCONFIG= ${targlib}
-.if !empty(gnat_gcc) && !empty(gnat_bind)
-bootstrap_path!= if [ -x ${gnat_gcc} -a -x ${gnat_bind} ]; then \
- ${ECHO_CMD} "$$PATH"; \
+# We need an existing GNAT compiler to bootstrap this one.
+have_gnat!= if ${WHICH} gnatmake > /dev/null 2>&1; then \
+ ${ECHO_CMD} "t"; \
else \
${ECHO_CMD} ""; \
fi
-.else
-bootstrap_path=
+.if empty(have_gnat)
+BUILD_DEPENDS+= ${LOCALBASE}/bin/gcc34/gcc34:${PORTSDIR}/lang/gnat-gcc34
+CONFIGURE_ENV+= PATH=${LOCALBASE}/bin/gcc34:${PATH} CC=${LOCALBASE}/bin/gcc34/gcc34
+MAKE_ENV+= PATH=${LOCALBASE}/bin/gcc34:${PATH} CC=${LOCALBASE}/bin/gcc34/gcc34
.endif
-.if empty(bootstrap_path)
-ONLY_FOR_ARCHS= i386
-DISTFILES+= gnat-3.15p-boot.tar.gz:boot
-MASTER_SITES+= ${MASTER_SITE_LOCAL}:boot
-MASTER_SITE_SUBDIR+= deischen/gcc/:boot
-.if ${OSVERSION} >= 500000
-BUILD_DEPENDS+= ${LOCALBASE}/lib/compat/libc.so.4:${PORTSDIR}/misc/compat4x
-.endif
-# Warning! You need the trailing slash on GCC_EXEC_PREFIX.
-compiler_data= GCC_EXEC_PREFIX=${WRKDIR}/adaboot/lib/gcc-lib/ \
- ADA_INCLUDE_PATH=${WRKDIR}/adaboot/lib/gcc-lib/adainclude \
- ADA_OBJECTS_PATH=${WRKDIR}/adaboot/lib/gcc-lib/adalib
-bootstrap_path= ${WRKDIR}/adaboot/bin:${PATH}
-gnat_gcc= adagcc
-.endif
-
-# Make sure we use the Ada-aware gcc compiler.
-CC= ${gnat_gcc}
-# C compiler from GNAT 3.15 doesn't understand modern flags.
-CFLAGS=
-CONFIGURE_ENV+= ${compiler_data} PATH=${bootstrap_path}
-MAKE_ENV+= ${compiler_data} PATH=${bootstrap_path} PTHREAD_LIBS=${PTHREAD_LIBS} CC=${CC}
-
pre-everything::
@${ECHO_MSG} "Making GCC ${DISTNAME:S/^gcc-//} for ${OPSYS} ${OSREL} target=${CONFIGURE_TARGET}"
# Append ' [FreeBSD]' to gcc version string.
post-patch:
@${REINPLACE_CMD} -e 's|\(const char version_string.*\)";|\1 [FreeBSD]";|' \
- ${WRKSRC}/gcc/version.c
+ ${srcdir}/gcc/version.c
pre-configure:
- cd ${WRKSRC} ; contrib/gcc_update --touch
- @${RM} -f ${WRKSRC}/gcc/*/*.info*
+ cd ${srcdir} ; contrib/gcc_update --touch
+ @${RM} -f ${srcdir}/gcc/*/*.info*
@${MKDIR} ${CONFIGURE_WRKSRC}
-do-build:
- (cd ${BUILD_WRKSRC}; \
- ${MAKE_ENV} ${GMAKE} bootstrap)
- (cd ${BUILD_WRKSRC}; \
- ${MAKE_ENV} ${GMAKE} -C gcc gnatlib)
- (cd ${BUILD_WRKSRC}; \
- ${MAKE_ENV} ${GMAKE} -C gcc gnattools)
+post-build:
+ @${ECHO_MSG} "Consider running 'make check' before 'make install', especially"
+ @${ECHO_MSG} "if you have not performed this build on -STABLE or -CURRENT."
+ @${ECHO_MSG} "This assumes that you have the dejagnu port installed."
+
+check: build
+ cd ${WRKSRC}; export RUNTESTFLAGS='--target_board ''unix{-pthread}'''; ${GMAKE} -sk check
post-install:
${LN} -s ${PREFIX}/bin/gcc${gcc_suffix}/gcc${gcc_suffix} \
${PREFIX}/bin/gcc${gcc_suffix}/gcc
- # Man pages can only be generated if Perl >= 5.6 is installed;
- # fake them otherwise.
+ # Man pages can only be generated if Perl >= 5.6 is installed; fake them otherwise.
for mp in ${_MANPAGES}; do \
${TEST} -e $${mp} || ${TOUCH} ${TOUCH_FLAGS} $${mp}; \
done
+ # Version FSF funding and licensing manuals.
+ for mp in ${fsf_mans}; do \
+ ${MV} -f ${PREFIX}/man/man7/$${mp}.7 \
+ ${PREFIX}/man/man7/$${mp}${fsf_suffix}.7; \
+ done
+ # Save the runaway header.
+ ${MV} -f ${PREFIX}/include/mf-runtime.h \
+ ${targlib}/gcc/${CONFIGURE_TARGET}/${PORTVERSION}/include
+ # Remove libtool library files.
+ ${RM} -f ${targlib}/*.la
# Add target libraries and include files to packaging list.
${RM} -f ${WRKDIR}/PLIST.lib
for d in ${targlib:S/^${PREFIX}\///} ${targlib:S/^${PREFIX}\///:S/lib/libexec/}; do \
diff --git a/lang/gnat-gcc41/distinfo b/lang/gnat-gcc41/distinfo
index 099fab9dd308..c48f1b2e07e0 100644
--- a/lang/gnat-gcc41/distinfo
+++ b/lang/gnat-gcc41/distinfo
@@ -1,9 +1,9 @@
-MD5 (gcc-core-3.4.6.tar.gz) = bf90936d679795666cfcf353faa560e2
-SHA256 (gcc-core-3.4.6.tar.gz) = c6030bf03ad79b70e556b0ab58c17872bf5b2409caee9db41497bcd6379328f6
-SIZE (gcc-core-3.4.6.tar.gz) = 17345868
-MD5 (gcc-ada-3.4.6.tar.gz) = 90ddaee03adb71725f4dec4356cfb58f
-SHA256 (gcc-ada-3.4.6.tar.gz) = cb6256bc9707cc7543874a5b6f8ed3380e44aebfd9ac01df8bea594ab998e9c1
-SIZE (gcc-ada-3.4.6.tar.gz) = 5113854
-MD5 (gnat-3.15p-boot.tar.gz) = 3b25873a90978b8b4113d71dc3df315f
-SHA256 (gnat-3.15p-boot.tar.gz) = dfa61b98ad7f26ca46f8c5e61d87c42e17ad139616f315df16f25dce38044a9d
-SIZE (gnat-3.15p-boot.tar.gz) = 4608818
+MD5 (gcc-core-4.1-20060818.tar.bz2) = e450b204b83de10ea971e2aeda24e678
+SHA256 (gcc-core-4.1-20060818.tar.bz2) = e6cc4b93bb55f3b1b0e10d170cf676d722948d096b0af29c0a526eddadda3d53
+SIZE (gcc-core-4.1-20060818.tar.bz2) = 14957673
+MD5 (gcc-ada-4.1-20060818.tar.bz2) = 411397607272a36d2cafa40b78c39bdf
+SHA256 (gcc-ada-4.1-20060818.tar.bz2) = 8b6c2c0292e1b9524c3a930d6949fbdebe367d420c4298f9b2661d14ce2bc819
+SIZE (gcc-ada-4.1-20060818.tar.bz2) = 4628445
+MD5 (gcc-testsuite-4.1-20060818.tar.bz2) = 27d1ba3833f51ca9b34342e4a07b39a4
+SHA256 (gcc-testsuite-4.1-20060818.tar.bz2) = cdb4a07f40102f4fe207e29b094cd9ca47798c40083992d186a9731ca992b265
+SIZE (gcc-testsuite-4.1-20060818.tar.bz2) = 3567830
diff --git a/lang/gnat-gcc41/pkg-descr b/lang/gnat-gcc41/pkg-descr
index f6bb20a58f80..450edb68cc63 100644
--- a/lang/gnat-gcc41/pkg-descr
+++ b/lang/gnat-gcc41/pkg-descr
@@ -1,6 +1,6 @@
-The GNU Ada compiler system built from GCC 3.4.6.
+The GNU Ada compiler system built from GCC 4.1.2.
-Please add ${PREFIX}/bin/gcc34 to your PATH variable
+Please add ${PREFIX}/bin/gcc41 to your PATH variable
before using this port.
WWW: http://gcc.gnu.org/
diff --git a/lang/gnat-gcc41/pkg-plist b/lang/gnat-gcc41/pkg-plist
index 38eec6516868..397ec1cbee75 100644
--- a/lang/gnat-gcc41/pkg-plist
+++ b/lang/gnat-gcc41/pkg-plist
@@ -16,13 +16,9 @@ bin/gcc%%SUFFIX%%/gnatmake
bin/gcc%%SUFFIX%%/gnatname
bin/gcc%%SUFFIX%%/gnatprep
bin/gcc%%SUFFIX%%/gnatxref
-bin/gcc%%SUFFIX%%/gpr2make
-bin/gcc%%SUFFIX%%/gprcmd
+bin/gcc%%SUFFIX%%/gprmake
bin/gcc%%SUFFIX%%/%%GNU_HOST%%-gcc-%%GCC_VER%%
bin/gcc%%SUFFIX%%/%%GNU_HOST%%-gcc%%SUFFIX%%
info/gcc%%SUFFIX%%/dir
-share/gnat/Makefile.generic
-share/gnat/Makefile.prolog
-@dirrm share/gnat
@dirrm bin/gcc%%SUFFIX%%
@comment Insert PLIST.lib here