aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordinoex <dinoex@FreeBSD.org>2012-06-09 20:58:33 +0800
committerdinoex <dinoex@FreeBSD.org>2012-06-09 20:58:33 +0800
commit511ebf81513fd75dd952c5d6d35b7269a1241b04 (patch)
tree2bc18426d8a9f92d749e10133974e659ced9ab50
parent97d5b7a398564d62c8dfb9930f1cb9a8e230b42a (diff)
downloadfreebsd-ports-gnome-511ebf81513fd75dd952c5d6d35b7269a1241b04.tar.gz
freebsd-ports-gnome-511ebf81513fd75dd952c5d6d35b7269a1241b04.tar.zst
freebsd-ports-gnome-511ebf81513fd75dd952c5d6d35b7269a1241b04.zip
- fix build with gnustep 1.24.0
Obtained from: ubuntu
-rw-r--r--databases/gdl2/files/patch-581934265
-rw-r--r--databases/gdl2/pkg-plist2
2 files changed, 266 insertions, 1 deletions
diff --git a/databases/gdl2/files/patch-581934 b/databases/gdl2/files/patch-581934
new file mode 100644
index 000000000000..1374b2ec2d6b
--- /dev/null
+++ b/databases/gdl2/files/patch-581934
@@ -0,0 +1,265 @@
+2010-08-11 Yavor Doganov <yavor@gnu.org>
+
+ * EOControl/GNUmakefile (EOControl_INTERFACE_VERSION): Define
+ as Debian-specific due to the ABI break.
+
+2010-04-09 Fred Kiefer <FredKiefer@gmx.de>
+
+ * EOInterface/EOPopUpAssociation.m:
+ * DBModeler/ModelerEntityEditor.m:
+ * DBModeler/ModelerTableEmbedibleEditor.m: Add missing includes.
+
+2010-04-07 David Ayers <ayers@fsfe.org>
+
+ * EOInterface/EOPopUpAssociation.m: Add missing include.
+ Reported by: German Arias.
+
+2010-03-15 Richard Frith-Macdonald <rfm@gnu.org>
+
+ * EOControl/EONSAddOns.h:
+ * EOControl/EONSAddOns.m:
+ * EOControl/EOKeyValueCoding.m:
+ * EOControl/EOClassDescription.m:
+ Rewrite mechanism to try to ensure that our implementations are used
+ for KVC. New version should work with the objc runtime API.
+
+--- gnustep-dl2-0.12.0.orig/EOControl/EOClassDescription.m
++++ EOControl/EOClassDescription.m
+@@ -739,17 +739,13 @@
+
+ @end
+
+-
+-@implementation NSObject (EOClassDescriptionPrimitives)
+-
+-- (void)GDL2CDNSObjectICategoryID
+-{
+-}
++@interface GDL2CDNSObject : NSObject
++@end
++@implementation GDL2CDNSObject
+
+ + (void)load
+ {
+- GDL2_ActivateCategory("NSObject",
+- @selector(GDL2CDNSObjectICategoryID), YES);
++ GDL2_Activate([self class], YES);
+ }
+
+ // when you enable the NSDebugMLLogs here you will have a loop. dave
+--- gnustep-dl2-0.12.0.orig/EOControl/EOKeyValueCoding.m
++++ EOControl/EOKeyValueCoding.m
+@@ -92,16 +92,13 @@
+ #define INITIALIZE if (!initialized) initialize();
+
+
+-@implementation NSObject (_EOKeyValueCodingCompatibility)
+-
+-- (void)GDL2KVCNSObjectICategoryID
+-{
+-}
++@interface GDL2KVCNSObject : NSObject
++@end
++@implementation GDL2KVCNSObject
+
+ + (void)load
+ {
+- GDL2_ActivateCategory("NSObject",
+- @selector(GDL2KVCNSObjectICategoryID), YES);
++ GDL2_Activate([self class], YES);
+ }
+
+
+@@ -235,16 +232,13 @@
+ @end
+
+
+-@implementation NSArray (EOKeyValueCoding)
+-
+-- (void)GDL2KVCNSArrayICategoryID
+-{
+-}
++@interface GDL2KVCNSArray : NSArray
++@end
++@implementation GDL2KVCNSArray
+
+ + (void)load
+ {
+- GDL2_ActivateCategory("NSArray",
+- @selector(GDL2KVCNSArrayICategoryID), YES);
++ GDL2_Activate([self class], YES);
+ }
+
+ /**
+@@ -543,16 +537,14 @@
+ @end
+
+
+-@implementation NSDictionary (EOKeyValueCoding)
++@interface GDL2KVCNSDictionary : NSDictionary
++@end
++@implementation GDL2KVCNSDictionary
+
+-- (void)GDL2KVCNSDictionaryICategoryID
+-{
+-}
+
+ + (void)load
+ {
+- GDL2_ActivateCategory("NSDictionary",
+- @selector(GDL2KVCNSDictionaryICategoryID), YES);
++ GDL2_Activate([self class], YES);
+ }
+
+ /**
+@@ -851,16 +843,13 @@
+ isSmart: (BOOL)smartFlag;
+ @end
+
+-@implementation NSMutableDictionary (EOKVCGNUstepExtensions)
+-
+-- (void)GDL2KVCNSMutableDictionaryICategoryID
+-{
+-}
++@interface GDL2KVCNSMutableDictionary : NSMutableDictionary
++@end
++@implementation GDL2KVCNSMutableDictionary
+
+ + (void)load
+ {
+- GDL2_ActivateCategory("NSMutableDictionary",
+- @selector(GDL2KVCNSMutableDictionaryICategoryID), YES);
++ GDL2_Activate([self class], YES);
+ }
+
+ /**
+--- gnustep-dl2-0.12.0.orig/EOControl/EONSAddOns.h
++++ EOControl/EONSAddOns.h
+@@ -51,7 +51,7 @@
+ GSUseStrictWO451Compatibility(NSString *key);
+
+ GDL2CONTROL_EXPORT void
+-GDL2_ActivateCategory(const char *className, SEL sel, BOOL isInstance);
++GDL2_Activate(Class cls, BOOL isInstance);
+
+ GDL2CONTROL_EXPORT void
+ GDL2_ActivateAllGDL2Categories(void);
+--- gnustep-dl2-0.12.0.orig/EOControl/EONSAddOns.m
++++ EOControl/EONSAddOns.m
+@@ -64,6 +64,11 @@
+
+ #include "EOPrivate.h"
+
++@class GDL2KVCNSObject;
++@class GDL2KVCNSArray;
++@class GDL2KVCNSDictionary;
++@class GDL2KVCNSMutableDictionary;
++@class GDL2CDNSObject;
+
+ static NSRecursiveLock *local_lock = nil;
+ static BOOL GSStrictWO451Flag = NO;
+@@ -98,6 +103,7 @@
+ void
+ GDL2_DumpMethodList(Class cls, SEL sel, BOOL isInstance)
+ {
++/*
+ void *iterator = 0;
+ GSMethodList mList;
+
+@@ -113,39 +119,30 @@
+ mList, meth, imp);
+ }
+ fprintf(stderr,"List finished\n"); fflush(stderr);
++*/
+ }
+
+ void
+-GDL2_ActivateCategory(const char *className, SEL sel, BOOL isInstance)
++GDL2_Activate(Class cls, BOOL isInstance)
+ {
+- Class cls;
+- GSMethodList mList;
+-
+- cls = GSClassFromName(className);
+- mList = GSMethodListForSelector(cls, sel, 0, isInstance);
+-
+- GSRemoveMethodList(cls, mList, isInstance);
+- GSAddMethodList(cls, mList, isInstance);
+-
+- GSFlushMethodCacheForClass(cls);
++ if (NO == isInstance)
++ {
++ cls = object_getClass(cls);
++ }
++ GSObjCAddClassOverride([cls superclass], cls);
+ }
+
+ void
+ GDL2_ActivateAllGDL2Categories(void)
+ {
+ /* EOKeyValueCoding */
+- GDL2_ActivateCategory("NSObject",
+- @selector(GDL2KVCNSObjectICategoryID), YES);
+- GDL2_ActivateCategory("NSArray",
+- @selector(GDL2KVCNSArrayICategoryID), YES);
+- GDL2_ActivateCategory("NSDictionary",
+- @selector(GDL2KVCNSDictionaryICategoryID), YES);
+- GDL2_ActivateCategory("NSMutableDictionary",
+- @selector(GDL2KVCNSMutableDictionaryICategoryID), YES);
++ GDL2_Activate([GDL2KVCNSObject class], YES);
++ GDL2_Activate([GDL2KVCNSArray class], YES);
++ GDL2_Activate([GDL2KVCNSDictionary class], YES);
++ GDL2_Activate([GDL2KVCNSMutableDictionary class], YES);
+
+ /* EOClassDescription */
+- GDL2_ActivateCategory("NSObject",
+- @selector(GDL2CDNSObjectICategoryID), YES);
++ GDL2_Activate([GDL2CDNSObject class], YES);
+
+ }
+
+--- gnustep-dl2-0.12.0.orig/EOControl/GNUmakefile
++++ EOControl/GNUmakefile
+@@ -29,6 +29,7 @@
+
+ # The library to be compiled
+ NATIVE_LIBRARY_NAME=EOControl
++EOControl_INTERFACE_VERSION=0d
+
+ EOControl_NEEDS_GUI = no
+
+--- gnustep-dl2-0.12.0.orig/EOInterface/EOPopUpAssociation.m
++++ EOInterface/EOPopUpAssociation.m
+@@ -24,8 +24,10 @@
+ */
+
+ #ifdef GNUSTEP
+-#include <Foundation/NSString.h>
+ #include <Foundation/NSArray.h>
++#include <Foundation/NSString.h>
++#include <Foundation/NSException.h>
++#include <Foundation/NSValue.h>
+
+ #include <AppKit/NSPopUpButton.h>
+ #else
+--- gnustep-dl2-0.12.0.orig/DBModeler/ModelerEntityEditor.m
++++ DBModeler/ModelerEntityEditor.m
+@@ -40,6 +40,7 @@
+ #ifdef NeXT_GUI_LIBRARY
+ #include <AppKit/AppKit.h>
+ #else
++#include <Foundation/NSRunLoop.h>
+ #include <AppKit/NSImage.h>
+ #include <AppKit/NSSplitView.h>
+ #include <AppKit/NSScrollView.h>
+--- gnustep-dl2-0.12.0.orig/DBModeler/ModelerTableEmbedibleEditor.m
++++ DBModeler/ModelerTableEmbedibleEditor.m
+@@ -29,6 +29,8 @@
+ #ifdef NeXT_GUI_LIBRARY
+ #include <AppKit/AppKit.h>
+ #else
++#include <Foundation/NSNotification.h>
++#include <Foundation/NSUserDefaults.h>
+ #include <AppKit/NSMenuItem.h>
+ #include <AppKit/NSPopUpButton.h>
+ #include <AppKit/NSTableColumn.h>
diff --git a/databases/gdl2/pkg-plist b/databases/gdl2/pkg-plist
index 740197b52d0d..afd070c8621e 100644
--- a/databases/gdl2/pkg-plist
+++ b/databases/gdl2/pkg-plist
@@ -159,7 +159,7 @@ GNUstep/Local/Library/Libraries/libEOAccess.so
GNUstep/Local/Library/Libraries/libEOAccess.so.%%MAJORVERSION%%
GNUstep/Local/Library/Libraries/libEOAccess.so.%%VERSION%%
GNUstep/Local/Library/Libraries/libEOControl.so
-GNUstep/Local/Library/Libraries/libEOControl.so.%%MAJORVERSION%%
+GNUstep/Local/Library/Libraries/libEOControl.so.%%MAJORVERSION%%d
GNUstep/Local/Library/Libraries/libEOControl.so.%%VERSION%%
GNUstep/Local/Library/Libraries/libEOInterface.so
GNUstep/Local/Library/Libraries/libEOInterface.so.%%MAJORVERSION%%