319 lines
8.1 KiB
Makefile
319 lines
8.1 KiB
Makefile
#!/usr/bin/env make
|
|
#
|
|
# 1986 Makefile
|
|
|
|
################################################################################
|
|
#
|
|
# An Historical Makefile NOTE:
|
|
#
|
|
# The orig.Makefile, if it exits, is the original Makefile before this IOCCC
|
|
# year directory was reworked so that entries are in separate directories.
|
|
# This also applies to any orig.ansi.mk and orig.common.mk files.
|
|
#
|
|
# Several Makefiles were modified / formed in 2022, and as such it may have
|
|
# elements that are not historically compatible with way entries were built.
|
|
# The orig.Makefile, if it exits, is a copy of the pre-modified Makefile.
|
|
#
|
|
# Regarding individual entries:
|
|
#
|
|
# IOCCC winning entry code may not work on your system. Even with standards,
|
|
# conditions and build environments change, especially when it comes to more
|
|
# extreme code such you might find in an IOCCC winner. Moreover, what was
|
|
# allowed and liked in one IOCCC contest may no longer be liked/allowed in
|
|
# later IOCCC years.
|
|
#
|
|
# Corrections on winning author and fixing typos in remarks are VERY WELCOME.
|
|
#
|
|
# GitHub pull requests are welcome:
|
|
#
|
|
# If you have a patch that might make running an entry work in modern Unix-like
|
|
# environments, please create a GitHub pull request for the IOCCC judges to
|
|
# consider.
|
|
#
|
|
# Suggestions and corrections regarding Makefiles, winning author information,
|
|
# fixing typos in remarks, and code patches are welcome via opening a GitHub
|
|
# issue or better yet, by creating a GitHub pull request for the IOCCC judges
|
|
# to consider. To form a GitHub issue or GitHub pull, please visit:
|
|
#
|
|
# https://github.com/ioccc-src/winner
|
|
#
|
|
################################################################################
|
|
|
|
# This work by Landon Curt Noll and Leonid A. Broukhis is licensed under:
|
|
#
|
|
# Creative Commons Attribution-ShareAlike 3.0 Unported License.
|
|
#
|
|
# See: http://creativecommons.org/licenses/by-sa/3.0/
|
|
|
|
|
|
################
|
|
# tool locations
|
|
################
|
|
#
|
|
SHELL= bash
|
|
MAKE= make
|
|
|
|
|
|
###############
|
|
# IOCCC winners
|
|
###############
|
|
#
|
|
WINNERS= applin august bright hague holloway marshall pawka stein wall
|
|
|
|
YEAR= 1986
|
|
|
|
###################
|
|
# build all entries
|
|
###################
|
|
#
|
|
all:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
.PHONY: all alt data everything clean clobber install \
|
|
love haste waste maker easter_egg sandwich \
|
|
supernova deep_magic magic charon pluto
|
|
|
|
# alternative executable
|
|
#
|
|
alt:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
# data files
|
|
#
|
|
data:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
# both all and alt
|
|
#
|
|
everything:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
|
|
###############
|
|
# utility rules
|
|
###############
|
|
#
|
|
clean:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
clobber:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
install:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
indent.c:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
|
|
##################
|
|
# 133t hacker rulz
|
|
##################
|
|
#
|
|
love:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
haste:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
waste:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
maker:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
easter_egg:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
sandwich:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
|
|
# The IOCCC resident astronomer states
|
|
#
|
|
supernova:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
deep_magic:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
magic:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
charon:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|
|
|
|
pluto:
|
|
@echo '=-=-= ${YEAR} begin make $@ =-=-='
|
|
@echo
|
|
@for i in ${WINNERS} ; do \
|
|
echo "=-= start ${YEAR}/$$i =-="; \
|
|
echo "(cd $$i && $(MAKE) $@)"; \
|
|
(cd $$i && $(MAKE) $@); \
|
|
echo "=-= end ${YEAR}/$$i =-="; \
|
|
echo; \
|
|
done
|
|
@echo '=-=-= ${YEAR} complete make $@ =-=-='
|