# makedist Makefile for installation and packaging # Copyright (c) 2003-2012 by Silvan Calarco # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. include makedist/VERSION package = makedist distdir = $(package)-$(makedist_version) dist_archive = $(package)-$(makedist_version).tar.bz2 prefix := /usr datadir := $(prefix)/share sysconfdir := /etc sbindir := $(prefix)/sbin localedir := $(datadir)/locale/ INSTALL = /usr/bin/install INSTALL_PROGRAM = ${INSTALL} -m 755 INSTALL_DATA = ${INSTALL} -m 644 INSTALL_DIR = ${INSTALL} -d -m 755 INSTALL_SCRIPT = ${INSTALL_PROGRAM} pck_catalogs := $(wildcard po/*/*.po) .po.mo:; msgfmt $< -o $@ .SUFFIXES: .SUFFIXES: .in .po .mo locales: $(pck_catalogs:.po=.mo) # TODO: test next time for integration: # xgettext -j bin/makedist-announcement.sh makedist/makedist-announcement --language=shell \ # --from-code=UTF-8 -p po/it/ --package-name makedist install-locales: locales @install -d $(DESTDIR)$(localedir) @for f in $(pck_catalogs); do\ lang=`echo $$f | sed 's,.*/\(.*\)\.po,\1,'`;\ echo "installing i18n file for language \`$$lang'...";\ dir="$(DESTDIR)$(localedir)/$$lang/LC_MESSAGES";\ $(INSTALL_DIR) $$dir;\ $(INSTALL_DATA) $${f/.po/.mo} $$dir/makedist.mo;\ done dist: clean @git log > ChangeLog.git @mkdir /tmp/$(distdir) cp -a * /tmp/$(distdir)/ @rm -f $(dist_archive) tar cf - -C /tmp $(distdir) | bzip2 -9 -c > $(dist_archive) @rm -rf /tmp/$(distdir) @echo "file \`$(dist_archive)' created" dist-rpm: dist @rpm_sourcedir=`rpm --eval=%{_sourcedir}`;\ mv -f $(package)-$(makedist_version).tar.bz2 $$rpm_sourcedir;\ echo "and saved as \`$$rpm_sourcedir/$(dist_archive)'" clean: @rm -fr $(dist_archive) install: install-locales @install -d $(DESTDIR)$(datadir);\ cp -a makedist $(DESTDIR)$(datadir)/;\ install -d $(DESTDIR)$(sysconfdir)/makedist;\ cp -a config/config $(DESTDIR)$(sysconfdir)/makedist/config;\ install -d $(DESTDIR)$(sysconfdir)/sysconfig;\ cp -a config/makedist $(DESTDIR)$(sysconfdir)/sysconfig/makedist;\ install -d $(DESTDIR)$(sysconfdir)/cron.daily;\ cp -a config/20-makedist-autobuild $(DESTDIR)$(sysconfdir)/cron.daily/20-makedist-autobuild;\ install -d $(DESTDIR)$(sbindir);\ cp -a bin/makedist-recordvm $(DESTDIR)$(sbindir)/makedist-recordvm cp -a bin/makedist-newrelease $(DESTDIR)$(sbindir)/makedist-newrelease cp -a bin/makedist-announcement $(DESTDIR)$(sbindir)/makedist-announcement