summaryrefslogtreecommitdiff
path: root/config.mk
blob: 35fdf4b37d9cdcc6272dd559bc7cc3c23bf47d6d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
PACKAGE ?= feh
VERSION ?= ${shell git describe --dirty}

app ?= 0
curl ?= 1
debug ?= 0
exif ?= 0
help ?= 0
mkstemps ?= 1
verscmp ?= 1
xinerama ?= 1

# Prefix for all installed files
PREFIX ?= /usr/local
ICON_PREFIX ?= ${DESTDIR}${PREFIX}/share/icons

# icons in /usr/share/local/icons (and other prefixes != /usr) are not
# generally supported. So ignore PREFIX and always install icons into
# /usr/share/icons if the user wants to install feh on their local machine.
ifeq (${app},1)
	ICON_PREFIX = /usr/share/icons
endif

# Directories for manuals, executables, docs, data, etc.
main_dir = ${DESTDIR}${PREFIX}
man_dir = ${main_dir}/share/man
bin_dir = ${main_dir}/bin
doc_dir = ${main_dir}/share/doc/feh
image_dir = ${main_dir}/share/feh/images
font_dir = ${main_dir}/share/feh/fonts
example_dir = ${main_dir}/share/doc/feh/examples
desktop_dir = ${main_dir}/share/applications
icon_dir = ${ICON_PREFIX}/hicolor
48_icon_dir = ${icon_dir}/48x48/apps
scalable_icon_dir = ${icon_dir}/scalable/apps

# default CFLAGS
CFLAGS ?= -g -O2
CFLAGS += -Wall -Wextra -pedantic

# Settings for glibc >= 2.19 - may need to be adjusted for other systems
CFLAGS += -std=c11 -D_POSIX_C_SOURCE=200809L -D_XOPEN_SOURCE=700

ifeq (${curl},1)
	CFLAGS += -DHAVE_LIBCURL
	LDLIBS += -lcurl
	MAN_CURL = enabled
else
	MAN_CURL = disabled
endif

ifeq (${debug},1)
	CFLAGS += -DDEBUG -O0
	MAN_DEBUG = This is a debug build.
else
	MAN_DEBUG = .
endif

ifeq (${help},1)
	CFLAGS += -DINCLUDE_HELP
endif

ifeq (${stat64},1)
	CFLAGS += -D_FILE_OFFSET_BITS=64
endif

ifeq (${mkstemps},1)
	CFLAGS += -DHAVE_MKSTEMPS
endif

ifeq (${verscmp},1)
	CFLAGS += -DHAVE_STRVERSCMP
endif

ifeq (${xinerama},1)
	CFLAGS += -DHAVE_LIBXINERAMA
	LDLIBS += -lXinerama
	MAN_XINERAMA = enabled
else
	MAN_XINERAMA = disabled
endif

ifeq (${exif},1)
	CFLAGS += -DHAVE_LIBEXIF
	LDLIBS += -lexif
	MAN_EXIF = available
else
	MAN_EXIF = not available
endif

ifeq (${inotify},1)
	CFLAGS += -DHAVE_INOTIFY
	MAN_INOTIFY = enabled
else
	MAN_INOTIFY = disabled
endif

MAN_DATE ?= ${shell date '+%B %d, %Y'}

# Uncomment this to use dmalloc
#CFLAGS += -DWITH_DMALLOC

CFLAGS += -DPREFIX=\"${PREFIX}\" \
	-DPACKAGE=\"${PACKAGE}\" -DVERSION=\"${VERSION}\"

LDLIBS += -lm -lpng -lX11 -lImlib2