DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: M T

⟦ba2019ed1⟧ TextFile

    Length: 4919 (0x1337)
    Types: TextFile
    Names: »Makefile«

Derivation

└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987
    └─⟦this⟧ »EUUGD18/General/Cubes/Makefile« 

TextFile

#! /bin/make -f
# vi:set sw=4 ts=4:

OWNER=		gdaemon
GROUP=		games
GAMEDIR=	/usr/games
GLIBDIR=	$(GAMEDIR)/lib
PATHNAME=	$(GLIBDIR)/cubeserver
HISTFILE=	$(GLIBDIR)/cubes.hist
MONFILE=	$(GLIBDIR)/cubes.monikers
MANDIR=		/usr/man/man6
MANPAGES=	$(MANDIR)/cubes.6 $(MANDIR)/cubes.long.6 \
			$(MANDIR)/cubestat.6 $(MANDIR)/cuberank.6 \
			$(MANDIR)/cubeserver.6

# If you want the server and client to use a UNIX domain socket
# for local connections, define UNIXSOCK here.  It must be a pathname
# to a file in a directory where OWNER has write permission.
#
# If you want the server to open an INET domain socket -- allowing
# players from remote systems -- then define INETSOCK.  The client
# INET code is compiled in, whether or not INETSOCK is defined.
#
# The server will not run if both UNIXSOCK and INETSOCK are left undefined.
#
SOCKETS=	-DUNIXSOCK=\"/usr/tmp/cubesocket\" -DINETSOCK
#SOCKETS=	-DINETSOCK
#SOCKETS=	-DUNIXSOCK=\"/usr/tmp/cubesocket\"

# GECOS and LIBGECOS are for special password file gecos field decoding.
# Defining it works only at the author's locale.
#GECOS=		-DGECOS
#LIBGECOS=	-lgecos
GECOS=
LIBGECOS=

# if graphics won't work, add -DLONGNAMEBUG to CFLAGS
# I use -OG on our pyramid
#CFLAGS=	-OG
CFLAGS=		-O
LDFLAGS=

SRVFLAGS=	-DPATHNAME=\"$(PATHNAME)\" -DHISTFILE=\"$(HISTFILE)\" $(SOCKETS)
CLIFLAGS=	$(SOCKETS)
HANFLAGS=	-DHISTFILE=\"$(HISTFILE)\"
MONFLAGS=	-DMONFILE=\"$(MONFILE)\"

LIBS=		-lcurses -ltermcap -lm

SRVOBJS=	cubeserv1.o cubeserv2.o announce.o comptbl.o history.o moniker.o \
			turn.o risk.o tempers.o strategies.o tactics.o dieopts.o random.o
CLIOBJS=	cubes.o actions.o screen.o random.o fullname.o
AVGOBJS=	avg.o dieopts.o random.o
HSTOBJS=	histanal.o comptbl.o history.o tempers.o strategies.o \
			random.o fullname.o
STTOBJS=	cubestat.o

SRVSRCS=	cubeserv1.c cubeserv2.c announce.c comptbl.c history.c moniker.c \
			turn.c risk.c tempers.c strategies.c tactics.c dieopts.c random.c
CLISRCS=	cubes.c actions.c screen.c random.c fullname.c
AVGSRCS=	avg.c dieopts.c random.c
HSTSRCS=	histanal.c comptbl.c history.c tempers.c strategies.c \
			random.c fullname.c
STTSRCS=	cubestat.c

all:		source cubeserver cubes cuberank cubestat avg \
			cubes.6 cubes.long.6 cubestat.6 cuberank.6 cubeserver.6
source:		$(SRVSRCS) $(CLISRCS) $(AVGSRCS) $(HSTSRCS) $(STTSRCS)
bins:		$(GLIBDIR)/cubeserver
bins:		$(GAMEDIR)/cubes $(GAMEDIR)/cubestat $(GAMEDIR)/cuberank
bins:		$(GAMEDIR)/scr
files:		$(HISTFILE) $(MONFILE) $(MANPAGES)
install:	source all bins files

$(GLIBDIR)/cubeserver:	cubeserver
	install -c -m 4100 -o $(OWNER) -g $(GROUP) cubeserver $(GLIBDIR)

$(GAMEDIR)/cubes:		cubes
	install -c -m  111 -o $(OWNER) -g $(GROUP) cubes      $(GAMEDIR)
	install -c -m  111 -o $(OWNER) -g $(GROUP) cubes      $(GAMEDIR)

$(GAMEDIR)/cubestat:	cubestat
	install -c -m  111 -o $(OWNER) -g $(GROUP) cubestat   $(GAMEDIR)

$(GAMEDIR)/cuberank:	cuberank
	install -c -m 4111 -o $(OWNER) -g $(GROUP) cuberank   $(GAMEDIR)

$(GAMEDIR)/scr:	scr.sh
	install -c -m  755 -o $(OWNER) -g $(GROUP) scr.sh     $(GAMEDIR)/scr


cubeserver:	$(SRVOBJS)
	cc $(LDFLAGS) -o cubeserver $(SRVOBJS) $(LIBS)

cubes:	$(CLIOBJS)
	cc $(LDFLAGS) -o cubes $(CLIOBJS) $(LIBS) $(LIBGECOS)

avg:	$(AVGOBJS)
	cc $(LDFLAGS) -o avg $(AVGOBJS) $(LIBS)

histanal cuberank:	$(HSTOBJS)
	cc $(LDFLAGS) -o histanal $(HSTOBJS) $(LIBS) $(LIBGECOS)
	rm -f cuberank ; ln histanal cuberank

cubestat:	$(STTOBJS)
	cc $(LDFLAGS) -o cubestat $(STTOBJS)


cubeserv1.o:	cubeserv1.c cubes.h Makefile
	cc $(CFLAGS) $(SRVFLAGS) -c cubeserv1.c

cubes.o:	cubes.c cubes.h Makefile
	cc $(CFLAGS) $(CLIFLAGS) -c cubes.c

histanal.o:	histanal.c cubes.h Makefile
	cc $(CFLAGS) $(HANFLAGS) -c histanal.c

moniker.o:	moniker.c cubes.h Makefile
	cc $(CFLAGS) $(MONFLAGS) -c moniker.c

fullname.o:	fullname.c cubes.h Makefile
	cc $(CFLAGS) $(GECOS) -c fullname.c

$(SRVOBJS):	cubes.h
$(CLIOBJS):	cubes.h
$(AVGOBJS):	cubes.h
$(HSTOBJS):	cubes.h
$(STTOBJS):	cubes.h


# we must have a history file, but we need build it only once
$(HISTFILE):	Makefile
	touch $(HISTFILE)
	chown $(OWNER) $(HISTFILE)
	chgrp $(GROUP) $(HISTFILE)
	chmod 644 $(HISTFILE)

# we must have a monikers file, but we need build it only once
$(MONFILE):	Makefile
	touch $(MONFILE)
	chown $(OWNER) $(MONFILE)
	chgrp $(GROUP) $(MONFILE)
	chmod 644 $(MONFILE)


$(MANDIR)/cubes.6:		cubes.6
	install -c -m 644 cubes.6 $(MANDIR)

$(MANDIR)/cubes.long.6:		cubes.long.6
	install -c -m 644 cubes.long.6 $(MANDIR)

$(MANDIR)/cubestat.6:	cubestat.6
	install -c -m 644 cubestat.6 $(MANDIR)

$(MANDIR)/cuberank.6:	cuberank.6
	install -c -m 644 cuberank.6 $(MANDIR)

$(MANDIR)/cubeserver.6:	cubeserver.6
	install -c -m 644 cubeserver.6 $(MANDIR)


clean:
	rm -f *.o cubes cubeserver cuberank histanal cubestat avg cubes.shar*

newsdist:
	makekit -p -s50k -ncubes README cube*.6 Makefile *.[ch] *.sh

maildist:
	shar README cube*.6 Makefile *.[ch] *.sh >cubes.shar
	package cubes.shar 350