Provided by: tuxpaint-dev_0.9.21-1.1ubuntu1_all
NAME
tp-magic-config -- Helps creating 'Magic' tool plugins for Tux Paint(1)
SYNOPSYS
tp-magic-config [--apiversion | --version | --cflags | --pluginprefix | --plugindocprefix | --dataprefix | --localpluginprefix | --localdataprefix]
DESCRIPTION
tp-magic-config is a simple shell script that responds with various pieces of information about the currently-installed version of Tux Paint(1) that are useful when building 'Magic' tool plugins.
OPTIONS
--apiversion Outputs the version of the Tux Paint 'Magic' tool plugin API that the installed copy of Tux Paint supports. (For API compatibility testing.) --version Outputs the version of Tux Paint that tp-magic-config corresponds to. --cflags Outputs the compiler flags that Tux Paint 'Magic' tool plugins should be compiled with. (For example, a "-I" include path option that tells the compiler where it can find the plugin API header file, "tp_magic_config.h", that plugins must #include.) --pluginprefix Outputs the system directory where the installed copy of Tux Paint expects to find 'Magic' tool plugins (".so" shared objects). (e.g., "/usr/share/tuxpaint/plugins") --localpluginprefix Outputs the user directory where the installed copy of Tux Paint expects to find 'Magic' tool plugins (".so" shared objects). (e.g., "/home/username/.tuxpaint/plugins") --plugindocprefix Outputs the directory where the installed copy of Tux Paint expects to find documentation for 'Magic' tool plugins (".html" and ".txt" files). Tux Paint's main documentation includes a link to this directory under the section on "Magic" tools. --dataprefix Outputs the system directory where the installed copy of Tux Paint keeps its global data files (e.g., "/usr/share/tuxpaint/"). This is the same value that plugins installed system-wide will receive in the "data_directory" string within the "magic_api" structure sent to the plugins' functions. --localdataprefix Outputs the user directory where the installed copy of Tux Paint expects plugins to install their local data files. (e.g., "/home/username/.tuxpaint/plugins/data"). This is the same value that plugins installed locally will receive in the "data_directory" string within the "magic_api" structure sent to the plugins' functions.
SYSTEM-WIDE SHELL EXAMPLES
$ gcc -shared `tp-magic-config --cflags` my_plugin.c -o my_plugin.so # cp my_plugin.so `tp-magic-config --pluginprefix` # cp my_plugin_icon.png `tp-magic-config --dataprefix`/images/magic # cp my_plugin.html `tp-magic-config --plugindocrefix`/html # cp my_plugin.txt `tp-magic-config --plugindocrefix`
LOCAL SHELL EXAMPLES
$ gcc -shared `tp-magic-config --cflags` my_plugin.c -o my_plugin.so $ mkdir -p `tp-magic-config --localpluginprefix` $ cp my_plugin.so `tp-magic-config --localpluginprefix` $ mkdir -p `tp-magic-config --localdataprefix`/images/magic $ cp my_plugin_icon.png `tp-magic-config --localdataprefix`/images/magic
SYSTEM-WIDE MAKEFILE EXAMPLE
MAGIC_CFLAGS=$(shell tp-magic-config --cflags) MAGIC_PREFIX=$(shell tp-magic-config --pluginprefix) MAGIC_DOC_PREFIX=$(shell tp-magic-config --plugindocprefix) DATA_PREFIX=$(shell tp-magic-config --dataprefix) all: my_plugin.so my_plugin.so: my_plugin.c install: install-so install-data install-docs install-so: mkdir -p $(MAGIC_PREFIX) cp my_plugin.so $(MAGIC_PREFIX)/ chmod 644 $(MAGIC_PREFIX)/my_plugin.so install-data: mkdir -p $(DATA_PREFIX) cp icons/my_plugin_icon.png $(DATA_PREFIX)/images/magic/ chmod 644 $(DATA_PREFIX)/images/magic/my_plugin_icon.png install-docs: mkdir -p $(MAGIC_DOC_PREFIX) cp docs/my_plugin.html $(MAGIC_DOC_PREFIX)/html/ chmod 644 $(MAGIC_DOC_PREFIX)/html/my_plugin.html cp docs/my_plugin.txt $(MAGIC_DOC_PREFIX)/ chmod 644 $(MAGIC_DOC_PREFIX)/my_plugin.txt
AUTHOR
Bill Kendrick. <bill@newbreedsoftware.com>
SEE ALSO
tuxpaint(1), And documentation within /usr/[local/]share/doc/tuxpaint/.