summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-arch/unrar/files/unrar-6.2.6-honor-flags.patch')
-rw-r--r--app-arch/unrar/files/unrar-6.2.6-honor-flags.patch46
1 files changed, 46 insertions, 0 deletions
diff --git a/app-arch/unrar/files/unrar-6.2.6-honor-flags.patch b/app-arch/unrar/files/unrar-6.2.6-honor-flags.patch
new file mode 100644
index 000000000000..976f1417c861
--- /dev/null
+++ b/app-arch/unrar/files/unrar-6.2.6-honor-flags.patch
@@ -0,0 +1,46 @@
+Makefile: Honor {LD,CXX}FLAGS, add LIBFLAGS
+
+ - append -pthread to LDFLAGS instead of replacing them
+ - use CXXFLAGS when linking
+ - append LIBFLAGS to the individual targets instead of the final link
+
+Gentoo-Bug: https://bugs.gentoo.org/461806
+
+--- a/makefile
++++ b/makefile
+@@ -8,7 +8,7 @@ LIBFLAGS=-fPIC
+ DEFINES=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DRAR_SMP
+ STRIP=strip
+ AR=ar
+-LDFLAGS=-pthread
++LDFLAGS+=-pthread
+ DESTDIR=/usr
+
+ # Linux using LCC
+@@ -147,20 +147,21 @@ clean:
+
+ unrar: $(OBJECTS) $(UNRAR_OBJ)
+ @rm -f unrar
+- $(LINK) -o unrar $(LDFLAGS) $(OBJECTS) $(UNRAR_OBJ) $(LIBS)
++ $(LINK) -o unrar $(CXXFLAGS) $(LDFLAGS) $(OBJECTS) $(UNRAR_OBJ) $(LIBS)
+ $(STRIP) unrar
+
+ sfx: WHAT=SFX_MODULE
+ sfx: $(OBJECTS)
+ @rm -f default.sfx
+- $(LINK) -o default.sfx $(LDFLAGS) $(OBJECTS)
++ $(LINK) -o default.sfx $(CXXFLAGS) $(LDFLAGS) $(OBJECTS)
+ $(STRIP) default.sfx
+
++$(OBJECTS) $(LIB_OBJ): CXXFLAGS+=$(LIBFLAGS)
++
+ lib: WHAT=RARDLL
+-lib: CXXFLAGS+=$(LIBFLAGS)
+ lib: $(OBJECTS) $(LIB_OBJ)
+ @rm -f libunrar.*
+- $(LINK) -shared -o libunrar.so $(LDFLAGS) $(OBJECTS) $(LIB_OBJ)
++ $(LINK) -shared -o libunrar.so $(CXXFLAGS) $(LDFLAGS) $(OBJECTS) $(LIB_OBJ)
+ $(AR) rcs libunrar.a $(OBJECTS) $(LIB_OBJ)
+
+ install-unrar:
+--