Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-devel/llvm/, sys-devel/llvm/files/3.6.2/, sys-devel/llvm/files/3.6.2/clang/
Date: Sat, 03 Jun 2017 10:28:06
Message-Id: 1496485669.70440430ac582089e6f04abfebd81ce20f4c2823.mgorny@gentoo
1 commit: 70440430ac582089e6f04abfebd81ce20f4c2823
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jun 3 09:11:32 2017 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Sat Jun 3 10:27:49 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=70440430
7
8 sys-devel/llvm: Move 3.6.2 patchset to tarball
9
10 sys-devel/llvm/Manifest | 1 +
11 sys-devel/llvm/files/3.6.2/clang/fbsd-gcc49.patch | 25 -------
12 sys-devel/llvm/files/3.6.2/gcc-4.9.patch | 43 ------------
13 sys-devel/llvm/files/3.6.2/gentoo-install.patch | 82 -----------------------
14 sys-devel/llvm/files/3.6.2/nodoctargz.patch | 45 -------------
15 sys-devel/llvm/llvm-3.6.2-r100.ebuild | 17 ++---
16 6 files changed, 10 insertions(+), 203 deletions(-)
17
18 diff --git a/sys-devel/llvm/Manifest b/sys-devel/llvm/Manifest
19 index 1b38130c102..c10f9ba0cf1 100644
20 --- a/sys-devel/llvm/Manifest
21 +++ b/sys-devel/llvm/Manifest
22 @@ -23,6 +23,7 @@ DIST llvm-3.5.0-manpages.tar.bz2 35314 SHA256 724e752a60016dce8cc536658906d3646c
23 DIST llvm-3.5.2-patchset.tar.gz 4568 SHA256 9a987625d5d5a06cbf2733c68815ae0083a7bba30be7c53c3cda996ab61df52e SHA512 6df5a61d3e949dbe9840e713eb90e7514760c5ae68e241494d0246925015ac7e9d73671dd0646eb44d2d9232665027783d02c00639f41385615ec541d4e2fa93 WHIRLPOOL a34e09f22b62b12adcf3d948a2e9769868f70cc0692feb8e574a224999e74edea6bf82c16b48fa658de0f06f6d7f6987e8e8dd1d65cdf9b6a0d0bdf7ee3cdaab
24 DIST llvm-3.5.2.src.tar.xz 11876128 SHA256 44196156d5749eb4b4224fe471a29cc3984df92570a4a89fa859f7394fc0c575 SHA512 0f6a83cc61a385387e7baf8fb8f0d9f18e3fd00d2d389a3c7e2c3792be7d82ed095506cac52c24e65ae3c1f94456a441d39440feef6125e25ef18447ec9dd406 WHIRLPOOL b41de51907d6d2c2d04a4c498b44f0ed560cc710e6e2d8678f5ef93a9009d140bc7c2406f4b25d5b901fd026689d48edce77a2e435687b489b835156a512e256
25 DIST llvm-3.6.1-manpages.tar.bz2 38338 SHA256 b27c6198e09b11421841a7184d4e8a0f8878d4f1313405da28d643134a55688a SHA512 a47aeb0b4632329eaaa1d6c774446fea5822d7692d81533a9a5c5de1c6a3b37fdd6b7c1fc6433339649f4d3a53a753065e73afb30fd84f253ad31d5fb3d48662 WHIRLPOOL 022b214b6340365490915b5c873e515bf16be90d04cd32f09024a3607c23edc2c2e241d295102f045bd08a442c4e5aaf134ac89f7e59a027ec1633330a95989b
26 +DIST llvm-3.6.2-patchset.tar.gz 4562 SHA256 7b85037d143732c0e635a2ba436d1f2418654161ecb5b9618f8e9ffad8fa3279 SHA512 6018e7d96317e6a46f373259430782a1377193ab64b337d5f6720a4ffe0eb0891e7e9373fb9c20da66e840f07e52f2bccb2a8c51bb55ded0f124748796cce1c8 WHIRLPOOL 01aeb3b454cc0d442c9a54ab3aca3be0106765f372ec4e82344f3967faa89fefec978562cdef56d1cc47cb418b0dd15ac685a2c1b05d415fb32b8684182aeb23
27 DIST llvm-3.6.2.src.tar.xz 12802380 SHA256 f60dc158bfda6822de167e87275848969f0558b3134892ff54fced87e4667b94 SHA512 42b44ce69cfb96e2dc12dc2246f0de8ff983a99741206e2c46ccf074b3248aaab9c0f22c6baad802de851d06f202f40db9dd62fe38aab4479b3f70026c936b36 WHIRLPOOL 1a15e16793fe4120f1c14a5334362c36db26745c493e7289281351b7c18c523d781ff9425dddfe1a2add9ea1e8aebb92f2313787da5f286259b55b0884b3039f
28 DIST llvm-3.7.0-manpages.tar.bz2 38095 SHA256 8597fa532464c6336aefbbef0b1ce452aaa98d474fa58108c6a6f57a9ccd6785 SHA512 ea70ac15dbaef3740b31f66aa798338f7f9b82484586582aa62e0364f9d74bf175be2f4f29721df253b8157c1cbc146ab9045c0656c42a6375434e994786b643 WHIRLPOOL 743b339b0df7c52d270a5197e9e765dfd92d4b5acee94cf9d9d7713e1a75aa9d987b3f5adab0952e7267febf88b318d0f31cb45847e2b0b42c7c7373b2358358
29 DIST llvm-3.7.1.src.tar.xz 14592544 SHA256 be7794ed0cec42d6c682ca8e3517535b54555a3defabec83554dbc74db545ad5 SHA512 ac521debc02f6deba96ef975d6a546b0c5c77299c1dbf5e1b87a7974ff5e7fd715bd7e384b92d9adf572ce47130bdbf6d3c648eb0d7f72f16f976292e4909e90 WHIRLPOOL 788ce0907b906ebee595c766713bec5067563c8aba7460211f5830e116df7c830de84704834c0df2f2f2c90354d75521e4a4aff57e769a2d8ab590778c1e4a70
30
31 diff --git a/sys-devel/llvm/files/3.6.2/clang/fbsd-gcc49.patch b/sys-devel/llvm/files/3.6.2/clang/fbsd-gcc49.patch
32 deleted file mode 100644
33 index 31f5fc2b7f9..00000000000
34 --- a/sys-devel/llvm/files/3.6.2/clang/fbsd-gcc49.patch
35 +++ /dev/null
36 @@ -1,25 +0,0 @@
37 -Fix build fails with using gcc-4.9 on Gentoo/FreeBSD
38 -https://bugs.gentoo.org/show_bug.cgi?id=548444
39 -
40 -diff --git a/llvm-3.6.0.src/tools/clang/lib/Driver/MSVCToolChain.cpp b/llvm-3.6.0.src/tools/clang/lib/Driver/MSVCToolChain.cpp
41 -index d6bd5c3..372f76f 100644
42 ---- a/llvm-3.6.0.src/tools/clang/lib/Driver/MSVCToolChain.cpp
43 -+++ b/llvm-3.6.0.src/tools/clang/lib/Driver/MSVCToolChain.cpp
44 -@@ -22,6 +22,8 @@
45 - #include "llvm/Support/FileSystem.h"
46 - #include "llvm/Support/Process.h"
47 -
48 -+#include <cstdio>
49 -+
50 - // Include the necessary headers to interface with the Windows registry and
51 - // environment.
52 - #if defined(LLVM_ON_WIN32)
53 -@@ -212,7 +214,7 @@ bool MSVCToolChain::getWindowsSDKDir(std::string &path, int &major,
54 - "SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\$VERSION",
55 - "InstallationFolder", path, &sdkVersion);
56 - if (!sdkVersion.empty())
57 -- ::sscanf(sdkVersion.c_str(), "v%d.%d", &major, &minor);
58 -+ std::sscanf(sdkVersion.c_str(), "v%d.%d", &major, &minor);
59 - return hasSDKDir && !path.empty();
60 - }
61 -
62
63 diff --git a/sys-devel/llvm/files/3.6.2/gcc-4.9.patch b/sys-devel/llvm/files/3.6.2/gcc-4.9.patch
64 deleted file mode 100644
65 index 7da657f457d..00000000000
66 --- a/sys-devel/llvm/files/3.6.2/gcc-4.9.patch
67 +++ /dev/null
68 @@ -1,43 +0,0 @@
69 -commit 080fb498017d17af2e4d7563608c7d8a848f20da
70 -Author: Sanjoy Das <sanjoy at azulsystems.com>
71 -Date: Thu Jun 19 15:38:02 2014 -0700
72 -
73 - Fix the --enable-shared build.
74 -
75 - Currently a build configured with ./configure --enable-shared breaks
76 - with an undefined "llvm::cl::parser<llvm::PassInfo
77 - const*>::getOption(unsigned int) const" symbol when linking opt. This
78 - body for this symbol gets emitted into Pass.o (along with the destructor
79 - for PassNameParser), but gets linked into libLLVM-3.5svn.so with local
80 - visibility, causing the link error.
81 -
82 - This fix uses the existing EXTERN_TEMPLATE machinery to force a globally
83 - visible definition for the functions in parser<const PassInfo *> into
84 - Pass.o.
85 -
86 -diff --git a/include/llvm/IR/LegacyPassNameParser.h b/include/llvm/IR/LegacyPassNameParser.h
87 -index e2e4912..a07e3fd 100644
88 ---- a/include/llvm/IR/LegacyPassNameParser.h
89 -+++ b/include/llvm/IR/LegacyPassNameParser.h
90 -@@ -95,6 +95,8 @@ private:
91 - }
92 - };
93 -
94 -+EXTERN_TEMPLATE_INSTANTIATION(class cl::parser<const PassInfo *>);
95 -+
96 - ///===----------------------------------------------------------------------===//
97 - /// FilteredPassNameParser class - Make use of the pass registration
98 - /// mechanism to automatically add a command line argument to opt for
99 -diff --git a/lib/IR/Pass.cpp b/lib/IR/Pass.cpp
100 -index 91d86ae..00ce223 100644
101 ---- a/lib/IR/Pass.cpp
102 -+++ b/lib/IR/Pass.cpp
103 -@@ -234,6 +234,8 @@ PassNameParser::~PassNameParser() {
104 - // attempting to remove the registration listener is an error.
105 - }
106 -
107 -+TEMPLATE_INSTANTIATION(class cl::parser<const PassInfo *>);
108 -+
109 - //===----------------------------------------------------------------------===//
110 - // AnalysisUsage Class Implementation
111 - //
112
113 diff --git a/sys-devel/llvm/files/3.6.2/gentoo-install.patch b/sys-devel/llvm/files/3.6.2/gentoo-install.patch
114 deleted file mode 100644
115 index c4d0db2c074..00000000000
116 --- a/sys-devel/llvm/files/3.6.2/gentoo-install.patch
117 +++ /dev/null
118 @@ -1,82 +0,0 @@
119 -From bb016afeba4d9e886e776565a508634a261111a2 Mon Sep 17 00:00:00 2001
120 -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@g.o>
121 -Date: Wed, 31 Dec 2014 11:26:12 +0100
122 -Subject: [PATCH] gentoo build fixes
123 -
124 ----
125 - Makefile.config.in | 6 +++---
126 - Makefile.rules | 2 +-
127 - tools/llvm-config/BuildVariables.inc.in | 1 +
128 - tools/llvm-config/Makefile | 2 ++
129 - tools/llvm-config/llvm-config.cpp | 2 +-
130 - 5 files changed, 8 insertions(+), 5 deletions(-)
131 -
132 -diff --git a/Makefile.config.in b/Makefile.config.in
133 -index d34a2d5..a26cd08 100644
134 ---- a/Makefile.config.in
135 -+++ b/Makefile.config.in
136 -@@ -99,10 +99,10 @@ PROJ_internal_prefix := $(prefix)
137 - endif
138 -
139 - PROJ_bindir := $(PROJ_prefix)/bin
140 --PROJ_libdir := $(PROJ_prefix)/lib
141 -+PROJ_libdir := $(PROJ_prefix)/$(GENTOO_LIBDIR)
142 - PROJ_datadir := $(PROJ_prefix)/share
143 --PROJ_docsdir := $(PROJ_prefix)/docs/llvm
144 --PROJ_etcdir := $(PROJ_prefix)/etc/llvm
145 -+PROJ_docsdir := $(PROJ_prefix)/share/doc/@PF@
146 -+PROJ_etcdir := @EPREFIX@/etc/llvm
147 - PROJ_includedir := $(PROJ_prefix)/include
148 - PROJ_infodir := $(PROJ_prefix)/info
149 - PROJ_mandir := $(PROJ_prefix)/share/man
150 -diff --git a/Makefile.rules b/Makefile.rules
151 -index c8c971f..d1258b1 100644
152 ---- a/Makefile.rules
153 -+++ b/Makefile.rules
154 -@@ -283,7 +283,7 @@ ifeq ($(ENABLE_OPTIMIZED),1)
155 - BuildMode := Release
156 - # Don't use -fomit-frame-pointer on Darwin or FreeBSD.
157 - ifneq ($(HOST_OS), $(filter $(HOST_OS), Cygwin Darwin DragonFly FreeBSD GNU/kFreeBSD))
158 -- OmitFramePointer := -fomit-frame-pointer
159 -+ OmitFramePointer :=
160 - endif
161 -
162 - CXX.Flags += $(OPTIMIZE_OPTION) $(OmitFramePointer)
163 -diff --git a/tools/llvm-config/BuildVariables.inc.in b/tools/llvm-config/BuildVariables.inc.in
164 -index 3f51f49..513ea89 100644
165 ---- a/tools/llvm-config/BuildVariables.inc.in
166 -+++ b/tools/llvm-config/BuildVariables.inc.in
167 -@@ -26,3 +26,4 @@
168 - #define LLVM_LIBDIR_SUFFIX "@LLVM_LIBDIR_SUFFIX@"
169 - #define LLVM_TARGETS_BUILT "@LLVM_TARGETS_BUILT@"
170 - #define LLVM_SYSTEM_LIBS "@LLVM_SYSTEM_LIBS@"
171 -+#define LLVM_LIBDIR "@LLVM_LIBDIR@"
172 -diff --git a/tools/llvm-config/Makefile b/tools/llvm-config/Makefile
173 -index 1ff8b6f..5d73c6e 100644
174 ---- a/tools/llvm-config/Makefile
175 -+++ b/tools/llvm-config/Makefile
176 -@@ -65,6 +65,8 @@ $(ObjDir)/BuildVariables.inc: $(BUILDVARIABLES_SRCPATH) Makefile $(ObjDir)/.dir
177 - >> temp.sed
178 - $(Verb) $(ECHO) 's/@LLVM_TARGETS_BUILT@/$(subst /,\/,$(TARGETS_TO_BUILD))/' \
179 - >> temp.sed
180 -+ $(Verb) $(ECHO) 's/@LLVM_LIBDIR@/$(subst /,\/,$(GENTOO_LIBDIR))/' \
181 -+ >> temp.sed
182 - $(Verb) $(SED) -f temp.sed < $< > $@
183 - $(Verb) $(RM) temp.sed
184 -
185 -diff --git a/tools/llvm-config/llvm-config.cpp b/tools/llvm-config/llvm-config.cpp
186 -index 224035a..57180ac 100644
187 ---- a/tools/llvm-config/llvm-config.cpp
188 -+++ b/tools/llvm-config/llvm-config.cpp
189 -@@ -265,7 +265,7 @@ int main(int argc, char **argv) {
190 - ActivePrefix = CurrentExecPrefix;
191 - ActiveIncludeDir = ActivePrefix + "/include";
192 - ActiveBinDir = ActivePrefix + "/bin";
193 -- ActiveLibDir = ActivePrefix + "/lib" + LLVM_LIBDIR_SUFFIX;
194 -+ ActiveLibDir = ActivePrefix + "/" LLVM_LIBDIR;
195 - ActiveIncludeOption = "-I" + ActiveIncludeDir;
196 - }
197 -
198 ---
199 -2.2.1
200 -
201
202 diff --git a/sys-devel/llvm/files/3.6.2/nodoctargz.patch b/sys-devel/llvm/files/3.6.2/nodoctargz.patch
203 deleted file mode 100644
204 index 3a622b53daa..00000000000
205 --- a/sys-devel/llvm/files/3.6.2/nodoctargz.patch
206 +++ /dev/null
207 @@ -1,45 +0,0 @@
208 ---- docs/Makefile.orig 2012-04-30 17:00:01.000000000 +0200
209 -+++ docs/Makefile 2012-04-30 17:15:52.000000000 +0200
210 -@@ -52,11 +52,10 @@
211 - # 'make generated BUILD_FOR_WEBSITE=1'
212 - generated:: $(generated_targets)
213 -
214 --install-html: $(PROJ_OBJ_DIR)/html.tar.gz
215 -+install-html:
216 - $(Echo) Installing HTML documentation
217 - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html
218 - $(Verb) $(DataInstall) $(HTML) $(DESTDIR)$(PROJ_docsdir)/html
219 -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/html.tar.gz $(DESTDIR)$(PROJ_docsdir)
220 -
221 - $(PROJ_OBJ_DIR)/html.tar.gz: $(HTML)
222 - $(Echo) Packaging HTML documentation
223 -@@ -68,12 +67,11 @@
224 - install-doxygen: doxygen
225 - $(Echo) Installing doxygen documentation
226 - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/html/doxygen
227 -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/doxygen.tar.gz $(DESTDIR)$(PROJ_docsdir)
228 - $(Verb) cd $(PROJ_OBJ_DIR)/doxygen && \
229 - $(FIND) . -type f -exec \
230 - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/html/doxygen \;
231 -
232 --doxygen: regendoc $(PROJ_OBJ_DIR)/doxygen.tar.gz
233 -+doxygen: regendoc
234 -
235 - regendoc:
236 - $(Echo) Building doxygen documentation
237 -@@ -99,7 +97,6 @@
238 - install-ocamldoc: ocamldoc
239 - $(Echo) Installing ocamldoc documentation
240 - $(Verb) $(MKDIR) $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html
241 -- $(Verb) $(DataInstall) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(DESTDIR)$(PROJ_docsdir)
242 - $(Verb) cd $(PROJ_OBJ_DIR)/ocamldoc && \
243 - $(FIND) . -type f -exec \
244 - $(DataInstall) {} $(DESTDIR)$(PROJ_docsdir)/ocamldoc/html \;
245 -@@ -109,7 +106,6 @@
246 - $(Verb) $(RM) -rf $(PROJ_OBJ_DIR)/ocamldoc.tar*
247 - $(Verb) $(TAR) cf $(PROJ_OBJ_DIR)/ocamldoc.tar ocamldoc
248 - $(Verb) $(GZIPBIN) $(PROJ_OBJ_DIR)/ocamldoc.tar
249 -- $(Verb) $(CP) $(PROJ_OBJ_DIR)/ocamldoc.tar.gz $(PROJ_OBJ_DIR)/ocamldoc/html/
250 -
251 - regen-ocamldoc:
252 - $(Echo) Building ocamldoc documentation
253
254 diff --git a/sys-devel/llvm/llvm-3.6.2-r100.ebuild b/sys-devel/llvm/llvm-3.6.2-r100.ebuild
255 index 6e2e7051b81..aedeb834698 100644
256 --- a/sys-devel/llvm/llvm-3.6.2-r100.ebuild
257 +++ b/sys-devel/llvm/llvm-3.6.2-r100.ebuild
258 @@ -12,7 +12,8 @@ HOMEPAGE="http://llvm.org/"
259 SRC_URI="http://llvm.org/releases/${PV}/${P}.src.tar.xz
260 clang? ( http://llvm.org/releases/${PV}/compiler-rt-${PV}.src.tar.xz
261 http://llvm.org/releases/${PV}/cfe-${PV}.src.tar.xz )
262 - https://dev.gentoo.org/~voyageur/distfiles/${PN}-3.6.1-manpages.tar.bz2"
263 + https://dev.gentoo.org/~voyageur/distfiles/${PN}-3.6.1-manpages.tar.bz2
264 + https://dev.gentoo.org/~mgorny/dist/llvm/${P}-patchset.tar.gz"
265
266 # Additional licenses:
267 # 1. OpenBSD regex: Henry Spencer's license ('rc' in Gentoo) + BSD.
268 @@ -111,20 +112,20 @@ src_unpack() {
269 }
270
271 src_prepare() {
272 - epatch "${FILESDIR}"/3.6.2/nodoctargz.patch
273 - epatch "${FILESDIR}"/3.6.2/gcc-4.9.patch
274 - epatch "${FILESDIR}"/3.6.2/gentoo-install.patch
275 + epatch "${WORKDIR}/${P}-patchset"/nodoctargz.patch
276 + epatch "${WORKDIR}/${P}-patchset"/gcc-4.9.patch
277 + epatch "${WORKDIR}/${P}-patchset"/gentoo-install.patch
278
279 if use clang; then
280 # Automatically select active system GCC's libraries, bugs #406163 and #417913
281 - epatch "${FILESDIR}"/3.8.1/clang/gentoo-runtime-gcc-detection-v3.patch
282 + epatch "${WORKDIR}/${P}-patchset"/clang/gentoo-runtime-gcc-detection-v3.patch
283
284 - epatch "${FILESDIR}"/3.7.1/clang/gentoo-install.patch
285 - epatch "${FILESDIR}"/3.9.1/clang/darwin_prefix-include-paths.patch
286 + epatch "${WORKDIR}/${P}-patchset"/clang/gentoo-install.patch
287 + epatch "${WORKDIR}/${P}-patchset"/clang/darwin_prefix-include-paths.patch
288 eprefixify tools/clang/lib/Frontend/InitHeaderSearch.cpp
289
290 # Fix build fails with using gcc-4.9 on Gentoo/FreeBSD, bug #548444
291 - epatch "${FILESDIR}"/3.6.2/clang/fbsd-gcc49.patch
292 + epatch "${WORKDIR}/${P}-patchset"/clang/fbsd-gcc49.patch
293 fi
294
295 if use prefix && use clang; then