+2004-08-29 Helge Hess <helge.hess@opengroupware.org>
+
+ * v4.3.18
+
+ * Templates/WOApplication+Builders.m: also look in
+ /usr/local/lib/sope-4.3/wox-builders/ and
+ /usr/lib/sope-4.3/wox-builders/ for SOPE WOx element builder bundles
+
+ * SoObjects/SoProductRegistry.m: also look in
+ /usr/local/share/sope-4.3/products and /usr/share/sope-4.3/products
+ for SOPE product bundles
+
+ * WORequest.m, WebDAV/SoObject+SoDAV.m: use new WOCoreApplication
+ method to lookup Languages.plist / DAVPropMap.plist resource
+
+ * WOCoreApplication.m: use GNUSTEP_PATHPREFIX_LIST and GNUSTEP_PATHLIST
+ to find libNGObjWeb resources, also look in
+ /usr/local/share/sope-4.3/ngobjweb/ and
+ /usr/share/sope-4.3/ngobjweb/. Added a method
+ +findNGObjWebResource:ofType: to locate library resources
+
+ * WOCoreApplication+Bundle.m: use GNUSTEP_PATHPREFIX_LIST and
+ GNUSTEP_PATHLIST to load application bundles
+
+ * added hack to install the project in FHS locations - the library,
+ its headers, the tools and the resources will be installed in
+ FHS_INSTALL_ROOT if specified (eg make FHS_INSTALL_ROOT=/usr/local),
+ SOPE products are installed in lib/sope-4.3/products/
+
2004-08-27 Helge Hess <helge.hess@skyrix.com>
* GNUmakefile: export WOComponentDefinition.h as a public header
include $(GNUSTEP_MAKEFILES)/bundle.make
include $(GNUSTEP_MAKEFILES)/tool.make
-include GNUmakefile.postamble
+-include fhs.make
-L$(RELBUILD_DIR_SxCore)/EOControl/$(GNUSTEP_OBJ_DIR_NAME) \
-L$(RELBUILD_DIR_SxXml)/XmlRpc/$(GNUSTEP_OBJ_DIR_NAME) \
-L$(RELBUILD_DIR_SxXml)/DOM/$(GNUSTEP_OBJ_DIR_NAME) \
- -L$(RELBUILD_DIR_SxXml)/SaxObjC/$(GNUSTEP_OBJ_DIR_NAME)
+ -L$(RELBUILD_DIR_SxXml)/SaxObjC/$(GNUSTEP_OBJ_DIR_NAME) \
+ -L/usr/local/lib -L/usr/lib
else
libNGObjWeb_LIB_DIRS += \
-L$(CORE_ROOT)/EOControl/$(GNUSTEP_OBJ_DIR) \
-L$(SOPE_ROOT)/sope-xml/XmlRpc/$(GNUSTEP_OBJ_DIR) \
-L$(SOPE_ROOT)/sope-xml/DOM/$(GNUSTEP_OBJ_DIR) \
- -L$(SOPE_ROOT)/sope-xml/SaxObjC/$(GNUSTEP_OBJ_DIR)
+ -L$(SOPE_ROOT)/sope-xml/SaxObjC/$(GNUSTEP_OBJ_DIR) \
+ -L/usr/local/lib -L/usr/lib
endif
libNGObjWeb_LIBRARIES_DEPEND_UPON += \
Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA.
*/
-// $Id$
#include "NSObject+WO.h"
#include "common.h"
[self scanForProductsInDirectory:lPath];
}
+ /* look into FHS pathes */
+
+ pathes = [NSArray arrayWithObjects:
+ @"/usr/local/lib/sope-4.3/products/",
+ @"/usr/lib/sope-4.3/products/",
+ nil];
+ for (i = 0; i < [pathes count]; i++) {
+ NSString *lPath;
+ BOOL isDir;
+
+ lPath = [pathes objectAtIndex:i];
+ if (![fm fileExistsAtPath:lPath isDirectory:&isDir])
+ continue;
+ if (!isDir)
+ continue;
+
+ [self debugWithFormat:@" directory %@", lPath];
+ [self scanForProductsInDirectory:lPath];
+ }
+
+ /* report result */
+
[self debugWithFormat:
@"finished scan for products (%i products registered).",
[self->products count]];
[self scanForBuilderBundlesInDirectory:lPath];
}
+ /* look into FHS pathes */
+
+ pathes = [NSArray arrayWithObjects:
+ @"/usr/local/lib/sope-4.3/wox-builders/",
+ @"/usr/lib/sope-4.3/wox-builders/",
+ nil];
+ for (i = 0; i < [pathes count]; i++) {
+ NSString *lPath;
+ BOOL isDir;
+
+ lPath = [pathes objectAtIndex:i];
+ if (![fm fileExistsAtPath:lPath isDirectory:&isDir])
+ continue;
+ if (!isDir)
+ continue;
+
+ [self debugWithFormat:@" directory %@", lPath];
+ [self scanForBuilderBundlesInDirectory:lPath];
+ }
+
+ /* report result */
+
[self debugWithFormat:@"finished scan for builders."];
}
# version file
-SUBMINOR_VERSION:=17
+SUBMINOR_VERSION:=18
# v4.2.413 requires libSaxObjC v4.2.33
# v4.2.341 requires libNGExtensions v4.2.77
/*
- Copyright (C) 2000-2003 SKYRIX Software AG
+ Copyright (C) 2000-2004 SKYRIX Software AG
- This file is part of OGo
+ This file is part of OpenGroupware.org.
OGo is free software; you can redistribute it and/or modify it under
the terms of the GNU Lesser General Public License as published by the
Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA.
*/
-// $Id$
#include <NGObjWeb/WOCoreApplication.h>
#include "common.h"
+ (int)loadApplicationBundle:(NSString *)_bundleName
domainPath:(NSString *)_domain
{
+ // TODO: is this actually used somewhere?
NSFileManager *fm;
NSString *bp;
NSBundle *bundle;
}
else {
NSDictionary *env;
+ NSEnumerator *e;
+ id tmp;
env = [[NSProcessInfo processInfo] environment];
-
+
[chkPathes addObject:@"."];
#if COCOA_FRAMEWORK
bp = [env objectForKey:@"HOME"];
bp = [bp stringByAppendingPathComponent:_domain];
[chkPathes addObject:bp];
#else
- bp = [env objectForKey:@"GNUSTEP_USER_ROOT"];
- bp = [bp stringByAppendingPathComponent:@"Library"];
- bp = [bp stringByAppendingPathComponent:_domain];
- [chkPathes addObject:bp];
- bp = [env objectForKey:@"GNUSTEP_LOCAL_ROOT"];
- bp = [bp stringByAppendingPathComponent:@"Library"];
- bp = [bp stringByAppendingPathComponent:_domain];
- [chkPathes addObject:bp];
- bp = [env objectForKey:@"GNUSTEP_SYSTEM_ROOT"];
- bp = [bp stringByAppendingPathComponent:@"Library"];
- bp = [bp stringByAppendingPathComponent:_domain];
- [chkPathes addObject:bp];
+ if ((tmp = [env objectForKey:@"GNUSTEP_PATHPREFIX_LIST"]) == nil)
+ tmp = [env objectForKey:@"GNUSTEP_PATHLIST"];
+ tmp = [tmp componentsSeparatedByString:@":"];
+ e = [tmp objectEnumerator];
+ while ((tmp = [e nextObject])) {
+ bp = [tmp stringByAppendingPathComponent:@"Library"];
+ bp = [bp stringByAppendingPathComponent:_domain];
+ if ([chkPathes containsObject:bp]) continue;
+
+ [chkPathes addObject:bp];
+ }
#endif
}
e = [chkPathes objectEnumerator];
while ((bp = [e nextObject])) {
BOOL isDir;
+
bp = [bp stringByAppendingPathComponent:_bundleName];
if (![fm fileExistsAtPath:bp isDirectory:&isDir]) continue;
if (!isDir) continue;
}
if ((bundle = [NGBundle bundleWithPath:bp]) == nil) {
- NSLog(@"%s: did not find %@ at %@ ...", __PRETTY_FUNCTION__, _bundleName, bp);
+ NSLog(@"%s: did not find %@ at %@ ...", __PRETTY_FUNCTION__,
+ _bundleName, bp);
//return 1;
}
];
}
-@end /* WOCoreApplication */
-
-@implementation WOCoreApplication(Defaults)
+/* defaults */
-+ (void)_initDefaults {
- static BOOL didInit = NO;
-#if !COMPILE_AS_FRAMEWORK
- NSFileManager *fm;
- NSDictionary *env;
- NSString *relPath;
-#else
- NSBundle *bundle;
-#endif
- NSDictionary *owDefaults = nil;
- NSString *apath;
-
- if (didInit) return;
- didInit = YES;
++ (NSArray *)resourcesSearchPathes {
+ NSMutableArray *ma;
+ NSDictionary *env;
+ NSString *relPath, *apath;
+ NSEnumerator *e;
-#if COMPILE_AS_FRAMEWORK
- bundle = [NSBundle bundleForClass:[WOCoreApplication class]];
- apath = [bundle pathForResource:@"Defaults" ofType:@"plist"];
-
- if (apath == nil) {
- NSLog(@"ERROR: cannot find Defaults.plist "
- @"resource of NGObjWeb framework (%@) !", bundle);
- }
-#else
- fm = [NSFileManager defaultManager];
- env = [[NSProcessInfo processInfo] environment];
+ ma = [NSMutableArray arrayWithCapacity:8];
+ env = [[NSProcessInfo processInfo] environment];
/*
- TODO: the following is a dirty hack because GNUstep people decided
- to change the directory structure. SIGH!
+ TODO: the following is a dirty hack because GNUstep people decided
+ to change the directory structure. SIGH!
*/
#if APPLE_FOUNDATION_LIBRARY || NeXT_Foundation_LIBRARY || GNUSTEP_BASE_LIBRARY
relPath = @"Library/Libraries";
#endif
relPath = [relPath stringByAppendingPathComponent:@"Resources"];
relPath = [relPath stringByAppendingPathComponent:@"NGObjWeb"];
- relPath = [relPath stringByAppendingPathComponent:@"Defaults.plist"];
- apath = [env objectForKey:@"GNUSTEP_USER_ROOT"];
- apath = [apath stringByAppendingPathComponent:relPath];
- if (![fm fileExistsAtPath:apath]) {
- apath = [env objectForKey:@"GNUSTEP_LOCAL_ROOT"];
- apath = [apath stringByAppendingPathComponent:relPath];
- }
- if (![fm fileExistsAtPath:apath]) {
- apath = [env objectForKey:@"GNUSTEP_SYSTEM_ROOT"];
+ if ((apath = [env objectForKey:@"GNUSTEP_PATHPREFIX_LIST"]) == nil)
+ apath = [env objectForKey:@"GNUSTEP_PATHLIST"];
+
+ e = [[apath componentsSeparatedByString:@":"] objectEnumerator];
+ while ((apath = [e nextObject])) {
apath = [apath stringByAppendingPathComponent:relPath];
+ if ([ma containsObject:apath]) continue;
+
+ [ma addObject:apath];
}
- if (![fm fileExistsAtPath:apath]) {
- apath = relPath;
- }
- if (![fm fileExistsAtPath:apath]) {
- NSLog(@"ERROR: cannot find Defaults.plist "
- @"resource of NGObjWeb library !");
+ [ma addObject:relPath];
+ [ma addObject:@"/usr/local/share/sope-4.3/ngobjweb/"];
+ [ma addObject:@"/usr/share/sope-4.3/ngobjweb/"];
+ return ma;
+}
+
++ (NSString *)findNGObjWebResource:(NSString *)_name ofType:(NSString *)_ext {
+#if !COMPILE_AS_FRAMEWORK
+ NSFileManager *fm;
+ NSString *filename;
+#else
+ NSBundle *bundle;
+#endif
+ NSEnumerator *e;
+ NSString *apath;
+
+#if COMPILE_AS_FRAMEWORK
+ bundle = [NSBundle bundleForClass:[WOCoreApplication class]];
+ return [bundle pathForResource:_name ofType:_ext];
+#else
+ filename = [_name stringByAppendingPathExtension:_ext];
+ fm = [NSFileManager defaultManager];
+ e = [[self resourcesSearchPathes] objectEnumerator];
+ while ((apath = [e nextObject]) != nil) {
+ apath = [apath stringByAppendingPathComponent:filename];
+
+ if ([fm fileExistsAtPath:apath])
+ return apath;
}
+ return nil;
#endif
- owDefaults = [NSDictionary dictionaryWithContentsOfFile:apath];
+}
+
++ (void)_initDefaults {
+ static BOOL didInit = NO;
+ NSDictionary *owDefaults = nil;
+ NSString *apath;
+ if (didInit) return;
+ didInit = YES;
+
+ apath = [self findNGObjWebResource:@"Defaults" ofType:@"plist"];
+ if (apath == nil)
+ NSLog(@"ERROR: cannot find Defaults.plist resource of NGObjWeb library !");
+
+ owDefaults = [NSDictionary dictionaryWithContentsOfFile:apath];
if (owDefaults) {
[[NSUserDefaults standardUserDefaults] registerDefaults:owDefaults];
#if HEAVY_DEBUG
return s;
}
-@end /* WOCoreApplication(Defaults) */
+@end /* WOCoreApplication */
NGObjWeb_DECLARE NSString *WORequestValueSessionID = @"wosid";
NGObjWeb_DECLARE NSString *WONoSelectionString = @"WONoSelectionString";
+@interface WOCoreApplication(Resources)
++ (NSString *)findNGObjWebResource:(NSString *)_name ofType:(NSString *)_ext;
+@end
+
@implementation WORequest
static BOOL debugOn = NO;
return [super version] + 2 /* v7 */;
}
-+ (NSString *)lookupLanguagesPlist {
- NSString *apath;
-#if !COMPILE_AS_FRAMEWORK
- NSFileManager *fm = [NSFileManager defaultManager];
- NSDictionary *env;
- NSString *relPath;
-#else
- NSBundle *bundle;
-#endif
-
-#if COMPILE_AS_FRAMEWORK
- bundle = [NSBundle bundleForClass:self];
- apath = [bundle pathForResource:@"Languages" ofType:@"plist"];
-#else
- env = [[NSProcessInfo processInfo] environment];
-
- /*
- TODO: the following is a dirty hack because GNUstep people decided
- to change the directory structure. SIGH!
- */
-#if APPLE_FOUNDATION_LIBRARY || NeXT_Foundation_LIBRARY || GNUSTEP_BASE_LIBRARY
- relPath = @"Library/Libraries";
-#else
- relPath = @"Libraries";
-#endif
- relPath = [relPath stringByAppendingPathComponent:@"Resources"];
- relPath = [relPath stringByAppendingPathComponent:@"NGObjWeb"];
- relPath = [relPath stringByAppendingPathComponent:@"Languages.plist"];
-
- apath = [env objectForKey:@"GNUSTEP_USER_ROOT"];
- apath = [apath stringByAppendingPathComponent:relPath];
- if (![fm fileExistsAtPath:apath]) {
- apath = [env objectForKey:@"GNUSTEP_LOCAL_ROOT"];
- apath = [apath stringByAppendingPathComponent:relPath];
- }
- if (![fm fileExistsAtPath:apath]) {
- apath = [env objectForKey:@"GNUSTEP_SYSTEM_ROOT"];
- apath = [apath stringByAppendingPathComponent:relPath];
- }
- if (![fm fileExistsAtPath:apath]) {
- apath = relPath;
- }
- if (![fm fileExistsAtPath:apath]) {
- NSLog(@"ERROR: cannot find Languages.plist resource "
- @"of NGObjWeb library !");
- }
-#endif
- return apath;
-}
-
+ (void)initialize {
static BOOL isInitialized = NO;
NSUserDefaults *ud = [NSUserDefaults standardUserDefaults];
/* load language mappings */
- apath = [self lookupLanguagesPlist];
- langMap = [NSDictionary dictionaryWithContentsOfFile:apath];
+ apath = [WOApplication findNGObjWebResource:@"Languages" ofType:@"plist"];
+ if (apath == nil) {
+ NSLog(@"ERROR: cannot find Languages.plist resource "
+ @"of NGObjWeb library !");
+ langMap = nil;
+ }
+ else
+ langMap = [NSDictionary dictionaryWithContentsOfFile:apath];
- if (langMap) {
+ if (langMap != nil) {
NSDictionary *defs;
defs = [NSDictionary dictionaryWithObject:langMap
@end /* NSObject(SoObjectSoDAV) */
-@implementation NSObject(SoObjectDAVMaps)
+@interface WOCoreApplication(Resources)
++ (NSString *)findNGObjWebResource:(NSString *)_name ofType:(NSString *)_ext;
+@end
-+ (NSString *)lookupDefMapPlist {
- NSString *apath;
-#if !COMPILE_AS_FRAMEWORK
- NSFileManager *fm = [NSFileManager defaultManager];
- NSDictionary *env;
- NSString *relPath;
-#endif
-#if COMPILE_AS_FRAMEWORK
- {
- NSBundle *bundle;
-
- bundle = [NSBundle bundleForClass:self];
- apath = [bundle pathForResource:@"DAVPropMap" ofType:@"plist"];
- }
-#else
- env = [[NSProcessInfo processInfo] environment];
- relPath = @"Libraries";
- relPath = [relPath stringByAppendingPathComponent:@"Resources"];
- relPath = [relPath stringByAppendingPathComponent:@"NGObjWeb"];
- relPath = [relPath stringByAppendingPathComponent:@"DAVPropMap.plist"];
-
- apath = [env objectForKey:@"GNUSTEP_USER_ROOT"];
- apath = [apath stringByAppendingPathComponent:relPath];
- if (![fm fileExistsAtPath:apath]) {
- apath = [env objectForKey:@"GNUSTEP_LOCAL_ROOT"];
- apath = [apath stringByAppendingPathComponent:relPath];
- }
- if (![fm fileExistsAtPath:apath]) {
- apath = [env objectForKey:@"GNUSTEP_SYSTEM_ROOT"];
- apath = [apath stringByAppendingPathComponent:relPath];
- }
- if (![fm fileExistsAtPath:apath]) {
- apath = relPath;
- }
- if (![fm fileExistsAtPath:apath]) {
- NSLog(@"ERROR: cannot find DAVPropMap.plist resource "
- @"of NGObjWeb library !");
- }
-#endif
- return apath;
-}
+@implementation NSObject(SoObjectDAVMaps)
+ (id)defaultWebDAVAttributeMap {
static NSDictionary *defMap = nil;
if (defMap == nil) {
NSString *path;
- if ((path = [self lookupDefMapPlist]))
+ path = [WOApplication findNGObjWebResource:@"DAVPropMap" ofType:@"plist"];
+ if (path != nil)
defMap = [[NSDictionary alloc] initWithContentsOfFile:path];
}
return defMap;
--- /dev/null
+# postprocessing
+
+# FHS support (this is a hack and is going to be done by gstep-make!)
+
+ifneq ($(FHS_INSTALL_ROOT),)
+
+FHS_INCLUDE_DIR=$(FHS_INSTALL_ROOT)/include/
+FHS_LIB_DIR=$(FHS_INSTALL_ROOT)/lib/
+FHS_BIN_DIR=$(FHS_INSTALL_ROOT)/bin/
+FHS_SO_DIR=$(FHS_LIB_DIR)sope-4.3/products/
+
+NONFHS_LIBDIR="$(GNUSTEP_LIBRARIES)/$(GNUSTEP_TARGET_LDIR)/"
+NONFHS_LIBNAME="$(LIBRARY_NAME)$(LIBRARY_NAME_SUFFIX)$(SHARED_LIBEXT)"
+NONFHS_BINDIR="$(GNUSTEP_TOOLS)/$(GNUSTEP_TARGET_LDIR)"
+
+
+fhs-header-dirs ::
+ $(MKDIRS) $(FHS_INCLUDE_DIR)$(libNGObjWeb_HEADER_FILES_INSTALL_DIR)
+
+fhs-bin-dirs ::
+ $(MKDIRS) $(FHS_BIN_DIR)
+
+fhs-products-dirs ::
+ $(MKDIRS) $(FHS_SO_DIR)
+
+
+move-headers-to-fhs :: fhs-header-dirs
+ @echo "moving headers to $(FHS_INCLUDE_DIR) .."
+ mv $(GNUSTEP_HEADERS)$(libNGObjWeb_HEADER_FILES_INSTALL_DIR)/*.h \
+ $(FHS_INCLUDE_DIR)$(libNGObjWeb_HEADER_FILES_INSTALL_DIR)/
+
+move-libs-to-fhs ::
+ @echo "moving libs to $(FHS_LIB_DIR) .."
+ mv $(NONFHS_LIBDIR)/$(NONFHS_LIBNAME)* $(FHS_LIB_DIR)/
+
+move-tools-to-fhs :: fhs-bin-dirs
+ @echo "moving tools from $(NONFHS_BINDIR) to $(FHS_BIN_DIR) .."
+ for i in $(TOOL_NAME); do \
+ mv "$(NONFHS_BINDIR)/$${i}" $(FHS_BIN_DIR); \
+ done
+
+move-bundles-to-fhs :: fhs-products-dirs
+ @echo "moving bundles $(BUNDLE_INSTALL_DIR) to $(FHS_SO_DIR) .."
+ for i in $(BUNDLE_NAME); do \
+ j="$(FHS_SO_DIR)/$${i}$(BUNDLE_EXTENSION)"; \
+ if test -d $$j; then rm -r $$j; fi; \
+ mv "$(BUNDLE_INSTALL_DIR)/$${i}$(BUNDLE_EXTENSION)" $$j; \
+ done
+
+move-to-fhs :: move-headers-to-fhs move-libs-to-fhs move-tools-to-fhs \
+ move-bundles-to-fhs
+
+after-install :: move-to-fhs
+
+endif
+2004-08-29 Helge Hess <helge.hess@opengroupware.org>
+
+ * added hack to install the project in FHS locations - the library,
+ its headers, the tools and the resources will be installed in
+ FHS_INSTALL_ROOT if specified (eg make FHS_INSTALL_ROOT=/usr/local)
+ (v4.3.3)
+
2004-08-23 Helge Hess <helge.hess@skyrix.com>
* v4.3.2
include $(GNUSTEP_MAKEFILES)/library.make
include $(GNUSTEP_MAKEFILES)/tool.make
-include GNUmakefile.postamble
+-include fhs.make
# version file
-SUBMINOR_VERSION:=2
+SUBMINOR_VERSION:=3
--- /dev/null
+# postprocessing
+
+# FHS support (this is a hack and is going to be done by gstep-make!)
+
+ifneq ($(FHS_INSTALL_ROOT),)
+
+FHS_INCLUDE_DIR=$(FHS_INSTALL_ROOT)/include/
+FHS_LIB_DIR=$(FHS_INSTALL_ROOT)/lib/
+FHS_BIN_DIR=$(FHS_INSTALL_ROOT)/bin/
+
+NONFHS_LIBDIR="$(GNUSTEP_LIBRARIES)/$(GNUSTEP_TARGET_LDIR)/"
+NONFHS_LIBNAME="$(LIBRARY_NAME)$(LIBRARY_NAME_SUFFIX)$(SHARED_LIBEXT)"
+NONFHS_BINDIR="$(GNUSTEP_TOOLS)/$(GNUSTEP_TARGET_LDIR)"
+
+
+fhs-header-dirs ::
+ $(MKDIRS) $(FHS_INCLUDE_DIR)$(libNGXmlRpc_HEADER_FILES_INSTALL_DIR)
+
+fhs-bin-dirs ::
+ $(MKDIRS) $(FHS_BIN_DIR)
+
+
+move-headers-to-fhs :: fhs-header-dirs
+ @echo "moving headers to $(FHS_INCLUDE_DIR) .."
+ mv $(GNUSTEP_HEADERS)$(libNGXmlRpc_HEADER_FILES_INSTALL_DIR)/*.h \
+ $(FHS_INCLUDE_DIR)$(libNGXmlRpc_HEADER_FILES_INSTALL_DIR)/
+
+move-libs-to-fhs ::
+ @echo "moving libs to $(FHS_LIB_DIR) .."
+ mv $(NONFHS_LIBDIR)/$(NONFHS_LIBNAME)* $(FHS_LIB_DIR)/
+
+move-tools-to-fhs :: fhs-bin-dirs
+ @echo "moving tools from $(NONFHS_BINDIR) to $(FHS_BIN_DIR) .."
+ for i in $(TOOL_NAME); do \
+ mv "$(NONFHS_BINDIR)/$${i}" $(FHS_BIN_DIR); \
+ done
+
+move-to-fhs :: move-headers-to-fhs move-libs-to-fhs move-tools-to-fhs
+
+after-install :: move-to-fhs
+
+endif
+2004-08-29 Helge Hess <helge.hess@opengroupware.org>
+
+ * added hack to install the project in FHS locations - the library,
+ its headers, the tools and the resources will be installed in
+ FHS_INSTALL_ROOT if specified (eg make FHS_INSTALL_ROOT=/usr/local)
+ (v4.3.7)
+
2004-08-29 Helge Hess <helge.hess@opengroupware.org>
* OFSResourceManager.m: fixed include for WOComponentDefinition.h
include $(GNUSTEP_MAKEFILES)/bundle.make
include $(GNUSTEP_MAKEFILES)/tool.make
-include GNUmakefile.postamble
+-include fhs.make
# version file
-SUBMINOR_VERSION:=6
+SUBMINOR_VERSION:=7
--- /dev/null
+# postprocessing
+
+# FHS support (this is a hack and is going to be done by gstep-make!)
+
+ifneq ($(FHS_INSTALL_ROOT),)
+
+FHS_INCLUDE_DIR=$(FHS_INSTALL_ROOT)/include/
+FHS_LIB_DIR=$(FHS_INSTALL_ROOT)/lib/
+FHS_BIN_DIR=$(FHS_INSTALL_ROOT)/bin/
+FHS_SO_DIR=$(FHS_LIB_DIR)sope-4.3/products/
+
+NONFHS_LIBDIR="$(GNUSTEP_LIBRARIES)/$(GNUSTEP_TARGET_LDIR)/"
+NONFHS_LIBNAME="$(LIBRARY_NAME)$(LIBRARY_NAME_SUFFIX)$(SHARED_LIBEXT)"
+NONFHS_BINDIR="$(GNUSTEP_TOOLS)/$(GNUSTEP_TARGET_LDIR)"
+
+
+fhs-header-dirs ::
+ $(MKDIRS) $(FHS_INCLUDE_DIR)$(libSoOFS_HEADER_FILES_INSTALL_DIR)
+
+fhs-bin-dirs ::
+ $(MKDIRS) $(FHS_BIN_DIR)
+
+fhs-products-dirs ::
+ $(MKDIRS) $(FHS_SO_DIR)
+
+
+move-headers-to-fhs :: fhs-header-dirs
+ @echo "moving headers to $(FHS_INCLUDE_DIR) .."
+ mv $(GNUSTEP_HEADERS)$(libSoOFS_HEADER_FILES_INSTALL_DIR)/*.h \
+ $(FHS_INCLUDE_DIR)$(libSoOFS_HEADER_FILES_INSTALL_DIR)/
+
+move-libs-to-fhs ::
+ @echo "moving libs to $(FHS_LIB_DIR) .."
+ mv $(NONFHS_LIBDIR)/$(NONFHS_LIBNAME)* $(FHS_LIB_DIR)/
+
+move-tools-to-fhs :: fhs-bin-dirs
+ @echo "moving tools from $(NONFHS_BINDIR) to $(FHS_BIN_DIR) .."
+ for i in $(TOOL_NAME); do \
+ mv "$(NONFHS_BINDIR)/$${i}" $(FHS_BIN_DIR); \
+ done
+
+move-bundles-to-fhs :: fhs-products-dirs
+ @echo "moving bundles $(BUNDLE_INSTALL_DIR) to $(FHS_SO_DIR) .."
+ for i in $(BUNDLE_NAME); do \
+ j="$(FHS_SO_DIR)/$${i}$(BUNDLE_EXTENSION)"; \
+ if test -d $$j; then rm -r $$j; fi; \
+ mv "$(BUNDLE_INSTALL_DIR)/$${i}$(BUNDLE_EXTENSION)" $$j; \
+ done
+
+move-to-fhs :: move-headers-to-fhs move-libs-to-fhs move-tools-to-fhs \
+ move-bundles-to-fhs
+
+after-install :: move-to-fhs
+
+endif
+2004-08-29 Helge Hess <helge.hess@opengroupware.org>
+
+ * added hack to install the project in FHS locations - the library,
+ its headers, the tools and the resources will be installed in
+ FHS_INSTALL_ROOT if specified (eg make FHS_INSTALL_ROOT=/usr/local)
+ (v4.3.58)
+
2004-08-24 Helge Hess <helge.hess@skyrix.com>
* install bundle in Library/WOxElemBuilders-4.3/ (v4.3.57)
include ../Version
include ./Version
-LIBRARY_NAME = libWEExtensions
-BUNDLE_NAME = WEExtensions
+LIBRARY_NAME = libWEExtensions
+BUNDLE_NAME = WEExtensions
+BUNDLE_EXTENSION = .wox
BUNDLE_INSTALL_DIR = $(GNUSTEP_INSTALLATION_DIR)/Library/WOxElemBuilders-4.3/
libWEExtensions_HEADER_FILES_DIR = .
include $(GNUSTEP_MAKEFILES)/library.make
include $(GNUSTEP_MAKEFILES)/bundle.make
-include GNUmakefile.postamble
+-include fhs.make
# $Id$
-SUBMINOR_VERSION:=57
+SUBMINOR_VERSION:=58
--- /dev/null
+# postprocessing
+
+# FHS support (this is a hack and is going to be done by gstep-make!)
+
+ifneq ($(FHS_INSTALL_ROOT),)
+
+FHS_INCLUDE_DIR=$(FHS_INSTALL_ROOT)/include/
+FHS_LIB_DIR=$(FHS_INSTALL_ROOT)/lib/
+FHS_BIN_DIR=$(FHS_INSTALL_ROOT)/bin/
+FHS_WOx_DIR=$(FHS_LIB_DIR)sope-4.3/wox-builders/
+
+NONFHS_LIBDIR="$(GNUSTEP_LIBRARIES)/$(GNUSTEP_TARGET_LDIR)/"
+NONFHS_LIBNAME="$(LIBRARY_NAME)$(LIBRARY_NAME_SUFFIX)$(SHARED_LIBEXT)"
+
+
+fhs-header-dirs ::
+ $(MKDIRS) $(FHS_INCLUDE_DIR)$(libWEExtensions_HEADER_FILES_INSTALL_DIR)
+
+fhs-wox-dirs ::
+ $(MKDIRS) $(FHS_WOx_DIR)
+
+
+move-headers-to-fhs :: fhs-header-dirs
+ @echo "moving headers to $(FHS_INCLUDE_DIR) .."
+ mv $(GNUSTEP_HEADERS)$(libWEExtensions_HEADER_FILES_INSTALL_DIR)/*.h \
+ $(FHS_INCLUDE_DIR)$(libWEExtensions_HEADER_FILES_INSTALL_DIR)/
+
+move-libs-to-fhs ::
+ @echo "moving libs to $(FHS_LIB_DIR) .."
+ mv $(NONFHS_LIBDIR)/$(NONFHS_LIBNAME)* $(FHS_LIB_DIR)/
+
+move-bundles-to-fhs :: fhs-wox-dirs
+ @echo "moving bundles $(BUNDLE_INSTALL_DIR) to $(FHS_WOx_DIR) .."
+ for i in $(BUNDLE_NAME); do \
+ j="$(FHS_WOx_DIR)/$${i}$(BUNDLE_EXTENSION)"; \
+ if test -d $$j; then rm -r $$j; fi; \
+ mv "$(BUNDLE_INSTALL_DIR)/$${i}$(BUNDLE_EXTENSION)" $$j; \
+ done
+
+move-to-fhs :: move-headers-to-fhs move-libs-to-fhs move-bundles-to-fhs
+
+after-install :: move-to-fhs
+
+endif
+2004-08-29 Helge Hess <helge.hess@opengroupware.org>
+
+ * added hack to install the project in FHS locations - the library,
+ its headers, the tools and the resources will be installed in
+ FHS_INSTALL_ROOT if specified (eg make FHS_INSTALL_ROOT=/usr/local)
+ (v4.3.19)
+
2004-08-24 Helge Hess <helge.hess@skyrix.com>
- * install bundle in Library/WOxElemBuilders-4.3/ (v4.3.57)
+ * install bundle in Library/WOxElemBuilders-4.3/ (v4.3.18)
- * v4.3.56
+ * v4.3.17
* added a bundle manager class (WOExtensionsBuilderModule)
include ../Version
include ./Version
-LIBRARY_NAME = libWOExtensions
-BUNDLE_NAME = WOExtensions
+LIBRARY_NAME = libWOExtensions
+BUNDLE_NAME = WOExtensions
+BUNDLE_EXTENSION = .wox
BUNDLE_INSTALL_DIR = $(GNUSTEP_INSTALLATION_DIR)/Library/WOxElemBuilders-4.3/
libWOExtensions_HEADER_FILES_DIR = .
include $(GNUSTEP_MAKEFILES)/library.make
include $(GNUSTEP_MAKEFILES)/bundle.make
-include GNUmakefile.postamble
+-include fhs.make
# $Id$
-SUBMINOR_VERSION:=17
+SUBMINOR_VERSION:=19
--- /dev/null
+# postprocessing
+
+# FHS support (this is a hack and is going to be done by gstep-make!)
+
+ifneq ($(FHS_INSTALL_ROOT),)
+
+FHS_INCLUDE_DIR=$(FHS_INSTALL_ROOT)/include/
+FHS_LIB_DIR=$(FHS_INSTALL_ROOT)/lib/
+FHS_BIN_DIR=$(FHS_INSTALL_ROOT)/bin/
+FHS_WOx_DIR=$(FHS_LIB_DIR)sope-4.3/wox-builders/
+
+NONFHS_LIBDIR="$(GNUSTEP_LIBRARIES)/$(GNUSTEP_TARGET_LDIR)/"
+NONFHS_LIBNAME="$(LIBRARY_NAME)$(LIBRARY_NAME_SUFFIX)$(SHARED_LIBEXT)"
+
+
+fhs-header-dirs ::
+ $(MKDIRS) $(FHS_INCLUDE_DIR)$(libWOExtensions_HEADER_FILES_INSTALL_DIR)
+
+fhs-wox-dirs ::
+ $(MKDIRS) $(FHS_WOx_DIR)
+
+
+move-headers-to-fhs :: fhs-header-dirs
+ @echo "moving headers to $(FHS_INCLUDE_DIR) .."
+ mv $(GNUSTEP_HEADERS)$(libWOExtensions_HEADER_FILES_INSTALL_DIR)/*.h \
+ $(FHS_INCLUDE_DIR)$(libWOExtensions_HEADER_FILES_INSTALL_DIR)/
+
+move-libs-to-fhs ::
+ @echo "moving libs to $(FHS_LIB_DIR) .."
+ mv $(NONFHS_LIBDIR)/$(NONFHS_LIBNAME)* $(FHS_LIB_DIR)/
+
+move-bundles-to-fhs :: fhs-wox-dirs
+ @echo "moving bundles $(BUNDLE_INSTALL_DIR) to $(FHS_WOx_DIR) .."
+ for i in $(BUNDLE_NAME); do \
+ j="$(FHS_WOx_DIR)/$${i}$(BUNDLE_EXTENSION)"; \
+ if test -d $$j; then rm -r $$j; fi; \
+ mv "$(BUNDLE_INSTALL_DIR)/$${i}$(BUNDLE_EXTENSION)" $$j; \
+ done
+
+move-to-fhs :: move-headers-to-fhs move-libs-to-fhs move-bundles-to-fhs
+
+after-install :: move-to-fhs
+
+endif