aboutsummaryrefslogtreecommitdiff
path: root/lang/libobjc2/Makefile
diff options
context:
space:
mode:
authorDirk Meyer <dinoex@FreeBSD.org>2011-10-19 18:56:47 +0000
committerDirk Meyer <dinoex@FreeBSD.org>2011-10-19 18:56:47 +0000
commitc6b74337adc372106f2ca802167543a6b91eec87 (patch)
tree5a8da3b7cad6c4fcfba787200bfac564ef49520d /lang/libobjc2/Makefile
parent87368eeb509038ee9061f9543a7f377ef1854df4 (diff)
downloadports-c6b74337adc372106f2ca802167543a6b91eec87.tar.gz
ports-c6b74337adc372106f2ca802167543a6b91eec87.zip
Replacement for the GNU Objective-C runtime supporting the features
of Objective-C 2 for use with GNUstep and other Objective-C programs. This runtime is based on the Etoile Objective-C Runtime, an earlier research prototype, and includes support for non-fragile instance variables, type-dependent dispatch, and object planes. It is fully compatible with the FSF's GCC Objective-C ABI and also implements a new ABI that is supported by Clang and is required for some of the newer features.
Notes
Notes: svn path=/head/; revision=283935
Diffstat (limited to 'lang/libobjc2/Makefile')
-rw-r--r--lang/libobjc2/Makefile61
1 files changed, 61 insertions, 0 deletions
diff --git a/lang/libobjc2/Makefile b/lang/libobjc2/Makefile
new file mode 100644
index 000000000000..64980871feda
--- /dev/null
+++ b/lang/libobjc2/Makefile
@@ -0,0 +1,61 @@
+# New ports collection makefile for: libobjc2
+# Date created: 7 October 2010
+# Whom: Pete French <pete@twisted.org.uk>
+#
+# $FreeBSD$
+#
+
+PORTNAME= libobjc2
+PORTVERSION= 1.5.1
+CATEGORIES= lang devel gnustep
+MASTER_SITES= http://download.gna.org/gnustep/
+
+MAINTAINER= dinoex@FreeBSD.org
+COMMENT= Replacement Objective-C runtime supporting Obj-C 2 features
+
+BUILD_DEPENDS= ${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils
+
+USE_BZIP2= yes
+USE_LDCONFIG= yes
+MAKE_ENV+= LD=${LOCALBASE}/bin/ld
+MAKE_ENV+= SHLIB_VERSION="${SHLIB_VERSION}"
+PLIST_SUB= SHLIB=${SHLIB_VERSION}
+
+OPTIONS= NSOBJECT_ROOT "Root class is NSObject not Object" On \
+ LIBDISPATCH "Build with libdispatch from ports" Off
+
+SHLIB_VERSION?= 15
+
+.include <bsd.port.options.mk>
+
+.if defined(WITH_LIBDISPATCH)
+LIB_DEPENDS+= dispatch.0:${PORTSDIR}/devel/libdispatch
+MAKE_ARGS+= -DWITHOUT_TOYDISPATCH
+PLIST_SUB+= WITH_TOYDISPATCH="@comment "
+.else
+PLIST_SUB+= WITH_TOYDISPATCH=""
+.endif
+
+.if !defined(WITHOUT_NSOBJECT_ROOT)
+CPPFLAGS+= -DGNUSTEP
+.endif
+
+.include <bsd.port.pre.mk>
+
+.if ${OSVERSION} >= 900000
+BROKEN= does not compile on 9.X
+.endif
+
+.if (${ARCH} == i386) || (${ARCH} == i486)
+CFLAGS+= -march=i586
+.endif
+
+post-patch:
+ ${RM} ${WRKSRC}/GNUmakefile
+
+post-install:
+.if defined(WITH_LIBDISPATCH)
+ ${RM} ${PREFIX}/include/objc/toydispatch.h
+.endif
+
+.include <bsd.port.post.mk>