[Midnightbsd-cvs] mports [19352] trunk/lang/libobjc2: update to libobjc2 1.7
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sat Jun 6 17:58:00 EDT 2015
Revision: 19352
http://svnweb.midnightbsd.org/mports/?rev=19352
Author: laffer1
Date: 2015-06-06 17:58:00 -0400 (Sat, 06 Jun 2015)
Log Message:
-----------
update to libobjc2 1.7
Modified Paths:
--------------
trunk/lang/libobjc2/Makefile
trunk/lang/libobjc2/distinfo
trunk/lang/libobjc2/pkg-descr
trunk/lang/libobjc2/pkg-plist
Added Paths:
-----------
trunk/lang/libobjc2/files/patch-arc.m
Removed Paths:
-------------
trunk/lang/libobjc2/files/patch-Makefile
Modified: trunk/lang/libobjc2/Makefile
===================================================================
--- trunk/lang/libobjc2/Makefile 2015-06-06 21:55:15 UTC (rev 19351)
+++ trunk/lang/libobjc2/Makefile 2015-06-06 21:58:00 UTC (rev 19352)
@@ -1,8 +1,7 @@
# $MidnightBSD$
PORTNAME= libobjc2
-PORTVERSION= 1.6
-PORTREVISION= 1
+PORTVERSION= 1.7
CATEGORIES= lang devel gnustep
MASTER_SITES= http://download.gna.org/gnustep/
@@ -11,48 +10,40 @@
LICENSE= mit
-BUILD_DEPENDS= ${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils
+SSP_UNSAFE= yes
-USES= tar:bzip2
-USE_LDCONFIG= yes
-MAKE_ENV+= LD=${LOCALBASE}/bin/ld
-MAKE_ENV+= SHLIB_VERSION="${SHLIB_VERSION}"
-PLIST_SUB= SHLIB=${SHLIB_VERSION}
+USES= cmake tar:bzip2
-OPTIONS_DEFINE= NSOBJECT_ROOT
-OPTIONS_DEFAULT= NSOBJECT_ROOT
-NSOBJECT_ROOT_DESC= Root class is NSObject not Object
-
-SHLIB_VERSION?= 16
-
.include <bsd.mport.options.mk>
-MAKE_ARGS+= -DWITHOUT_TOYDISPATCH
+_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:MNSOBJECT_ROOT}
-CPPFLAGS+= -DGNUSTEP
+.if ${_CLANG} < 34
+BUILD_DEPENDS+= ${LOCALBASE}/bin/clang34:${PORTSDIR}/lang/clang34
+CC= ${LOCALBASE}/bin/clang34
+CXX= ${LOCALBASE}/bin/clang++34
+.else
+CC= /usr/bin/clang
+CXX= /usr/bin/clang++
.endif
-.include <bsd.port.pre.mk>
+SHLIB_MAJOR= 4
+SHLIB_MINOR= 6
-.if ${OSVERSION} >= 4015
-.if defined(CC) && ${CC:T:Mclang}
-# all done
-.else
-# force clang
-CC= ${LOCALBASE}/bin/clang
-BUILD_DEPENDS+= ${LOCALBASE}/bin/clang:${PORTSDIR}/lang/clang
-.endif
-.endif
+PLIST_SUB+= SHLIB_MAJOR=${SHLIB_MAJOR} SHLIB_MINOR=${SHLIB_MINOR}
-.if (${ARCH} == i386) || (${ARCH} == i486)
-CFLAGS+= -march=i586
-.endif
+CMAKE_ARGS+= -DFORCE_LIBOBJCXX=ON
+PLIST_SUB+= WITH_SEPARATECXX=""
-post-patch:
- ${RM} ${WRKSRC}/GNUmakefile
+CMAKE_ARGS+= -DLIB_INSTALL_PATH=lib
+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
post-install:
- ${RM} ${PREFIX}/include/objc/toydispatch.h
+ ${LN} -sf libobjc.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${STAGEDIR}${PREFIX}/lib/libobjc.so.${SHLIB_MAJOR}
+ ${LN} -sf libobjcxx.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ${STAGEDIR}${PREFIX}/lib/libobjcxx.so.${SHLIB_MAJOR}
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
Modified: trunk/lang/libobjc2/distinfo
===================================================================
--- trunk/lang/libobjc2/distinfo 2015-06-06 21:55:15 UTC (rev 19351)
+++ trunk/lang/libobjc2/distinfo 2015-06-06 21:58:00 UTC (rev 19352)
@@ -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
Deleted: trunk/lang/libobjc2/files/patch-Makefile
===================================================================
--- trunk/lang/libobjc2/files/patch-Makefile 2015-06-06 21:55:15 UTC (rev 19351)
+++ trunk/lang/libobjc2/files/patch-Makefile 2015-06-06 21:58:00 UTC (rev 19352)
@@ -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
Added: trunk/lang/libobjc2/files/patch-arc.m
===================================================================
--- trunk/lang/libobjc2/files/patch-arc.m (rev 0)
+++ trunk/lang/libobjc2/files/patch-arc.m 2015-06-06 21:58:00 UTC (rev 19352)
@@ -0,0 +1,30 @@
+--- ./arc.m.orig 2013-03-12 08:51:59.000000000 +0000
++++ ./arc.m 2014-01-13 15:04:54.000000000 +0000
+@@ -219,15 +219,18 @@
+ }
+ else
+ {
+- [AutoreleasePool class];
+- useARCAutoreleasePool = class_respondsToSelector(AutoreleasePool,
+- SELECTOR(_ARCCompatibleAutoreleasePool));
+- NewAutoreleasePool = class_getMethodImplementation(object_getClass(AutoreleasePool),
+- SELECTOR(new));
+- DeleteAutoreleasePool = class_getMethodImplementation(AutoreleasePool,
+- SELECTOR(release));
+- AutoreleaseAdd = class_getMethodImplementation(object_getClass(AutoreleasePool),
+- SELECTOR(addObject:));
++ useARCAutoreleasePool = (0 != class_getInstanceMethod(AutoreleasePool,
++ SELECTOR(_ARCCompatibleAutoreleasePool)));
++ if (!useARCAutoreleasePool)
++ {
++ [AutoreleasePool class];
++ NewAutoreleasePool = class_getMethodImplementation(object_getClass(AutoreleasePool),
++ SELECTOR(new));
++ DeleteAutoreleasePool = class_getMethodImplementation(AutoreleasePool,
++ SELECTOR(release));
++ AutoreleaseAdd = class_getMethodImplementation(object_getClass(AutoreleasePool),
++ SELECTOR(addObject:));
++ }
+ }
+ }
+ }
Property changes on: trunk/lang/libobjc2/files/patch-arc.m
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Modified: trunk/lang/libobjc2/pkg-descr
===================================================================
--- trunk/lang/libobjc2/pkg-descr 2015-06-06 21:55:15 UTC (rev 19351)
+++ trunk/lang/libobjc2/pkg-descr 2015-06-06 21:58:00 UTC (rev 19352)
@@ -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
Modified: trunk/lang/libobjc2/pkg-plist
===================================================================
--- trunk/lang/libobjc2/pkg-plist 2015-06-06 21:55:15 UTC (rev 19351)
+++ trunk/lang/libobjc2/pkg-plist 2015-06-06 21:58:00 UTC (rev 19352)
@@ -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,9 +15,9 @@
include/objc/runtime.h
include/objc/runtime-deprecated.h
include/objc/slot.h
-lib/libobjc.a
lib/libobjc.so
-lib/libobjc.so.%%SHLIB%%
-lib/libobjcxx.so
-lib/libobjcxx.so.%%SHLIB%%
- at dirrm include/objc
+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%%
More information about the Midnightbsd-cvs
mailing list