# Makefrag - makefile fragment for rogue

rogue_DEFS := -DUNIX -DUNIX_SYSV
rogue_DIRS := $(GAMESDIR) $(MAN6DIR)
# Set this to simplify the rules below.  We deliberately mimic what is
# autogenerated.
rogue_object_c_FLAGS := $(CFLAGS) $(rogue_CFLAGS) -fwritable-strings $(rogue_DEFS) $(BASE_INCS) -Irogue $(rogue_INCS)

rogue_all:	rogue/rogue rogue/rogue.6

# object.c (only) needs -fwritable-strings.  We provide, for good measure,
# rules that use this flag and override the autogenerated rules for all of
# the .[oisd] files.

rogue/object.o:	rogue/object.c
	$(CC) $(rogue_object_c_FLAGS) -c $< -o $@

rogue/object.i:	rogue/object.c
	$(CC) $(rogue_object_c_FLAGS) -E $< -o $@

rogue/object.s:	rogue/object.c
	$(CC) $(rogue_object_c_FLAGS) -S -fverbose-asm $< -o $@

rogue/object.d:	rogue/object.c
	./mkdep $< $@ $(CC) $(rogue_object_c_FLAGS)

rogue_install:	rogue_all
	$(INSTALL_SCORE_GAME) rogue/rogue $(INSTALL_PREFIX)$(GAMESDIR)/rogue
	$(HIDE_GAME) rogue
	$(INSTALL_SCORE_FILE) $(ROGUE_SCOREFILE)
	$(INSTALL_MANUAL) rogue/rogue.6
