Update potfile
[clawsker.git] / Makefile
index 48b983496139d530387e4cf8a926720ae16d584f..18d364f79901a984d2d0b0033a1c137df4916656 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,41 +1,80 @@
 #
-# Clawsker makefile
-# $Id$
+# Clawsker Makefile
+# Copyright 2007-2016 Ricardo Mones <ricardo@mones.org>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# See COPYING file for license details.
 #
 
 NAME = clawsker
-VERSION = $(shell cat VERSION)
+VERSION ?= 0.7.13
 PREFIX ?= /usr/local
 BINDIR = ${PREFIX}/bin
 DATADIR = ${PREFIX}/share
 LIBDIR = ${PREFIX}/lib/${NAME}
 MANDIR = ${DATADIR}/man
 MAN1DIR = ${MANDIR}/man1
+APPSDIR = ${DATADIR}/applications
+THEMEDIR = ${DATADIR}/icons/hicolor
+ICONRES = 64 128
 
 all: build
 
 build:
        -mkdir build
-       sed -e "s,@PREFIX@,${PREFIX},;s,@LIBDIR@,${LIBDIR},;s,@VERSION@,${VERSION}," < ${NAME} > build/${NAME}
+       sed -e "s,@PREFIX@,${PREFIX},;s,@LIBDIR@,${LIBDIR},;s,@VERSION@,${VERSION},;s,@DATADIR@,${DATADIR}," < ${NAME} > build/${NAME}
        pod2man --release ${VERSION} -c '' ${NAME}.pod > build/${NAME}.1
        ${MAKE} -C po build
        
 
-install: all install-dirs
+install: all install-dirs install-icons
        install -m 0755 build/${NAME} ${DESTDIR}${BINDIR}
        install -m 0644 build/${NAME}.1 ${DESTDIR}${MAN1DIR}
+       install -m 0644 ${NAME}.desktop ${DESTDIR}${APPSDIR}
        ${MAKE} -C po install
 
-install-dirs:
+install-dirs: install-icons-dirs
        install -d ${DESTDIR}${BINDIR}
        install -d ${DESTDIR}${MAN1DIR}
+       install -d ${DESTDIR}${APPSDIR}
        ${MAKE} -C po install-dirs
 
-uninstall:
+install-icons-dirs:
+       install -d ${DESTDIR}${THEMEDIR}
+       for res in ${ICONRES}; do \
+               install -d ${DESTDIR}${THEMEDIR}/$${res}x$${res}/apps; \
+       done
+
+install-icons:
+       for res in ${ICONRES}; do \
+               install -m 0644 icons/${NAME}-$${res}.png ${DESTDIR}${THEMEDIR}/$${res}x$${res}/apps/${NAME}.png; \
+       done
+
+uninstall-icons:
+       for res in ${ICONRES}; do \
+               rm -f ${DESTDIR}${THEMEDIR}/$${res}x$${res}/apps/${NAME}.png; \
+       done
+
+uninstall: uninstall-icons
        rm -f ${DESTDIR}${BINDIR}/${NAME}
        rm -f ${DESTDIR}${MAN1DIR}/${NAME}.1
+       rm -f ${DESTDIR}${APPSDIR}/${NAME}.desktop
        ${MAKE} -C po uninstall
 
+dist:
+       rm -rf ${NAME}-${VERSION}
+       mkdir ${NAME}-${VERSION}
+       cp -p AUTHORS ChangeLog.old ${NAME} ${NAME}.pod ${NAME}.desktop \
+               COPYING Makefile NEWS README ${NAME}-${VERSION}
+       cp -rp po ${NAME}-${VERSION}
+       cp -rp icons ${NAME}-${VERSION}
+       tar cJf ${NAME}-${VERSION}.tar.xz ${NAME}-${VERSION} \
+               && rm -rf ${NAME}-${VERSION}
+
 clean-build:
        rm -rf build
 
@@ -43,5 +82,5 @@ clean: clean-build
        rm -f *~
        ${MAKE} -C po clean
 
-.PHONY: all build install install-dirs uninstall clean clean-build
+.PHONY: all build install install-dirs uninstall clean clean-build dist