diff options
Diffstat (limited to 'Mk/Uses/ada.mk')
-rw-r--r-- | Mk/Uses/ada.mk | 48 |
1 files changed, 39 insertions, 9 deletions
diff --git a/Mk/Uses/ada.mk b/Mk/Uses/ada.mk index e695e3c64a2f..98badb9f81f7 100644 --- a/Mk/Uses/ada.mk +++ b/Mk/Uses/ada.mk @@ -2,27 +2,57 @@ # To change default compiler, define ADA_DEFAULT in make.conf # # Feature: ada -# Usage: USES=ada -# Valid ARGS: run +# Usage: USES=ada:ARGS +# Valid ARGS: [<version>],[run] +# +# version The chooseable versions are 6 (default), 12 or 13 +# +# run Add run depends # # MAINTAINER: ports@FreeBSD.org .if !defined(_INCLUDE_USES_ADA_MK) _INCLUDE_USES_ADA_MK= yes -DEPRECATED= Depends on expired lang/gcc6-aux -EXPIRATION_DATE=2022-06-30 +_ADA_SUPPORTED= 6 12 13 + +_ada_version= # +. for _ver in ${_ADA_SUPPORTED:O:u} +. if ${ada_ARGS:M${_ver}} +. if empty(_ada_version) +_ada_version= ${_ver} +. else +IGNORE= Incorrect USES=ada:${ada_ARGS} - multiple versions defined +. endif +. endif +. endfor -CC= ada +. if empty(_ada_version) +_ada_version= 12 # default +. endif + +. if ${_ada_version} == 6 +_ADAPATH= ${LOCALBASE}/gcc6-aux/bin +_ADAPORT= lang/gcc6-aux +_BINDEP= ${_ADAPATH}/ada +CC= ada +. else +_ADAPATH= ${LOCALBASE}/gnat${_ada_version}/bin +_ADAPORT= lang/gnat${_ada_version} +_BINDEP= ${_ADAPATH}/gnat +GNATMAKE= gnatmake -f -u +CC= gcc +BINARY_ALIAS+= ada=${_ADAPATH}/gcc +. endif . if ${ada_ARGS:Mrun} -RUN_DEPENDS+= ${LOCALBASE}/gcc6-aux/bin/ada:lang/gcc6-aux +RUN_DEPENDS+= ${_BINDEP}:${_ADAPORT} . endif -BUILD_DEPENDS+= ${LOCALBASE}/gcc6-aux/bin/ada:lang/gcc6-aux -MAKE_ENV+= PATH=${LOCALBASE}/gcc6-aux/bin:${PATH} \ +BUILD_DEPENDS+= ${_BINDEP}:${_ADAPORT} +MAKE_ENV+= PATH=${_ADAPATH}:${PATH} \ ADA_PROJECT_PATH=${LOCALBASE}/lib/gnat -CONFIGURE_ENV+= PATH=${LOCALBASE}/gcc6-aux/bin:${PATH} \ +CONFIGURE_ENV+= PATH=${_ADAPATH}:${PATH} \ ADA_PROJECT_PATH=${LOCALBASE}/lib/gnat .endif |