aboutsummaryrefslogtreecommitdiff
path: root/Mk/Uses
diff options
context:
space:
mode:
authorRusmir Dusko <nemysis@FreeBSD.org>2013-10-18 22:12:37 +0000
committerRusmir Dusko <nemysis@FreeBSD.org>2013-10-18 22:12:37 +0000
commitcda8b376c1af6d5a34ab134cc4ef4dd0ef7585b6 (patch)
tree908d36b9437f4275c3b4a45ffaac6c8514cf7102 /Mk/Uses
parentffba8de98c42a34f9544a19caed1bf918a460f2b (diff)
Notes
Diffstat (limited to 'Mk/Uses')
-rw-r--r--Mk/Uses/pure.mk39
1 files changed, 39 insertions, 0 deletions
diff --git a/Mk/Uses/pure.mk b/Mk/Uses/pure.mk
new file mode 100644
index 000000000000..c7fbf4671fb2
--- /dev/null
+++ b/Mk/Uses/pure.mk
@@ -0,0 +1,39 @@
+# Created by: Rusmir Dusko <nemysis@FreeBSD.org>
+# $FreeBSD$
+#
+# Provide support for Pure Programming Language based projects
+#
+# MAINTAINER= nemysis@FreeBSD.org
+#
+# Feature: pure
+# Usage: USES=pure or USES=pure:ARGS
+# Valid ARGS: ffi
+# ARGS description:
+# ffi makes the port depends on pure-ffi at runtime
+#
+
+.if !defined(_INCLUDE_USES_PURE_MK)
+_INCLUDE_USES_PURE_MK= yes
+
+_valid_ARGS= ffi
+_pure_ARGS= ${pure_ARGS:C/\:/ /g}
+
+# Sanity check
+.if defined(pure_ARGS) && ${_pure_ARGS} != ffi
+IGNORE=Incorrect 'USES+= pure:${pure_ARGS}' usage: argument [${pure_ARGS}] is not recognized
+.endif
+
+LIB_DEPENDS+= libpure.so:${PORTSDIR}/lang/pure
+.include "${PORTSDIR}/Mk/Uses/gmake.mk"
+
+.if ${_pure_ARGS:Mffi}
+RUN_DEPENDS+= ${LOCALBASE}/lib/pure/ffi.pure:${PORTSDIR}/devel/pure-ffi
+.endif
+
+MAKE_ARGS+= prefix=${PREFIX} mandir=${PREFIX}/man \
+ CC="${CC}" CFLAGS="${CFLAGS}" \
+ CXX="${CXX}" CXXFLAGS="${CXXFLAGS}" \
+ CPPFLAGS+=-I${LOCALBASE}/include \
+ LDFLAGS+=-L${LOCALBASE}/lib
+
+.endif #!defined(_INCLUDE_USES_PURE_MK)