head 1.8; access; symbols pkgsrc-2026Q3:1.8.0.2 pkgsrc-2026Q3-base:1.8 pkgsrc-2026Q2:1.4.0.6 pkgsrc-2026Q2-base:1.4 pkgsrc-2026Q1:1.4.0.4 pkgsrc-2026Q1-base:1.4 pkgsrc-2025Q4:1.4.0.2 pkgsrc-2025Q4-base:1.4 pkgsrc-2025Q3:1.3.0.2 pkgsrc-2025Q3-base:1.3; locks; strict; comment @# @; 1.8 date 2026.09.16.09.06.02; author tnn; state Exp; branches; next 1.7; commitid Tirqa5wC7MhhgPVG; 1.7 date 2026.07.22.19.28.26; author he; state Exp; branches; next 1.6; commitid 0u5lNjmDZTsRtGOG; 1.6 date 2026.07.19.11.17.41; author adam; state Exp; branches; next 1.5; commitid FhXjPkGd9j9WSfOG; 1.5 date 2026.07.10.21.28.41; author tsutsui; state Exp; branches; next 1.4; commitid wXBdqe5yqFYFy9NG; 1.4 date 2025.11.08.07.04.02; author mrg; state Exp; branches; next 1.3; commitid wnmt3AFTvrA3CIhG; 1.3 date 2025.08.09.15.53.10; author wiz; state Exp; branches; next 1.2; commitid LinVDIZkZR99t46G; 1.2 date 2025.08.04.02.48.24; author mrg; state Exp; branches; next 1.1; commitid gmuPaxnEJmuJhm5G; 1.1 date 2025.07.14.17.44.53; author wiz; state Exp; branches; next ; commitid kZG2wa2HEA2kVJ2G; desc @@ 1.8 log @gcc{14,15}: backport macOS 27 fix from upstream @ text @# $NetBSD: Makefile,v 1.7 2026/07/22 19:28:26 he Exp $ PKGNAME= ${GCC_PKGNAME}-${GCC15_DIST_VERSION} ## When bumping the PKGREVISION of this package the PKGREVISION of ## lang/gcc15-libs needs to be bumped to be at least 1 more than the ## PKGREVISION of this package! PKGREVISION= 2 COMMENT= The GNU Compiler Collection (GCC) - 15.0 Release Series LANGS= c # perhaps lower, but 4.8 is not good enough TEXINFO_REQD+= 7.0 .include "Makefile.common" # In some cases LINKER_RPATH_FLAG needs a trailing space. LINKER_RPATH_FLAG:= ${LINKER_RPATH_FLAG:S/-rpath/& /} ## The Library rpath to use in end programs. LDFLAGS_FOR_TARGET= ${LDFLAGS:M${COMPILER_RPATH_FLAG}*:N*/usr/lib*} ${LDFLAGS:M-Wl,-z*} # The "-static-libstdc++ -static-libgcc" flags are normally added to the # boot-ldflags by configure but because we are supply the boot-ldflags # we mash supply them. BOOT_LDFLAGS= -static-libstdc++ -static-libgcc ${LDFLAGS_FOR_TARGET} # Needed on Darwin when LDFLAGS point to a SDK BOOT_LDFLAGS+= ${LDFLAGS:M-Wl,-syslibroot*} # GCC does not understand this option; remove it, or stage build will fail BUILDLINK_TRANSFORM+= rm:-stdlib=libc++ # Disable fixincludes on SmartOS, header changes result in broken includes # being generated, see https://github.com/joyent/pkgsrc-legacy/issues/270 .if ${OS_VARIANT} == "SmartOS" SUBST_CLASSES+= fixinc SUBST_STAGE.fixinc= pre-configure SUBST_FILES.fixinc= gcc/Makefile.in SUBST_SED.fixinc= -e "s,\./fixinc.sh,-c true," .endif .if !empty(MACHINE_PLATFORM:MNetBSD-*-*) # on NetBSD, use the native SSP code in libc CONFIGURE_ARGS+= --disable-libssp # Match base libstdc++ major SUBST_CLASSES+= libstdc SUBST_STAGE.libstdc= pre-configure SUBST_FILES.libstdc= libstdc++-v3/configure SUBST_MESSAGE.libstdc= Bumping libstdc++ major to 7 SUBST_SED.libstdc= -e 's,libtool_VERSION=6:,libtool_VERSION=7:,g' .else CONFIGURE_ARGS+= --enable-libssp .endif ## For target librarys and libjava programs. CONFIGURE_ENV+= LDFLAGS_FOR_TARGET=${LDFLAGS_FOR_TARGET:Q} .if ${USE_CROSS_COMPILE:U:tl} == "yes" CONFIGURE_ENV+= CC_FOR_BUILD=${NATIVE_CC:Q} CONFIGURE_ENV+= CXX_FOR_BUILD=${NATIVE_CXX:Q} .endif CONFIGURE_ARGS+= --enable-languages=${LANGS:Q} CONFIGURE_ARGS+= --enable-shared CTF_FILES_SKIP+= */gengtype # CPU limit exceeded TEST_TARGET= -j ${MAKE_JOBS} -k check || ${TRUE} TEST_DEPENDS+= dejagnu-[0-9]*:../../devel/dejagnu post-test: ${RUN} cd ${WRKSRC} && cd ${OBJDIR} && \ ${SHELL} ${WRKSRC}/contrib/test_summary >${WRKDIR}/test_summary.log ${INFO_MSG} "Test summary are available in ${WRKDIR}/test_summary.log" post-install: ${TEST} -f ${DESTDIR}${GCC_PREFIX}/bin/cc || \ ( cd ${DESTDIR}${GCC_PREFIX}/bin ; ${LN} -f gcc cc ) .if !empty(MACHINE_PLATFORM:MSunOS-*-*86*) && ${OS_VERSION} != "5.11" ${SH} files/values.c ${DESTDIR}${GCC_PREFIX}/bin/gcc -m32 || ${TRUE} ${SH} files/values.c ${DESTDIR}${GCC_PREFIX}/bin/gcc -m64 || ${TRUE} .endif GENERATE_PLIST+= \ cd ${DESTDIR}${PREFIX} && \ ${FIND} ${GCC_SUBPREFIX} \( -type f -o -type l \) -print | ${SORT}; .include "../../mk/bsd.pkg.mk" @ 1.7 log @lang/gcc15: Add changes to make this build on NetBSD/macppc 11.0_RC6. This pulls over changes to config/rs6000/ and gcc/config.gcc from our in-tree gcc instance of gcc14, while preserving existing Homebrew- related changes to gcc/config.gcc. The most important fix is that on NetBSD/powerpc, -msecure-plt is enabled by default, so that resulting executables can be run with PAX_MPROTECT active. Otherwise, we end up with executables with sections which have both "write" and "execute" turned on, which PAX_MPROTECT rejects. Fixes PR#60439. Bump PKGREVISION for both gcc15 and gcc15-libs, to adhere to rules in comments, even though this *should* be a single-arch build fix, since I had to merge the patch to gcc/config.gcc. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.6 2026/07/19 11:17:41 adam Exp $ d7 1 a7 1 PKGREVISION= 1 @ 1.6 log @gcc15: updated to 15.3 15.3 This release is a bug-fix release, containing fixes for regressions in GCC 15.2 relative to previous releases of GCC. PkgSrc: Allow building on Darwin/aarch64. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.5 2026/07/10 21:28:41 tsutsui Exp $ d7 1 @ 1.5 log @gcc15: pull targhooks.cc change for NetBSD from prior gcc versions Use default visibility for __stack_chk_fail_local() on NetBSD. This fixes shared-library links with -fstack-protector-strong or -fstack-protector-all on NetBSD/i386 again. Note comments in NetBSD's gcc/targhooks.cc doesn't look correct: https://cvsweb.netbsd.org/bsdweb.cgi/src/external/gpl3/gcc/dist/gcc/targhooks.cc.diff?r1=1.1.1.2;r2=1.4 > * This is a hack: > * It appears that our gas does not generate @@PLT for hidden > * symbols. It could be that we need a newer version, or that > * this local function is handled differently on linux. For 32-bit x86 PIC code, GCC emits a hidden reference to __stack_chk_fail_local() rather than default_external_stack_protect_fail(). On NetBSD, GCC is configured with --disable-libssp and NetBSD's __stack_chk_fail_local() is historically provided by libc as a public symbol: https://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libc/sys/Attic/stack_protector.c#rev1.3 so the hidden reference cannot be resolved even with the newer binutils. (Mabye we should submit this change to GCC upstream?) Bump PKGREVISION of gcc15 and gcc15-libs. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.4 2025/11/08 07:04:02 mrg Exp $ a6 1 PKGREVISION= 2 @ 1.4 log @port gcobol to netbsd amd64 and arm64. also fix the arm64 port - it wasn't including LSE and had link issues. define DL_LIBRARY "" on netbsd, we don't have -ldl. avoid a weird "unused" isn't ignored warning on arm64. tested with a simple hello.cob: IDENTIFICATION DIVISION. PROGRAM-ID. HELLO. PROCEDURE DIVISION. DISPLAY 'hello cobol world'. STOP RUN. bump pkg revision. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.3 2025/08/09 15:53:10 wiz Exp $ d7 1 a7 1 PKGREVISION= 1 @ 1.3 log @gcc15*: update to 15.2.0 Bugfix release, > 100 bugs fixed. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.2 2025/08/04 02:48:24 mrg Exp $ d7 1 a7 1 #PKGREVISION= 1 @ 1.2 log @enable "gcc -m32" support on amd64. this can probably be ported to many prior GCC versions. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.1 2025/07/14 17:44:53 wiz Exp $ d7 1 a7 1 PKGREVISION= 1 @ 1.1 log @lang/gcc15: import gcc15-15.1.0 The GNU Compiler Collection (GCC) includes front ends for C, C++, Objective-C, Fortran, and Go. @ text @d1 1 a1 1 # $NetBSD: Makefile,v 1.3 2025/06/08 07:37:45 wiz Exp $ d7 1 a7 1 #PKGREVISION= 1 @