diff options
author | grant <grant@pkgsrc.org> | 2004-11-20 04:37:08 +0000 |
---|---|---|
committer | grant <grant@pkgsrc.org> | 2004-11-20 04:37:08 +0000 |
commit | 919cb8bddb93f80cac63f373c45581bfe44775a7 (patch) | |
tree | 6d158b2d9ff8e8537979aced96e3ca9facb901ec /mk/compiler/ccc.mk | |
parent | 77e4975de46fe771ca89c38d5843ee5774836416 (diff) | |
download | pkgsrc-919cb8bddb93f80cac63f373c45581bfe44775a7.tar.gz |
add framework support for Tru64 and the Compaq C compiler.
patches provided by Tobias Nygren <tnn at netilium dot org> with
minor changes by me.
Diffstat (limited to 'mk/compiler/ccc.mk')
-rw-r--r-- | mk/compiler/ccc.mk | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/mk/compiler/ccc.mk b/mk/compiler/ccc.mk new file mode 100644 index 00000000000..407cf7521e9 --- /dev/null +++ b/mk/compiler/ccc.mk @@ -0,0 +1,73 @@ +# $NetBSD: ccc.mk,v 1.1 2004/11/20 04:37:08 grant Exp $ + +.if !defined(COMPILER_CCC_MK) +COMPILER_CCC_MK= defined + +.include "../../mk/bsd.prefs.mk" + +# LANGUAGES.<compiler> is the list of supported languages by the compiler. +# _LANGUAGES.<compiler> is ${LANGUAGES.<compiler>} restricted to the ones +# requested by the package in USE_LANGUAGES. +# + +LANGUAGES.ccc= c +.if exists(/usr/lib/cmplrs/cxx) +LANGUAGES.ccc+= c++ +.endif +_LANGUAGES.ccc= # empty +.for _lang_ in ${USE_LANGUAGES} +_LANGUAGES.ccc+= ${LANGUAGES.ccc:M${_lang_}} +.endfor + +_CCC_DIR= ${WRKDIR}/.ccc +_CCC_LINKS= # empty +.if exists(/usr/bin/cc) +_CCC_CC= ${_CCC_DIR}/cc +_CCC_LINKS+= _CCC_CC +PKG_CC= ${_CCC_CC} +CC= ${PKG_CC:T} +.endif + +.if exists(/usr/bin/cxx) +_CCC_CXX= ${_CCC_DIR}/cxx +_CCC_LINKS+= _CCC_CXX +PKG_CXX= ${_CCC_CXX} +CXX= ${PKG_CXX:T} +.endif + +.if exists(/usr/bin/cc) +CC_VERSION_STRING!= /usr/bin/cc -V | awk '{print $0; exit(0);}' +CC_VERSION!= /usr/bin/cc -V | awk '{print "CCC-"$3; exit(0);}' +.else +CC_VERSION_STRING?= ${CC_VERSION} +CC_VERSION?= CCC +.endif + +# CCC passes flags to the linker using "-Wl,". +_COMPILER_LD_FLAG= -Wl, + +# CCC passes rpath directives to the linker using "-rpath". +_LINKER_RPATH_FLAG= -rpath + +# CCC passes rpath directives to the linker using "-rpath" tailing ",". +_COMPILER_RPATH_FLAG= ${_COMPILER_LD_FLAG}${_LINKER_RPATH_FLAG}, + +# Most packages assume ieee floats, make that the default. +CFLAGS+=-ieee +CXXFLAGS+=-ieee + +# Create compiler driver scripts in ${WRKDIR}. +.for _target_ in ${_CCC_LINKS} +. if !target(${${_target_}}) +override-tools: ${${_target_}} +${${_target_}}: + ${_PKG_SILENT}${_PKG_DEBUG}${MKDIR} ${.TARGET:H} + ${_PKG_SILENT}${_PKG_DEBUG} \ + (${ECHO} '#!${TOOLS_SHELL}'; \ + ${ECHO} 'exec /usr/bin/${${_target_}:T} "$$@"'; \ + ) > ${.TARGET} + ${_PKG_SILENT}${_PKG_DEBUG}${CHMOD} +x ${.TARGET} +. endif +.endfor + +.endif # COMPILER_CCC_MK |