summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Turner <mattst88@gmail.com>2019-04-11 13:23:21 -0700
committerMatt Turner <mattst88@gmail.com>2019-04-25 10:52:20 -0700
commit7e5251db3421e221e3f72cfece21093afc5f0651 (patch)
treec1905c5e5af75f98d99ab4e0c0f13901bf6128f9
parent5bd8646633b9ab6de3da2e2c6198ae15f59c6d6f (diff)
Add a check target to the Makefile
-rw-r--r--.gitignore2
-rw-r--r--Makefile20
2 files changed, 21 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index eb3185a..2a669a9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,6 @@
*.o
+*.expected
+*.result
build-id
libbuild-id.so
so-build-id
diff --git a/Makefile b/Makefile
index a1a7207..3a92647 100644
--- a/Makefile
+++ b/Makefile
@@ -21,6 +21,7 @@
LDLIBS = -ldl
LDFLAGS = -Wl,--build-id=sha1
+GREP_SHA1 = egrep -o '\b[0-9a-f]{40}\b'
all: build-id so-build-id
@@ -36,5 +37,22 @@ shared-build-id.o: build-id.c
libbuild-id.so: shared-build-id.o
$(CC) $(LDFLAGS) -shared $^ -o $@ $(LDLIBS)
+build-id-test.expected: build-id
+ file $< | $(GREP_SHA1) &> $@
+
+so-build-id-test.expected: libbuild-id.so
+ file $< | $(GREP_SHA1) &> $@
+
+build-id-test.result: build-id
+ ./$< | $(GREP_SHA1) &> $@
+
+so-build-id-test.result: so-build-id libbuild-id.so
+ LD_LIBRARY_PATH=. ./$< | $(GREP_SHA1) &> $@
+
+check: build-id-test.expected so-build-id-test.expected build-id-test.result so-build-id-test.result
+ cmp build-id-test.expected build-id-test.result
+ cmp so-build-id-test.expected so-build-id-test.result
+ @echo PASS
+
clean:
- rm -f build-id so-build-id libbuild-id.so *.o
+ rm -f build-id so-build-id libbuild-id.so *.o *.result *.expected