X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=bindings%2Fpython%2Fnotmuch%2Fglobals.py;h=11e328b76c6e8fbb94997ddbf19bcb0d47b41dd2;hp=c7632c3266d428cc42ee43c652701df13c7364dd;hb=HEAD;hpb=8e3faa7f18d9ca87a77834d76f4b8db95669252b diff --git a/bindings/python/notmuch/globals.py b/bindings/python/notmuch/globals.py index c7632c32..11e328b7 100644 --- a/bindings/python/notmuch/globals.py +++ b/bindings/python/notmuch/globals.py @@ -12,22 +12,32 @@ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License -along with notmuch. If not, see . +along with notmuch. If not, see . Copyright 2010 Sebastian Spaeth """ from ctypes import CDLL, Structure, POINTER +from notmuch.version import SOVERSION #----------------------------------------------------------------------------- #package-global instance of the notmuch library try: - nmlib = CDLL("libnotmuch.so.3") + from os import uname + if uname()[0] == 'Darwin': + nmlib = CDLL("libnotmuch.{0:s}.dylib".format(SOVERSION)) + else: + nmlib = CDLL("libnotmuch.so.{0:s}".format(SOVERSION)) except: raise ImportError("Could not find shared 'notmuch' library.") from .compat import Python3StringMixIn, encode_utf8 as _str +# We import these on behalf of other modules. Silence warning about +# these symbols not being used. +Python3StringMixIn +_str + class Enum(object): """Provides ENUMS as "code=Enum(['a','b','c'])" where code.a=0 etc...""" def __init__(self, names): @@ -65,6 +75,11 @@ class NotmuchMessageS(Structure): NotmuchMessageP = POINTER(NotmuchMessageS) +class NotmuchMessagePropertiesS(Structure): + pass +NotmuchMessagePropertiesP = POINTER(NotmuchMessagePropertiesS) + + class NotmuchTagsS(Structure): pass NotmuchTagsP = POINTER(NotmuchTagsS) @@ -78,3 +93,13 @@ NotmuchDirectoryP = POINTER(NotmuchDirectoryS) class NotmuchFilenamesS(Structure): pass NotmuchFilenamesP = POINTER(NotmuchFilenamesS) + + +class NotmuchConfigListS(Structure): + pass +NotmuchConfigListP = POINTER(NotmuchConfigListS) + + +class NotmuchIndexoptsS(Structure): + pass +NotmuchIndexoptsP = POINTER(NotmuchIndexoptsS)