mirror of
https://git.pwmt.org/pwmt/zathura.git
synced 2024-12-28 06:26:01 +01:00
Generate introspection data from XML file
Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
This commit is contained in:
parent
8d2e331b1a
commit
7e2c0f2e1e
4 changed files with 54 additions and 17 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -18,3 +18,4 @@ doc/
|
||||||
zathura.1
|
zathura.1
|
||||||
zathurarc.5
|
zathurarc.5
|
||||||
.version-checks/
|
.version-checks/
|
||||||
|
dbus-interface-definitions.c
|
||||||
|
|
31
Makefile
31
Makefile
|
@ -4,7 +4,7 @@ include config.mk
|
||||||
include common.mk
|
include common.mk
|
||||||
|
|
||||||
PROJECT = zathura
|
PROJECT = zathura
|
||||||
OSOURCE = $(wildcard *.c)
|
OSOURCE = $(filter-out dbus-interface-definitions.c, $(wildcard *.c))
|
||||||
HEADER = $(wildcard *.h)
|
HEADER = $(wildcard *.h)
|
||||||
HEADERINST = version.h document.h macros.h page.h types.h plugin-api.h links.h
|
HEADERINST = version.h document.h macros.h page.h types.h plugin-api.h links.h
|
||||||
|
|
||||||
|
@ -37,8 +37,8 @@ ifeq (,$(findstring -DLOCALEDIR,${CPPFLAGS}))
|
||||||
CPPFLAGS += -DLOCALEDIR=\"${LOCALEDIR}\"
|
CPPFLAGS += -DLOCALEDIR=\"${LOCALEDIR}\"
|
||||||
endif
|
endif
|
||||||
|
|
||||||
OBJECTS = $(patsubst %.c, %.o, $(SOURCE))
|
OBJECTS = $(patsubst %.c, %.o, $(SOURCE)) dbus-interface-definitions.o
|
||||||
DOBJECTS = $(patsubst %.c, %.do, $(SOURCE))
|
DOBJECTS = $(patsubst %.o, %.do, $(OBJECTS))
|
||||||
|
|
||||||
all: options ${PROJECT} po build-manpages
|
all: options ${PROJECT} po build-manpages
|
||||||
|
|
||||||
|
@ -64,7 +64,14 @@ version.h: version.h.in config.mk
|
||||||
-e 's/ZVMINOR/${ZATHURA_VERSION_MINOR}/' \
|
-e 's/ZVMINOR/${ZATHURA_VERSION_MINOR}/' \
|
||||||
-e 's/ZVREV/${ZATHURA_VERSION_REV}/' \
|
-e 's/ZVREV/${ZATHURA_VERSION_REV}/' \
|
||||||
-e 's/ZVAPI/${ZATHURA_API_VERSION}/' \
|
-e 's/ZVAPI/${ZATHURA_API_VERSION}/' \
|
||||||
-e 's/ZVABI/${ZATHURA_ABI_VERSION}/' version.h.in > version.h
|
-e 's/ZVABI/${ZATHURA_ABI_VERSION}/' version.h.in > version.h.tmp
|
||||||
|
$(QUIET)mv version.h.tmp version.h
|
||||||
|
|
||||||
|
dbus-interface-definitions.c: data/org.pwmt.zathura.xml
|
||||||
|
$(QUIET)echo "const char* DBUS_INTERFACE_XML =" > dbus-interface-definitions.c.tmp
|
||||||
|
$(QUIET)sed 's/^\(.*\)$$/"\1\\n"/' data/org.pwmt.zathura.xml >> dbus-interface-definitions.c.tmp
|
||||||
|
$(QUIET)echo ";" >> dbus-interface-definitions.c.tmp
|
||||||
|
$(QUIET)mv dbus-interface-definitions.c.tmp dbus-interface-definitions.c
|
||||||
|
|
||||||
%.o: %.c
|
%.o: %.c
|
||||||
$(ECHO) CC $<
|
$(ECHO) CC $<
|
||||||
|
@ -84,8 +91,18 @@ ${PROJECT}: ${OBJECTS}
|
||||||
$(QUIET)${CC} ${SFLAGS} ${LDFLAGS} -o $@ ${OBJECTS} ${LIBS}
|
$(QUIET)${CC} ${SFLAGS} ${LDFLAGS} -o $@ ${OBJECTS} ${LIBS}
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(QUIET)rm -rf ${PROJECT} ${OBJECTS} ${PROJECT}-${VERSION}.tar.gz \
|
$(QUIET)rm -rf ${PROJECT} \
|
||||||
${DOBJECTS} ${PROJECT}-debug .depend ${PROJECT}.pc doc version.h \
|
${OBJECTS} \
|
||||||
|
${PROJECT}-${VERSION}.tar.gz \
|
||||||
|
${DOBJECTS} \
|
||||||
|
${PROJECT}-debug \
|
||||||
|
.depend \
|
||||||
|
${PROJECT}.pc \
|
||||||
|
doc \
|
||||||
|
version.h \
|
||||||
|
version.h.tmp \
|
||||||
|
dbus-interface-definitions.c \
|
||||||
|
dbus-interface-definitions.c.tmp \
|
||||||
*gcda *gcno $(PROJECT).info gcov *.tmp \
|
*gcda *gcno $(PROJECT).info gcov *.tmp \
|
||||||
.version-checks
|
.version-checks
|
||||||
ifneq "$(wildcard ${RSTTOMAN})" ""
|
ifneq "$(wildcard ${RSTTOMAN})" ""
|
||||||
|
@ -188,7 +205,7 @@ install-headers: ${PROJECT}.pc
|
||||||
install-dbus:
|
install-dbus:
|
||||||
$(ECHO) installing D-Bus interface definitions
|
$(ECHO) installing D-Bus interface definitions
|
||||||
$(QUIET)mkdir -m 755 -p $(DESTDIR)$(DBUSINTERFACEDIR)
|
$(QUIET)mkdir -m 755 -p $(DESTDIR)$(DBUSINTERFACEDIR)
|
||||||
$(QUIET)install -m 644 data/org.pwmt.zathura.synctex.xml $(DESTDIR)$(DBUSINTERFACEDIR)
|
$(QUIET)install -m 644 data/org.pwmt.zathura.xml $(DESTDIR)$(DBUSINTERFACEDIR)
|
||||||
|
|
||||||
install-vimftplugin:
|
install-vimftplugin:
|
||||||
$(ECHO) installing Vim filetype plugin
|
$(ECHO) installing Vim filetype plugin
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
<!DOCTYPE node PUBLIC "-//freedesktop//DTD D-BUS Object Introspection 1.0//EN" "http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd">
|
|
||||||
<node>
|
|
||||||
<interface name='org.pwmt.zathura.synctex'>
|
|
||||||
<method name='View'>
|
|
||||||
<arg type='s' name='position' direction='in' />
|
|
||||||
<arg type='b' name='return' direction='out' />
|
|
||||||
</method>
|
|
||||||
<property type='s' name='filename' access='read' />
|
|
||||||
</interface>
|
|
||||||
</node>
|
|
29
data/org.pwmt.zathura.xml
Normal file
29
data/org.pwmt.zathura.xml
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
<!DOCTYPE node PUBLIC '-//freedesktop//DTD D-BUS Object Introspection 1.0//EN'
|
||||||
|
'http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd'>
|
||||||
|
<node>
|
||||||
|
<interface name='org.pwmt.zathura'>
|
||||||
|
<!-- Open a document in a running zathura instance. -->
|
||||||
|
<method name='OpenDocument'>
|
||||||
|
<arg type='s' name='path' direction='in' />
|
||||||
|
<arg type='s' name='password' direction='in' />
|
||||||
|
<arg type='i' name='page' direction='in' />
|
||||||
|
<arg type='b' name='return' direction='out' />
|
||||||
|
</method>
|
||||||
|
<!-- Close open document. -->
|
||||||
|
<method name='CloseDocument'>
|
||||||
|
<arg type='b' name='return' direction='out' />
|
||||||
|
</method>
|
||||||
|
<!-- Go to a specific page . -->
|
||||||
|
<method name='GotoPage'>
|
||||||
|
<arg type='i' name='page' direction='in' />
|
||||||
|
<arg type='b' name='return' direction='out' />
|
||||||
|
</method>
|
||||||
|
<!-- Go to a page and highlight rectangles there. -->
|
||||||
|
<method name='HighlightRects'>
|
||||||
|
<arg type='i' name='page' direction='in' />
|
||||||
|
<arg type='a(dddd)' name='rectangles' direction='out' />
|
||||||
|
<arg type='b' name='return' direction='out' />
|
||||||
|
</method>
|
||||||
|
<property type='s' name='filename' access='read' />
|
||||||
|
</interface>
|
||||||
|
</node>
|
Loading…
Reference in a new issue