|
From: <du...@co...> - 2008-05-22 19:24:36
|
Wed May 21 02:01:38 EDT 2008 Peter Gavin <pg...@gm...>
* gnomevfs: add conditional compilation based on version
move ./gnomevfs/System/Gnome/VFS.hs ./gnomevfs/System/Gnome/VFS.hs.pp
move ./gnomevfs/System/Gnome/VFS/FileInfo.chs ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp
move ./gnomevfs/System/Gnome/VFS/Types.chs ./gnomevfs/System/Gnome/VFS/Types.chs.pp
move ./gnomevfs/System/Gnome/VFS/Xfer.chs ./gnomevfs/System/Gnome/VFS/Xfer.chs.pp
move ./gnomevfs/gnomevfs.h ./gnomevfs/hsgnomevfs-2.14.h
hunk ./Makefile.am 22
+ gnomevfs/hsgnomevfs-2.16.h \
hunk ./Makefile.am 1701
-libHSgnomevfs_a_HEADER = gnomevfs/gnomevfs.h
+if HAVE_GNOME_VFS_VERSION_2_14
+libHSgnomevfs_a_HEADER = gnomevfs/hsgnomevfs-2.14.h
+else
+libHSgnomevfs_a_HEADER = libgnomevfs/gnome-vfs.h
+endif
hunk ./Makefile.am 1733
- gnomevfs/System/Gnome/VFS/Types.chs \
+ gnomevfs/System/Gnome/VFS/Types.chs.pp \
hunk ./Makefile.am 1738
- gnomevfs/System/Gnome/VFS/FileInfo.chs \
+ gnomevfs/System/Gnome/VFS/FileInfo.chs.pp \
hunk ./Makefile.am 1744
- gnomevfs/System/Gnome/VFS/Xfer.chs \
+ gnomevfs/System/Gnome/VFS/Xfer.chs.pp \
hunk ./Makefile.am 1749
- gnomevfs/System/Gnome/VFS/MIME.chs \
- gnomevfs/System/Gnome/VFS.hs
+ gnomevfs/System/Gnome/VFS.hs.pp
+
+if HAVE_GNOME_VFS_VERSION_2_14
+libHSgnomevfs_a_SOURCES += \
+ gnomevfs/System/Gnome/VFS/MIME.chs
+endif
hunk ./configure.ac 481
+dnl Also allow us to conditionally compile bindings to GnomeVFS APIs.
+GNOME_VFS_VERSION=`$PKG_CONFIG gnome-vfs-2.0 --modversion`
+GNOME_VFS_MAJOR_VERSION=`echo $GNOME_VFS_VERSION | $CUT -d. -f1`
+GNOME_VFS_MINOR_VERSION=`echo $GNOME_VFS_VERSION | $CUT -d. -f2`
+GNOME_VFS_MICRO_VERSION=`echo $GNOME_VFS_VERSION | $CUT -d. -f3`
+AC_DEFINE_UNQUOTED(_GNOME_VFS_MAJOR_VERSION, ($GNOME_VFS_MAJOR_VERSION), [Glib major version number])
+AC_DEFINE_UNQUOTED(_GNOME_VFS_MINOR_VERSION, ($GNOME_VFS_MINOR_VERSION), [Glib minor version number])
+AC_DEFINE_UNQUOTED(_GNOME_VFS_MICRO_VERSION, ($GNOME_VFS_MICRO_VERSION), [Glib minor patch level])
+AH_BOTTOM([
+/* Allow code to be compiled differently for different versions of Glib */
+#define GNOME_VFS_CHECK_VERSION(major,minor,micro) \
+ (_GNOME_VFS_MAJOR_VERSION > (major) || \
+ (_GNOME_VFS_MAJOR_VERSION == (major) && _GNOME_VFS_MINOR_VERSION > (minor)) || \
+ (_GNOME_VFS_MAJOR_VERSION == (major) && _GNOME_VFS_MINOR_VERSION == (minor) && \
+ _GNOME_VFS_MICRO_VERSION >= (micro)))
+])
+HAVE_GNOME_VFS_VERSION_2_14=`$PKG_CONFIG gnome-vfs-2.0 --atleast-version=2.14 && echo yes || echo no`
+AM_CONDITIONAL(HAVE_GNOME_VFS_VERSION_2_14, test "$HAVE_GNOME_VFS_VERSION_2_14" = "yes")
+
+
hunk ./gnomevfs/System/Gnome/VFS.hs.pp 40
+#if GNOME_VFS_CHECK_VERSION(2,14,0)
hunk ./gnomevfs/System/Gnome/VFS.hs.pp 42
+#endif
hunk ./gnomevfs/System/Gnome/VFS.hs.pp 59
+#if GNOME_VFS_CHECK_VERSION(2,14,0)
hunk ./gnomevfs/System/Gnome/VFS.hs.pp 61
+#endif
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 105
- [_$_]
+#if GNOME_VFS_CHECK_VERSION(2,14,0) [_$_]
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 110
+#else
+ uid <- liftM fromIntegral $ {# get GnomeVFSFileInfo->uid #} ptr
+ gid <- liftM fromIntegral $ {# get GnomeVFSFileInfo->gid #} ptr
+ let ids = Just (uid, gid)
+#endif
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 132
+#if GNOME_VFS_CHECK_VERSION(2,14,0)
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 135
+#endif
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 151
+#if GNOME_VFS_CHECK_VERSION(2,14,0)
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 153
+#endif
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 169
- mimeType) =
+#if GNOME_VFS_CHECK_VERSION(2,14,0)
+ mimeType
+#endif
+ ) =
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 226
- [_$_]
+
+#if GTK_CHECK_VERSION(2,14,0) [_$_]
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 235
+#endif
hunk ./gnomevfs/System/Gnome/VFS/FileInfo.chs.pp 289
+#if !GTK_CHECK_VERSION(2,14,0)
+ case ids of
+ Just (uid, gid) ->
+ do {# set GnomeVFSFileInfo->uid #} ptr $ fromIntegral uid
+ {# set GnomeVFSFileInfo->gid #} ptr $ fromIntegral gid
+ Nothing ->
+ return ()
+#endif
+
hunk ./gnomevfs/System/Gnome/VFS/Ops.chs.pp 55
+#if GNOME_VFS_CHECK_VERSION(2,12,0)
hunk ./gnomevfs/System/Gnome/VFS/Ops.chs.pp 57
+#endif
hunk ./gnomevfs/System/Gnome/VFS/Ops.chs.pp 211
+#if GNOME_VFS_CHECK_VERSION(2,12,0)
hunk ./gnomevfs/System/Gnome/VFS/Ops.chs.pp 222
+#endif
hunk ./gnomevfs/System/Gnome/VFS/Types.chs.pp 104
+#if GNOME_VFS_CHECK_VERSION(2,14,0)
hunk ./gnomevfs/System/Gnome/VFS/Types.chs.pp 106
+#endif
hunk ./gnomevfs/System/Gnome/VFS/Types.chs.pp 201
- fileInfoSymlinkName :: Maybe String, -- ^ the location this
+ fileInfoSymlinkName :: Maybe String -- ^ the location this
hunk ./gnomevfs/System/Gnome/VFS/Types.chs.pp 204
+#if GNOME_VFS_CHECK_VERSION(2,14,0)
+ ,
hunk ./gnomevfs/System/Gnome/VFS/Types.chs.pp 208
+#endif
hunk ./gnomevfs/System/Gnome/VFS/Types.chs.pp 496
+#if GNOME_VFS_CHECK_VERSION(2,14,0)
hunk ./gnomevfs/System/Gnome/VFS/Types.chs.pp 499
+#endif
hunk ./gnomevfs/System/Gnome/VFS/Xfer.chs.pp 46
- , XferTargetDefaultPerms ),
+#if GNOME_VFS_CHECK_VERSION(2,12,0)
+ , XferTargetDefaultPerms [_$_]
+#endif
+ ),
|