From db565e6ca775772d806f7a8c1c20a46af4e52385 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Thu, 15 Nov 2007 09:15:33 +0000 Subject: 0.3.1 release. Debian package building via 'make deb'. Idiomatic Python iteration. git-svn-id: http://svn.drobilla.net/lad/slv2@917 a436a847-0d15-0410-975c-d299462d15a1 --- Makefile.am | 7 +++++-- configure.ac | 3 ++- debian/changelog | 2 +- debian/control | 4 ++-- swig/lv2_list.py | 6 ++---- swig/slv2.i | 23 +++++++++++++++++++---- 6 files changed, 31 insertions(+), 14 deletions(-) diff --git a/Makefile.am b/Makefile.am index 19bf728..7a4fdab 100644 --- a/Makefile.am +++ b/Makefile.am @@ -13,8 +13,8 @@ dist-check-doxygen: @false endif -SUBDIRS = src slv2 utils hosts data $(DOC_DIR) swig -DIST_SUBDIRS = src slv2 utils hosts data doc swig +SUBDIRS = src slv2 utils hosts data $(DOC_DIR) swig debian +DIST_SUBDIRS = src slv2 utils hosts data doc swig debian pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = slv2.pc @@ -24,3 +24,6 @@ dist-hook: dist-check-doxygen distclean-local: rm -rf doc/slv2 rm -rf doc/reference.doxygen + +deb: + debuild -i --lintian-opts -i diff --git a/configure.ac b/configure.ac index 27a6317..c517aae 100644 --- a/configure.ac +++ b/configure.ac @@ -25,7 +25,7 @@ AM_INIT_AUTOMAKE # 0.1.0 = 2,0,0 # 0.2.0 = 3,0,0 # 0.3.0 = 4,0,0 -# current svn = 0.3.1 = 4,0,0 +# 0.3.1 = 4,0,0 SLV2_VERSION="0.3.1" SLV2_API_CURRENT="4" @@ -134,6 +134,7 @@ AC_CONFIG_FILES([data/lv2core.lv2/Makefile]) AC_CONFIG_FILES([slv2.pc]) AC_CONFIG_FILES([doc/Makefile]) AC_CONFIG_FILES([doc/reference.doxygen]) +AC_CONFIG_FILES([debian/Makefile]) AC_OUTPUT diff --git a/debian/changelog b/debian/changelog index 1686531..7a3fbca 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -slv2 (0.3.0) unstable; urgency=low +slv2 (0.3.1) unstable; urgency=low * Initial Debian Release. diff --git a/debian/control b/debian/control index bcdec15..82651d8 100644 --- a/debian/control +++ b/debian/control @@ -8,14 +8,14 @@ Section: libs Package: slv2-dev Section: libdevel Architecture: any -Depends: slv2 (= ${binary:Version}) +Depends: slv2 (= ${binary:Version}), librdf0-dev Description: Development files (headers) for SLV2 Files required for compiling programs which use SLV2. Package: slv2 Section: libs Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends} +Depends: ${shlibs:Depends}, ${misc:Depends}, librdf0 Description: A library for simple use of LV2 plugins SLV2 is a library geared towards music and audio applications which makes the use of LV2 plugins as simple as possible. diff --git a/swig/lv2_list.py b/swig/lv2_list.py index 0f6e248..4dc4f97 100755 --- a/swig/lv2_list.py +++ b/swig/lv2_list.py @@ -4,7 +4,5 @@ import slv2; w = slv2.World() w.load_all() -plugins = w.get_all_plugins() - -for i in range(0, plugins.size()): - print plugins[i].uri() +for p in w.get_all_plugins(): + print p.uri() diff --git a/swig/slv2.i b/swig/slv2.i index b044310..5020767 100644 --- a/swig/slv2.i +++ b/swig/slv2.i @@ -37,7 +37,7 @@ typedef struct { SLV2Plugin me; } Plugin; } ~Plugin() { - /* FIXME: free SLV2Plugin? */ + /* FIXME: free SLV2Plugin here? */ free($self); } @@ -45,7 +45,7 @@ typedef struct { SLV2Plugin me; } Plugin; const char* uri() { return slv2_plugin_get_uri($self->me); } }; -typedef struct { SLV2Plugins me; } Plugins; +typedef struct { SLV2World world; SLV2Plugins me; } Plugins; %extend Plugins { Plugins(SLV2World w, SLV2Plugins p) { Plugins* ret = malloc(sizeof(Plugins)); @@ -68,6 +68,23 @@ typedef struct { SLV2Plugins me; } Plugins; else return NULL; } + +%pythoncode %{ + def __iter__(self): + class Iterator(object): + def __init__(self, plugins): + self.plugins = plugins + self.iter = 0 + + def next(self): + if self.iter < self.plugins.size(): + self.iter += 1 + return Plugin(slv2_plugins_get_at(self.plugins.me, self.iter-1)) + else: + raise StopIteration + + return Iterator(self) +%} }; typedef struct { SLV2World me; } World; @@ -82,8 +99,6 @@ typedef struct { SLV2World me; } World; slv2_world_free($self->me); free($self); } - /*World() { $self->me = slv2_world_new(); } - ~World() { slv2_world_free($self->me); }*/ void load_all() { slv2_world_load_all($self->me); } void load_bundle(const char* path) { slv2_world_load_bundle($self->me, path); } -- cgit v1.2.1