mirror of https://codeberg.org/nsxiv/nsxiv
Overhauled building
- config.h -> config.def.h - Create config.h during make, if it does not exist - Nice make output - Use XFLAGS and XLIBS to include additional compile-time features, which depend on third-party librariespull/12/head
parent
8f34b7e95c
commit
b96c106337
@ -1,5 +1,6 @@
|
||||
config.h
|
||||
*.o
|
||||
sxiv
|
||||
cscope.out
|
||||
release
|
||||
tags
|
||||
release
|
||||
|
@ -1,30 +1,64 @@
|
||||
all: sxiv
|
||||
VERSION = git-20110908
|
||||
|
||||
VERSION = git-20110906
|
||||
|
||||
CC = gcc
|
||||
DESTDIR =
|
||||
PREFIX = /usr/local
|
||||
CFLAGS = -Wall -pedantic -O2 -DVERSION=\"$(VERSION)\" -DHAVE_GIFLIB
|
||||
CC = gcc
|
||||
CFLAGS = -Wall -pedantic -O2
|
||||
LDFLAGS =
|
||||
LIBS = -lX11 -lImlib2 -lgif
|
||||
LIBS = -lX11 -lImlib2
|
||||
|
||||
PREFIX = /usr/local
|
||||
MANPREFIX = $(PREFIX)/share/man
|
||||
|
||||
SRC = commands.c image.c main.c options.c thumbs.c util.c window.c
|
||||
OBJ = $(SRC:.c=.o)
|
||||
|
||||
sxiv: $(OBJ)
|
||||
$(CC) $(LDFLAGS) -o $@ $(OBJ) $(LIBS)
|
||||
all: options sxiv
|
||||
|
||||
$(OBJ): Makefile config.h
|
||||
options:
|
||||
@echo "sxiv build options:"
|
||||
@echo "CC = $(CC)"
|
||||
@echo "CFLAGS = $(CFLAGS)"
|
||||
@echo "XFLAGS = $(XFLAGS)"
|
||||
@echo "LDFLAGS = $(LDFLAGS)"
|
||||
@echo "XLIBS = $(XLIBS)"
|
||||
@echo "PREFIX = $(PREFIX)"
|
||||
|
||||
.c.o:
|
||||
$(CC) $(CFLAGS) -c -o $@ $<
|
||||
@echo "CC $<"
|
||||
@$(CC) $(CFLAGS) $(XFLAGS) -DVERSION=\"$(VERSION)\" -c -o $@ $<
|
||||
|
||||
install: all
|
||||
install -D -m 755 -o root -g root sxiv $(DESTDIR)$(PREFIX)/bin/sxiv
|
||||
mkdir -p $(DESTDIR)$(PREFIX)/share/man/man1
|
||||
sed "s/VERSION/$(VERSION)/g" sxiv.1 > $(DESTDIR)$(PREFIX)/share/man/man1/sxiv.1
|
||||
chmod 644 $(DESTDIR)$(PREFIX)/share/man/man1/sxiv.1
|
||||
$(OBJ): Makefile config.h
|
||||
|
||||
config.h:
|
||||
@echo "creating $@ from config.def.h"
|
||||
@cp config.def.h $@
|
||||
|
||||
sxiv: $(OBJ)
|
||||
@echo "CC -o $@"
|
||||
@$(CC) $(LDFLAGS) -o $@ $(OBJ) $(LIBS) $(XLIBS)
|
||||
|
||||
clean:
|
||||
rm -f $(OBJ) sxiv
|
||||
@echo "cleaning"
|
||||
@rm -f $(OBJ) sxiv sxiv-$(VERSION).tar.gz
|
||||
|
||||
dist: clean
|
||||
@echo "creating dist tarball"
|
||||
@mkdir -p sxiv-$(VERSION)
|
||||
@cp LICENSE Makefile Makefile.netbsd README.md config.def.h \
|
||||
sxiv.1 $(SRC) sxiv-$(VERSION)
|
||||
@tar -cf sxiv-$(VERSION).tar sxiv-$(VERSION)
|
||||
@gzip sxiv-$(VERSION).tar
|
||||
@rm -rf sxiv-$(VERSION)
|
||||
|
||||
install: all
|
||||
@echo "installing executable file to $(DESTDIR)$(PREFIX)/bin"
|
||||
@install -D -m 755 sxiv $(DESTDIR)$(PREFIX)/bin/sxiv
|
||||
@echo "installing manual page to $(DESTDIR)$(MANPREFIX)/man1"
|
||||
@mkdir -p $(DESTDIR)$(MANPREFIX)/man1
|
||||
@sed "s/VERSION/$(VERSION)/g" sxiv.1 > $(DESTDIR)$(MANPREFIX)/man1/sxiv.1
|
||||
@chmod 644 $(DESTDIR)$(MANPREFIX)/man1/sxiv.1
|
||||
|
||||
uninstall:
|
||||
@echo "removing executable file from $(DESTDIR)$(PREFIX)/bin"
|
||||
@rm -f $(DESTDIR)$(PREFIX)/bin/sxiv
|
||||
@echo "removing manual page from $(DESTDIR)$(MANPREFIX)/man1"
|
||||
@rm -f $(DESTDIR)$(MANPREFIX)/man1/sxiv.1
|
||||
|
@ -1,4 +1,4 @@
|
||||
.include "Makefile"
|
||||
|
||||
CFLAGS = -Wall -pedantic -O2 -DVERSION=\"$(VERSION)\" -DHAVE_GIFLIB -I/usr/X11R7/include -I/usr/pkg/include
|
||||
CFLAGS = -Wall -pedantic -O2 -I/usr/X11R7/include -I/usr/pkg/include
|
||||
LDFLAGS = -L/usr/X11R7/lib -Wl,-R/usr/X11R7/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib
|
||||
|
Loading…
Reference in New Issue