import libobjc2

This is the official GNUstep Objective-C runtime (a.k.a. libobjc2).
This runtime was designed to support the features of Objective-C 2 for
use with GNUstep and other Objective-C programs.

Feedback and OK landry@
This commit is contained in:
sebastia 2012-08-22 07:01:45 +00:00
parent 6a8b22e40d
commit 34529d228f
5 changed files with 99 additions and 0 deletions

View File

@ -0,0 +1,26 @@
# $OpenBSD: Makefile,v 1.1.1.1 2012/08/22 07:01:45 sebastia Exp $
COMMENT = GNUstep libobjc2 objective-c runtime
# note: this port does not use the gnustep module
DISTNAME = libobjc2-1.6.1
PKGNAME = gnustep-${DISTNAME}
EXTRACT_SUFX = .tar.bz2
CATEGORIES = devel x11/gnustep
SHARED_LIBS += objc2 0.0
SHARED_LIBS += objcxx 0.0
HOMEPAGE = http://www.gnustep.org/
MASTER_SITES = http://download.gna.org/gnustep/
WANTLIB += m stdc++
MAKE_ENV += CPPFLAGS+=${CPPFLAGS}
MAKE_FLAGS += LIBOBJCLIBNAME=objc2 \
LIBOBJC=libobjc2 \
HEADER_DIR=${DESTDIR}${PREFIX}/include/gnustep \
VERSION=${LIBobjc2_VERSION} \
SILENT=""
.include <bsd.port.mk>

View File

@ -0,0 +1,2 @@
SHA256 (gnustep/libobjc2-1.6.1.tar.bz2) = lBdkaE52TyWGTT8xjVysgLW4md9A1IXFIXQkMfwT4vk=
SIZE (gnustep/libobjc2-1.6.1.tar.bz2) = 116263

View File

@ -0,0 +1,45 @@
$OpenBSD: patch-Makefile,v 1.1.1.1 2012/08/22 07:01:45 sebastia Exp $
do not create symlinks to the libraries installed
get rid of not understood parameter
do not encode wrong library name into the library
--- Makefile.orig Sat Mar 24 17:43:01 2012
+++ Makefile Tue Aug 14 18:31:13 2012
@@ -14,7 +14,7 @@ LIBOBJCXX=libobjcxx
SILENT=@
CFLAGS += -std=gnu99 -fPIC -fexceptions
-CFLAGS += -Wno-deprecated-objc-isa-usage
+#CFLAGS += -Wno-deprecated-objc-isa-usage
CXXFLAGS += -fPIC -fexceptions
CPPFLAGS += -DTYPE_DEPENDENT_DISPATCH -DGNUSTEP
CPPFLAGS += -D__OBJC_RUNTIME_INTERNAL__=1 -D_XOPEN_SOURCE=500 -D__BSD_VISIBLE=1 -D_BSD_SOURCE=1
@@ -74,13 +74,11 @@ 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 \
- -Wl,-soname=$(LIBOBJCXX).so.$(MAJOR_VERSION) \
-o $@ $(OBJCXX_OBJECTS)
$(LIBOBJC).so.$(VERSION): $(OBJECTS)
$(SILENT)echo Linking shared Objective-C runtime library...
$(SILENT)$(CC) -shared -rdynamic \
- -Wl,-soname=$(LIBOBJC).so.$(MAJOR_VERSION) \
-o $@ $(OBJECTS)
$(LIBOBJC).a: $(OBJECTS)
@@ -109,13 +107,6 @@ install: all
$(SILENT)install -m 444 $(STRIP) $(LIBOBJC).so.$(VERSION) $(LIB_DIR)
$(SILENT)install -m 444 $(STRIP) $(LIBOBJCXX).so.$(VERSION) $(LIB_DIR)
$(SILENT)install -m 444 $(STRIP) $(LIBOBJC).a $(LIB_DIR)
- $(SILENT)echo Creating symbolic links...
- $(SILENT)ln -sf $(LIBOBJC).so.$(VERSION) $(LIB_DIR)/$(LIBOBJC).so
- $(SILENT)ln -sf $(LIBOBJC).so.$(VERSION) $(LIB_DIR)/$(LIBOBJC).so.$(MAJOR_VERSION)
- $(SILENT)ln -sf $(LIBOBJC).so.$(VERSION) $(LIB_DIR)/$(LIBOBJC).so.$(MAJOR_VERSION).$(MINOR_VERSION)
- $(SILENT)ln -sf $(LIBOBJCXX).so.$(VERSION) $(LIB_DIR)/$(LIBOBJCXX).so
- $(SILENT)ln -sf $(LIBOBJCXX).so.$(VERSION) $(LIB_DIR)/$(LIBOBJCXX).so.$(MAJOR_VERSION)
- $(SILENT)ln -sf $(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

View File

@ -0,0 +1,3 @@
This is the official GNUstep Objective-C runtime (a.k.a. libobjc2).
This runtime was designed to support the features of Objective-C 2 for
use with GNUstep and other Objective-C programs.

View File

@ -0,0 +1,23 @@
@comment $OpenBSD: PLIST,v 1.1.1.1 2012/08/22 07:01:45 sebastia Exp $
include/gnustep/
include/gnustep/objc/
include/gnustep/objc/Availability.h
include/gnustep/objc/Object.h
include/gnustep/objc/Protocol.h
include/gnustep/objc/blocks_private.h
include/gnustep/objc/blocks_runtime.h
include/gnustep/objc/capabilities.h
include/gnustep/objc/developer.h
include/gnustep/objc/encoding.h
include/gnustep/objc/hooks.h
include/gnustep/objc/objc-api.h
include/gnustep/objc/objc-arc.h
include/gnustep/objc/objc-auto.h
include/gnustep/objc/objc.h
include/gnustep/objc/runtime-deprecated.h
include/gnustep/objc/runtime.h
include/gnustep/objc/slot.h
include/gnustep/objc/toydispatch.h
lib/libobjc2.a
@lib lib/libobjc2.so.${LIBobjc2_VERSION}
@lib lib/libobjcxx.so.${LIBobjcxx_VERSION}