PREFIX=/usr/local
DATADIR=$(PREFIX)/share/micropolis
-LIBEXECDIR=$(PREFIX)/libexec
+LIBEXECDIR=$(PREFIX)/libexec/micropolis
BINDIR=$(PREFIX)/bin
DOCDIR=$(PREFIX)/share/doc/micropolis
+PIXMAPDIR=$(PREFIX)/share/pixmaps
+APPLICATIONSDIR=$(PREFIX)/share/applications
INSTALL=install
DIRS= $(DESTDIR)/$(DATADIR)/res/sounds $(DESTDIR)/$(DATADIR)/res/dejavu-lgc \
$(DESTDIR)/$(DATADIR)/images $(DESTDIR)/$(DATADIR)/cities \
- $(DESTDIR)/$(LIBEXECDIR) $(DESTDIR)/$(BINDIR) $(DESTDIR)/$(DOCDIR)
+ $(DESTDIR)/$(LIBEXECDIR) $(DESTDIR)/$(BINDIR) $(DESTDIR)/$(DOCDIR) \
+ $(DESTDIR)/$(PIXMAPDIR) $(DESTDIR)/$(APPLICATIONSDIR)
RES= res/buildidx.tcl res/button.tcl res/entry.tcl res/help.tcl res/hexa.112 \
res/hexa.232 res/hexa.384 res/hexa.385 res/hexa.386 res/hexa.387 \
cd src/tclx && $(MAKE) MAKEFLAGS= $@
rm -f res/sim
-install: res/sim install-dirs install-bin install-res install-images install-cities install-doc
+install: res/sim install-dirs install-bin install-res install-images \
+ install-cities install-doc install-desktop
install-dirs:
$(INSTALL) -d $(DIRS)
install-bin:
$(INSTALL) -m 0755 res/sim $(DESTDIR)/$(LIBEXECDIR)/sim
$(INSTALL) -m 0755 res/sounds/player $(DESTDIR)/$(DATADIR)/res/sounds/player
- echo "SIMHOME=$(DATADIR); export SIMHOME" >$(DESTDIR)/$(BINDIR)/Micropolis
- echo "echo \"Starting Micropolis in \$${SIMHOME} ... \"" >>$(DESTDIR)/$(BINDIR)/Micropolis
- echo "cd $(DATADIR) && $(LIBEXECDIR)/sim \$$*" >>$(DESTDIR)/$(BINDIR)/Micropolis
- chmod 755 $(DESTDIR)/$(BINDIR)/Micropolis
+ echo "#!/bin/sh" >$(DESTDIR)/$(BINDIR)/micropolis
+ echo "SIMHOME=$(DATADIR); export SIMHOME" >>$(DESTDIR)/$(BINDIR)/micropolis
+ echo "echo \"Starting Micropolis in \$${SIMHOME} ... \"" >>$(DESTDIR)/$(BINDIR)/micropolis
+ echo "cd $(DATADIR) && exec $(LIBEXECDIR)/sim \"\$$@\"" >>$(DESTDIR)/$(BINDIR)/micropolis
+ chmod 755 $(DESTDIR)/$(BINDIR)/micropolis
install-res: install-res-sounds install-res-dejavu-lgc
for file in $(RES); do \
install-doc:
find manual -type f -exec $(INSTALL) -m 0644 {} $(DESTDIR)/$(DOCDIR)/ \;
+install-desktop:
+ $(INSTALL) -m 0644 Micropolis.desktop $(DESTDIR)/$(APPLICATIONSDIR)/micropolis.desktop
+ $(INSTALL) -m 0644 Micropolis.png $(DESTDIR)/$(PIXMAPDIR)/micropolis.png
+
+uninstall:
+ rm -f $(DESTDIR)/$(BINDIR)/micropolis
+ rm -f $(DESTDIR)/$(LIBEXECDIR)/sim
+ -rmdir $(DESTDIR)/$(LIBEXECDIR)
+ rm -f $(DESTDIR)/$(DATADIR)/res/sounds/player
+ rm -f $(DESTDIR)/$(DATADIR)/res/sounds/*.wav
+ -rmdir $(DESTDIR)/$(DATADIR)/res/sounds
+ rm -f $(DESTDIR)/$(DATADIR)/res/dejavu-lgc/*ttf \
+ $(DESTDIR)/$(DATADIR)/res/dejavu-lgc/fonts.alias \
+ $(DESTDIR)/$(DATADIR)/res/dejavu-lgc/fonts.dir \
+ $(DESTDIR)/$(DATADIR)/res/dejavu-lgc/fonts.scale
+ -rmdir $(DESTDIR)/$(DATADIR)/res/dejavu-lgc
+ for file in $(RES); do \
+ rm $(DESTDIR)/$(DATADIR)/$$file; \
+ done
+ -rmdir $(DESTDIR)/$(DATADIR)/res
+ rm -f $(DESTDIR)/$(DATADIR)/images/*.xpm
+ -rmdir $(DESTDIR)/$(DATADIR)/images
+ rm -f $(DESTDIR)/$(DATADIR)/cities/*.cty
+ -rmdir $(DESTDIR)/$(DATADIR)/cities
+ -rmdir $(DESTDIR)/$(DATADIR)
+ rm -f $(DESTDIR)/$(DOCDIR)/*.html $(DESTDIR)/$(DOCDIR)/README
+ -rmdir $(DESTDIR)/$(DOCDIR)
+ rm -f $(DESTDIR)/$(APPLICATIONSDIR)/micropolis.desktop
+ rm -f $(DESTDIR)/$(PIXMAPDIR)/micropolis.png
+
.PHONY: all clean install install-dirs install-bin install-res \
install-res-sounds install-res-dejavu-lgc install-images \
- install-cities install-doc tcl tk tclx sim
+ install-cities install-doc install-desktop uninstall tcl tk tclx sim