gallery/Makefile

68 lines
2.0 KiB
Makefile

.PHONY: clean install
CS_PATH ?= /usr
MY_CFLAGS+=-I$(CS_PATH)/include/ClearSilver $(CFLAGS)
MY_CFLAGS+=$(shell Wand-config --cflags --cppflags)
MY_LDFLAGS+=$(shell Wand-config --ldflags --libs) $(LDFLAGS)
MY_CFLAGS+=$(shell pkg-config --cflags json-c)
MY_LDFLAGS+=$(shell pkg-config --libs json-c)
MY_LDFLAGS+=-ljpeg -lz
MY_LDFLAGS+=-lneo_cgi -lneo_cs -lneo_utl
OBJS=obj/main.o obj/util.o obj/galleries.o obj/gallery.o obj/varray.o \
obj/photo.o obj/hdf-json.o obj/jpeg.o
VERSIONSTAMP=$(shell if [ -d .git ]; then git describe; else cat version; fi)
COMPILESTAMP=$(shell date "+%Y-%m-%d %H:%M:%S %z" )
gallery.cgi: $(OBJS)
$(CC) -o $@ $(OBJS) $(MY_LDFLAGS)
obj:
mkdir obj
obj/%.o: src/%.c include/%.h obj
$(CC) -DCOMPILESTAMP='"$(COMPILESTAMP)"' \
-DVERSIONSTAMP='"$(VERSIONSTAMP)"' \
$(MY_CFLAGS) -I include $(CPPFLAGS) -o $@ -c $<
clean:
rm -fr obj gallery.cgi
install: gallery.cgi
ifeq ($(DESTDIR),)
@echo "Usage:"
@echo " $(MAKE) install DESTDIR=/path/to/htdocs/dir"
@echo "Optionally, you may specify the www group"
@echo "with WWWGID so permissions are set appropriately."
@exit 1
else
@if [ -f $(DESTDIR)/gallery.cgi ]; then \
mv $(DESTDIR)/gallery.cgi \
$(DESTDIR)/gallery.cgi.old; \
fi
@install -m 0755 gallery.cgi $(DESTDIR)
@if [ ! -d $(DESTDIR)/templates ] || [ "$(FORCE)" = "1" ]; then \
install -m 0755 -d $(DESTDIR)/templates/images; \
find templates -type f -exec \
install -m 0644 "{}" "$(DESTDIR)/{}" \; \
|| exit 1; \
else \
echo "Template directory already exists."; \
echo "I'll skip installing templates to prevent"; \
echo "existing ones being clobbered. Run:"; \
echo -n " $(MAKE) install DESTDIR=$(DESTDIR) "; \
echo "WWWGID=$(WWWGID) FORCE=1"; \
echo "to force installation."; \
fi; \
if [ "$(FORCE)" = "1" ]; then \
echo "Template installation forced. If your site breaks, you"; \
echo "get to keep the pieces. ;-)"; \
fi
ifeq ($(WWWGID),)
@install -m 0777 -d $(DESTDIR)/cache
else
@install -m 0775 -g $(WWWGID) -d $(DESTDIR)/cache
endif
endif