]> git.pond.sub.org Git - empserver/blobdiff - Make.mk
Fix generation numbers for autonav
[empserver] / Make.mk
diff --git a/Make.mk b/Make.mk
index 0acf0bafadbe60f26232ad17f14144531d2793c3..4c419dcf943b64a1a7707ab445c48cf4c1da50a1 100644 (file)
--- a/Make.mk
+++ b/Make.mk
@@ -1,35 +1,35 @@
-# 
+#
 #   Empire - A multi-player, client/server Internet based war game.
-#   Copyright (C) 1986-2008, Dave Pare, Jeff Bailey, Thomas Ruschak,
+#   Copyright (C) 1986-2009, Dave Pare, Jeff Bailey, Thomas Ruschak,
 #                            Ken Stevens, Steve McClure
-# 
+#
 #   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, write to the Free Software
 #   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-# 
+#
 #   ---
-# 
+#
 #   See files README, COPYING and CREDITS in the root of the source
 #   tree for related information and legal notices.  It is expected
 #   that future projects/authors will amend these files as needed.
-# 
+#
 #   ---
-# 
+#
 #   Make.mk: The real Makefile, included by GNUmakefile
-#  
+#
 #   Known contributors to this file:
-#      Markus Armbruster, 2005-2007
-# 
+#      Markus Armbruster, 2005-2009
+#
 
 # This makefile was inspired by `Recursive Make Considered Harmful',
 # Peter Miller, 1997.
@@ -47,7 +47,7 @@ all:
 
 # Source files
 ifeq ($(revctrl),git)
-src := $(shell cd $(srcdir) && git-ls-files)
+src := $(shell cd $(srcdir) && git ls-files)
 else
 include $(srcdir)/sources.mk
 endif
@@ -88,7 +88,10 @@ subst.in = sed \
 
 # Generated files
 # See `Cleanliness' below
-# sources.mk subjects.mk
+mk := subjects.mk
+ifeq ($(revctrl),git)
+mk += $(srcdir)/sources.mk
+endif
 # Generated by Autoconf, not distributed:
 ac := config.h config.log config.status info.html info.nr lib stamp-h
 ac += $(basename $(filter %.in, $(src)))
@@ -104,7 +107,7 @@ deps := $(obj:.o=.d)
 # Library archives:
 libs := $(addprefix lib/, libcommon.a libas.a libgen.a libglobal.a)
 # Programs:
-util := $(addprefix src/util/, $(addsuffix $(EXEEXT), empsched fairland files pconfig))
+util := $(addprefix src/util/, $(addsuffix $(EXEEXT), empdump empsched fairland files pconfig))
 client := src/client/empire$(EXEEXT)
 server := src/server/emp_server$(EXEEXT)
 # Info subjects:
@@ -138,12 +141,10 @@ endif
 clean := $(obj) $(deps) $(libs) $(util) $(client) $(server) $(tsubj)   \
 $(ttop) $(info.nr) $(info.html) $(empth_obj) $(empth_lib)
 # Removed by distclean:
-distclean := $(ac) subjects.mk
-# Distributed by dist-source from $(srcdir)
+distclean := $(ac) $(mk)
+# Distributed by dist-source from $(srcdir):
 src_distgen := $(acdist)
-# Distributed by dist-source from .
-bld_distgen := sources.mk
-# Distributed by dist-client from $(srcdir)/src/client
+# Distributed by dist-client from $(srcdir)/src/client; removed by distclean:
 cli_distgen := $(acdistcli)
 
 # Compiler flags
@@ -154,8 +155,9 @@ endif
 ifeq ($(have_gcc),yes)
 CFLAGS += -fno-builtin-carg    # conflicts with our carg()
 CFLAGS += -fno-common
-CFLAGS += -Wall -W -Wno-unused -Wpointer-arith -Wstrict-prototypes     \
--Wmissing-prototypes -Wnested-externs -Wredundant-decls
+CFLAGS += -Wall -W -Wno-unused-parameter -Wpointer-arith       \
+-Wstrict-prototypes -Wmissing-prototypes -Wnested-externs      \
+-Wredundant-decls
 endif
 LDLIBS += -lm
 $(client): LDLIBS += $(termlibs)
@@ -175,7 +177,7 @@ clean:
 
 .PHONY: distclean
 distclean: clean
-       rm -rf $(distclean)
+       rm -rf $(distclean) $(cli_distgen)
 
 .PHONY: install
 install: all installdirs
@@ -233,7 +235,7 @@ dist: dist-source dist-client dist-info
 # addition to %.o.
 ifeq ($(how_to_dep),fast)
 %.o: %.c
-       $(COMPILE.c) -MT $@ -MMD -MP $(OUTPUT_OPTION) $< \
+       $(COMPILE.c) -MT $@ -MMD -MP -MF $(@:.o=.d) $(OUTPUT_OPTION) $< \
        || { rm -f $(@:.o=.d) $@; false; }
 # Why the rm?  If gcc's preprocessor chokes, it leaves an empty
 # dependency file behind, and doesn't touch the object file.  If an
@@ -318,27 +320,14 @@ $(topics.html): info/emp2html.pl
 info.ps: info/TROFF.MAC info/INFO.MAC $(ttop) $(tsubj) $(tsrc)
        groff $^ >$@
 
-# List of source files
-
-# Note: $(srcdir)/sources.mk is only used when the source tree came
-# from a tarball rather than git.  The following rules create a
-# sources.mk to put into the tarball.  It is not used in this build.
-
-ifeq ($(revctrl),git)
-sources.mk:
-       echo "src := $(src)" >sources.mk
-else
-ifneq ($(srcdir),.)
-sources.mk: $(srcdir)/sources.mk
-       cp -f $^ $@
-endif
-endif
-
 # Distributing
 
 .PHONY: dist-source
-dist-source: $(src_distgen) $(bld_distgen)
-       $(tarball) $(TARNAME)-$(VERSION) $(bld_distgen) -C $(srcdir) $(src_distgen) $(src)
+dist-source: $(src_distgen)
+ifeq ($(revctrl),git)
+       echo "src := $(src)" >$(srcdir)/sources.mk
+endif
+       $(tarball) $(TARNAME)-$(VERSION) -C $(srcdir) $(src_distgen) $(src) sources.mk
 
 .PHONY: dist-client
 dist-client: $(cli_distgen)