introduce config.mk
this moves all the build variables intended to be modified by the user over to `config.mk` similar to other suckless software. also move CPPFLAGS down below for cosmetic purposes.
This commit is contained in:
parent
450797c573
commit
197afce935
41
Makefile
41
Makefile
|
@ -1,39 +1,9 @@
|
||||||
.POSIX:
|
.POSIX:
|
||||||
|
|
||||||
# nsxiv version
|
include config.mk
|
||||||
VERSION = 29
|
|
||||||
|
|
||||||
# PREFIX for install
|
|
||||||
PREFIX = /usr/local
|
|
||||||
MANPREFIX = $(PREFIX)/share/man
|
|
||||||
EGPREFIX = $(PREFIX)/share/doc/nsxiv/examples
|
|
||||||
|
|
||||||
# default value for optional dependencies. 1 = enabled, 0 = disabled
|
|
||||||
OPT_DEP_DEFAULT = 1
|
|
||||||
|
|
||||||
# autoreload backend: 1 = inotify, 0 = none
|
|
||||||
HAVE_INOTIFY = $(OPT_DEP_DEFAULT)
|
|
||||||
|
|
||||||
# optional dependencies, see README for more info
|
|
||||||
HAVE_LIBFONTS = $(OPT_DEP_DEFAULT)
|
|
||||||
HAVE_LIBGIF = $(OPT_DEP_DEFAULT)
|
|
||||||
HAVE_LIBEXIF = $(OPT_DEP_DEFAULT)
|
|
||||||
HAVE_LIBWEBP = $(OPT_DEP_DEFAULT)
|
|
||||||
|
|
||||||
# CFLAGS, any optimization flags goes here
|
|
||||||
CFLAGS = -std=c99 -Wall -pedantic
|
|
||||||
|
|
||||||
# icons that will be installed via `make icon`
|
|
||||||
ICONS = 16x16.png 32x32.png 48x48.png 64x64.png 128x128.png
|
|
||||||
|
|
||||||
inc_fonts_0 =
|
inc_fonts_0 =
|
||||||
inc_fonts_1 = -I/usr/include/freetype2 -I$(PREFIX)/include/freetype2
|
inc_fonts_1 = -I/usr/include/freetype2 -I$(PREFIX)/include/freetype2
|
||||||
|
|
||||||
CPPFLAGS = -D_XOPEN_SOURCE=700 \
|
|
||||||
-DHAVE_LIBGIF=$(HAVE_LIBGIF) -DHAVE_LIBEXIF=$(HAVE_LIBEXIF) \
|
|
||||||
-DHAVE_LIBWEBP=$(HAVE_LIBWEBP) -DHAVE_LIBFONTS=$(HAVE_LIBFONTS) \
|
|
||||||
-DHAVE_INOTIFY=$(HAVE_INOTIFY) $(inc_fonts_$(HAVE_LIBFONTS))
|
|
||||||
|
|
||||||
lib_fonts_0 =
|
lib_fonts_0 =
|
||||||
lib_fonts_1 = -lXft -lfontconfig
|
lib_fonts_1 = -lXft -lfontconfig
|
||||||
lib_exif_0 =
|
lib_exif_0 =
|
||||||
|
@ -43,6 +13,11 @@ lib_gif_1 = -lgif
|
||||||
lib_webp_0 =
|
lib_webp_0 =
|
||||||
lib_webp_1 = -lwebpdemux -lwebp
|
lib_webp_1 = -lwebpdemux -lwebp
|
||||||
|
|
||||||
|
CPPFLAGS = -D_XOPEN_SOURCE=700 \
|
||||||
|
-DHAVE_LIBGIF=$(HAVE_LIBGIF) -DHAVE_LIBEXIF=$(HAVE_LIBEXIF) \
|
||||||
|
-DHAVE_LIBWEBP=$(HAVE_LIBWEBP) -DHAVE_LIBFONTS=$(HAVE_LIBFONTS) \
|
||||||
|
-DHAVE_INOTIFY=$(HAVE_INOTIFY) $(inc_fonts_$(HAVE_LIBFONTS))
|
||||||
|
|
||||||
NSXIV_LDLIBS = -lImlib2 -lX11 \
|
NSXIV_LDLIBS = -lImlib2 -lX11 \
|
||||||
$(lib_exif_$(HAVE_LIBEXIF)) $(lib_gif_$(HAVE_LIBGIF)) \
|
$(lib_exif_$(HAVE_LIBEXIF)) $(lib_gif_$(HAVE_LIBGIF)) \
|
||||||
$(lib_webp_$(HAVE_LIBWEBP)) $(lib_fonts_$(HAVE_LIBFONTS))
|
$(lib_webp_$(HAVE_LIBWEBP)) $(lib_fonts_$(HAVE_LIBFONTS))
|
||||||
|
@ -63,7 +38,7 @@ nsxiv: $(OBJS)
|
||||||
@echo "CC $@"
|
@echo "CC $@"
|
||||||
$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
|
$(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
|
||||||
|
|
||||||
$(OBJS): Makefile nsxiv.h config.h commands.h
|
$(OBJS): Makefile config.mk nsxiv.h config.h commands.h
|
||||||
options.o: version.h
|
options.o: version.h
|
||||||
window.o: icon/data.h
|
window.o: icon/data.h
|
||||||
|
|
||||||
|
@ -71,7 +46,7 @@ config.h:
|
||||||
@echo "GEN $@"
|
@echo "GEN $@"
|
||||||
cp config.def.h $@
|
cp config.def.h $@
|
||||||
|
|
||||||
version.h: Makefile .git/index
|
version.h: config.mk .git/index
|
||||||
@echo "GEN $@"
|
@echo "GEN $@"
|
||||||
v="$$(git describe 2>/dev/null || true)"; \
|
v="$$(git describe 2>/dev/null || true)"; \
|
||||||
echo "#define VERSION \"$${v:-$(VERSION)}\"" >$@
|
echo "#define VERSION \"$${v:-$(VERSION)}\"" >$@
|
||||||
|
|
|
@ -99,8 +99,8 @@ For example:
|
||||||
$ make HAVE_LIBEXIF=0
|
$ make HAVE_LIBEXIF=0
|
||||||
|
|
||||||
will disable `libexif` support. Alternatively they can be disabled via editing
|
will disable `libexif` support. Alternatively they can be disabled via editing
|
||||||
the `Makefile` directly. `OPT_DEP_DEFAULT=0` can be used to disable all
|
`config.mk`. `OPT_DEP_DEFAULT=0` can be used to disable all optional
|
||||||
optional dependencies.
|
dependencies.
|
||||||
|
|
||||||
Installing nsxiv:
|
Installing nsxiv:
|
||||||
|
|
||||||
|
|
25
config.mk
Normal file
25
config.mk
Normal file
|
@ -0,0 +1,25 @@
|
||||||
|
# nsxiv version
|
||||||
|
VERSION = 29
|
||||||
|
|
||||||
|
# PREFIX for install
|
||||||
|
PREFIX = /usr/local
|
||||||
|
MANPREFIX = $(PREFIX)/share/man
|
||||||
|
EGPREFIX = $(PREFIX)/share/doc/nsxiv/examples
|
||||||
|
|
||||||
|
# default value for optional dependencies. 1 = enabled, 0 = disabled
|
||||||
|
OPT_DEP_DEFAULT = 1
|
||||||
|
|
||||||
|
# autoreload backend: 1 = inotify, 0 = none
|
||||||
|
HAVE_INOTIFY = $(OPT_DEP_DEFAULT)
|
||||||
|
|
||||||
|
# optional dependencies, see README for more info
|
||||||
|
HAVE_LIBFONTS = $(OPT_DEP_DEFAULT)
|
||||||
|
HAVE_LIBGIF = $(OPT_DEP_DEFAULT)
|
||||||
|
HAVE_LIBEXIF = $(OPT_DEP_DEFAULT)
|
||||||
|
HAVE_LIBWEBP = $(OPT_DEP_DEFAULT)
|
||||||
|
|
||||||
|
# CFLAGS, any optimization flags goes here
|
||||||
|
CFLAGS = -std=c99 -Wall -pedantic
|
||||||
|
|
||||||
|
# icons that will be installed via `make icon`
|
||||||
|
ICONS = 16x16.png 32x32.png 48x48.png 64x64.png 128x128.png
|
Loading…
Reference in a new issue