I am considering splitting libmypaint out of the Debian packages I'm
working on so that authors of other apps can depend on it more
conveniently, and so that other packages can depend on just the lib
(possibly only at compile time). Can I confirm a few details?

* Can I assume that the version number is the same as that of MyPaint?
* Can I also assume that libmypaint is always built correctly as part
of a normal MyPaint build (looks like I can)?
* Is it the authors' intent that only a static library, libmypaint.a,
is available for 1.1.0? I am assuming this is the case.
* Should the package name be libmypaint, or libmypaint-brushlib?
* I am assuming that brushlib will be moving to a dynamic library
"soon" in order to support GI-style introspection.

Other than the brushes (which I intend to package separately because
the mypaint app uses them too), the following files are installed by a
"brushlib_only=yes" build. That's a good starting point for thinking
about this division. I intend to package the files as follows:

> PREFIX/include/libmypaint/mypaint-tiled-surface.h
> PREFIX/include/libmypaint/mypaint-brush.h
> PREFIX/include/libmypaint/mypaint-glib-compat.h
> PREFIX/include/libmypaint/mypaint-surface.h
> PREFIX/include/libmypaint/mypaint-config.h
> PREFIX/include/libmypaint/glib/mypaint-brush.h
> PREFIX/include/libmypaint/mypaint-brush-settings-gen.h
> PREFIX/include/libmypaint/mypaint-brush-settings.h
> PREFIX/include/libmypaint/mypaint-fixed-tiled-surface.h

Headers for the static libmypaint.a, and only that, I assume. I'll
bundle the entirety of PREFIX/include/libmypaint/** as part of a
libmypaint[-brushlib]-dev package.

> PREFIX/share/mypaint/brushlib/__init__.py
> PREFIX/share/mypaint/brushlib/brushsettings.json
> PREFIX/share/mypaint/brushlib/brushsettings.py

JSON definitions of the brush settings; a runtime requirement for
using libmypaint, and a Python interface to it. Both could be used by
apps other than MyPaint. I intend to package these and the .mo files
below as libmypaint[-brushlib], describing it as an
architecture-specific requirement for programs statically linked with
libmypaint. Hope that's right.

> PREFIX/share/mypaint/brushlib/generate.py

This file appears to be here in error, and I'll probably be removing
it from the packages. It's used at compile time for constructing the
-gen.h files, and that's it. If I understand recent changes in master
correctly, it's being replaced by a scons Command.

> PREFIX/share/locale/fr/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/id/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/ru/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/pt_BR/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/nn_NO/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/ro/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/en_CA/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/pl/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/it/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/cs/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/ja/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/zh_TW/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/zh_CN/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/sl/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/ko/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/uk/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/de/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/hu/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/sv/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/nb/LC_MESSAGES/libmypaint.mo
> PREFIX/share/locale/es/LC_MESSAGES/libmypaint.mo

As described above: runtime requirements, packaged with the JSON
stuff. GNU message catalogs appear to be endian-specific, so
libmypaint[-brushlib] will be marked as architecture-specific for this
reason and in expectation of a .so version, and whatever gir magic is
needed.

> PREFIX/lib/pkgconfig/libmypaint.pc
> PREFIX/lib/libmypaint.a

Compile-time requirement for programs statically linked with
libmypaint[-brushlib], part of the -dev package.

-- 
Andrew Chadwick

_______________________________________________
Mypaint-discuss mailing list
[email protected]
https://mail.gna.org/listinfo/mypaint-discuss

Reply via email to