aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAnders Svensson <[email protected]>2011-08-15 18:01:07 +0200
committerAnders Svensson <[email protected]>2011-09-26 17:11:06 +0200
commit2a6b5dd6abbb94607b5c59ec5a1e0d292880d78d (patch)
treea6d33c6feea7faccdceb8cfb6af6860e715a139b
parentd3edee5b2dd743fb348066328df3b3a00da36896 (diff)
downloadotp-2a6b5dd6abbb94607b5c59ec5a1e0d292880d78d.tar.gz
otp-2a6b5dd6abbb94607b5c59ec5a1e0d292880d78d.tar.bz2
otp-2a6b5dd6abbb94607b5c59ec5a1e0d292880d78d.zip
Generate dependencies makefile
-rw-r--r--lib/diameter/test/.gitignore3
-rw-r--r--lib/diameter/test/Makefile30
-rw-r--r--lib/diameter/test/depend.sed30
3 files changed, 58 insertions, 5 deletions
diff --git a/lib/diameter/test/.gitignore b/lib/diameter/test/.gitignore
index 8a186ed5b5..df38dfc5e3 100644
--- a/lib/diameter/test/.gitignore
+++ b/lib/diameter/test/.gitignore
@@ -1,2 +1,3 @@
-log
+/log
+/depend.mk
diff --git a/lib/diameter/test/Makefile b/lib/diameter/test/Makefile
index a69af8ef2f..fb892f1d75 100644
--- a/lib/diameter/test/Makefile
+++ b/lib/diameter/test/Makefile
@@ -102,9 +102,7 @@ all test: $(SUITES)
tests debug opt: $(BUILDTARGET)
-targets: $(TARGET_FILES)
-
-.PHONY: emakebuild
+beam targets: $(TARGET_FILES)
emakebuild: $(EMAKEFILE)
@@ -116,10 +114,13 @@ $(EMAKEFILE):
clean:
rm -f $(EMAKEFILE)
rm -f $(TARGET_FILES)
+ rm -f depend.mk
realclean: clean
rm -f errs core *~
+.PHONY: all emakebuild test tests debug opt beam targets clean realclean
+
docs:
info:
@@ -159,7 +160,7 @@ help:
@echo " $(SUITES)"
@echo " Run a specific test suite."
@echo
- @echo " targets"
+ @echo " beam"
@echo " Compile all test-code."
@echo
@echo " clean"
@@ -173,6 +174,8 @@ help:
@echo " Print this info."
@echo
+.PHONY: docs info help
+
# ----------------------------------------------------
# Special Targets
# ----------------------------------------------------
@@ -190,6 +193,8 @@ $(SUITES): log targets
log:
mkdir $@
+.PHONY: $(SUITES)
+
# ----------------------------------------------------
# Release Targets
# ----------------------------------------------------
@@ -203,3 +208,20 @@ release_docs_spec:
release_tests_spec: tests
$(INSTALL_DIR) $(RELSYSDIR)
$(INSTALL_DATA) $(RELTEST_FILES) $(RELSYSDIR)
+
+.PHONY: release_spec release_docs_spec release_test_specs
+
+# ----------------------------------------------------
+
+depend: depend.mk
+
+# Generate dependencies makefile.
+depend.mk: depend.sed $(MODULES:%=%.erl) Makefile
+ (for f in $(MODULES); do \
+ sed -f $< $$f.erl | sed "s@/@/$$f@"; \
+ done) \
+ > $@
+
+-include depend.mk
+
+.PHONY: depend
diff --git a/lib/diameter/test/depend.sed b/lib/diameter/test/depend.sed
new file mode 100644
index 0000000000..effb668e38
--- /dev/null
+++ b/lib/diameter/test/depend.sed
@@ -0,0 +1,30 @@
+#
+# %CopyrightBegin%
+#
+# Copyright Ericsson AB 2010-2011. All Rights Reserved.
+#
+# The contents of this file are subject to the Erlang Public License,
+# Version 1.1, (the "License"); you may not use this file except in
+# compliance with the License. You should have received a copy of the
+# Erlang Public License along with this software. If not, it can be
+# retrieved online at http://www.erlang.org/.
+#
+# Software distributed under the License is distributed on an "AS IS"
+# basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
+# the License for the specific language governing rights and limitations
+# under the License.
+#
+# %CopyrightEnd%
+#
+
+#
+# Extract local include dependencies from .erl files. The output is massaged
+# further in Makefile.
+#
+
+/^-include/!d
+/^-include_lib/d
+
+s@^-include("@@
+s@".*@@
+s@^@$(EBIN)/.$(EMULATOR): @