summaryrefslogtreecommitdiff
path: root/lang
diff options
context:
space:
mode:
authorsbd <sbd>2012-09-15 10:30:39 +0000
committersbd <sbd>2012-09-15 10:30:39 +0000
commit0b3f2954a31844dd721ad9c444693ed48239ae47 (patch)
treef85586f752e99ef0186c6266874c9a36f3ac664d /lang
parent0b0d0b3573717c306eb20971d31231a8cd8d2de7 (diff)
downloadpkgsrc-0b3f2954a31844dd721ad9c444693ed48239ae47.tar.gz
Add a buildlink3.mk for use with USE_PKGSRC_GCC_RUNTIME.
XXX: Using %M requires patched version of gcc (e.g. lang/gcc47) Base on work by Jonathan Perkin.
Diffstat (limited to 'lang')
-rw-r--r--lang/gcc47-libs/buildlink3.mk39
1 files changed, 39 insertions, 0 deletions
diff --git a/lang/gcc47-libs/buildlink3.mk b/lang/gcc47-libs/buildlink3.mk
new file mode 100644
index 00000000000..4e3b527f06e
--- /dev/null
+++ b/lang/gcc47-libs/buildlink3.mk
@@ -0,0 +1,39 @@
+# $NetBSD: buildlink3.mk,v 1.1 2012/09/15 10:30:39 sbd Exp $
+
+BUILDLINK_TREE+= gcc47-libs
+
+.if !defined(GCC47_LIBS_BUILDLINK3_MK) && !defined(GCC47_BUILDLINK3_MK)
+GCC47_LIBS_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.gcc47-libs+= {gcc47,gcc47-libs}>=${_GCC_REQD}
+BUILDLINK_ABI_DEPENDS.gcc47-libs+= {gcc47,gcc47-libs}>=4.7.0
+BUILDLINK_PKGSRCDIR.gcc47-libs= ../../lang/gcc47-libs
+BUILDLINK_DEPMETHOD.gcc47-libs?= full
+
+BUILDLINK_PASSTHRU_DIRS+= ${BUILDLINK_PREFIX.gcc47-libs}/gcc47
+
+BUILDLINK_FILES.gcc47-libs= #empty
+BUILDLINK_AUTO_VARS.gcc47-libs= no
+
+.if !empty(USE_PKGSRC_GCC_RUNTIME:M[Yy][Ee][Ss])
+# Use custom specs file to ensure we link against pkgsrc libraries.
+SPECS_LIBGCC= ${WRAPPER_DIR}/specs.libgcc
+WRAPPER_TARGETS+= ${SPECS_LIBGCC}
+
+GCC_SUBPREFIX= gcc47
+GCC_PREFIX= ${BUILDLINK_PREFIX.gcc47-libs}/${GCC_SUBPREFIX}
+GCC_TARGET_MACHINE?= ${MACHINE_GNU_PLATFORM}
+
+# XXX: Using %M requires patched version of gcc (e.g. lang/gcc47)
+${SPECS_LIBGCC}:
+ @${ECHO} "*link_libgcc:" >${SPECS_LIBGCC}
+ @${ECHO} "%D $(LINKER_RPATH_FLAG)${GCC_PREFIX}/lib/%M $(LINKER_RPATH_FLAG)${GCC_PREFIX}/${GCC_TARGET_MACHINE}/lib/%M" >>${SPECS_LIBGCC}
+
+_WRAP_EXTRA_ARGS.CC+= -specs ${SPECS_LIBGCC}
+_WRAP_EXTRA_ARGS.CXX+= -specs ${SPECS_LIBGCC}
+.endif
+
+.include "../../mk/dlopen.buildlink3.mk"
+.include "../../mk/pthread.buildlink3.mk"
+.endif # GCC47_LIBS_BUILDLINK3_MK
+BUILDLINK_TREE+= -gcc47-libs