Add options SYSCF (to add a system-wide configuration file) and SYSCF_FILE (for a file-based implementation of SYSCF) - this allows a binary distribution to be configured at install time. The only option supported at this time is WIZARDS - a list of usernames which can use -D; currently only for unix-likes but should be extendable to anything that has a concept of multiple users. Add mac tty multiuser config using sgid.
56 lines
2.0 KiB
Plaintext
56 lines
2.0 KiB
Plaintext
#
|
|
# SCCS Id: @(#)macosx-mu 3.5 2007/12/12
|
|
# Copyright (c) Kenneth Lorber, Kensington, Maryland, 2007.
|
|
# NetHack may be freely redistributed. See license for details.
|
|
#
|
|
# Mac OS X (Darwin) hints file
|
|
# This is for Mac OS X 10.4.10 (Darwin 8.10). If this doesn't work for some
|
|
# other version of either Darwin or Mac OS X, make a new file for that OS,
|
|
# don't change this one.
|
|
# Useful info: http://www.opensource.apple.com/darwinsource/index.html
|
|
|
|
# This is a tty build for a system with multiple users (since it is a tty
|
|
# build it does not try to look like a .app application).
|
|
# NetHack will be owned by user "games" and group "bin" - change the next 2
|
|
# lines if this is a problem:
|
|
GAMEUID = games
|
|
GAMEGRP = bin
|
|
# NB: "make install" should be run as an admin user:
|
|
# sudo make install
|
|
|
|
# NB: do NOT use $(wildcard ~$(GAMEUID)) since the user may not exist yet.
|
|
PREFIX:=/Users/$(GAMEUID)
|
|
SHELLDIR=$(PREFIX)/bin
|
|
HACKDIR=$(PREFIX)/nethackdir
|
|
|
|
CC=gcc -W -Wimplicit -Wreturn-type -Wunused -Wformat -Wswitch -Wshadow -Wcast-qual -Wwrite-strings -DGCC_WARN
|
|
|
|
# XXX -g vs -O should go here, -I../include goes in the makefile
|
|
CFLAGS=-g -I../include $(CFLAGS2) $(CFLAGS3)
|
|
CFLAGS2=-DNOCLIPPING -DNOMAIL -DNOTPARMDECL -DHACKDIR=\"$(HACKDIR)\"
|
|
CFLAGS3=-DSYSCF -DSYSCF_FILE=\"$(HACKDIR)/sysconf\" -DSECURE
|
|
|
|
WINSRC = $(WINTTYSRC)
|
|
WINOBJ = $(WINTTYOBJ)
|
|
WINLIB = $(WINTTYLIB)
|
|
|
|
WINTTYLIB=-lncurses
|
|
|
|
CHOWN=chown
|
|
CHGRP=chgrp
|
|
|
|
# We run sgid so the game has access to both HACKDIR and user preferences.
|
|
GAMEPERM = 02755
|
|
VARFILEPERM = 0664
|
|
VARDIRPERM = 0775
|
|
|
|
# make sure we have group GAMEUID and group GAMEGRP
|
|
PREINSTALL= . sys/unix/hints/macosx.sh user $(GAMEUID); . sys/unix/hints/macosx.sh group $(GAMEGRP); mkdir $(SHELLDIR); chown $(GAMEUID) $(SHELLDIR)
|
|
POSTINSTALL= touch $(HACKDIR)/sysconf; $(CHOWN) $(GAMEUID) $(HACKDIR)/sysconf; $(CHGRP) $(GAMEGRP) $(HACKDIR)/sysconf; chmod $(VARFILEPERM) $(HACKDIR)/sysconf
|
|
|
|
|
|
# notes:
|
|
#1) ~games/games is owned by root.
|
|
#2) group games exists because user games was created via Accounts pane.
|
|
#3) who should own/be able to run recover?
|