pkgsrc-Changes archive

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

Re: CVS commit: pkgsrc/mk

This seems to have broken compilation on NetBSD 5.1:

root@pkgsrc-nb:/usr/pkgsrc/pkgtools/pkglint> make
make: "../../mk/compiler/../../mk/compiler/" line 257: Malformed
conditional (!empty(_NEED_GCC2:M[nN][oO]) &&
!empty(_NEED_GCC3:M[nN][oO]) &&  !empty(_NEED_GCC34:M[nN][oO]) &&
!empty(_NEED_GCC44:M[nN][oO]) &&  !empty(_NEED_GCC45:M[nN][oO]) &&
!empty(_NEED_GCC46:M[nN][oO]) &&  !empty(_NEED_GCC47:M[nN][oO]) &&
make: Fatal errors encountered -- cannot continue

make: stopped in /usr/pkgsrc/pkgtools/pkglint

On Sun, Jul 8, 2012 at 9:57 PM, John Marino <> wrote:
> Module Name:    pkgsrc
> Committed By:   marino
> Date:           Sun Jul  8 19:57:10 UTC 2012
> Modified Files:
>         pkgsrc/mk:
>         pkgsrc/mk/compiler:
>         pkgsrc/mk/wrapper:
> Log Message:
> Add support for USE_LANGUAGES+= ada
> All recent packages featuring Ada code have a hard dependency on the
> lang/gnat-aux compiler package.  The valid values for USE_LANGUAGES
> are c, c99, c++, fortran, fortran77, java, objc, so specifying a
> specific compiler was necessary up into now.
> One problem with lang/gnat-aux is that it is installed at ${LOCALBASE}
> where the lang/gccXX compilers are installed at ${LOCALBASE}/gccXX.
> The latter compilers have no possibility of sharing conflicting files
> unlike lang/gnat-aux.  Rather than fundamentally update the GCC 4.6-based
> lang/gnat-aux to avoid these conflicts, a new Ada-capable compiler
> based on GCC 4.7 was created with the intent of being supported by
> mk/ and mk/compiler/
> The Ada packages will be effectively migrated from lang/gnat-aux to the
> new lang/gcc-aux compiler, but lang/gcc-aux will remain as a standalone
> package as it is the only GCC 4.6-based compiler that builds on
> DragonFly and serves it as a world and kernel compile option.
> In addition to the current language wrappers, lang/gcc-aux adds
> wrappers for "ada" (unique to gcc-aux, hardlinked to gcc driver),
> and the gnat, gnatmake, gnatbind, gnatlink, gnatchop, gnatprep,
> and gnatls programs.  Supporting all of these allows the wrapper
> system to be used with Ada packages; currently wrappers are mostly
> disabled on them.
> The lang/gcc47 implicitly adds support for the "objc-c++" language by
> adding it to the USE_LANGUAGES list, but it wasn't really supported.
> An attempt was made to better support objc-c++, but this new enumeration
> probably still needs work or needs to be removed completely.
> Logic for Ada support:
> 1) All lang/gccXX compilers have version numbers ranging from 2.8.1 to 9.
> 2) lang/gcc-aux uses the release date as its version number in the form of
>    YYYYMMDD with a minimum value of 20120614, so there is no version
>    overlap.
> 3) When at least one element of USE_LANGUAGES is "ada", the value of
>    20120614 is added to the set of GCC_REQD which selects lang/gcc-aux.
> 4) The _NEED_NEWER_GCC check is disabled.  It fails and isn't relevant;
>    unless a package sets GCC_REQD over 20120614, the only way to select
>    lang/gcc-aux is to specify the Ada language and only one compiler
>    known to can support it.
> To generate a diff of this commit:
> cvs rdiff -u -r1.76 -r1.77 pkgsrc/mk/
> cvs rdiff -u -r1.121 -r1.122 pkgsrc/mk/compiler/
> cvs rdiff -u -r1.86 -r1.87 pkgsrc/mk/wrapper/
> Please note that diffs are not public domain; they are subject to the
> copyright notices on the relevant files.

Joern Clausen

Home | Main Index | Thread Index | Old Index