pkgsrc/lang/gcc-aux/options.mk
marino 7a9cfb7252 lang/gcc-aux: various fixes, remove NLS option
This update is a by-product of working on new package, gcc5-aux, and
applying those concepts here.  Several changes were made, including:

- Version date was not updated when version changed from 4.9.0 => 4.9.2
  (revbump occurred instead).  Remove revbump and fix date
- Remove DragonFly-i386 from permitted platforms.  This platform will be
  completely unsupported when DragonFly 4.2 is released (very soon)
- Remove references to OpenBSD and MirBSD.  Support was never activated
  due to technical issues and likely will not happen.
- Reindent (cosmetic)
- It is seemingly impossible to work around NetBSD's binary compatibility
  scheme (e.g. __socket30, __nanosleep50).  These weak symbols are simply
  ignored by Ada's pragma Import and no c-tricks seem to avoid conflicts.
  (Why can't NetBSD use symbol versioning???)  Anyway, having NetBSD-
  specific copies of source files to handle a couple of symbol differences
  is simply not sustainable, so move to a new scheme where these are
  replaced on the fly.  By the way, this problem basically means that I
  cannot fix GNAT upstream, even if I found somebody to sponsor getting
  the NUMEROUS non-ada patches upstream.  GCC devs would laugh at me if I
  describe why I want to introduce so many new but similar files to
  support NetBSD.  So it's very likely never going to happen.
- Disable libitm and libcilkrts by default.  They are out of scope and not
  worth building / fixing.
- Apparently NLS support doesn't build on NetBSD 6.1?  Nobody reported
  this to me, but there are linking issues.  I'm just removing the option
  (which was on by default) until further notice.  Having NLS support on
  by default was questionable anyway.
- Remove exetim mods, this was wrong (for all BSD platforms)
- Android support leaked in, but it's not used here
- The diff-ada file dropped about 150k in size, and could have been more
  had the android osinte file been masked too.
2015-06-14 19:46:51 +00:00

127 lines
3.6 KiB
Makefile

# $NetBSD: options.mk,v 1.5 2015/06/14 19:46:51 marino Exp $
# NLS is failing, might be linking with wrong iconv lib.
# Disable option until further notice
PKG_OPTIONS_VAR= PKG_OPTIONS.gcc-aux
PKG_SUPPORTED_OPTIONS= fortran objc testsuite static bootstrap #nls
PKG_SUGGESTED_OPTIONS= fortran objc #nls
.include "../../mk/bsd.options.mk"
# Bootstrap is essentially a maintainer option and it will ignore
# all other options because it is intent on building a bootstrap compiler.
#############################
## ADD LANGUAGE: Fortran ##
#############################
.if empty(PKG_OPTIONS:Mfortran) || !empty(PKG_OPTIONS:Mbootstrap)
EXTRA_CONFARGS+= --disable-libquadmath
.else
LANGS+= fortran
APPLY_DIFFS+= fortran
.if ${OPSYS} == NetBSD
EXTRA_CONFARGS+= --disable-libquadmath
.else
EXTRA_CONFARGS+= --enable-libquadmath
.endif
.endif
#################################
## ADD LANGUAGE: Objective-C ##
#################################
.if !empty(PKG_OPTIONS:Mobjc) && empty(PKG_OPTIONS:Mbootstrap)
LANGS+= objc
.endif
#########################
## TESTSUITE SUPPORT ##
#########################
.if !empty(PKG_OPTIONS:Mtestsuite) && empty(PKG_OPTIONS:Mbootstrap)
BUILD_DEPENDS+= dejagnu>=1.4:../../devel/dejagnu
APPLY_DIFFS+= ada-testsuite
APPLY_DIFFS+= cxx-testsuite
APPLY_DIFFS+= gcc-testsuite
APPLY_DIFFS+= fortran-testsuite
.endif
#################################
## NATIONAL LANGUAGE SUPPORT ##
#################################
.if !empty(PKG_OPTIONS:Mnls) && empty(PKG_OPTIONS:Mbootstrap)
USE_BUILTIN.iconv= no
USE_TOOLS+= msgfmt
EXTRA_CONFARGS+= --enable-nls
EXTRA_CONFARGS+= --with-libiconv-prefix=${BUILDLINK_PREFIX.iconv}
MY_MAKE_ENV+= ICONVPREFIX=${BUILDLINK_PREFIX.iconv}
.include "../../converters/libiconv/buildlink3.mk"
.include "../../devel/gettext-lib/buildlink3.mk"
.else
EXTRA_CONFARGS+= --disable-nls
.endif
###############################
## STATICALLY BUILT OPTION ##
###############################
.if !empty(PKG_OPTIONS:Mstatic)
STATIC_BUILD = yes
.endif
.if defined(STATIC_BUILD) && empty(PKG_OPTIONS:Mbootstrap)
. if ${OPSYS} == SunOS
PKG_FAIL_REASON+= SunOS does not support static builds
. else
EXTRA_CONFARGS+= --with-stage1-ldflags=-static
. endif
.endif
#################################
## BOOTSTRAP COMPILER OPTION ##
#################################
# Solaris does not support static linking system libraries, so bootstraps
# on SunOS require gmp&co to be built with gcc. Also, OpenBSD x86-64
# fails configuration during the linking of -lmpc -lmpfr -lgmp in a contest;
# it complains of missing references in libm. These libraries are built by
# a different compiler (the base) so perhaps that's the problem. Building
# gmp&co in the tree allows the configure step to succeed on OpenBSD.
.if ${OPSYS} == OpenBSD || ${OPSYS} == MirBSD || \
(${OPSYS} == SunOS && !empty(PKG_OPTIONS:Mbootstrap))
.include "../../devel/gmp/inplace.mk"
.include "../../math/mpcomplex/inplace.mk"
.include "../../math/mpfr/inplace.mk"
.else
EXTRA_CONFARGS+= --with-gmp=${BUILDLINK_PREFIX.gmp}
EXTRA_CONFARGS+= --with-mpfr=${BUILDLINK_PREFIX.mpfr}
EXTRA_CONFARGS+= --with-mpc=${BUILDLINK_PREFIX.mpcomplex}
.include "../../devel/gmp/buildlink3.mk"
.include "../../math/mpfr/buildlink3.mk"
.include "../../math/mpcomplex/buildlink3.mk"
.endif
.if !empty(PKG_OPTIONS:Mbootstrap)
EXTRA_CONFARGS+= --disable-shared --disable-lto
EXTRA_CONFARGS+= --disable-libstdcxx-pch
. if ${OPSYS} != SunOS
EXTRA_CONFARGS+= --with-stage1-ldflags=-static
EXTRA_CONFARGS+= --with-boot-ldflags=-static
EXTRA_CONFARGS+= --with-system-zlib
. endif
.else
EXTRA_CONFARGS+= --enable-shared
EXTRA_CONFARGS+= --disable-bootstrap
.endif