lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1264623868-23595-6-git-send-email-jkacur@redhat.com>
Date:	Wed, 27 Jan 2010 21:24:28 +0100
From:	John Kacur <jkacur@...hat.com>
To:	Clark Williams <williams@...hat.com>
Cc:	Thomas Gleixner <tglx@...utronix.de>,
	lkml <linux-kernel@...r.kernel.org>, Ingo Molnar <mingo@...e.hu>,
	Carsten Emde <C.Emde@...dl.org>,
	rt-users <linux-rt-users@...r.kernel.org>,
	John Kacur <jkacur@...hat.com>
Subject: [PATCH 5/5] rt-tests: Automatically generate dependencies.

Automatically generate dependencies. This will tell the make file that
cyclictest is dependent on rt_numa.h for example, and that if a change
is made there, then cyclictest needs to be remade.

Signed-off-by: John Kacur <jkacur@...hat.com>
---
 Makefile |   20 ++++++++++++++++----
 1 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/Makefile b/Makefile
index 6156c03..4be0838 100644
--- a/Makefile
+++ b/Makefile
@@ -1,8 +1,10 @@
 VERSION_STRING = 0.63
 
-TARGETS	= cyclictest signaltest pi_stress \
-	  rt-migrate-test ptsematest sigwaittest svsematest \
-	  sendme pip
+sources = cyclictest.c signaltest.c pi_stress.c rt-migrate-test.c	\
+	  ptsematest.c sigwaittest.c svsematest.c sendme.c pip.c
+
+TARGETS = $(sources:.c=)
+
 LIBS 	= -lrt -lpthread
 EXTRA_LIBS ?= -ldl	# for get_cpu
 DESTDIR	?=
@@ -39,9 +41,19 @@ VPATH	+= src/lib
 %.o: %.c
 	$(CC) -D VERSION_STRING=$(VERSION_STRING) -c $< $(CFLAGS)
 
+# Pattern rule to generate dependency files from .c files
+%.d: %.c
+	@set -e; rm -f $@; \
+	$(CC) -MM $(CFLAGS) $< > $@...$$; \
+	sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@...$$ > $@; \
+	rm -f $@...$$
+
 .PHONY: all
 all: $(TARGETS) hwlatdetect
 
+# Include dependency files, automatically generate them if needed.
+-include $(sources:.c=.d)
+
 cyclictest: cyclictest.o rt-utils.o
 	$(CC) $(CFLAGS) -o $@ $^ $(LIBS) $(NUMA_LIBS)
 
@@ -73,7 +85,7 @@ sendme: sendme.o rt-utils.o rt-get_cpu.o
 pip: pip.o error.o rt-utils.o
 	$(CC) $(CFLAGS) -o $@ $^ $(LIBS)
 
-CLEANUP  = $(TARGETS) *.o .depend *.*~ *.orig *.rej rt-tests.spec
+CLEANUP  = $(TARGETS) *.o .depend *.*~ *.orig *.rej rt-tests.spec *.d
 CLEANUP += $(if $(wildcard .git), ChangeLog)
 
 .PHONY: clean
-- 
1.6.6

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ