1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62
|
DESTDIR =
PREFIX = /usr
BINDIR = $(PREFIX)/bin
DATADIR = $(PREFIX)/share
PKGDATADIR = $(DATADIR)/gamine
DOCDIR = $(DATADIR)/doc/gamine
SYSCONFDIR = /etc
DESKTOPDIR = $(DATADIR)/applications
ICONDIR = $(DATADIR)/icons/hicolor/scalable/apps
LOCALEDIR = $(DATADIR)/locale
MANDIR = $(DATADIR)/man/man6
PKG_CONFIG ?= pkg-config
CFLAGS = -Wall -g `dpkg-buildflags --get CFLAGS`
CPPFLAGS = $(shell $(PKG_CONFIG) --cflags gtk+-3.0 cairo glib-2.0 gstreamer-1.0) -DDATADIR=\""$(PKGDATADIR)"\" -DLOCALDIR=\""$(LOCALEDIR)"\" -DSYSCONFDIR=\""$(SYSCONFDIR)"\"
CPPFLAGS += `dpkg-buildflags --get CPPFLAGS`
LDLIBS = $(shell $(PKG_CONFIG) --libs gtk+-3.0 cairo glib-2.0 gstreamer-1.0) -DDATADIR=\""$(PKGDATADIR)"\" -DLOCALDIR=\""$(LOCALEDIR)"\" -DSYSCONFDIR=\""$(SYSCONFDIR)"\" -lm
LDFLAGS = `dpkg-buildflags --get LDFLAGS`
CC = gcc
target = gamine
objs = gamine.o
langs = $(shell ls locale|grep -v pot|cut -d "." --field=1)
$(target): $(objs)
$(CC) -o $@ $^ $(LDFLAGS) $(LDLIBS)
for lang in $(langs); do msgfmt -c -o locale/$$lang.mo locale/$$lang.po; done
./gen_desktop.sh
%.o: %.c
$(CC) -o $@ -c $< $(CFLAGS) $(CPPFLAGS)
clean:
rm -f $(target) $(objs) *~ locale/*.mo locale/*~ *.desktop
install:
mkdir -p $(DESTDIR)$(BINDIR)
mkdir -p $(DESTDIR)$(PKGDATADIR)/sounds
mkdir -p $(DESTDIR)$(DOCDIR)
mkdir -p $(DESTDIR)$(ICONDIR)
mkdir -p $(DESTDIR)$(DESKTOPDIR)
mkdir -p $(DESTDIR)$(SYSCONFDIR)
mkdir -p $(DESTDIR)$(MANDIR)
for lang in $(langs); do mkdir -p $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES; done
install -m 755 gamine $(DESTDIR)$(BINDIR)/
install -m 644 pencil.png $(DESTDIR)$(PKGDATADIR)/
install -m 644 gamine.png $(DESTDIR)$(PKGDATADIR)/
install -m 644 sounds/* $(DESTDIR)$(PKGDATADIR)/sounds/
install -m 644 AUTHORS README.pencil README.sounds README.locale README ChangeLog COPYING $(DESTDIR)$(DOCDIR)/
install -m 644 gamine.conf $(DESTDIR)$(SYSCONFDIR)/
for lang in $(langs); do install -m 644 locale/$$lang.mo $(DESTDIR)$(LOCALEDIR)/$$lang/LC_MESSAGES/gamine.mo; done
install -m 644 gamine.desktop $(DESTDIR)$(DESKTOPDIR)/
install -m 644 gamine.svg $(DESTDIR)$(ICONDIR)/
install -m 644 gamine.6 $(DESTDIR)$(MANDIR)/
uninstall:
rm -f $(DESTDIR)$(BINDIR)/gamine
rm -rf $(DESTDIR)$(PKGDATADIR)
rm -rf $(DESTDIR)$(DOCDIR)
rm -f $(DESTDIR)$(DESKTOPDIR)/gamine.desktop
rm -f $(DESTDIR)$(ICONDIR)/gamine.svg
rm -f $(DESTDIR)$(MANDIR)/gamine*
rm -f $(DESTDIR)$(SYSCONFDIR)/gamine.conf
rm -f $(DESTDIR)$(LOCALEDIR)/*/LC_MESSAGES/gamine.mo
|