# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= gnatcross VERSION= 14.2.0 KEYWORDS= lang VARIANTS= FARM64_R11 FAMD64_R12 FI386_R12 SOL10 MAMD64_R3 MI386_R3 SDESC[FARM64_R11]= C/Ada cross-compiler, target: FreeBSD/ARM64 (R11) SDESC[MAMD64_R3]= C/Ada cross-compiler, tgt: MidnightBSD/AMD64 (R3) SDESC[SOL10]= C/Ada cross-compiler, target: Solaris 10 (x86-64) SDESC[FI386_R12]= C/Ada cross-compiler, target: FreeBSD/I386 (R11) SDESC[MI386_R3]= C/Ada cross-compiler, tgt: MidnightBSD/I386 (R3) SDESC[FAMD64_R12]= C/Ada cross-compiler, target: FreeBSD/AMD64 (R12) HOMEPAGE= http://www.dragonlace.net CONTACT= John_Marino[draco@marino.st] DOWNLOAD_GROUPS= main draco SITES[main]= GCC/releases/gcc-14.2.0 SITES[draco]= https://raw.githubusercontent.com/jrmarino/draco/14.2.0-base/generated/patches-14.2.0/ DISTFILE[1]= gcc-14.2.0.tar.xz:main DISTFILE[2]= patch-diff-ada:draco DISTFILE[3]= patch-diff-core:draco DISTFILE[4]= patch-diff-cxx:draco DISTFILE[5]= patch-diff-ada-testsuite:draco DISTFILE[6]= patch-diff-gcc-testsuite:draco DIST_SUBDIR= gcc14_14.2.0-base DF_INDEX= 1 SPKGS[FARM64_R11]= single SPKGS[MAMD64_R3]= single SPKGS[SOL10]= single SPKGS[FI386_R12]= single SPKGS[MI386_R3]= single SPKGS[FAMD64_R12]= single OPTIONS_AVAILABLE= FARM64R11 FAMD64R12 FI386R12 SOL10 MAMD64R3 MI386R3 OPTIONS_STANDARD= none VOPTS[FARM64_R11]= FARM64R11=ON FAMD64R12=OFF FI386R12=OFF SOL10=OFF MAMD64R3=OFF MI386R3=OFF VOPTS[MAMD64_R3]= FARM64R11=OFF FAMD64R12=OFF FI386R12=OFF SOL10=OFF MAMD64R3=ON MI386R3=OFF VOPTS[SOL10]= FARM64R11=OFF FAMD64R12=OFF FI386R12=OFF SOL10=ON MAMD64R3=OFF MI386R3=OFF VOPTS[FI386_R12]= FARM64R11=OFF FAMD64R12=OFF FI386R12=ON SOL10=OFF MAMD64R3=OFF MI386R3=OFF VOPTS[MI386_R3]= FARM64R11=OFF FAMD64R12=OFF FI386R12=OFF SOL10=OFF MAMD64R3=OFF MI386R3=ON VOPTS[FAMD64_R12]= FARM64R11=OFF FAMD64R12=ON FI386R12=OFF SOL10=OFF MAMD64R3=OFF MI386R3=OFF BUILD_DEPENDS= gmp:dev:std mpfr:dev:std mpc:dev:std USES= cpe gmake libtool perl:build zlib:build C_USES[freebsd]= iconv:build C_USES[darwin]= iconv:build C_USES[dragonfly]= iconv:build DISTNAME= gcc-14.2.0 LICENSE= GPLv3+:single LGPL3+:single GPLv3RLE+:single LICENSE_TERMS= single:{{WRKDIR}}/TERMS LICENSE_FILE= GPLv3+:{{WRKSRC}}/COPYING3 LGPL3+:{{WRKSRC}}/COPYING3.LIB GPLv3RLE+:{{WRKSRC}}/COPYING.RUNTIME LICENSE_SCHEME= multi CPE_PRODUCT= gcc CPE_VENDOR= gnu PATCHFILES= 2 3 4 5 6 MUST_CONFIGURE= yes CONFIGURE_OUTSOURCE= yes CONFIGURE_ARGS= --enable-languages="c c++ ada fortran" --target={{XCCTARGET}} --build={{CONFIGURE_TARGET}} --program-prefix={{XCCTARGET}}- --prefix={{PREFIX}} --with-sysroot={{SRPREFIX}} --with-system-zlib --with-gmp={{LOCALBASE}} --with-mpfr={{LOCALBASE}} --with-mpc={{LOCALBASE}} --enable-threads=posix --enable-checking=release --disable-bootstrap --disable-shared --disable-libssp --disable-libgomp --disable-libquadmath --disable-libquadmath-support --disable-libsanitizer --disable-libitm --disable-libcc1 --disable-nls {{TARGET_SPECIFIC}} PLIST_SUB= GCCVERS="14.2.0" TARGET="{{XCCTARGET}}" SUB_FILES= messages-single.ucl SUB_LIST= TARGET="{{XCCTARGET}}" INFRASTRUCTURE= yes VAR_OPSYS[freebsd]= CONFIGURE_ARGS=--with-libiconv-prefix={{WRKDIR}}/fake VAR_OPSYS[dragonfly]= CONFIGURE_ARGS=--with-libiconv-prefix={{WRKDIR}}/fake [FARM64R11].DESCRIPTION= Set target to FreeBSD/ARM64 (Release 11) [FARM64R11].BUILDRUN_DEPENDS_ON= gnatcross-binutils:single:FARM64_R11 [FARM64R11].MAKEFILE_ON= OS_LABEL4VERS="[{{OPSYS}}/{{ARCH}} x FreeBSD_11/ARM64]" PREFIX={{LOCALBASE}}/FreeBSD11_ARM64 SRPREFIX={{PREFIX}}/sysroot XCCTARGET=aarch64-raven-freebsd11.3 TARGET_SPECIFIC=#none [SOL10].DESCRIPTION= Set target to Solaris 10 (x86-64) [SOL10].BROKEN_ON= GCC10+ does not support solaris 10 [SOL10].BUILDRUN_DEPENDS_ON= gnatcross-binutils:single:SOL10 [SOL10].CONFIGURE_ENV_ON= LD=ld.bfd [SOL10].MAKEFILE_ON= OS_LABEL4VERS="[{{OPSYS}}/{{ARCH}} x Solaris_10/AMD64]" PREFIX={{LOCALBASE}}/Solaris10_AMD64 SRPREFIX={{PREFIX}}/sysroot XCCTARGET=x86_64-raven-solaris2.10 TARGET_SPECIFIC=--with-gnu-ld\ --with-gnu-as\ --enable-multilib\ --enable-obsolete [FI386R12].DESCRIPTION= Set target to FreeBSD/I386 (Release 12) [FI386R12].BUILDRUN_DEPENDS_ON= gnatcross-binutils:single:FI386_R12 [FI386R12].MAKEFILE_ON= OS_LABEL4VERS="[{{OPSYS}}/{{ARCH}} x FreeBSD_12/I386]" PREFIX={{LOCALBASE}}/FreeBSD12_I386 SRPREFIX={{PREFIX}}/sysroot XCCTARGET=i386-raven-freebsd12.2 TARGET_SPECIFIC=#none [FAMD64R12].DESCRIPTION= Set target to FreeBSD/ARM64 (Release 12) [FAMD64R12].BUILDRUN_DEPENDS_ON= gnatcross-binutils:single:FAMD64_R12 [FAMD64R12].MAKEFILE_ON= OS_LABEL4VERS="[{{OPSYS}}/{{ARCH}} x FreeBSD_12/AMD64]" PREFIX={{LOCALBASE}}/FreeBSD12_AMD64 SRPREFIX={{PREFIX}}/sysroot XCCTARGET=x86_64-raven-freebsd12.2 TARGET_SPECIFIC=--disable-multilib [MAMD64R3].DESCRIPTION= Set target to MidnightBSD/AMD64 (Release 3) [MAMD64R3].BUILDRUN_DEPENDS_ON= gnatcross-binutils:single:MAMD64_R3 [MAMD64R3].MAKEFILE_ON= OS_LABEL4VERS="[{{OPSYS}}/{{ARCH}} x MidnightBSD_3/AMD64]" PREFIX={{LOCALBASE}}/MidnightBSD_AMD64 SRPREFIX={{PREFIX}}/sysroot XCCTARGET=x86_64-raven-freebsd12.3 TARGET_SPECIFIC=--disable-multilib [MI386R3].DESCRIPTION= Set target to MidnightBSD/I386 (Release 3) [MI386R3].BUILDRUN_DEPENDS_ON= gnatcross-binutils:single:MI386_R3 [MI386R3].MAKEFILE_ON= OS_LABEL4VERS="[{{OPSYS}}/{{ARCH}} x MidnightBSD_3/I386]" PREFIX={{LOCALBASE}}/MidnightBSD_I386 SRPREFIX={{PREFIX}}/sysroot XCCTARGET=i386-raven-freebsd12.3 TARGET_SPECIFIC=--disable-multilib post-install-FAMD64R12-ON: ${RM} -r ${STAGEDIR}${PREFIX}/lib/gcc/${XCCTARGET}/14.2.0/include-fixed/ post-patch: # Update LINK_SPEC to add gcc-aux lib runpath in every binary @${ECHO} "Configuring LINK_SPEC runpath" ${REINPLACE_CMD} -e 's;\@PREFIX\@;${PREFIX};' \ ${WRKSRC}/gcc/config/darwin.h \ ${WRKSRC}/gcc/config/dragonfly.h \ ${WRKSRC}/gcc/config/sol2.h \ ${WRKSRC}/gcc/config/i386/freebsd64.h \ ${WRKSRC}/gcc/config/i386/freebsd.h \ ${WRKSRC}/gcc/config/i386/gnu-user64.h \ ${WRKSRC}/gcc/config/aarch64/aarch64-freebsd.h # fix FreeBSD spec error ${REINPLACE_CMD} -e 's|static:crtbeginT.o%s;||' \ ${WRKSRC}/gcc/config/freebsd-spec.h post-stage: ${RM} -r ${STAGEDIR}${MANPREFIX} .for loop in A B (cd ${STAGEDIR}${PREFIX}; ${FIND} * -type d -empty | \ ${SORT} -dr | ${XARGS} ${RMDIR}) .endfor (cd ${STAGEDIR}${PREFIX}; \ ${FIND} * \( -type f -or -type l \) | ${SORT} | \ ${SED} -e '/^bin\//d' -e '/^${XCCTARGET}\/bin\//d' \ >> ${WRKDIR}/.manifest.single.mktmp) post-patch-FI386R12-ON: # work around malloc detection issue ${REINPLACE_CMD} -e 's/#undef HAVE_ALIGNED_ALLOC/#define HAVE_ALIGNED_ALLOC 1/' \ ${WRKSRC}/libstdc++-v3/config.h.in post-patch-FARM64R11-ON: # work around malloc detection issue ${REINPLACE_CMD} -e 's/#undef HAVE_ALIGNED_ALLOC/#define HAVE_ALIGNED_ALLOC 1/' \ ${WRKSRC}/libstdc++-v3/config.h.in post-patch-FAMD64R12-ON: # work around malloc detection issue ${REINPLACE_CMD} -e 's/#undef HAVE_ALIGNED_ALLOC/#define HAVE_ALIGNED_ALLOC 1/' \ ${WRKSRC}/libstdc++-v3/config.h.in post-patch-SOL10-ON: ${REINPLACE_CMD} -e 's| install-gcc-specs||' \ ${WRKSRC}/gcc/ada/gcc-interface/Makefile.in # undo BSD thin socket modification ${MV} ${WRKSRC}/gcc/ada/libgnat/g-socthi.ads.orig \ ${WRKSRC}/gcc/ada/libgnat/g-socthi.ads post-extract: # Personalize GNAT for each different machine ${ECHO} "-=> GNATCROSS ${OS_LABEL4VERS}" > ${WRKSRC}/gcc/REVISION # Create license terms ${HEAD} -n 19 ${WRKSRC}/gcc/gcc.h > ${WRKDIR}/TERMS ${HEAD} -n 31 ${WRKSRC}/gcc/ada/adaint.h >> ${WRKDIR}/TERMS ${HEAD} -n 18 ${WRKSRC}/libiberty/hex.c >> ${WRKDIR}/TERMS # Use iconv_pic.a instead of iconv.a if [ -f ${LOCALBASE}/include/iconv.h ]; then \ ${MKDIR} ${WRKDIR}/fake/include ${WRKDIR}/fake/lib ;\ ${INSTALL_DATA} ${LOCALBASE}/include/iconv.h \ ${WRKDIR}/fake/include/ ;\ ${INSTALL_DATA} ${LOCALBASE}/lib/libiconv_pic.a \ ${WRKDIR}/fake/lib/libiconv.a ;\ fi do-install: # Buggy makefile; seems to have forgotten this is a cross compiler # Manually rename products so it doesn't rebuild them with new name .for X in gnat gnatbind gnatchop gnatclean gnatkr gnatlink gnatls gnatmake gnatprep if [ ! -f "${BUILD_WRKSRC}/gcc/${X}" ]; then \ ${CP} -a ${BUILD_WRKSRC}/gcc/${X}-cross ${BUILD_WRKSRC}/gcc/${X}; \ fi .endfor (cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV:C/^PATH=/&${PREFIX}\/bin:/} \ ${MAKE_CMD} install-strip DESTDIR=${STAGEDIR}) ${MV} ${STAGEDIR}${PREFIX}/bin/ada \ ${STAGEDIR}${PREFIX}/bin/${XCCTARGET}-ada post-install-FI386R12-ON: ${RM} -r ${STAGEDIR}${PREFIX}/lib/gcc/${XCCTARGET}/14.2.0/include-fixed/ post-install-FARM64R11-ON: ${RM} -r ${STAGEDIR}${PREFIX}/lib/gcc/${XCCTARGET}/14.2.0/include-fixed/ [FILE:135:descriptions/desc.single.FARM64_R11] This package contains a C/C++/Fortran/Ada cross-compiler based on GCC 11 that targets the FreeBSD/ARM64 operating system (Release 11). [FILE:135:descriptions/desc.single.FAMD64_R12] This package contains a C/C++/Fortran/Ada cross-compiler based on GCC 11 that targets the FreeBSD/AMD64 operating system (Release 12). [FILE:134:descriptions/desc.single.FI386_R12] This package contains a C/C++/Fortran/Ada cross-compiler based on GCC 11 that targets the FreeBSD/I386 operating system (Release 12). [FILE:128:descriptions/desc.single.SOL10] This package contains a C/C++/Fortran/Ada cross-compiler based on GCC 11 that targets the Solaris 10 operating system (x86-64). [FILE:138:descriptions/desc.single.MAMD64_R3] This package contains a C/C++/Fortran/Ada cross-compiler based on GCC 11 that targets the MidnightBSD/AMD64 operating system (Release 3). [FILE:137:descriptions/desc.single.MI386_R3] This package contains a C/C++/Fortran/Ada cross-compiler based on GCC 11 that targets the MidnightBSD/I386 operating system (Release 3). [FILE:690:distinfo] a7b39bc69cbf9e25826c5a60ab26477001f7c08d85cec04bc0e29cabed6f3cc9 92306460 gcc14_14.2.0-base/gcc-14.2.0.tar.xz 2e02299b69b2ffab35025c330c5c23f498db206840933057a6c617848b736c69 82066 gcc14_14.2.0-base/patch-diff-ada a5dfc9157631d8f924b1633184e5422225040b69a2ecf1dbba5c4a337cef42a8 8404 gcc14_14.2.0-base/patch-diff-core f2f5e7f386a807b8ee28572360471bc222fef7d599cb7cbabbbc4fd6564deeea 6705 gcc14_14.2.0-base/patch-diff-cxx 4182fbd55846131da646767d4a3c1c9d0af826141376a26eea6cabad17e75f6e 19253 gcc14_14.2.0-base/patch-diff-ada-testsuite 0c943f75b1c8d03233f3947148a0aaa2e083418b1e89a4cfed8e8cd401a51bba 1894 gcc14_14.2.0-base/patch-diff-gcc-testsuite [FILE:480:manifests/plist.single] bin/ %%TARGET%%-ada %%TARGET%%-c++ %%TARGET%%-cpp %%TARGET%%-g++ %%TARGET%%-gcc %%TARGET%%-gcc-%%GCCVERS%% %%TARGET%%-gcc-ar %%TARGET%%-gcc-nm %%TARGET%%-gcc-ranlib %%TARGET%%-gcov %%TARGET%%-gcov-dump %%TARGET%%-gcov-tool %%TARGET%%-gfortran %%TARGET%%-gnat %%TARGET%%-gnatbind %%TARGET%%-gnatchop %%TARGET%%-gnatclean %%TARGET%%-gnatkr %%TARGET%%-gnatlink %%TARGET%%-gnatls %%TARGET%%-gnatmake %%TARGET%%-gnatname %%TARGET%%-gnatprep %%TARGET%%-lto-dump [FILE:1338:patches/patch-gcc_ada_libgnat_s-dorepr.adb] --- gcc/ada/libgnat/s-dorepr.adb.orig 2024-08-01 08:17:13 UTC +++ gcc/ada/libgnat/s-dorepr.adb @@ -77,18 +77,28 @@ package body Product is end; when 53 => - declare - Rep64 : aliased Interfaces.Unsigned_64; - Temp : Num := N with Address => Rep64'Address; - pragma Annotate (CodePeer, Modified, Rep64); + if Num'Size > 64 then + declare + Rep64 : Interfaces.Unsigned_64; + begin + Rep64 := Interfaces.Unsigned_64 (N); + Rep64 := Rep64 and 16#FFFFFFFFF8000000#; + X := Num (Rep64); + end; + else + declare + Rep64 : aliased Interfaces.Unsigned_64; + Temp : Num := N with Address => Rep64'Address; + pragma Annotate (CodePeer, Modified, Rep64); - begin - -- Mask out the low 27 bits + begin + -- Mask out the low 27 bits - Rep64 := Rep64 and 16#FFFFFFFFF8000000#; + Rep64 := Rep64 and 16#FFFFFFFFF8000000#; - X := Temp; - end; + X := Temp; + end; + end if; when 64 => declare [FILE:173:files/messages-single.ucl.in] primary: { type: "install" message: <