373 lines
14 KiB
Diff
373 lines
14 KiB
Diff
diff -r -u gnustep-base-1.24.7/Makefile.postamble gnustep-base-1.24.7.patched/Makefile.postamble
|
|
--- gnustep-base-1.24.7/Makefile.postamble 2011-07-15 19:53:45.000000000 +0600
|
|
+++ gnustep-base-1.24.7.patched/Makefile.postamble 2014-11-29 22:25:07.000000000 +0600
|
|
@@ -38,13 +38,13 @@
|
|
# Things to do after compiling
|
|
# after-all::
|
|
|
|
-$(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional:
|
|
- $(ECHO_CREATING)$(MKDIRS) $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional$(END_ECHO)
|
|
+$(DESTDIR_GNUSTEP_MAKEFILES)/Additional:
|
|
+ $(ECHO_CREATING)$(MKDIRS) $(DESTDIR_GNUSTEP_MAKEFILES)/Additional$(END_ECHO)
|
|
|
|
# Things to do before installing
|
|
-before-install:: $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional
|
|
+before-install:: $(DESTDIR_GNUSTEP_MAKEFILES)/Additional
|
|
$(ECHO_NOTHING)$(INSTALL_DATA) base.make \
|
|
- $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO)
|
|
+ $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO)
|
|
|
|
# Things to do after installing
|
|
# after-install::
|
|
@@ -54,7 +54,7 @@
|
|
|
|
# Things to do after uninstalling
|
|
after-uninstall::
|
|
- $(ECHO_NOTHING)rm -f $(DESTDIR)$(GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO)
|
|
+ $(ECHO_NOTHING)rm -f $(DESTDIR_GNUSTEP_MAKEFILES)/Additional/base.make$(END_ECHO)
|
|
|
|
# Things to do before cleaning
|
|
# before-clean::
|
|
diff -r -u gnustep-base-1.24.7/Source/NSPathUtilities.m gnustep-base-1.24.7.patched/Source/NSPathUtilities.m
|
|
--- gnustep-base-1.24.7/Source/NSPathUtilities.m 2014-01-14 13:21:10.000000000 +0600
|
|
+++ gnustep-base-1.24.7.patched/Source/NSPathUtilities.m 2015-01-25 13:59:37.000000000 +0600
|
|
@@ -153,16 +153,27 @@
|
|
static NSString *gnustepLocalUsersDir = nil;
|
|
|
|
static NSString *gnustepSystemApps = nil;
|
|
+static NSArray *gnustepSystemAppsNix = nil;
|
|
static NSString *gnustepSystemAdminApps = nil;
|
|
+static NSArray *gnustepSystemAdminAppsNix = nil;
|
|
static NSString *gnustepSystemWebApps = nil;
|
|
+static NSArray *gnustepSystemWebAppsNix = nil;
|
|
static NSString *gnustepSystemTools = nil;
|
|
+static NSArray *gnustepSystemToolsNix = nil;
|
|
static NSString *gnustepSystemAdminTools = nil;
|
|
+static NSArray *gnustepSystemAdminToolsNix = nil;
|
|
static NSString *gnustepSystemLibrary = nil;
|
|
+static NSArray *gnustepSystemLibraryNix = nil;
|
|
static NSString *gnustepSystemLibraries = nil;
|
|
+static NSArray *gnustepSystemLibrariesNix = nil;
|
|
static NSString *gnustepSystemHeaders = nil;
|
|
+static NSArray *gnustepSystemHeadersNix = nil;
|
|
static NSString *gnustepSystemDocumentation = nil;
|
|
+static NSArray *gnustepSystemDocumentationNix = nil;
|
|
static NSString *gnustepSystemDocumentationInfo = nil;
|
|
+static NSArray *gnustepSystemDocumentationInfoNix = nil;
|
|
static NSString *gnustepSystemDocumentationMan = nil;
|
|
+static NSArray *gnustepSystemDocumentationManNix = nil;
|
|
|
|
static NSString *gnustepNetworkApps = nil;
|
|
static NSString *gnustepNetworkAdminApps = nil;
|
|
@@ -258,6 +269,18 @@
|
|
}\
|
|
})
|
|
|
|
+/* Like ASSIGN_PATH, but permits multiple components in a path
|
|
+ */
|
|
+#define ASSIGN_PATH_NIX(var, dictionary, key) ({\
|
|
+ id val = getPathConfigNix(dictionary, key);\
|
|
+ if (val != nil)\
|
|
+ {\
|
|
+ RELEASE(var);\
|
|
+ var = RETAIN(val);\
|
|
+ [dictionary removeObjectForKey: key];\
|
|
+ }\
|
|
+})
|
|
+
|
|
/* Like ASSIGN_PATH(), but permits the result to be a relative path as that
|
|
* is what we normally use (the path is within the user's home directory).
|
|
*/
|
|
@@ -368,7 +391,7 @@
|
|
/* Get a full path string */
|
|
static inline NSString *
|
|
getPath(NSString *path)
|
|
-{
|
|
+{
|
|
if ([path hasPrefix: @"./"] == YES)
|
|
{
|
|
path = [gnustepConfigPath stringByAppendingPathComponent:
|
|
@@ -383,6 +406,33 @@
|
|
return path;
|
|
}
|
|
|
|
+static inline NSArray *
|
|
+getPathConfigNix(NSDictionary *dict, NSString *key)
|
|
+{
|
|
+ NSArray *res = nil;
|
|
+ NSMutableArray *paths = nil;
|
|
+ NSString *path;
|
|
+#if defined(__MINGW_)
|
|
+ NSString *sep = @";";
|
|
+#else
|
|
+ NSString *sep = @":";
|
|
+#endif
|
|
+
|
|
+ path = [dict objectForKey: key];
|
|
+ if (path != nil)
|
|
+ {
|
|
+ if ([path rangeOfString:sep].location != NSNotFound)
|
|
+ {
|
|
+ res = [path componentsSeparatedByString:sep];
|
|
+ }
|
|
+ else
|
|
+ {
|
|
+ res = [[NSArray alloc] initWithObjects:path, nil];
|
|
+ }
|
|
+ }
|
|
+ return res;
|
|
+}
|
|
+
|
|
/* Get a full path string from a dictionary */
|
|
static inline NSString *
|
|
getPathConfig(NSDictionary *dict, NSString *key)
|
|
@@ -468,6 +518,29 @@
|
|
ASSIGN_PATH(gnustepSystemDocumentationInfo, c,
|
|
@"GNUSTEP_SYSTEM_DOC_INFO");
|
|
|
|
+ ASSIGN_PATH_NIX(gnustepSystemAppsNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_APPS");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemAdminAppsNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_ADMIN_APPS");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemWebAppsNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_WEB_APPS");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemToolsNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_TOOLS");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemAdminToolsNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_ADMIN_TOOLS");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemLibraryNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_LIBRARY");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemLibrariesNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_LIBRARIES");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemHeadersNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_HEADERS");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemDocumentationNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_DOC");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemDocumentationManNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_DOC_MAN");
|
|
+ ASSIGN_PATH_NIX(gnustepSystemDocumentationInfoNix, c,
|
|
+ @"NIX_GNUSTEP_SYSTEM_DOC_INFO");
|
|
+
|
|
ASSIGN_PATH(gnustepNetworkApps, c,
|
|
@"GNUSTEP_NETWORK_APPS");
|
|
ASSIGN_PATH(gnustepNetworkAdminApps, c,
|
|
@@ -1235,6 +1308,18 @@
|
|
DESTROY(gnustepSystemDocumentationMan);
|
|
DESTROY(gnustepSystemDocumentationInfo);
|
|
|
|
+ DESTROY(gnustepSystemAppsNix);
|
|
+ DESTROY(gnustepSystemAdminAppsNix);
|
|
+ DESTROY(gnustepSystemWebAppsNix);
|
|
+ DESTROY(gnustepSystemToolsNix);
|
|
+ DESTROY(gnustepSystemAdminToolsNix);
|
|
+ DESTROY(gnustepSystemLibraryNix);
|
|
+ DESTROY(gnustepSystemLibrariesNix);
|
|
+ DESTROY(gnustepSystemHeadersNix);
|
|
+ DESTROY(gnustepSystemDocumentationNix);
|
|
+ DESTROY(gnustepSystemDocumentationManNix);
|
|
+ DESTROY(gnustepSystemDocumentationInfoNix);
|
|
+
|
|
DESTROY(gnustepNetworkApps);
|
|
DESTROY(gnustepNetworkAdminApps);
|
|
DESTROY(gnustepNetworkWebApps);
|
|
@@ -2183,6 +2268,27 @@
|
|
if ([add_dir length] > 0 && [paths containsObject: add_dir] == NO) \
|
|
[paths addObject: add_dir]; \
|
|
}
|
|
+#define ADD_PATH_NIX(mask, base_dirs, add_dir) \
|
|
+if ((domainMask & mask) && (base_dirs != nil)) \
|
|
+{ \
|
|
+ NSEnumerator *e = [base_dirs objectEnumerator]; \
|
|
+ NSString *dir = nil; \
|
|
+ while (dir = [e nextObject]) { \
|
|
+ path = [dir stringByAppendingPathComponent: add_dir]; \
|
|
+ if ([path length] > 0 && [paths containsObject: path] == NO) \
|
|
+ [paths addObject: path]; \
|
|
+ } \
|
|
+}
|
|
+#define ADD_PLATFORM_PATH_NIX(mask, add_dirs) \
|
|
+if ((domainMask & mask) && (add_dirs != nil)) \
|
|
+{ \
|
|
+ NSEnumerator *e = [add_dirs objectEnumerator]; \
|
|
+ NSString *dir = nil; \
|
|
+ while (dir = [e nextObject]) { \
|
|
+ if ([dir length] > 0 && [paths containsObject: dir] == NO) \
|
|
+ [paths addObject:dir]; \
|
|
+ } \
|
|
+}
|
|
|
|
switch (directoryKey)
|
|
{
|
|
@@ -2191,11 +2297,13 @@
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserApps);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalApps);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkApps);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAppsNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemApps);
|
|
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserAdminApps);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalAdminApps);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkAdminApps);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminAppsNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemAdminApps);
|
|
}
|
|
break;
|
|
@@ -2205,6 +2313,7 @@
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserApps);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalApps);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkApps);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAppsNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemApps);
|
|
}
|
|
break;
|
|
@@ -2214,6 +2323,7 @@
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserApps);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalApps);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkApps);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAppsNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemApps);
|
|
|
|
/* I imagine if ever wanted a separate Demo directory, the
|
|
@@ -2231,6 +2341,7 @@
|
|
|
|
case NSCoreServicesDirectory:
|
|
{
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix, @"CoreServices");
|
|
ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary, @"CoreServices");
|
|
}
|
|
break;
|
|
@@ -2248,6 +2359,7 @@
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserApps);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalApps);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkApps);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAppsNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemApps);
|
|
}
|
|
break;
|
|
@@ -2257,6 +2369,7 @@
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserAdminApps);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalAdminApps);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkAdminApps);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminAppsNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemAdminApps);
|
|
}
|
|
break;
|
|
@@ -2266,6 +2379,7 @@
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserLibrary);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalLibrary);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkLibrary);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemLibrary);
|
|
}
|
|
break;
|
|
@@ -2281,6 +2395,7 @@
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserLibrary);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalLibrary);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkLibrary);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemLibrary);
|
|
}
|
|
break;
|
|
@@ -2418,6 +2533,7 @@
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserDocumentation);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalDocumentation);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkDocumentation);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemDocumentationNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemDocumentation);
|
|
}
|
|
break;
|
|
@@ -2449,6 +2565,7 @@
|
|
ADD_PATH(NSUserDomainMask, gnustepUserLibrary, @"Caches");
|
|
ADD_PATH(NSLocalDomainMask, gnustepLocalLibrary, @"Caches");
|
|
ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibrary, @"Caches");
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix, @"Caches");
|
|
ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary, @"Caches");
|
|
}
|
|
break;
|
|
@@ -2460,6 +2577,8 @@
|
|
@"ApplicationSupport");
|
|
ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibrary,
|
|
@"ApplicationSupport");
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix,
|
|
+ @"ApplicationSupport");
|
|
ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary,
|
|
@"ApplicationSupport");
|
|
}
|
|
@@ -2471,6 +2590,7 @@
|
|
ADD_PATH(NSUserDomainMask, gnustepUserLibrary, @"Frameworks");
|
|
ADD_PATH(NSLocalDomainMask, gnustepLocalLibrary, @"Frameworks");
|
|
ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibrary, @"Frameworks");
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix, @"Frameworks");
|
|
ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary, @"Frameworks");
|
|
}
|
|
break;
|
|
@@ -2480,6 +2600,7 @@
|
|
ADD_PATH(NSUserDomainMask, gnustepUserLibrary, @"Fonts");
|
|
ADD_PATH(NSLocalDomainMask, gnustepLocalLibrary, @"Fonts");
|
|
ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibrary, @"Fonts");
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibraryNix, @"Fonts");
|
|
ADD_PATH(NSSystemDomainMask, gnustepSystemLibrary, @"Fonts");
|
|
}
|
|
break;
|
|
@@ -2518,6 +2639,12 @@
|
|
if (part)
|
|
ADD_PATH(NSNetworkDomainMask, gnustepNetworkLibraries, part);
|
|
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemLibrariesNix);
|
|
+ if (full)
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibrariesNix, full);
|
|
+ if (part)
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemLibrariesNix, part);
|
|
+
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemLibraries);
|
|
if (full)
|
|
ADD_PATH(NSSystemDomainMask, gnustepSystemLibraries, full);
|
|
@@ -2560,6 +2687,12 @@
|
|
if (part)
|
|
ADD_PATH(NSNetworkDomainMask, gnustepNetworkTools, part);
|
|
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemToolsNix);
|
|
+ if (full)
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemToolsNix, full);
|
|
+ if (part)
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemToolsNix, part);
|
|
+
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemTools);
|
|
if (full)
|
|
ADD_PATH(NSSystemDomainMask, gnustepSystemTools, full);
|
|
@@ -2602,6 +2735,18 @@
|
|
if (part)
|
|
ADD_PATH(NSNetworkDomainMask, gnustepNetworkAdminTools, part);
|
|
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix);
|
|
+ if (full)
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix, full);
|
|
+ if (part)
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix, part);
|
|
+
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix);
|
|
+ if (full)
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix, full);
|
|
+ if (part)
|
|
+ ADD_PATH_NIX(NSSystemDomainMask, gnustepSystemAdminToolsNix, part);
|
|
+
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemAdminTools);
|
|
if (full)
|
|
ADD_PATH(NSSystemDomainMask, gnustepSystemAdminTools, full);
|
|
@@ -2615,6 +2760,7 @@
|
|
ADD_PLATFORM_PATH(NSUserDomainMask, gnustepUserWebApps);
|
|
ADD_PLATFORM_PATH(NSLocalDomainMask, gnustepLocalWebApps);
|
|
ADD_PLATFORM_PATH(NSNetworkDomainMask, gnustepNetworkWebApps);
|
|
+ ADD_PLATFORM_PATH_NIX(NSSystemDomainMask, gnustepSystemWebAppsNix);
|
|
ADD_PLATFORM_PATH(NSSystemDomainMask, gnustepSystemWebApps);
|
|
}
|
|
break;
|
|
@@ -2622,6 +2768,8 @@
|
|
|
|
#undef ADD_PATH
|
|
#undef ADD_PLATFORM_PATH
|
|
+#undef ADD_PATH_NIX
|
|
+#undef ADD_PLATFORM_PATH_NIX
|
|
|
|
count = [paths count];
|
|
for (i = 0; i < count; i++)
|