]> err.no Git - sope/commitdiff
fixed compilation on MacOSX
authorhelge <helge@e4a50df8-12e2-0310-a44c-efbce7f8a7e3>
Thu, 24 Feb 2005 00:21:12 +0000 (00:21 +0000)
committerhelge <helge@e4a50df8-12e2-0310-a44c-efbce7f8a7e3>
Thu, 24 Feb 2005 00:21:12 +0000 (00:21 +0000)
added support for some date decoding

git-svn-id: http://svn.opengroupware.org/SOPE/trunk@594 e4a50df8-12e2-0310-a44c-efbce7f8a7e3

sope-gdl1/SQLite3/ChangeLog
sope-gdl1/SQLite3/GNUmakefile.preamble
sope-gdl1/SQLite3/NSCalendarDate+SQLiteVal.m
sope-gdl1/SQLite3/NSData+SQLiteVal.m
sope-gdl1/SQLite3/NSString+SQLiteVal.m
sope-gdl1/SQLite3/SQLiteValues.m
sope-gdl1/SQLite3/Version

index b05b4969e7fc6299daaf29250903c30063ad6df5..92d2ece98ea9e0720914ff8960eceae8abb0f512 100644 (file)
@@ -1,3 +1,16 @@
+2005-02-24  Helge Hess  <helge.hess@opengroupware.org>
+
+       * v4.5.13
+
+       * NSString+SQLiteVal.m: fixed a warning on MacOSX
+
+       * NSCalendarDate+SQLiteVal.m: added some support for creating
+         NSCalendarDate's from SQLite base types
+       
+       * SQLiteValues.m: fixed some MacOSX compile warning
+
+       * GNUmakefile.preamble: added missing bundle dependency on GDLAccess
+
 2005-02-21  Marcus Mueller  <znek@mulle-kybernetik.com>
 
        * v4.5.12
index ec1179d7197782b8afc21a8b2c06057818b1e250..d700c159e574988d318ea86488485ff819535700 100644 (file)
 # If not, write to the Free Software Foundation,
 # 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
 
-SQLite3_BUNDLE_LIBS += -lsqlite3
+SQLite3_BUNDLE_LIBS += \
+       -lGDLAccess     \
+       -lEOControl     \
+       -lsqlite3
 
 gdltest_TOOL_LIBS += \
        -lGDLAccess     \
@@ -36,9 +39,7 @@ ADDITIONAL_INCLUDE_DIRS += \
        -I/usr/include                  \
 
 ADDITIONAL_LIB_DIRS += \
-       -L../$(GNUSTEP_OBJ_DIR) \
-       -L/usr/local/lib        \
-       -L/usr/lib              \
+       -L../GDLAccess/$(GNUSTEP_OBJ_DIR)
 
 SYSTEM_LIB_DIR += \
        -L/usr/local/lib                \
index 7a4d147ca528bbe6ca2a1c7d5c6d287b118e6b48..2b4a81291381ebeaeef25c10eac457e0faf75236 100644 (file)
@@ -1,9 +1,39 @@
-// $Id: NSCalendarDate+SQLiteVal.m,v 1.1 2004/06/14 14:27:44 helge Exp $
+/* 
+   NSCalendarDate+SQLiteVal.m
+
+   Copyright (C) 2003-2005 SKYRIX Software AG
+
+   Author: Helge Hess (helge.hess@skyrix.com)
+
+   This file is part of the SQLite Adaptor Library
+
+   This library is free software; you can redistribute it and/or
+   modify it under the terms of the GNU Library General Public
+   License as published by the Free Software Foundation; either
+   version 2 of the License, or (at your option) any later version.
+
+   This library is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+   Library General Public License for more details.
+
+   You should have received a copy of the GNU Library General Public
+   License along with this library; see the file COPYING.LIB.
+   If not, write to the Free Software Foundation,
+   59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+*/
+
 
 #import <Foundation/NSString.h>
 #include "SQLiteChannel.h"
 #include "common.h"
 
+#if COCOA_Foundation_LIBRARY || NeXT_Foundation_LIBRARY
+@interface NSCalendarDate(UsedPrivates)
+- (id)initWithTimeIntervalSince1970:(NSTimeInterval)_tv;
+@end
+#endif
+
 static NSString *SQLITE3_DATETIME_FORMAT = @"%b %d %Y %I:%M:%S:000%p";
 
 @implementation NSCalendarDate(SQLiteValues)
@@ -22,12 +52,9 @@ static NSTimeZone *gmt   = nil;
 static NSTimeZone *gmt01 = nil;
 static NSTimeZone *gmt02 = nil;
 
-+ (id)valueFromCString:(const char *)_cstr length:(int)_length
-  sqlite3Type:(NSString *)_type
-  attribute:(EOAttribute *)_attribute
-  adaptorChannel:(SQLiteChannel *)_channel
-{
-  static unsigned char buf[28]; // reused buffer
+- (id)initWithSQLiteData:(const void *)_value length:(int)_length {
+  static unsigned char buf[28]; // reused buffer, THREAD
+  const char *_cstr = _value;
   unsigned char  *p;
   NSTimeZone     *attrTZ;
   NSCalendarDate *date;
@@ -37,10 +64,9 @@ static NSTimeZone *gmt02 = nil;
     return nil;
   
   if (_length != 22 && _length != 25) {
-    NSLog(@"ERROR(%s): unexpected string '%s' for date type '%@', returning now"
+    NSLog(@"ERROR(%s): unexpected date string '%s', returning now"
          @" (expected format: '2001-07-26 14:00:00+02')", 
-         __PRETTY_FUNCTION__,
-          _cstr, _type);
+         __PRETTY_FUNCTION__, _cstr);
     return [NSCalendarDate date];
   }
   strncpy(buf, _cstr, 25);
@@ -109,7 +135,7 @@ static NSTimeZone *gmt02 = nil;
   }
   }
   
-  if (NSCalDateClass == Nil) NSCalDateClass = [[NSCalendarDate class] retain];
+  if (NSCalDateClass == Nil) NSCalDateClass = [NSCalendarDate class];
   date = [NSCalDateClass dateWithYear:year month:month day:day
                         hour:hour minute:min second:sec
                         timeZone:attrTZ];
@@ -122,13 +148,18 @@ static NSTimeZone *gmt02 = nil;
   return date;
 }
 
-+ (id)valueFromBytes:(const void *)_bytes length:(int)_length
-  sqlite3Type:(NSString *)_type
-  attribute:(EOAttribute *)_attribute
-  adaptorChannel:(SQLiteChannel *)_channel
-{
-  return [self notImplemented:_cmd];
+- (id)initWithSQLiteDouble:(double)_value {
+  return [self initWithTimeIntervalSince1970:_value];
 }
+- (id)initWithSQLiteInt:(int)_value {
+  return [self initWithSQLiteDouble:_value];
+}
+
+- (id)initWithSQLiteText:(const unsigned char *)_value {
+  return [self initWithSQLiteData:_value length:strlen(_value)];
+}
+
+/* generating value */
 
 - (NSString *)stringValueForSQLite3Type:(NSString *)_type
   attribute:(EOAttribute *)_attribute
index a3e044b0c85ba97ace2f6473bdbb38135d5bb716..c1f871c7cf1fe70d7c36f60a38f75c6adafeccb6 100644 (file)
@@ -1,5 +1,5 @@
 /* 
-   SQLiteAdaptor.h
+   NSData+SQLiteVal.m
 
    Copyright (C) 2003-2005 SKYRIX Software AG
 
index 290c9d44cd78cd3085be53ddba0bf33c9fb64d61..31df0fdddc2b9fc0576031b024c96b013eaa8957 100644 (file)
@@ -24,6 +24,7 @@
 */
 
 #include "SQLiteChannel.h"
+#include <NGExtensions/NSString+Ext.h>
 #import <Foundation/NSString.h>
 #include "common.h"
 
index fdbe6c0509a73a26d57e857b9eb21226d345a17a..e02bf04cf683499d08a404052509273679259ac6 100644 (file)
                                     _obj,     @"object",
                     nil];
   
-  [self setName:@"DataTypeMappingNotSupported"];
-  [self setReason:r];
-
-  [self setUserInfo:ui];
-  return self;
+  return [self initWithName:@"DataTypeMappingNotSupported" reason:r
+              userInfo:ui];
 }
 
 @end /* SQLiteDataTypeMappingException */
index cda34ac9d72a5b695708435677454b874f6e337d..76aa6eb9f8fdde55c758b926567fd4e7d30b1f3b 100644 (file)
@@ -1,3 +1,3 @@
 # Version file
 
-SUBMINOR_VERSION:=12
+SUBMINOR_VERSION:=13