summaryrefslogtreecommitdiff
path: root/lang
diff options
context:
space:
mode:
authorDavid Chisnall <theraven@FreeBSD.org>2013-08-28 18:26:01 +0000
committerDavid Chisnall <theraven@FreeBSD.org>2013-08-28 18:26:01 +0000
commit3bec8741ffe1e70c5dbabd1ee86bfdf05f1c3e99 (patch)
treeab5064afd823ae17563635026226e53774a6614d /lang
parentUpdate devel/monodevelop to 4.0.12 and unbreak build. (diff)
Update to latest GNUstep core libraries.
Update dependent packages with more recent releases. Remove old and bit-rotted ones. Switch to using clang 3.3 and libobjc2 1.7 by default, so modern Objective-C features work out of the box and remove a lot of configurable options for sub-optimal (and, often, unsupported / deprecated upstream) configurations. Take maintainership of GNUstep-related ports. Several of the ports left in have scary warnings which mean that they are likely broken in lots of cases. Future commits will fix them. Approved by: bapt
Notes
Notes: svn path=/head/; revision=325546
Diffstat (limited to 'lang')
-rw-r--r--lang/gnustep-base/Makefile57
-rw-r--r--lang/gnustep-base/distinfo4
-rw-r--r--lang/gnustep-base/files/GNUstep.sh29
-rw-r--r--lang/gnustep-base/files/NSFileManager.m.patch28
-rw-r--r--lang/gnustep-base/pkg-descr13
-rw-r--r--lang/gnustep-base/pkg-plist25
-rw-r--r--lang/libobjc2/Makefile77
-rw-r--r--lang/libobjc2/distinfo4
-rw-r--r--lang/libobjc2/files/patch-Makefile59
-rw-r--r--lang/libobjc2/pkg-descr4
-rw-r--r--lang/libobjc2/pkg-plist12
11 files changed, 86 insertions, 226 deletions
diff --git a/lang/gnustep-base/Makefile b/lang/gnustep-base/Makefile
index 3e1ba0fd19eb..b3e596e8c579 100644
--- a/lang/gnustep-base/Makefile
+++ b/lang/gnustep-base/Makefile
@@ -2,29 +2,34 @@
# $FreeBSD$
PORTNAME= gnustep-base
-PORTVERSION= 1.24.0
+PORTVERSION= 1.24.5
PORTREVISION= 1
CATEGORIES= lang devel gnustep
MASTER_SITES= ${MASTER_SITE_GNUSTEP}
MASTER_SITE_SUBDIR= core
-MAINTAINER= ports@FreeBSD.org
+MAINTAINER= theraven@FreeBSD.org
COMMENT= GNUstep Foundation library
+LICENSE= GPLv3 LGPL3
+LICENSE_COMB= multi
+
LIB_DEPENDS+= ffi:${PORTSDIR}/devel/libffi
LIB_DEPENDS+= xml2.5:${PORTSDIR}/textproc/libxml2
LIB_DEPENDS+= xslt.2:${PORTSDIR}/textproc/libxslt
LIB_DEPENDS+= gmp.10:${PORTSDIR}/math/gmp
LIB_DEPENDS+= dns_sd:${PORTSDIR}/net/mDNSResponder
LIB_DEPENDS+= gnutls-openssl.27:${PORTSDIR}/security/gnutls
-
-LICENSE_COMB= multi
-LICENSE= GPLv3 LGPL3
+LIB_DEPENDS+= icuuc:${PORTSDIR}/devel/icu
+LIB_DEPENDS+= objc.4:${PORTSDIR}/lang/libobjc2
+LIB_DEPENDS+= libgcrypt.so:${PORTSDIR}/security/libgcrypt
USE_AUTOTOOLS= autoconf
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --disable-procfs --disable-openssl --enable-tls \
- --with-tls-prefix=${LOCALBASE} TLS_CONFIG="pkg-config -gnutls"
+ --with-tls-prefix=${LOCALBASE} TLS_CONFIG="pkg-config -gnutls"\
+ --disable-mixedabi
+CONFIGURE_ENV+= OBJCFLAGS='-fobjc-runtime=gnustep-1.7 -fblocks'
USE_GNUSTEP= yes
USE_GNUSTEP_CONFIGURE= yes
USE_GNUSTEP_BUILD= yes
@@ -40,57 +45,17 @@ BREAKS_IF_PEDANTIC= yes
PLIST_SUB+= LOCALBASE=${LOCALBASE}
ETCDIR= ${LOCALBASE}/etc
-.if !defined(WITHOUT_GNUSTEP_FAKEMAIN)
-CONFIGURE_ARGS+= --enable-fake-main
-.endif
-
PLIST_SUB+= BASEVERSION=${PORTVERSION:C/[.][0-9]*$//1}
-EXTRA_PATCHES+= ${FILESDIR}/NSFileManager.m.patch
.include <bsd.port.pre.mk>
-.if !defined(GNUSTEP_WITH_CLANG)
-.if defined(GNUSTEP_WITH_BASE_GCC)
-.if ${OSVERSION} < 800000
-IGNORE= does not build on FreeBSD 7
-.endif
-.if ${OSVERSION} >= 900036
-IGNORE= needs an objective C compiler
-.endif
-.endif
-.endif
-
-.if defined(GNUSTEP_WITH_LIBOBJC2) || defined(GNUSTEP_WITH_CLANG)
-LIB_DEPENDS+= objc:${PORTSDIR}/${PKGCATEGORY}/libobjc2
-CFLAGS+= -I${LOCALBASE}/include -DOBJC2RUNTIME=1
-PLIST_SUB+= WITH_LIB1="@comment "
-.else
-PLIST_SUB+= WITH_LIB1=""
-.endif
-
PATH:= ${PREFIX}/System/Tools:${PATH}
-post-build:
-.for i in ${MAKE_APPS}
- (cd ${WRKSRC}/${i}; . ${GNUSTEP_MAKEFILES}/GNUstep.sh; \
- ${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${ALL_TARGET})
-.endfor
-
post-extract:
- @${SED} -e "s=%%PREFIX%%=${LOCALBASE}=" \
- -e "s=%%LDCONFIG_GCC%%=${LDCONFIG_GCC}=" \
- ${FILESDIR}/GNUstep.sh \
- > ${WRKSRC}/GNUstep.sh
@${REINPLACE_CMD} -e "s|/usr/local/|${LOCALBASE}/|" \
${WRKSRC}/configure
post-install:
- -@${MKDIR} ${ETCDIR}/rc.d
- ${INSTALL_SCRIPT} ${WRKSRC}/GNUstep.sh ${ETCDIR}/rc.d/GNUstep.sh
${INSTALL_DATA} ${FILESDIR}/gdomap_if ${ETCDIR}
-.for i in ${INSTALL_APPS}
- (cd ${WRKSRC}/${i}; . ${GNUSTEP_MAKEFILES}/GNUstep.sh; \
- ${SETENV} ${MAKE_ENV} ${GMAKE} -d ${MAKE_FLAGS} ${MAKEFILE} ${INSTALL_TARGET})
-.endfor
.include <bsd.port.post.mk>
diff --git a/lang/gnustep-base/distinfo b/lang/gnustep-base/distinfo
index 667bf94d61fb..59bd0b404edf 100644
--- a/lang/gnustep-base/distinfo
+++ b/lang/gnustep-base/distinfo
@@ -1,2 +1,2 @@
-SHA256 (gnustep-base-1.24.0.tar.gz) = e07040e85a6bf3e89a9d66424a40dc8d3be749fbe7c0c98942cff5e4f35a6b11
-SIZE (gnustep-base-1.24.0.tar.gz) = 2947759
+SHA256 (gnustep-base-1.24.5.tar.gz) = e82aa50d6b04c7b06b0e23e89e3f85243cadd1545afb991924681ea02b219382
+SIZE (gnustep-base-1.24.5.tar.gz) = 3496959
diff --git a/lang/gnustep-base/files/GNUstep.sh b/lang/gnustep-base/files/GNUstep.sh
deleted file mode 100644
index 6c9eaccb8736..000000000000
--- a/lang/gnustep-base/files/GNUstep.sh
+++ /dev/null
@@ -1,29 +0,0 @@
-#!/bin/sh
-
-PREFIX=%%PREFIX%%
-IFFILE=${PREFIX}/etc/gdomap_if
-PIDFILE="/var/run/gdomap.pid"
-GNUSTEP_SYSTEM_ROOT="${PREFIX}/GNUstep/System"
-
-case "$1" in
-start)
- if [ -e ${GNUSTEP_SYSTEM_ROOT}/Library/Makefiles/GNUstep.sh ]; then
- . ${GNUSTEP_SYSTEM_ROOT}/Library/Makefiles/GNUstep.sh
- rm -f ${PIDFILE}
- opentool gdomap -a ${IFFILE} -I ${PIDFILE}
- opentool gdnc
- echo -n ' GNUstep'
- fi
- ;;
-stop)
- [ -r ${PIDFILE} ] && kill $(cat ${PIDFILE}) && echo -n ' GNUstep'
- killall gdnc
- rm -f ${PIDFILE}
- ;;
-*)
- echo "Usage: ${0##*/} { start | stop }" >&2
- exit 64
- ;;
-esac
-
-exit 0
diff --git a/lang/gnustep-base/files/NSFileManager.m.patch b/lang/gnustep-base/files/NSFileManager.m.patch
deleted file mode 100644
index e0f6cd636aa2..000000000000
--- a/lang/gnustep-base/files/NSFileManager.m.patch
+++ /dev/null
@@ -1,28 +0,0 @@
---- Source/NSFileManager.m.orig Fri Mar 18 05:17:39 2005
-+++ Source/NSFileManager.m Fri Apr 1 06:37:16 2005
-@@ -757,6 +757,12 @@
-
- #endif /* !MINGW */
-
-+ // dont change when we have no attibutes
-+ if (attributes == nil)
-+ {
-+ return YES;
-+ }
-+
- // change attributes of last directory
- if ([attributes count] == 0)
- {
-@@ -785,6 +791,12 @@
- int len;
- int written;
- #endif
-+
-+ if (path == nil) // don't try to do anything when path is nil
-+ {
-+ ASSIGN(_lastError, @"Could not create directory - name is nil");
-+ return NO;
-+ }
-
- /* This is consitent with MacOSX - just return NO for an invalid path. */
- if ([path length] == 0)
diff --git a/lang/gnustep-base/pkg-descr b/lang/gnustep-base/pkg-descr
index 4ea51e1e013f..d023edb1ed59 100644
--- a/lang/gnustep-base/pkg-descr
+++ b/lang/gnustep-base/pkg-descr
@@ -1,10 +1,11 @@
-GNUstep is a set of general-purpose Objective-C libraries based on the
-OpenStep standard developed by NeXT (now Apple) Inc. The libraries
-consist of everything from foundation classes, such as dictionaries and
-arrays, to GUI interface classes such as windows, sliders, buttons, etc.
+The GNUstep Base library implements the Foundation portion of the OpenStep
+specification, jointly developed by NeXT and Sun. It aims to provide
+compatibility with extensions added by Apple's implementation of this standard:
+Cocoa. The Foundation framework provides the standard library for Objective-C,
+including collections, operating system interfaces, and so on.
-Please contact the GNUstep maintainers at <discussion@gnustep.org> in
-case of questions and help offers.
+Please contact the GNUstep maintainers at <discuss-gnustep@gnu.org> in
+case of questions and offers of help.
LICENSE: LGPL2 or later (framework)
LICENSE: GPL3 or later (tools, docs)
diff --git a/lang/gnustep-base/pkg-plist b/lang/gnustep-base/pkg-plist
index d294e366c9a7..4c0d2d6322b8 100644
--- a/lang/gnustep-base/pkg-plist
+++ b/lang/gnustep-base/pkg-plist
@@ -63,6 +63,7 @@ GNUstep/System/Library/Headers/Foundation/NSHost.h
GNUstep/System/Library/Headers/Foundation/NSIndexPath.h
GNUstep/System/Library/Headers/Foundation/NSIndexSet.h
GNUstep/System/Library/Headers/Foundation/NSInvocation.h
+GNUstep/System/Library/Headers/Foundation/NSInvocationOperation.h
GNUstep/System/Library/Headers/Foundation/NSJSONSerialization.h
GNUstep/System/Library/Headers/Foundation/NSKeyValueCoding.h
GNUstep/System/Library/Headers/Foundation/NSKeyValueObserving.h
@@ -70,6 +71,7 @@ GNUstep/System/Library/Headers/Foundation/NSKeyedArchiver.h
GNUstep/System/Library/Headers/Foundation/NSLocale.h
GNUstep/System/Library/Headers/Foundation/NSLock.h
GNUstep/System/Library/Headers/Foundation/NSMapTable.h
+GNUstep/System/Library/Headers/Foundation/NSMetadata.h
GNUstep/System/Library/Headers/Foundation/NSMethodSignature.h
GNUstep/System/Library/Headers/Foundation/NSNetServices.h
GNUstep/System/Library/Headers/Foundation/NSNotification.h
@@ -95,6 +97,7 @@ GNUstep/System/Library/Headers/Foundation/NSRange.h
GNUstep/System/Library/Headers/Foundation/NSRegularExpression.h
GNUstep/System/Library/Headers/Foundation/NSRunLoop.h
GNUstep/System/Library/Headers/Foundation/NSScanner.h
+GNUstep/System/Library/Headers/Foundation/NSScriptWhoseTests.h
GNUstep/System/Library/Headers/Foundation/NSSerialization.h
GNUstep/System/Library/Headers/Foundation/NSSet.h
GNUstep/System/Library/Headers/Foundation/NSSortDescriptor.h
@@ -166,10 +169,6 @@ GNUstep/System/Library/Headers/GNUstepBase/NSTask+GNUstepBase.h
GNUstep/System/Library/Headers/GNUstepBase/NSThread+GNUstepBase.h
GNUstep/System/Library/Headers/GNUstepBase/NSURL+GNUstepBase.h
GNUstep/System/Library/Headers/GNUstepBase/Unicode.h
-%%WITH_LIB1%%GNUstep/System/Library/Headers/ObjectiveC2/objc/Availability.h
-%%WITH_LIB1%%GNUstep/System/Library/Headers/ObjectiveC2/objc/blocks_runtime.h
-%%WITH_LIB1%%GNUstep/System/Library/Headers/ObjectiveC2/objc/capabilities.h
-%%WITH_LIB1%%GNUstep/System/Library/Headers/ObjectiveC2/objc/runtime.h
GNUstep/System/Library/Headers/gnustep/unicode/caseconv.h
GNUstep/System/Library/Headers/gnustep/unicode/cop.h
GNUstep/System/Library/Headers/gnustep/unicode/cyrillic.h
@@ -207,6 +206,11 @@ GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources
GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/create-abbrevs.m
GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/create-regions.m
GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/nstimezone.m
+GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/GSTLS/ca-certificates.crt
+GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/America/Creston
+GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/Asia/Khandyga
+GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/Asia/Ust-Nera
+GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/Europe/Busingen
GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/regions
GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/Africa/Abidjan
GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/Africa/Accra
@@ -840,7 +844,6 @@ GNUstep/System/Tools/plser
GNUstep/System/Tools/sfparse
GNUstep/System/Tools/xmlparse
etc/gdomap_if
-etc/rc.d/GNUstep.sh
@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/TraditionalChinese.lproj
@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/Spanish.lproj
@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/US
@@ -865,6 +868,16 @@ etc/rc.d/GNUstep.sh
@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/America
@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/Africa
@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones
+@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/Europe
+@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/Asia
+@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones/America
+@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones/zones
+@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones
+@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/GSTLS
+@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources
+@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%
+@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions
+@dirrm GNUstep/System/Library/Libraries/gnustep-base
@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/NSTimeZones
@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/Languages
@dirrm GNUstep/System/Library/Libraries/gnustep-base/Versions/%%BASEVERSION%%/Resources/Korean.lproj
@@ -880,8 +893,6 @@ etc/rc.d/GNUstep.sh
@dirrm GNUstep/System/Library/Headers/gnustep/unicode
@dirrm GNUstep/System/Library/Headers/gnustep/base
@dirrm GNUstep/System/Library/Headers/gnustep
-%%WITH_LIB1%%@dirrm GNUstep/System/Library/Headers/ObjectiveC2/objc
-%%WITH_LIB1%%@dirrm GNUstep/System/Library/Headers/ObjectiveC2
@dirrm GNUstep/System/Library/Headers/GNUstepBase/unicode
@dirrm GNUstep/System/Library/Headers/GNUstepBase
@dirrm GNUstep/System/Library/Headers/Foundation
diff --git a/lang/libobjc2/Makefile b/lang/libobjc2/Makefile
index a41aeb730b46..bcad3448ea16 100644
--- a/lang/libobjc2/Makefile
+++ b/lang/libobjc2/Makefile
@@ -2,68 +2,63 @@
# $FreeBSD$
PORTNAME= libobjc2
-PORTVERSION= 1.6
+PORTVERSION= 1.7
CATEGORIES= lang devel gnustep
MASTER_SITES= http://download.gna.org/gnustep/
-MAINTAINER= ports@FreeBSD.org
-COMMENT= Replacement Objective-C runtime supporting Obj-C 2 features
+MAINTAINER= theraven@FreeBSD.org
+COMMENT= Replacement Objective-C runtime supporting modern Objective-C 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_DEFINE= NSOBJECT_ROOT LIBDISPATCH
-OPTIONS_DEFAULT= NSOBJECT_ROOT
-NSOBJECT_ROOT_DESC= Root class is NSObject not Object
-LIBDISPATCH_DESC= Build with libdispatch from ports
+.include <bsd.port.options.mk>
-SHLIB_VERSION?= 16
+USES= cmake
-.include <bsd.port.options.mk>
+_CLANG!= if [ -f /usr/bin/clang ] ; then /usr/bin/clang --version | head -1 | \
+ ${SED} -e 's/.*clang version \([0-9]\)\.\([0-9]\).*/\1\2/' ; else ${ECHO} 0 ; fi
-.if ${PORT_OPTIONS:MLIBDISPATCH}
-LIB_DEPENDS+= dispatch.0:${PORTSDIR}/devel/libdispatch
-MAKE_ARGS+= -DWITHOUT_TOYDISPATCH
-PLIST_SUB+= WITH_TOYDISPATCH="@comment "
+.if ${_CLANG} < 33
+BUILD_DEPENDS+= ${LOCALBASE}/bin/clang33:${PORTSDIR}/lang/clang33
+CLANG= ${LOCALBASE}/bin/clang33
+CLANGXX= ${LOCALBASE}/bin/clang++33
.else
-PLIST_SUB+= WITH_TOYDISPATCH=""
+CLANG= /usr/bin/clang
+CLANGXX= /usr/bin/clang++
.endif
-.if ${PORT_OPTIONS:MNSOBJECT_ROOT}
-CPPFLAGS+= -DGNUSTEP
-.endif
+SHLIB_MAJOR= 4
+SHLIB_MINOR= 6
-.include <bsd.port.pre.mk>
+USE_BZIP2= yes
+PLIST_SUB+= SHLIB_MAJOR=${SHLIB_MAJOR} SHLIB_MINOR=${SHLIB_MINOR}
-.if ${OSVERSION} >= 900000
-.if defined(CC) && ${CC:T:Mclang}
-# all done
+.if ${OSVERSION} < 902000
+CMAKE_ARGS+= -DFORCE_LIBOBJCXX=ON
+PLIST_SUB+= WITH_SEPARATECXX=""
.else
-# force clang
-CC= ${LOCALBASE}/bin/clang
-BUILD_DEPENDS+= ${LOCALBASE}/bin/clang:${PORTSDIR}/lang/clang
-.endif
+PLIST_SUB+= WITH_SEPARATECXX="@comment "
.endif
-.if (${ARCH} == i386) || (${ARCH} == i486)
-CFLAGS+= -march=i586
-.endif
+.include <bsd.port.pre.mk>
+
+CMAKE_ARGS+= -DLIB_INSTALL_PATH=lib -DCMAKE_ASM_COMPILER=${CLANG}
+CMAKE_ARGS+= -DCMAKE_C_COMPILER=${CLANG} -DCMAKE_CXX_COMPILER=${CLANGXX}
+CMAKE_ARGS+= -DTESTS=OFF
+# This shouldn't be needed, but our llvm port installs llvm-config with a silly
+# name...
+CMAKE_ARGS+= -DLLVM_OPTS=OFF
.if ${ARCH} == "powerpc"
BROKEN= Does not compile on powerpc: Unsupported relocation type 10
.endif
-post-patch:
- ${RM} ${WRKSRC}/GNUmakefile
-
+.if ${OSVERSION} < 902000
+post-install:
+ ${LN} -sf ${LOCALBASE}/lib/libobjc.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${LOCALBASE}/lib/libobjc.so.${SHLIB_MAJOR}
+ ${LN} -sf ${LOCALBASE}/lib/libobjcxx.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${LOCALBASE}/lib/libobjcxx.so.${SHLIB_MAJOR}
+.else
post-install:
-.if ${PORT_OPTIONS:MLIBDISPATCH}
- ${RM} ${PREFIX}/include/objc/toydispatch.h
+ ${LN} -sf ${LOCALBASE}/lib/libobjc.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${LOCALBASE}/lib/libobjc.so.${SHLIB_MAJOR}
.endif
+
.include <bsd.port.post.mk>
diff --git a/lang/libobjc2/distinfo b/lang/libobjc2/distinfo
index 7b7b19e37bd3..074720374190 100644
--- a/lang/libobjc2/distinfo
+++ b/lang/libobjc2/distinfo
@@ -1,2 +1,2 @@
-SHA256 (libobjc2-1.6.tar.bz2) = cad4556d612e871f60ae19531474045075fab3ffab055f76140e3fed30a0c51d
-SIZE (libobjc2-1.6.tar.bz2) = 114767
+SHA256 (libobjc2-1.7.tar.bz2) = 3a1b4af6ff6f3d8e57bfb27401d1b249670ac2e92ba54ad5683ff3d4439d3cc1
+SIZE (libobjc2-1.7.tar.bz2) = 132662
diff --git a/lang/libobjc2/files/patch-Makefile b/lang/libobjc2/files/patch-Makefile
deleted file mode 100644
index a166e23fe443..000000000000
--- a/lang/libobjc2/files/patch-Makefile
+++ /dev/null
@@ -1,59 +0,0 @@
---- Makefile.orig 2011-11-23 13:43:16.000000000 +0100
-+++ Makefile 2011-12-10 08:20:33.000000000 +0100
-@@ -5,13 +5,13 @@
- MAJOR_VERSION = 4
- MINOR_VERSION = 6
- SUBMINOR_VERSION = 0
--VERSION = $(MAJOR_VERSION).$(MINOR_VERSION).$(SUBMINOR_VERSION)
-+VERSION = $(SHLIB_VERSION)
-
- LIBOBJCLIBNAME=objc
- LIBOBJC=libobjc
- LIBOBJCXX=libobjcxx
-
--SILENT=@
-+SILENT=
-
- CFLAGS += -std=gnu99 -fPIC -fexceptions
- CXXFLAGS += -fPIC -fexceptions
-@@ -62,21 +62,24 @@
- selector_table.o\
- sendmsg2.o\
- statics_loader.o\
-- toydispatch.o
-+
-+.if !defined(WITHOUT_TOYDISPATCH)
-+OBJECTS+= toydispatch.o
-+.endif
-
- all: $(LIBOBJC).a $(LIBOBJCXX).so.$(VERSION)
-
- $(LIBOBJCXX).so.$(VERSION): $(LIBOBJC).so.$(VERSION) $(OBJCXX_OBJECTS)
- $(SILENT)echo Linking shared Objective-C++ runtime library...
-- $(SILENT)$(CXX) -shared -o $@ $(OBJCXX_OBJECTS)
-+ $(SILENT)$(LD) $(LDFLAGS) -shared -o $@ $(OBJCXX_OBJECTS)
-
- $(LIBOBJC).so.$(VERSION): $(OBJECTS)
- $(SILENT)echo Linking shared Objective-C runtime library...
-- $(SILENT)$(CC) -shared -rdynamic -o $@ $(OBJECTS)
-+ $(SILENT)$(LD) $(LDFLAGS) -shared -o $@ $(OBJECTS)
-
- $(LIBOBJC).a: $(OBJECTS)
- $(SILENT)echo Linking static Objective-C runtime library...
-- $(SILENT)ld -r -s -o $@ $(OBJECTS)
-+ $(SILENT)$(LD) $(LDFLAGS) -r -s -o $@ $(OBJECTS)
-
- .cc.o: Makefile
- $(SILENT)echo Compiling `basename $<`...
-@@ -108,11 +111,7 @@
- fi
- $(SILENT)echo Creating symbolic links...
- $(SILENT)ln -sf $(LIB_DIR)/$(LIBOBJC).so.$(VERSION) $(LIB_DIR)/$(LIBOBJC).so
-- $(SILENT)ln -sf $(LIB_DIR)/$(LIBOBJC).so.$(VERSION) $(LIB_DIR)/$(LIBOBJC).so.$(MAJOR_VERSION)
-- $(SILENT)ln -sf $(LIB_DIR)/$(LIBOBJC).so.$(VERSION) $(LIB_DIR)/$(LIBOBJC).so.$(MAJOR_VERSION).$(MINOR_VERSION)
- $(SILENT)ln -sf $(LIB_DIR)/$(LIBOBJCXX).so.$(VERSION) $(LIB_DIR)/$(LIBOBJCXX).so
-- $(SILENT)ln -sf $(LIB_DIR)/$(LIBOBJCXX).so.$(VERSION) $(LIB_DIR)/$(LIBOBJCXX).so.$(MAJOR_VERSION)
-- $(SILENT)ln -sf $(LIB_DIR)/$(LIBOBJCXX).so.$(VERSION) $(LIB_DIR)/$(LIBOBJCXX).so.$(MAJOR_VERSION).$(MINOR_VERSION)
- $(SILENT)echo Installing headers...
- $(SILENT)install -d $(HEADER_DIR)/objc
- $(SILENT)install -m 444 objc/*.h $(HEADER_DIR)/objc
diff --git a/lang/libobjc2/pkg-descr b/lang/libobjc2/pkg-descr
index 392dac504d21..21a99db623b3 100644
--- a/lang/libobjc2/pkg-descr
+++ b/lang/libobjc2/pkg-descr
@@ -1,5 +1,7 @@
Replacement for the GNU Objective-C runtime supporting the features
-of Objective-C 2 for use with GNUstep and other Objective-C programs.
+of modern dialects of Objective-C 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
diff --git a/lang/libobjc2/pkg-plist b/lang/libobjc2/pkg-plist
index 2f0599bbf949..ce40fc48c1b4 100644
--- a/lang/libobjc2/pkg-plist
+++ b/lang/libobjc2/pkg-plist
@@ -1,11 +1,13 @@
include/objc/Availability.h
include/objc/Object.h
include/objc/Protocol.h
+include/objc/blocks_private.h
include/objc/blocks_runtime.h
include/objc/capabilities.h
include/objc/developer.h
include/objc/encoding.h
include/objc/hooks.h
+include/objc/message.h
include/objc/objc-api.h
include/objc/objc-arc.h
include/objc/objc-auto.h
@@ -13,10 +15,10 @@ include/objc/objc.h
include/objc/runtime.h
include/objc/runtime-deprecated.h
include/objc/slot.h
-%%WITH_TOYDISPATCH%%include/objc/toydispatch.h
-lib/libobjc.a
lib/libobjc.so
-lib/libobjc.so.%%SHLIB%%
-lib/libobjcxx.so
-lib/libobjcxx.so.%%SHLIB%%
+lib/libobjc.so.%%SHLIB_MAJOR%%
+lib/libobjc.so.%%SHLIB_MAJOR%%.%%SHLIB_MINOR%%
+%%WITH_SEPARATECXX%%lib/libobjcxx.so
+%%WITH_SEPARATECXX%%lib/libobjcxx.so.%%SHLIB_MAJOR%%
+%%WITH_SEPARATECXX%%lib/libobjcxx.so.%%SHLIB_MAJOR%%.%%SHLIB_MINOR%%
@dirrm include/objc