pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/lang



Module Name:    pkgsrc
Committed By:   maya
Date:           Sun May 10 15:02:44 UTC 2020

Modified Files:
        pkgsrc/lang: Makefile
Added Files:
        pkgsrc/lang/gcc10: DESCR Makefile buildlink3.mk distinfo options.mk
            version.mk
        pkgsrc/lang/gcc10/patches: patch-contrib_download__prerequisites
            patch-fixincludes_inclhack.def patch-gcc_Makefile.in
            patch-gcc_config_aarch64_aarch64-builtins.c patch-gcc_configure
            patch-gcc_ggc-common.c patch-gcc_lto_lto.c patch-gcc_targhooks.c
            patch-isl_configure patch-libffi_configure
            patch-libffi_testsuite_libffi.call_float2.c patch-libgcc_crtstuff.c
            patch-libgfortran_io_io.h patch-libstdc++-v3_libsupc++_new__opa.cc

Log Message:
add gcc10 GCC version 10.1.0

Release notes: https://gcc.gnu.org/gcc-10/changes.html


To generate a diff of this commit:
cvs rdiff -u -r1.558 -r1.559 pkgsrc/lang/Makefile
cvs rdiff -u -r0 -r1.1 pkgsrc/lang/gcc10/DESCR pkgsrc/lang/gcc10/Makefile \
    pkgsrc/lang/gcc10/buildlink3.mk pkgsrc/lang/gcc10/distinfo \
    pkgsrc/lang/gcc10/options.mk pkgsrc/lang/gcc10/version.mk
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/lang/gcc10/patches/patch-contrib_download__prerequisites \
    pkgsrc/lang/gcc10/patches/patch-fixincludes_inclhack.def \
    pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in \
    pkgsrc/lang/gcc10/patches/patch-gcc_config_aarch64_aarch64-builtins.c \
    pkgsrc/lang/gcc10/patches/patch-gcc_configure \
    pkgsrc/lang/gcc10/patches/patch-gcc_ggc-common.c \
    pkgsrc/lang/gcc10/patches/patch-gcc_lto_lto.c \
    pkgsrc/lang/gcc10/patches/patch-gcc_targhooks.c \
    pkgsrc/lang/gcc10/patches/patch-isl_configure \
    pkgsrc/lang/gcc10/patches/patch-libffi_configure \
    pkgsrc/lang/gcc10/patches/patch-libffi_testsuite_libffi.call_float2.c \
    pkgsrc/lang/gcc10/patches/patch-libgcc_crtstuff.c \
    pkgsrc/lang/gcc10/patches/patch-libgfortran_io_io.h \
    pkgsrc/lang/gcc10/patches/patch-libstdc++-v3_libsupc++_new__opa.cc

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/lang/Makefile
diff -u pkgsrc/lang/Makefile:1.558 pkgsrc/lang/Makefile:1.559
--- pkgsrc/lang/Makefile:1.558  Sat May  9 19:07:43 2020
+++ pkgsrc/lang/Makefile        Sun May 10 15:02:44 2020
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.558 2020/05/09 19:07:43 leot Exp $
+# $NetBSD: Makefile,v 1.559 2020/05/10 15:02:44 maya Exp $
 #
 
 COMMENT=       Programming languages
@@ -63,6 +63,7 @@ SUBDIR+=      gambc
 SUBDIR+=       gauche
 SUBDIR+=       gawk
 SUBDIR+=       gcc-aux
+SUBDIR+=       gcc10
 SUBDIR+=       gcc2
 SUBDIR+=       gcc3
 SUBDIR+=       gcc3-c

Added files:

Index: pkgsrc/lang/gcc10/DESCR
diff -u /dev/null pkgsrc/lang/gcc10/DESCR:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/DESCR     Sun May 10 15:02:44 2020
@@ -0,0 +1,2 @@
+The GNU Compiler Collection (GCC) includes front ends for C, C++, Objective-C,
+Fortran, and Go.
Index: pkgsrc/lang/gcc10/Makefile
diff -u /dev/null pkgsrc/lang/gcc10/Makefile:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/Makefile  Sun May 10 15:02:44 2020
@@ -0,0 +1,202 @@
+# $NetBSD: Makefile,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+GCC_PKGNAME=           gcc10
+.include               "version.mk"
+
+DISTNAME=      gcc-${GCC10_DIST_VERSION}
+PKGNAME=       ${GCC_PKGNAME}-${GCC10_DIST_VERSION}
+## When bumping the PKGREVISION of this package the PKGREVISION of
+## lang/gcc10-libs needs to be bump to be at least 1 more than the
+## PKGREVISION of this package!
+CATEGORIES=    lang
+MASTER_SITES=  ${MASTER_SITE_GNU:=gcc/gcc-${GCC10_DIST_VERSION}/}
+EXTRACT_SUFX=  .tar.xz
+
+MAINTAINER=    pkgsrc-users%NetBSD.org@localhost
+HOMEPAGE=      https://gcc.gnu.org/
+COMMENT=       The GNU Compiler Collection (GCC) - 10.0 Release Series
+LICENSE=       gnu-gpl-v2 AND gnu-gpl-v3 AND gnu-lgpl-v2 AND gnu-lgpl-v3
+
+DISTFILES=             ${DEFAULT_DISTFILES}
+EXTRACT_ONLY=          ${DEFAULT_DISTFILES}
+
+NOT_FOR_PLATFORM=      Interix-*-*
+
+USE_LANGUAGES=         c99 c++
+USE_TOOLS+=            gmake makeinfo sed:run tar:build
+USE_TOOLS.NetBSD+=     gsed
+
+GNU_CONFIGURE=         yes
+GNU_CONFIGURE_STRICT=  no
+## Build outside ${WRKSRC}
+OBJDIR=                        ../build
+CONFIGURE_DIRS=                ${OBJDIR}
+CONFIGURE_SCRIPT=      ../${DISTNAME}/configure
+GCC_SUBPREFIX=         ${GCC_PKGNAME}
+GCC_PREFIX=            ${PREFIX}/${GCC_SUBPREFIX}
+GNU_CONFIGURE_PREFIX=  ${GCC_PREFIX}
+INFO_FILES=            yes
+CONFIGURE_ARGS+=       --disable-libstdcxx-pch
+
+UNLIMIT_RESOURCES+=    datasize
+UNLIMIT_RESOURCES+=    stacksize
+
+CHECK_PORTABILITY_SKIP+=       contrib/*
+
+.include "../../mk/bsd.prefs.mk"
+
+LANGS=                 c
+
+# 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
+
+.include "options.mk"
+
+## For graphite support.
+.if !empty(PKG_OPTIONS:Mgcc-graphite)
+
+post-extract:
+       ${TAR} -jxf ${DISTDIR}/${ISL16}.tar.bz2 -C ${WRKSRC}
+       ${MV} ${WRKSRC}/${ISL16} ${WRKSRC}/isl
+.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}
+
+CONFIGURE_ARGS+=       --enable-languages=${LANGS:Q}
+CONFIGURE_ARGS+=       --enable-shared
+CONFIGURE_ARGS+=       --enable-long-long
+CONFIGURE_ARGS+=       --with-local-prefix=${GCC_PREFIX:Q}
+CONFIGURE_ARGS+=       --enable-threads=posix
+CONFIGURE_ARGS+=       --with-boot-ldflags=${BOOT_LDFLAGS:Q}
+# multilib on Darwin requires fat-binaries
+CONFIGURE_ARGS.Darwin+=        --disable-multilib
+.if !empty(OSX_SDK_PATH)
+CONFIGURE_ARGS.Darwin+=        --with-sysroot=${OSX_SDK_PATH}
+.endif
+CONFIGURE_ARGS.NetBSD+=        --with-gnu-ld --with-ld=/usr/bin/ld
+CONFIGURE_ARGS.NetBSD+=        --with-gnu-as --with-as=/usr/bin/as
+MAKE_ENV.NetBSD+=      ac_cv_func_clock_gettime=yes
+MAKE_ENV.NetBSD+=      ac_cv_func_gethostbyname_r=no
+MAKE_ENV.NetBSD+=      ac_cv_func_freelocale=no
+MAKE_ENV.NetBSD+=      ac_cv_func_newlocale=no
+MAKE_ENV.NetBSD+=      ac_cv_func_uselocale=no
+MAKE_ENV.SunOS+=       ac_cv_func_mkostemp=no
+
+CONFIGURE_ARGS.DragonFly+=     --disable-bootstrap
+
+.if !empty(MACHINE_PLATFORM:MNetBSD-*-i386) || !empty(MACHINE_PLATFORM:MLinux-*-i386)
+CONFIGURE_ARGS+=       --with-arch=i486 --with-tune=i486
+.endif
+
+.if !empty(MACHINE_PLATFORM:MNetBSD-*-x86_64) || !empty(MACHINE_PLATFORM:MLinux-*-x86_64)
+CONFIGURE_ARGS+=       --with-arch=nocona --with-tune=nocona --with-fpmath=sse
+.endif
+
+.if !empty(MACHINE_PLATFORM:MDarwin-[0-8].*-*)
+CONFIGURE_ARGS+=       --with-dwarf2
+.endif
+
+# ${WRKSRC}/fixincludes/ looks for sed and compiles the path to sed into
+# a binary so we need to make sure we give it the installed sed and not
+# the tool wrapped one.
+MAKE_ENV+=             ac_cv_path_SED=${TOOLS_SED}
+MAKE_ENV+=             lt_cv_path_SED=${TOOLS_SED}
+
+# Determine whether to use binutils
+.if ${OPSYS} == "SunOS"
+.  if exists(/usr/sfw/bin/gobjdump)
+CONFIGURE_ENV+=                OBJDUMP=/usr/sfw/bin/gobjdump
+.  endif
+.  if exists(/usr/bin/ld)
+CONFIGURE_ARGS+=       --without-gnu-ld --with-ld=/usr/bin/ld
+.  else
+CONFIGURE_ARGS+=       --without-gnu-ld --with-ld=/usr/ccs/bin/ld
+.  endif
+.  if exists(/usr/sfw/bin/gas)
+CONFIGURE_ARGS+=       --with-gnu-as --with-as=/usr/sfw/bin/gas
+.  elif exists(/usr/ccs/bin/as)
+CONFIGURE_ARGS+=       --without-gnu-as --with-as=/usr/ccs/bin/as
+.  else
+BUILDLINK_DEPMETHOD.binutils=  full
+.    include "../../devel/binutils/buildlink3.mk"
+CONFIGURE_ARGS+=       --with-gnu-as --with-as=${PREFIX}/bin/gas
+.  endif
+.endif
+
+.if ${OS_VARIANT} == "SmartOS"
+SUBST_CLASSES+=                ccs
+SUBST_STAGE.ccs=       pre-configure
+SUBST_FILES.ccs=       contrib/make_sunver.pl
+SUBST_SED.ccs=         -e 's,/usr/ccs/bin,/usr/bin,g'
+.endif
+
+pre-configure:
+       ${RUN} cd ${WRKSRC} && ${MKDIR} ${OBJDIR}
+
+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};
+
+CHECK_BUILTIN.zlib:=   yes
+.include "../../devel/zlib/builtin.mk"
+CHECK_BUILTIN.zlib:=   no
+.if !empty(USE_BUILTIN.zlib:M[yY][eE][sS])
+CONFIGURE_ARGS+=       --with-system-zlib
+.include "../../devel/zlib/buildlink3.mk"
+.else
+CONFIGURE_ARGS+=       --without-system-zlib
+.endif
+.include "../../mk/dlopen.buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/lang/gcc10/buildlink3.mk
diff -u /dev/null pkgsrc/lang/gcc10/buildlink3.mk:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/buildlink3.mk     Sun May 10 15:02:44 2020
@@ -0,0 +1,24 @@
+# $NetBSD: buildlink3.mk,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+BUILDLINK_TREE+=       gcc10
+
+.if !defined(GCC10_BUILDLINK3_MK)
+GCC10_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.gcc10+=  gcc10>=${_GCC_REQD}
+BUILDLINK_ABI_DEPENDS.gcc10+=  gcc10>=10.0
+BUILDLINK_PKGSRCDIR.gcc10=     ../../lang/gcc10
+BUILDLINK_DEPMETHOD.gcc10?=    build
+
+BUILDLINK_PASSTHRU_DIRS+=      ${BUILDLINK_PREFIX.gcc10}/gcc10
+
+BUILDLINK_FILES.gcc10=         # empty
+BUILDLINK_AUTO_VARS.gcc10=     no
+
+pkgbase := gcc10
+.include "../../mk/pkg-build-options.mk"
+.include "../../mk/dlopen.buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.endif
+
+BUILDLINK_TREE+=       -gcc10
Index: pkgsrc/lang/gcc10/distinfo
diff -u /dev/null pkgsrc/lang/gcc10/distinfo:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/distinfo  Sun May 10 15:02:44 2020
@@ -0,0 +1,24 @@
+$NetBSD: distinfo,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+SHA1 (gcc-10.1.0.tar.xz) = 1af8d963e4a74d05a8f2d0f795ea52d2b91f6c50
+RMD160 (gcc-10.1.0.tar.xz) = eb9c7a9c10fbe5b4ff84818b280248ab97d17769
+SHA512 (gcc-10.1.0.tar.xz) = 0cb2a74c793face751f42bc580960b00e2bfea785872a0a2155f1f1dbfaa248f9591b67f4322db0f096f8844aca9243bc02732bda106c3b6e43b02bb67eb3096
+Size (gcc-10.1.0.tar.xz) = 74591240 bytes
+SHA1 (isl-0.16.1.tar.bz2) = c5a2b201bf05229647e73203c0bf2d9679d4d21f
+RMD160 (isl-0.16.1.tar.bz2) = 5a99db3fe0d0a1f6bbac1ed4448f2403495c55b2
+SHA512 (isl-0.16.1.tar.bz2) = c188667a84dc5bdddb4ab7c35f89c91bf15a8171f4fcaf41301cf285fb7328846d9a367c096012fec4cc69d244f0bc9e95d84c09ec097394cd4093076f2a041b
+Size (isl-0.16.1.tar.bz2) = 1626446 bytes
+SHA1 (patch-contrib_download__prerequisites) = 9cdcde21ab174052911447d20762ddfd40aa8791
+SHA1 (patch-fixincludes_inclhack.def) = 7b00974d3f52a8364190a607f52a5d7e8a6db41a
+SHA1 (patch-gcc_Makefile.in) = c0f97c75ba1d37eae894141edd58bb36b734f651
+SHA1 (patch-gcc_config_aarch64_aarch64-builtins.c) = f4d8ab855d0755dfe533053cedde6940cb837ce0
+SHA1 (patch-gcc_configure) = 6a2d8eeeed2bf08c3c81291178e669dc91c913ce
+SHA1 (patch-gcc_ggc-common.c) = 3e325767922ab7d2079fdb9a3d6b6aa531a2fea5
+SHA1 (patch-gcc_lto_lto.c) = 7bd85ac8ade76a28c394f6fbe5d495f91824f79f
+SHA1 (patch-gcc_targhooks.c) = b28d8a9696d07bbfb00b7d8c55193ba99447ff1d
+SHA1 (patch-isl_configure) = 5523c76d95b229b3cd25461b4c2b7af24bf2534e
+SHA1 (patch-libffi_configure) = 22006b20d7f655e2455a7ad613d676703b6c1ccc
+SHA1 (patch-libffi_testsuite_libffi.call_float2.c) = 27b84a11378fb648dfaad0c70abedd77a0a1c1a8
+SHA1 (patch-libgcc_crtstuff.c) = a16d465039de00c195cf0694560140a9c38f3a25
+SHA1 (patch-libgfortran_io_io.h) = d44676239a7f45e42054d24bd5224f43c20055c0
+SHA1 (patch-libstdc++-v3_libsupc++_new__opa.cc) = 4183b00a5ee6e61524da4755c825a0c08fd01ed6
Index: pkgsrc/lang/gcc10/options.mk
diff -u /dev/null pkgsrc/lang/gcc10/options.mk:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/options.mk        Sun May 10 15:02:44 2020
@@ -0,0 +1,163 @@
+# $NetBSD: options.mk,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+PKG_OPTIONS_VAR=       PKG_OPTIONS.${GCC_PKGNAME}
+PKG_SUPPORTED_OPTIONS= nls gcc-inplace-math gcc-c++ gcc-fortran \
+                       gcc-go gcc-objc gcc-objc++ gcc-graphite \
+                       always-libgcc
+PKG_SUGGESTED_OPTIONS= gcc-c++ gcc-fortran gcc-objc gcc-objc++ \
+                       gcc-graphite gcc-inplace-math
+
+.if ${OPSYS} == "NetBSD"
+PKG_SUGGESTED_OPTIONS+=        nls
+.elif ${OPSYS} == "Linux"
+PKG_SUGGESTED_OPTIONS+=        nls
+.elif ${OPSYS} == "DragonFly"
+PKG_SUGGESTED_OPTIONS+=        nls
+.elif ${OPSYS} == "SunOS"
+PKG_SUGGESTED_OPTIONS+=        gcc-inplace-math always-libgcc
+.else
+.endif
+
+.include "../../mk/compiler.mk"
+.if empty(PKGSRC_COMPILER:Mgcc)
+PKG_SUGGESTED_OPTIONS+=                        always-libgcc
+.endif
+
+###
+### Determine if multilib is avalible.
+###
+MULTILIB_SUPPORTED?=   unknown
+.if !empty(MACHINE_PLATFORM:MLinux-*-x86_64)
+.  if exists(/usr/include/x86_64-linux-gnu/gnu)
+_GNU_INCLUDE_DIR=      /usr/include/x86_64-linux-gnu/gnu
+.  else
+_GNU_INCLUDE_DIR=      /usr/include/gnu
+.  endif
+.  if exists(${_GNU_INCLUDE_DIR}/stubs-64.h) && \
+     !exists(${_GNU_INCLUDE_DIR}/stubs-32.h)
+MULTILIB_SUPPORTED=    No
+.  else
+MULTILIB_SUPPORTED=    Yes
+.  endif
+.endif
+.if !empty(MULTILIB_SUPPORTED:M[Yy][Ee][Ss])
+PKG_SUPPORTED_OPTIONS+=        gcc-multilib
+PKG_SUGGESTED_OPTIONS+=        gcc-multilib
+.endif
+
+.include "../../mk/bsd.options.mk"
+
+###
+### Don't install libgcc if it's older than the system one
+###
+.if empty(PKG_OPTIONS:Malways-libgcc)
+
+.  for _libdir_ in ${_OPSYS_LIB_DIRS}
+.    if exists(${_libdir_})
+BASE_LIBGCC!=                  find ${_libdir_} -name libgcc_s.so
+BASE_LIBGCC_MATCH_STRING!=     ${ECHO} ${BASE_LIBGCC} ${GCC10_DIST_VERSION} | \
+                               ${AWK} -f ../../mk/scripts/larger_symbol_version.awk
+.      if ${BASE_LIBGCC_MATCH_STRING:Mnewer}
+DELETE_INSTALLED_LIBGCC=       yes
+.      endif
+.    endif
+.  endfor
+
+.  if ${DELETE_INSTALLED_LIBGCC:Uno}
+post-install:  delete-installed-libgcc
+
+.PHONY: delete-installed-libgcc
+delete-installed-libgcc:
+       ${FIND} ${DESTDIR} -name 'libgcc_s.so*' -delete
+
+.  endif
+
+.endif
+
+###
+### Native Language Support
+###
+.if !empty(PKG_OPTIONS:Mnls)
+USE_TOOLS+=            msgfmt
+CONFIGURE_ARGS+=       --enable-nls
+CONFIGURE_ARGS+=       --with-libiconv-prefix=${BUILDLINK_PREFIX.iconv}
+MAKE_ENV+=             ICONVPREFIX=${BUILDLINK_PREFIX.iconv}
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.else
+CONFIGURE_ARGS+=       --disable-nls
+.endif
+
+###
+### Multilib Support
+###
+.if (!empty(MULTILIB_SUPPORTED:M[Yy][Ee][Ss]) && \
+      empty(PKG_OPTIONS:Mgcc-multilib) ) || \
+    !empty(MULTILIB_SUPPORTED:M[Nn][Oo])
+CONFIGURE_ARGS+=       --disable-multilib
+.endif
+
+###
+### Build math libraries in place
+###
+.if !empty(PKG_OPTIONS:Mgcc-inplace-math)
+.  include "../../devel/gmp/inplace.mk"
+.  include "../../math/mpcomplex/inplace.mk"
+.  include "../../math/mpfr/inplace.mk"
+.else
+CONFIGURE_ARGS+=       --with-gmp=${BUILDLINK_PREFIX.gmp}
+CONFIGURE_ARGS+=       --with-mpc=${BUILDLINK_PREFIX.mpcomplex}
+CONFIGURE_ARGS+=       --with-mpfr=${BUILDLINK_PREFIX.mpfr}
+LIBS.SunOS+=           -lgmp
+.  include "../../devel/gmp/buildlink3.mk"
+.  include "../../math/mpcomplex/buildlink3.mk"
+.  include "../../math/mpfr/buildlink3.mk"
+.endif
+
+
+###
+### Graphite Support
+###
+.if !empty(PKG_OPTIONS:Mgcc-graphite)
+ISL16=                 isl-0.16.1
+SITES.${ISL16}.tar.bz2=        ${MASTER_SITE_GNU:=gcc/infrastructure/}
+DISTFILES+=            ${ISL16}.tar.bz2
+.endif
+
+###
+### Optional languages
+### Ada could be added although there is a bootstrapping issue.  See
+### ../gcc34-ada for guidance
+###
+
+.if !empty(PKG_OPTIONS:Mgcc-objc++)
+.  if empty(PKG_OPTIONS:Mgcc-c++)
+PKG_OPTIONS+=          gcc-c++
+.  endif
+.  if empty(PKG_OPTIONS:Mgcc-objc)
+PKG_OPTIONS+=          gcc-objc
+.  endif
+LANGS+=                        obj-c++
+.endif
+
+.if !empty(PKG_OPTIONS:Mgcc-objc)
+LANGS+=                        objc
+.endif
+
+.if !empty(PKG_OPTIONS:Mgcc-go)
+LANGS+=                        go
+.endif
+
+.if !empty(PKG_OPTIONS:Mgcc-fortran)
+LANGS+=                        fortran
+.endif
+
+.if !empty(PKG_OPTIONS:Mgcc-c++)
+LANGS+=                        c++
+USE_TOOLS+=            perl
+CONFIGURE_ARGS+=       --enable-__cxa_atexit
+CONFIGURE_ARGS+=       --with-gxx-include-dir=${GCC_PREFIX}/include/c++/
+.else
+CONFIGURE_ARGS+=       --disable-build-with-cxx
+CONFIGURE_ARGS+=       --disable-build-poststage1-with-cxx
+.endif
Index: pkgsrc/lang/gcc10/version.mk
diff -u /dev/null pkgsrc/lang/gcc10/version.mk:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/version.mk        Sun May 10 15:02:44 2020
@@ -0,0 +1,2 @@
+# $NetBSD: version.mk,v 1.1 2020/05/10 15:02:44 maya Exp $
+GCC10_DIST_VERSION:=   10.1.0

Index: pkgsrc/lang/gcc10/patches/patch-contrib_download__prerequisites
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-contrib_download__prerequisites:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-contrib_download__prerequisites     Sun May 10 15:02:44 2020
@@ -0,0 +1,17 @@
+$NetBSD: patch-contrib_download__prerequisites,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+Non-portable test
+
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90142
+
+--- contrib/download_prerequisites.orig        2017-04-11 16:34:07.000000000 +0000
++++ contrib/download_prerequisites
+@@ -122,7 +122,7 @@ md5_check() {
+   md5_checksum_output=$(md5 -r "${file_to_check}")
+   # Grab the text before the first space
+   md5_checksum_detected="${md5_checksum_output%% *}"
+-  [ "${md5_checksum_expected}" == "${md5_checksum_detected}" ] \
++  [ "${md5_checksum_expected}" = "${md5_checksum_detected}" ] \
+     || die "Cannot verify integrity of possibly corrupted file ${file_to_check}"
+   echo "${file_to_check}: OK"
+ }
Index: pkgsrc/lang/gcc10/patches/patch-fixincludes_inclhack.def
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-fixincludes_inclhack.def:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-fixincludes_inclhack.def    Sun May 10 15:02:44 2020
@@ -0,0 +1,36 @@
+$NetBSD: patch-fixincludes_inclhack.def,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+A workaround for Catalina SDK bug from
+https://github.com/Homebrew/homebrew-core/pull/44762
+
+--- fixincludes/inclhack.def.orig      2020-03-04 08:29:59.000000000 +0000
++++ fixincludes/inclhack.def
+@@ -1269,6 +1269,28 @@ fix = {
+ };
+ 
+ /*
++ *  macOS 10.15 <Availability.h> does not define __OSX_AVAILABLE_STARTING on
++ *  non-clang compilers.
++ */
++fix = {
++    hackname  = darwin_availability;
++    mach      = "*-*-darwin*";
++    files     = Availability.h;
++    select    = "#endif /\\* __OSX_AVAILABLE_STARTING \\*/";
++    c_fix     = format;
++    c_fix_arg = <<- _EOFix_
++      #endif /* __OSX_AVAILABLE_STARTING */
++      #ifndef __OSX_AVAILABLE_STARTING
++        #define __OSX_AVAILABLE_STARTING(_osx, _ios)
++        #define __OSX_AVAILABLE_BUT_DEPRECATED(_osxIntro, _osxDep, _iosIntro, _iosDep)
++        #define __OSX_AVAILABLE_BUT_DEPRECATED_MSG(_osxIntro, _osxDep, _iosIntro, _iosDep, _msg)
++      #endif
++      _EOFix_;
++
++    test_text = "#endif /* __OSX_AVAILABLE_STARTING */";
++};
++
++/*
+  *  macOS 10.12 <AvailabilityInternal.h> uses __attribute__((availability))
+  *  unconditionally.
+  */
Index: pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-gcc_Makefile.in     Sun May 10 15:02:44 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-gcc_Makefile.in,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+Add gcc libdir to a programs rpath so that _this gcc's_ support libraries
+are found.
+
+--- gcc/Makefile.in.orig       2017-04-18 18:10:27.000000000 +0000
++++ gcc/Makefile.in
+@@ -2112,6 +2112,7 @@ prefix.o: $(BASEVER)
+ # Language-independent files.
+ 
+ DRIVER_DEFINES = \
++  -DLINK_LIBGCC_SPEC="\"%D $(LINKER_RPATH_FLAG) $(prefix)//lib/%M $(LINKER_RPATH_FLAG) $(libdir)/%M \"" \
+   -DSTANDARD_STARTFILE_PREFIX=\"$(unlibsubdir)/\" \
+   -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc/\" \
+   -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \
Index: pkgsrc/lang/gcc10/patches/patch-gcc_config_aarch64_aarch64-builtins.c
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-gcc_config_aarch64_aarch64-builtins.c:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-gcc_config_aarch64_aarch64-builtins.c       Sun May 10 15:02:44 2020
@@ -0,0 +1,17 @@
+$NetBSD: patch-gcc_config_aarch64_aarch64-builtins.c,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+initialise subtarget builtins so cabs*() are renamed.
+
+--- gcc/config/aarch64/aarch64-builtins.c.orig 2017-01-20 21:03:41.000000000 +0000
++++ gcc/config/aarch64/aarch64-builtins.c      2018-11-10 00:44:41.905576216 +0000
+@@ -1303,6 +1303,10 @@ aarch64_general_init_builtins (void)
+ 
+   if (TARGET_MEMTAG)
+     aarch64_init_memtag_builtins ();
++
++#ifdef SUBTARGET_INIT_BUILTINS
++  SUBTARGET_INIT_BUILTINS;
++#endif
+ }
+ 
+ /* Implement TARGET_BUILTIN_DECL for the AARCH64_BUILTIN_GENERAL group.  */
Index: pkgsrc/lang/gcc10/patches/patch-gcc_configure
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-gcc_configure:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-gcc_configure       Sun May 10 15:02:44 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-gcc_configure,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90143
+
+--- gcc/configure.orig 2015-09-30 23:06:11.000000000 +0000
++++ gcc/configure
+@@ -28321,7 +28321,7 @@ case "$target" in
+       gcc_cv_target_dl_iterate_phdr=no
+     fi
+     ;;
+-  *-*-dragonfly* | *-*-freebsd*)
++  *-*-dragonfly* | *-*-freebsd* | *-*-netbsd* )
+     if grep dl_iterate_phdr $target_header_dir/sys/link_elf.h > /dev/null 2>&1; then
+       gcc_cv_target_dl_iterate_phdr=yes
+     else
Index: pkgsrc/lang/gcc10/patches/patch-gcc_ggc-common.c
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-gcc_ggc-common.c:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-gcc_ggc-common.c    Sun May 10 15:02:44 2020
@@ -0,0 +1,51 @@
+$NetBSD: patch-gcc_ggc-common.c,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+--- gcc/ggc-common.c.orig      2014-12-10 03:45:40.000000000 +0000
++++ gcc/ggc-common.c
+@@ -591,6 +591,8 @@ gt_pch_restore (FILE *f)
+   size_t i;
+   struct mmap_info mmi;
+   int result;
++  struct line_maps * old_line_table = line_table;
++  location_t old_input_loc = input_location;
+ 
+   /* Delete any deletable objects.  This makes ggc_pch_read much
+      faster, as it can be sure that no GCable objects remain other
+@@ -603,7 +605,7 @@ gt_pch_restore (FILE *f)
+   for (rt = gt_pch_scalar_rtab; *rt; rt++)
+     for (rti = *rt; rti->base != NULL; rti++)
+       if (fread (rti->base, rti->stride, 1, f) != 1)
+-      fatal_error (input_location, "cannot read PCH file: %m");
++      { line_table = old_line_table; input_location = old_input_loc; fatal_error (input_location, "cannot read PCH file: %m"); }
+ 
+   /* Read in all the global pointers, in 6 easy loops.  */
+   for (rt = gt_ggc_rtab; *rt; rt++)
+@@ -611,23 +613,23 @@ gt_pch_restore (FILE *f)
+       for (i = 0; i < rti->nelt; i++)
+       if (fread ((char *)rti->base + rti->stride * i,
+                  sizeof (void *), 1, f) != 1)
+-        fatal_error (input_location, "cannot read PCH file: %m");
++        { line_table = old_line_table; input_location = old_input_loc; fatal_error (input_location, "cannot read PCH file: %m"); }
+ 
+   if (fread (&mmi, sizeof (mmi), 1, f) != 1)
+-    fatal_error (input_location, "cannot read PCH file: %m");
++    { line_table = old_line_table; input_location = old_input_loc; fatal_error (input_location, "cannot read PCH file: %m"); }
+ 
+   result = host_hooks.gt_pch_use_address (mmi.preferred_base, mmi.size,
+                                         fileno (f), mmi.offset);
+   if (result < 0)
+-    fatal_error (input_location, "had to relocate PCH");
++    { line_table = old_line_table; input_location = old_input_loc; fatal_error (input_location, "had to relocate PCH"); }
+   if (result == 0)
+     {
+       if (fseek (f, mmi.offset, SEEK_SET) != 0
+         || fread (mmi.preferred_base, mmi.size, 1, f) != 1)
+-      fatal_error (input_location, "cannot read PCH file: %m");
++      { line_table = old_line_table; input_location = old_input_loc; fatal_error (input_location, "cannot read PCH file: %m"); }
+     }
+   else if (fseek (f, mmi.offset + mmi.size, SEEK_SET) != 0)
+-    fatal_error (input_location, "cannot read PCH file: %m");
++    { line_table = old_line_table; input_location = old_input_loc; fatal_error (input_location, "cannot read PCH file: %m"); }
+ 
+   ggc_pch_read (f, mmi.preferred_base);
+ 
Index: pkgsrc/lang/gcc10/patches/patch-gcc_lto_lto.c
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-gcc_lto_lto.c:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-gcc_lto_lto.c       Sun May 10 15:02:44 2020
@@ -0,0 +1,19 @@
+$NetBSD: patch-gcc_lto_lto.c,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+Better fallback for netbsd<8 lacking WALLSIG.
+
+--- gcc/lto/lto.c.orig 2018-01-03 21:42:12.000000000 +0000
++++ gcc/lto/lto.c
+@@ -2321,7 +2321,11 @@ wait_for_child ()
+   do
+     {
+ #ifndef WCONTINUED
+-#define WCONTINUED 0
++#  ifdef WALLSIG
++#    define WCONTINUED WALLSIG
++#  else
++#    define WCONTINUED 0
++#  endif
+ #endif
+       int w = waitpid (0, &status, WUNTRACED | WCONTINUED);
+       if (w == -1)
Index: pkgsrc/lang/gcc10/patches/patch-gcc_targhooks.c
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-gcc_targhooks.c:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-gcc_targhooks.c     Sun May 10 15:02:44 2020
@@ -0,0 +1,17 @@
+$NetBSD: patch-gcc_targhooks.c,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+PR pkg/53436
+netbsd can't handle hidden reference to stack_chk_fail_local.
+(note: this code is only happening if targeting i386)
+
+--- gcc/targhooks.c.orig       2018-01-13 18:00:59.000000000 +0000
++++ gcc/targhooks.c
+@@ -919,7 +919,7 @@ default_external_stack_protect_fail (voi
+ tree
+ default_hidden_stack_protect_fail (void)
+ {
+-#ifndef HAVE_GAS_HIDDEN
++#if !defined(HAVE_GAS_HIDDEN) || defined(__NetBSD__) || defined(__sun)
+   return default_external_stack_protect_fail ();
+ #else
+   tree t = stack_chk_fail_decl;
Index: pkgsrc/lang/gcc10/patches/patch-isl_configure
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-isl_configure:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-isl_configure       Sun May 10 15:02:44 2020
@@ -0,0 +1,26 @@
+$NetBSD: patch-isl_configure,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+Make test portable
+
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90144
+
+--- isl/configure.orig 2016-01-14 17:26:10.000000000 +0000
++++ isl/configure
+@@ -17561,7 +17561,7 @@ else
+ fi
+ 
+ 
+- if test "x$with_int" == "ximath-32"; then
++ if test "x$with_int" = "ximath-32"; then
+   SMALL_INT_OPT_TRUE=
+   SMALL_INT_OPT_FALSE='#'
+ else
+@@ -17569,7 +17569,7 @@ else
+   SMALL_INT_OPT_FALSE=
+ fi
+ 
+-if test "x$with_int" == "ximath-32"; then :
++if test "x$with_int" = "ximath-32"; then :
+ 
+ 
+ $as_echo "#define USE_SMALL_INT_OPT /**/" >>confdefs.h
Index: pkgsrc/lang/gcc10/patches/patch-libffi_configure
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-libffi_configure:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-libffi_configure    Sun May 10 15:02:44 2020
@@ -0,0 +1,16 @@
+$NetBSD: patch-libffi_configure,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90146
+https://github.com/libffi/libffi/issues/485
+
+--- libffi/configure.orig      2013-06-01 17:03:49.000000000 +0000
++++ libffi/configure
+@@ -12689,7 +12689,7 @@ case "$target" in
+ $as_echo "#define FFI_EXEC_TRAMPOLINE_TABLE 1" >>confdefs.h
+ 
+      ;;
+-     *-apple-darwin1* | *-*-freebsd* | *-*-kfreebsd* | *-*-openbsd* | *-pc-solaris*)
++     *-apple-darwin1* | *-*-freebsd* | *-*-kfreebsd* | *-*-netbsd* | *-*-openbsd* | *-pc-solaris*)
+ 
+ $as_echo "#define FFI_MMAP_EXEC_WRIT 1" >>confdefs.h
+ 
Index: pkgsrc/lang/gcc10/patches/patch-libffi_testsuite_libffi.call_float2.c
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-libffi_testsuite_libffi.call_float2.c:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-libffi_testsuite_libffi.call_float2.c       Sun May 10 15:02:44 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-libffi_testsuite_libffi.call_float2.c,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90146
+
+--- libffi/testsuite/libffi.call/float2.c.orig 2013-06-01 17:08:18.000000000 +0000
++++ libffi/testsuite/libffi.call/float2.c
+@@ -45,7 +45,7 @@ int main (void)
+   /* This is ifdef'd out for now. long double support under SunOS/gcc
+      is pretty much non-existent.  You'll get the odd bus error in library
+      routines like printf().  */
+-  printf ("%Lf, %Lf, %Lf, %Lf\n", ld, ldblit(f), ld - ldblit(f), LDBL_EPSILON);
++  printf ("%Lf, %Lf, %Lf, %Lf\n", (long double)ld, (long double)ldblit(f), (long double)(ld - ldblit(f)), (long double)LDBL_EPSILON);
+ #endif
+ 
+   /* These are not always the same!! Check for a reasonable delta */
Index: pkgsrc/lang/gcc10/patches/patch-libgcc_crtstuff.c
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-libgcc_crtstuff.c:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-libgcc_crtstuff.c   Sun May 10 15:02:44 2020
@@ -0,0 +1,15 @@
+$NetBSD: patch-libgcc_crtstuff.c,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90147
+
+--- libgcc/crtstuff.c.orig     2017-01-01 12:07:43.000000000 +0000
++++ libgcc/crtstuff.c
+@@ -81,7 +81,7 @@ call_ ## FUNC (void)                                 \
+ #endif
+ 
+ #if defined(TARGET_DL_ITERATE_PHDR) && \
+-   (defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__))
++   (defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__))
+ #define BSD_DL_ITERATE_PHDR_AVAILABLE
+ #endif
+  
Index: pkgsrc/lang/gcc10/patches/patch-libgfortran_io_io.h
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-libgfortran_io_io.h:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-libgfortran_io_io.h Sun May 10 15:02:44 2020
@@ -0,0 +1,18 @@
+$NetBSD: patch-libgfortran_io_io.h,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+Don't declare old_locale* an internal_proto to avoid linking problems
+
+--- libgfortran/io/io.h.orig   2018-01-07 10:17:52.000000000 +0000
++++ libgfortran/io/io.h
+@@ -57,11 +57,8 @@ extern locale_t c_locale;
+ internal_proto(c_locale);
+ #else
+ extern char* old_locale;
+-internal_proto(old_locale);
+ extern int old_locale_ctr;
+-internal_proto(old_locale_ctr);
+ extern __gthread_mutex_t old_locale_lock;
+-internal_proto(old_locale_lock);
+ #endif
+ 
+ 
Index: pkgsrc/lang/gcc10/patches/patch-libstdc++-v3_libsupc++_new__opa.cc
diff -u /dev/null pkgsrc/lang/gcc10/patches/patch-libstdc++-v3_libsupc++_new__opa.cc:1.1
--- /dev/null   Sun May 10 15:02:44 2020
+++ pkgsrc/lang/gcc10/patches/patch-libstdc++-v3_libsupc++_new__opa.cc  Sun May 10 15:02:44 2020
@@ -0,0 +1,17 @@
+$NetBSD: patch-libstdc++-v3_libsupc++_new__opa.cc,v 1.1 2020/05/10 15:02:44 maya Exp $
+
+Ensure we can find SunOS std::aligned_alloc if using it.
+
+--- libstdc++-v3/libsupc++/new_opa.cc.orig     2020-03-04 08:30:03.000000000 +0000
++++ libstdc++-v3/libsupc++/new_opa.cc
+@@ -57,6 +57,10 @@ extern "C"
+ }
+ #endif
+ 
++#if defined(__sun) && _GLIBCXX_HAVE_ALIGNED_ALLOC
++using std::aligned_alloc;
++#endif
++
+ namespace __gnu_cxx {
+ #if _GLIBCXX_HAVE_ALIGNED_ALLOC
+ using ::aligned_alloc;



Home | Main Index | Thread Index | Old Index