aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/rpm/rpm/rpmqv_cc_b_gone.patch
blob: b2437a872350db4c84cb17dca04b7edc688815f5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
From e8bae261615e19ff8a28683765c9539cfb22a086 Mon Sep 17 00:00:00 2001
From: Joe Slater <jslater@windriver.com>
Date: Thu, 17 Jul 2014 18:14:54 -0700
Subject: [PATCH 1/9] rpm: compile rpmqv.c instead of rpmqv.cc

Some versions of gcc, 4.4.5 for example, will put a reference to __gxx_personality_v0
into rpm.o and rpmbuild.o.  This means we must link with g++, and the Makefile we
generate does not.

So, go back to using rpmqv.c (which is currently identical to rpmqv.cc).

Upstream-Status: Inappropriate [other]

   When linking with g++ is really necessary, the upstream package will do that.

Also instead of symlinking files in two places, which can and does race in
parallel builds, simply refer to the file's full location [RB]

Signed-off-by: Joe Slater <joe.slater@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>

---
 Makefile.am | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 1dade0a..55f8669 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -201,15 +201,13 @@ rpm_SOURCES =		build.c
 rpm_LDFLAGS =		@LDFLAGS_STATIC@ $(LDFLAGS)
 rpm_LDADD =		rpm.o $(myLDADD)
 rpm.o:	$(top_srcdir)/rpmqv.c
-	ln -sf $< rpmqv.cc
-	$(COMPILE) -DIAM_RPMBT -DIAM_RPMDB -DIAM_RPMEIU -DIAM_RPMK -DIAM_RPMQV -o $@ -c rpmqv.cc
+	$(COMPILE) -DIAM_RPMBT -DIAM_RPMDB -DIAM_RPMEIU -DIAM_RPMK -DIAM_RPMQV -o $@ -c $^
 
 rpmbuild_SOURCES =	build.c
 rpmbuild_LDFLAGS =	@LDFLAGS_STATIC@ $(LDFLAGS)
 rpmbuild_LDADD =	rpmbuild.o $(myLDADD)
 rpmbuild.o:	$(top_srcdir)/rpmqv.c
-	ln -sf $< rpmqv.cc
-	$(COMPILE) -DIAM_RPMBT -o $@ -c rpmqv.cc
+	$(COMPILE) -DIAM_RPMBT -o $@ -c $^
 
 .syntastic_c_config: Makefile
 	@echo $(COMPILE) | tr ' ' '\n' | sed -e '1d' > $@
-- 
2.7.0