#
# menger - visualization of the Menger sponge
# Copyright (C) 1995-2026  Joachim Reichel <joachim.reichel@posteo.de>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program. If not, see <https://www.gnu.org/licenses/>.
#

NAME        := menger
VERSION     = 3.0

SUBDIRS := generator legacy menger viewer
SUBDIR_GOALS = $(filter-out $(SUBDIRS),$(MAKECMDGOALS))

.DEFAULT_GOAL := all
.PHONY: all default check clean tidy $(SUBDIRS)

all default check clean tidy: $(SUBDIRS)

tarball:
	git archive --prefix=$(NAME)-$(VERSION)/ HEAD | bzip2 >$(NAME)-$(VERSION).tar.bz2

# Forward any requested make goals to each project directory. Command-line
# variable assignments and parallel job settings are propagated by GNU Make.
%: $(SUBDIRS)

$(SUBDIRS):
	$(MAKE) -C $@ NAME=$(NAME) VERSION=$(VERSION) $(SUBDIR_GOALS)
