From e049e4ba47308629d2233fdd3f85d49352463d9c Mon Sep 17 00:00:00 2001 From: Ryan Schmidt Date: Wed, 18 May 2022 05:53:08 -0500 Subject: [PATCH 1/1] Makefile: Micropolis build fixes for recent macOS Hide the sim executable in an appropriately-named subdirectory of libexec rather than directly in libexec. In the micropolis wrapper script, use a shebang line, use exec so that the shell doesn't stay around, and quote user-supplied arguments properly. --- Makefile | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 3f55dcc..dc804a4 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ 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 @@ -64,9 +64,10 @@ install-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 "#!/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) && $(LIBEXECDIR)/sim \$$*" >>$(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 -- 2.39.5