mirror of
https://git.pwmt.org/pwmt/zathura.git
synced 2024-12-29 13:05:59 +01:00
be7b4c1ad1
This gets rid of a lot of back and forth between zathura and the plugins. Signed-off-by: Sebastian Ramacher <sebastian+dev@ramacher.at>
155 lines
4.1 KiB
Makefile
155 lines
4.1 KiB
Makefile
# See LICENSE file for license and copyright information
|
|
# zathura make config
|
|
|
|
# project
|
|
PROJECT = zathura
|
|
|
|
ZATHURA_VERSION_MAJOR = 0
|
|
ZATHURA_VERSION_MINOR = 3
|
|
ZATHURA_VERSION_REV = 7
|
|
# If the API changes, the API version and the ABI version have to be bumped.
|
|
ZATHURA_API_VERSION = 2
|
|
# If the ABI breaks for any reason, this has to be bumped.
|
|
ZATHURA_ABI_VERSION = 3
|
|
VERSION = ${ZATHURA_VERSION_MAJOR}.${ZATHURA_VERSION_MINOR}.${ZATHURA_VERSION_REV}
|
|
|
|
# version checks
|
|
# If you want to disable any of the checks, set *_VERSION_CHECK to 0.
|
|
|
|
# girara
|
|
GIRARA_VERSION_CHECK ?= 1
|
|
GIRARA_MIN_VERSION = 0.2.7
|
|
GIRARA_PKG_CONFIG_NAME = girara-gtk3
|
|
# glib
|
|
GLIB_VERSION_CHECK ?= 1
|
|
GLIB_MIN_VERSION = 2.32
|
|
GLIB_PKG_CONFIG_NAME = glib-2.0
|
|
# GTK
|
|
GTK_VERSION_CHECK ?= 1
|
|
GTK_MIN_VERSION = 3.6
|
|
GTK_PKG_CONFIG_NAME = gtk+-3.0
|
|
|
|
# pkg-config binary
|
|
PKG_CONFIG ?= pkg-config
|
|
|
|
# database
|
|
# To disable support for the sqlite backend set WITH_SQLITE to 0.
|
|
WITH_SQLITE ?= $(shell (${PKG_CONFIG} --atleast-version=3.5.9 sqlite3 && echo 1) || echo 0)
|
|
|
|
# synctex
|
|
# To disable support for synctex with libsynctex set WITH_SYNCTEX to 0.
|
|
WITH_SYNCTEX ?= $(shell (${PKG_CONFIG} synctex && echo 1) || echo 0)
|
|
|
|
# mimetype detection
|
|
# To disable support for mimetype detction with libmagic set WITH_MAGIC to 0.
|
|
WITH_MAGIC ?= 1
|
|
|
|
# use local D-Bus interface
|
|
# Enable this if the D-Bus interface XML from data should be used (useful for
|
|
# development).
|
|
WITH_LOCAL_DBUS_XML ?= 0
|
|
|
|
# paths
|
|
PREFIX ?= /usr
|
|
MANPREFIX ?= ${PREFIX}/share/man
|
|
DESKTOPPREFIX ?= ${PREFIX}/share/applications
|
|
APPDATAPREFIX ?= ${PREFIX}/share/appdata
|
|
LIBDIR ?= ${PREFIX}/lib
|
|
INCLUDEDIR ?= ${PREFIX}/include
|
|
DBUSINTERFACEDIR ?= ${PREFIX}/share/dbus-1/interfaces
|
|
VIMFTPLUGINDIR ?= ${PREFIX}/share/vim/addons/ftplugin
|
|
DEPENDDIR ?= .depend
|
|
BUILDDIR ?= build
|
|
BUILDDIR_RELEASE ?= ${BUILDDIR}/release
|
|
BUILDDIR_DEBUG ?= ${BUILDDIR}/debug
|
|
BUILDDIR_GCOV ?= ${BUILDDIR}/gcov
|
|
BINDIR ?= bin
|
|
|
|
# plugin directory
|
|
PLUGINDIR ?= ${LIBDIR}/zathura
|
|
# locale directory
|
|
LOCALEDIR ?= ${PREFIX}/share/locale
|
|
|
|
# libs
|
|
GTK_INC ?= $(shell ${PKG_CONFIG} --cflags gtk+-3.0)
|
|
GTK_LIB ?= $(shell ${PKG_CONFIG} --libs gtk+-3.0)
|
|
|
|
GTHREAD_INC ?= $(shell ${PKG_CONFIG} --cflags gthread-2.0)
|
|
GTHREAD_LIB ?= $(shell ${PKG_CONFIG} --libs gthread-2.0)
|
|
|
|
GMODULE_INC ?= $(shell ${PKG_CONFIG} --cflags gmodule-no-export-2.0)
|
|
GMODULE_LIB ?= $(shell ${PKG_CONFIG} --libs gmodule-no-export-2.0)
|
|
|
|
GLIB_INC ?= $(shell ${PKG_CONFIG} --cflags glib-2.0)
|
|
GLIB_LIB ?= $(shell ${PKG_CONFIG} --libs glib-2.0)
|
|
|
|
GIRARA_INC ?= $(shell ${PKG_CONFIG} --cflags girara-gtk3)
|
|
GIRARA_LIB ?= $(shell ${PKG_CONFIG} --libs girara-gtk3)
|
|
|
|
ifneq (${WITH_SQLITE},0)
|
|
SQLITE_INC ?= $(shell ${PKG_CONFIG} --cflags sqlite3)
|
|
SQLITE_LIB ?= $(shell ${PKG_CONFIG} --libs sqlite3)
|
|
endif
|
|
|
|
ifneq (${WITH_MAGIC},0)
|
|
MAGIC_INC ?=
|
|
MAGIC_LIB ?= -lmagic
|
|
endif
|
|
|
|
ifneq ($(WITH_SYNCTEX),0)
|
|
SYNCTEX_INC ?= $(shell ${PKG_CONFIG} --cflags synctex)
|
|
SYNCTEX_LIB ?= $(shell ${PKG_CONFIG} --libs synctex)
|
|
endif
|
|
|
|
INCS = ${GIRARA_INC} ${GTK_INC} ${GTHREAD_INC} ${GMODULE_INC} ${GLIB_INC}
|
|
LIBS = ${GIRARA_LIB} ${GTK_LIB} ${GTHREAD_LIB} ${GMODULE_LIB} ${GLIB_LIB} -lpthread -lm
|
|
|
|
# pre-processor flags
|
|
CPPFLAGS += -D_FILE_OFFSET_BITS=64
|
|
|
|
# compiler flags
|
|
CFLAGS += -std=c11 -pedantic -Wall -Wno-format-zero-length -Wextra $(INCS)
|
|
|
|
# debug
|
|
DFLAGS ?= -g
|
|
|
|
# linker flags
|
|
LDFLAGS += -rdynamic
|
|
|
|
# compiler
|
|
CC ?= gcc
|
|
|
|
# strip
|
|
SFLAGS ?= -s
|
|
|
|
# msgfmt
|
|
MSGFMT ?= msgfmt
|
|
|
|
# gcov & lcov
|
|
GCOV_CFLAGS=-fprofile-arcs -ftest-coverage
|
|
GCOV_LDFLAGS=-fprofile-arcs
|
|
LCOV_OUTPUT=gcov
|
|
LCOV_EXEC=lcov
|
|
LCOV_FLAGS=--base-directory . --directory ${BUILDDIR_GCOV} --capture --rc \
|
|
lcov_branch_coverage=1 --output-file ${BUILDDIR_GCOV}/$(PROJECT).info
|
|
GENHTML_EXEC=genhtml
|
|
GENHTML_FLAGS=--rc lcov_branch_coverage=1 --output-directory ${LCOV_OUTPUT} ${BUILDDIR_GCOV}/$(PROJECT).info
|
|
|
|
# valgrind
|
|
VALGRIND = valgrind
|
|
VALGRIND_ARGUMENTS = --tool=memcheck --leak-check=yes --leak-resolution=high \
|
|
--show-reachable=yes --log-file=zathura-valgrind.log
|
|
VALGRIND_SUPPRESSION_FILE = zathura.suppression
|
|
|
|
# set to something != 0 if you want verbose build output
|
|
VERBOSE ?= 0
|
|
|
|
# gettext package name
|
|
GETTEXT_PACKAGE ?= ${PROJECT}
|
|
|
|
# colors
|
|
COLOR ?= 1
|
|
|
|
# dist
|
|
TARFILE = ${PROJECT}-${VERSION}.tar.gz
|
|
TARDIR = ${PROJECT}-${VERSION}
|