1 |
commit: 560664303060100467ca053a94decb296da113d8 |
2 |
Author: Huang Rui <vowstar <AT> gmail <DOT> com> |
3 |
AuthorDate: Wed Jan 29 16:23:37 2020 +0000 |
4 |
Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org> |
5 |
CommitDate: Thu Jan 30 06:33:05 2020 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=56066430 |
7 |
|
8 |
sci-electronics/iverilog: fix install bug of 10.3 |
9 |
|
10 |
The upstream's Makefile used a very unusual |
11 |
installation method. It may cause overwrite |
12 |
installation bug. |
13 |
|
14 |
Closes: https://bugs.gentoo.org/705412 |
15 |
Package-Manager: Portage-2.3.85, Repoman-2.3.20 |
16 |
Signed-off-by: Huang Rui <vowstar <AT> gmail.com> |
17 |
Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org> |
18 |
|
19 |
.../files/iverilog-10.3-file-missing.patch | 191 +++++++++++++++++++++ |
20 |
sci-electronics/iverilog/iverilog-10.3.ebuild | 4 + |
21 |
2 files changed, 195 insertions(+) |
22 |
|
23 |
diff --git a/sci-electronics/iverilog/files/iverilog-10.3-file-missing.patch b/sci-electronics/iverilog/files/iverilog-10.3-file-missing.patch |
24 |
new file mode 100644 |
25 |
index 00000000000..2232fff2296 |
26 |
--- /dev/null |
27 |
+++ b/sci-electronics/iverilog/files/iverilog-10.3-file-missing.patch |
28 |
@@ -0,0 +1,191 @@ |
29 |
+https://bugs.gentoo.org/705412 |
30 |
+--- a/Makefile.in |
31 |
++++ b/Makefile.in |
32 |
+@@ -327,6 +327,7 @@ else |
33 |
+ WIN32_INSTALL = $(bindir)/iverilog-vpi$(suffix) |
34 |
+ endif |
35 |
+ |
36 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/ivl@EXEEXT@ $(libdir)/ivl$(suffix)/include/constants.vams $(libdir)/ivl$(suffix)/include/disciplines.vams $(includedir)/ivl_target.h $(includedir)/_pli_types.h $(includedir)/sv_vpi_user.h $(includedir)/vpi_user.h $(includedir)/acc_user.h $(includedir)/veriuser.h $(WIN32_INSTALL) $(INSTALL_DOC) |
37 |
+ install: all installdirs $(libdir)/ivl$(suffix)/ivl@EXEEXT@ $(libdir)/ivl$(suffix)/include/constants.vams $(libdir)/ivl$(suffix)/include/disciplines.vams $(includedir)/ivl_target.h $(includedir)/_pli_types.h $(includedir)/sv_vpi_user.h $(includedir)/vpi_user.h $(includedir)/acc_user.h $(includedir)/veriuser.h $(WIN32_INSTALL) $(INSTALL_DOC) |
38 |
+ $(foreach dir,$(SUBDIRS),$(MAKE) -C $(dir) $@ && ) true |
39 |
+ |
40 |
+--- a/cadpli/Makefile.in |
41 |
++++ b/cadpli/Makefile.in |
42 |
+@@ -79,6 +79,7 @@ endif |
43 |
+ cadpli.vpl: $O ../vvp/libvpi.a ../libveriuser/libveriuser.o |
44 |
+ $(CC) @shared@ $(LDFLAGS) -o $@ $O ../libveriuser/libveriuser.o $(SYSTEM_VPI_LDFLAGS) |
45 |
+ |
46 |
++.PHONY: all installdirs $(vpidir)/cadpli.vpl |
47 |
+ install: all installdirs $(vpidir)/cadpli.vpl |
48 |
+ |
49 |
+ $(vpidir)/cadpli.vpl: ./cadpli.vpl |
50 |
+--- a/driver-vpi/Makefile.in |
51 |
++++ b/driver-vpi/Makefile.in |
52 |
+@@ -93,6 +93,7 @@ res.o: res.rc |
53 |
+ $(WINDRES) -i res.rc -o res.o |
54 |
+ # |
55 |
+ |
56 |
++.PHONY: all installdirs $(bindir)/iverilog-vpi$(suffix)@EXEEXT@ |
57 |
+ install: all installdirs $(bindir)/iverilog-vpi$(suffix)@EXEEXT@ |
58 |
+ |
59 |
+ $(bindir)/iverilog-vpi$(suffix)@EXEEXT@: ./iverilog-vpi@EXEEXT@ |
60 |
+--- a/driver/Makefile.in |
61 |
++++ b/driver/Makefile.in |
62 |
+@@ -127,6 +127,7 @@ INSTALL_DOC = $(mandir)/man1/iverilog$(suffix).1 |
63 |
+ INSTALL_DOCDIR = $(mandir)/man1 |
64 |
+ endif |
65 |
+ |
66 |
++.PHONY: all installdirs $(bindir)/iverilog$(suffix)@EXEEXT@ $(INSTALL_DOC) |
67 |
+ install: all installdirs $(bindir)/iverilog$(suffix)@EXEEXT@ $(INSTALL_DOC) |
68 |
+ |
69 |
+ $(bindir)/iverilog$(suffix)@EXEEXT@: ./iverilog@EXEEXT@ |
70 |
+--- a/ivlpp/Makefile.in |
71 |
++++ b/ivlpp/Makefile.in |
72 |
+@@ -71,6 +71,7 @@ ivlpp@EXEEXT@: $O |
73 |
+ lexor.c: $(srcdir)/lexor.lex |
74 |
+ $(LEX) -t $< > $@ |
75 |
+ |
76 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/ivlpp@EXEEXT@ |
77 |
+ install: all installdirs $(libdir)/ivl$(suffix)/ivlpp@EXEEXT@ |
78 |
+ |
79 |
+ $(libdir)/ivl$(suffix)/ivlpp@EXEEXT@: ivlpp@EXEEXT@ |
80 |
+--- a/tgt-blif/Makefile.in |
81 |
++++ b/tgt-blif/Makefile.in |
82 |
+@@ -81,6 +81,7 @@ endif |
83 |
+ blif.tgt: $O $(TGTDEPLIBS) |
84 |
+ $(CXX) @shared@ $(LDFLAGS) -o $@ $O $(TGTLDFLAGS) |
85 |
+ |
86 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/blif.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/blif.conf $(libdir)/ivl$(suffix)/blif-s.conf |
87 |
+ install: all installdirs $(libdir)/ivl$(suffix)/blif.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/blif.conf $(libdir)/ivl$(suffix)/blif-s.conf |
88 |
+ |
89 |
+ $(libdir)/ivl$(suffix)/blif.tgt: ./blif.tgt |
90 |
+--- a/tgt-fpga/Makefile.in |
91 |
++++ b/tgt-fpga/Makefile.in |
92 |
+@@ -100,6 +100,7 @@ INSTALL_DOC = $(mandir)/man1/iverilog-fpga$(suffix).1 |
93 |
+ INSTALL_DOCDIR = $(mandir)/man1 |
94 |
+ endif |
95 |
+ |
96 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/fpga.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/fpga.conf $(libdir)/ivl$(suffix)/fpga-s.conf |
97 |
+ install: all installdirs $(libdir)/ivl$(suffix)/fpga.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/fpga.conf $(libdir)/ivl$(suffix)/fpga-s.conf |
98 |
+ |
99 |
+ $(libdir)/ivl$(suffix)/fpga.tgt: ./fpga.tgt |
100 |
+--- a/tgt-null/Makefile.in |
101 |
++++ b/tgt-null/Makefile.in |
102 |
+@@ -80,6 +80,7 @@ endif |
103 |
+ null.tgt: $O $(TGTDEPLIBS) |
104 |
+ $(CC) @shared@ $(LDFLAGS) -o $@ $O $(TGTLDFLAGS) |
105 |
+ |
106 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/null.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/null.conf $(libdir)/ivl$(suffix)/null-s.conf |
107 |
+ install: all installdirs $(libdir)/ivl$(suffix)/null.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/null.conf $(libdir)/ivl$(suffix)/null-s.conf |
108 |
+ |
109 |
+ $(libdir)/ivl$(suffix)/null.tgt: ./null.tgt |
110 |
+--- a/tgt-pal/Makefile.in |
111 |
++++ b/tgt-pal/Makefile.in |
112 |
+@@ -79,6 +79,7 @@ endif |
113 |
+ pal.tgt: $O $(TGTDEPLIBS) |
114 |
+ $(CC) @shared@ $(LDFLAGS) -o $@ $O $(TGTLDFLAGS) -lipal |
115 |
+ |
116 |
++.PHONY: all installdirs $(libdir)/ivl/pal.tgt |
117 |
+ install: all installdirs $(libdir)/ivl/pal.tgt |
118 |
+ |
119 |
+ $(libdir)/ivl/pal.tgt: ./pal.tgt |
120 |
+--- a/tgt-pcb/Makefile.in |
121 |
++++ b/tgt-pcb/Makefile.in |
122 |
+@@ -104,6 +104,7 @@ endif |
123 |
+ pcb.tgt: $O $(TGTDEPLIBS) |
124 |
+ $(CXX) @shared@ $(LDFLAGS) -o $@ $O $(TGTLDFLAGS) |
125 |
+ |
126 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/pcb.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/pcb.conf $(libdir)/ivl$(suffix)/pcb-s.conf |
127 |
+ install: all installdirs $(libdir)/ivl$(suffix)/pcb.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/pcb.conf $(libdir)/ivl$(suffix)/pcb-s.conf |
128 |
+ |
129 |
+ $(libdir)/ivl$(suffix)/pcb.tgt: ./pcb.tgt |
130 |
+--- a/tgt-sizer/Makefile.in |
131 |
++++ b/tgt-sizer/Makefile.in |
132 |
+@@ -80,6 +80,7 @@ endif |
133 |
+ sizer.tgt: $O $(TGTDEPLIBS) |
134 |
+ $(CXX) @shared@ $(LDFLAGS) -o $@ $O $(TGTLDFLAGS) |
135 |
+ |
136 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/sizer.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/sizer.conf $(libdir)/ivl$(suffix)/sizer-s.conf |
137 |
+ install: all installdirs $(libdir)/ivl$(suffix)/sizer.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/sizer.conf $(libdir)/ivl$(suffix)/sizer-s.conf |
138 |
+ |
139 |
+ $(libdir)/ivl$(suffix)/sizer.tgt: ./sizer.tgt |
140 |
+--- a/tgt-stub/Makefile.in |
141 |
++++ b/tgt-stub/Makefile.in |
142 |
+@@ -81,6 +81,7 @@ endif |
143 |
+ stub.tgt: $O $(TGTDEPLIBS) |
144 |
+ $(CC) @shared@ $(LDFLAGS) -o $@ $O $(TGTLDFLAGS) |
145 |
+ |
146 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/stub.tgt $(libdir)/ivl$(suffix)/stub.conf $(libdir)/ivl$(suffix)/stub-s.conf |
147 |
+ install: all installdirs $(libdir)/ivl$(suffix)/stub.tgt \ |
148 |
+ $(libdir)/ivl$(suffix)/stub.conf $(libdir)/ivl$(suffix)/stub-s.conf |
149 |
+ |
150 |
+--- a/tgt-verilog/Makefile.in |
151 |
++++ b/tgt-verilog/Makefile.in |
152 |
+@@ -79,6 +79,7 @@ endif |
153 |
+ verilog.tgt: $O $(TGTDEPLIBS) |
154 |
+ $(CC) @shared@ $(LDFLAGS) -o $@ $O $(TGTLDFLAGS) |
155 |
+ |
156 |
++.PHONY: all installdirs $(libdir)/ivl/verilog.tgt $(includedir)/vpi_user.h |
157 |
+ install: all installdirs $(libdir)/ivl/verilog.tgt \ |
158 |
+ $(includedir)/vpi_user.h |
159 |
+ |
160 |
+--- a/tgt-vhdl/Makefile.in |
161 |
++++ b/tgt-vhdl/Makefile.in |
162 |
+@@ -89,6 +89,7 @@ stamp-vhdl_config-h: $(srcdir)/vhdl_config.h.in ../config.status |
163 |
+ cd ..; ./config.status --header=tgt-vhdl/vhdl_config.h |
164 |
+ vhdl_config.h: stamp-vhdl_config-h |
165 |
+ |
166 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/vhdl.tgt $(libdir)/ivl$(suffix)/vhdl.conf $(libdir)/ivl$(suffix)/vhdl-s.conf |
167 |
+ install: all installdirs $(libdir)/ivl$(suffix)/vhdl.tgt $(libdir)/ivl$(suffix)/vhdl.conf \ |
168 |
+ $(libdir)/ivl$(suffix)/vhdl-s.conf |
169 |
+ |
170 |
+--- a/tgt-vlog95/Makefile.in |
171 |
++++ b/tgt-vlog95/Makefile.in |
172 |
+@@ -80,6 +80,7 @@ endif |
173 |
+ vlog95.tgt: $O $(TGTDEPLIBS) |
174 |
+ $(CC) @shared@ $(LDFLAGS) -o $@ $O -lm $(TGTLDFLAGS) |
175 |
+ |
176 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/vlog95.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/vlog95.conf $(libdir)/ivl$(suffix)/vlog95-s.conf |
177 |
+ install: all installdirs $(libdir)/ivl$(suffix)/vlog95.tgt $(INSTALL_DOC) $(libdir)/ivl$(suffix)/vlog95.conf $(libdir)/ivl$(suffix)/vlog95-s.conf |
178 |
+ |
179 |
+ $(libdir)/ivl$(suffix)/vlog95.tgt: ./vlog95.tgt |
180 |
+--- a/tgt-vvp/Makefile.in |
181 |
++++ b/tgt-vvp/Makefile.in |
182 |
+@@ -103,6 +103,7 @@ stamp-vvp_config-h: $(srcdir)/vvp_config.h.in ../config.status |
183 |
+ cd ..; ./config.status --header=tgt-vvp/vvp_config.h |
184 |
+ vvp_config.h: stamp-vvp_config-h |
185 |
+ |
186 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/vvp.tgt $(libdir)/ivl$(suffix)/vvp.conf $(libdir)/ivl$(suffix)/vvp-s.conf |
187 |
+ install: all installdirs $(libdir)/ivl$(suffix)/vvp.tgt $(libdir)/ivl$(suffix)/vvp.conf $(libdir)/ivl$(suffix)/vvp-s.conf |
188 |
+ |
189 |
+ $(libdir)/ivl$(suffix)/vvp.tgt: ./vvp.tgt |
190 |
+--- a/vhdlpp/Makefile.in |
191 |
++++ b/vhdlpp/Makefile.in |
192 |
+@@ -127,6 +127,7 @@ lexor_keyword.o: lexor_keyword.cc parse.h |
193 |
+ lexor_keyword.cc: $(srcdir)/lexor_keyword.gperf |
194 |
+ gperf -o -i 7 --ignore-case -C -k 1-4,6,9,$$ -H keyword_hash -N check_identifier -t $(srcdir)/lexor_keyword.gperf > lexor_keyword.cc || (rm -f lexor_keyword.cc ; false) |
195 |
+ |
196 |
++.PHONY: all installdirs $(libdir)/ivl$(suffix)/vhdlpp@EXEEXT@ |
197 |
+ install: all installdirs $(libdir)/ivl$(suffix)/vhdlpp@EXEEXT@ |
198 |
+ |
199 |
+ $(libdir)/ivl$(suffix)/vhdlpp@EXEEXT@: vhdlpp@EXEEXT@ |
200 |
+--- a/vpi/Makefile.in |
201 |
++++ b/vpi/Makefile.in |
202 |
+@@ -171,6 +171,7 @@ stamp-vpi_config-h: $(srcdir)/vpi_config.h.in ../config.status |
203 |
+ cd ..; ./config.status --header=vpi/vpi_config.h |
204 |
+ vpi_config.h: stamp-vpi_config-h |
205 |
+ |
206 |
++.PHONY: all installdirs $(vpidir)/system.vpi $(vpidir)/system.sft $(vpidir)/va_math.vpi $(vpidir)/va_math.sft $(vpidir)/v2005_math.vpi $(vpidir)/v2005_math.sft $(vpidir)/v2009.vpi $(vpidir)/v2009.sft $(vpidir)/vhdl_sys.vpi $(vpidir)/vhdl_sys.sft $(vpidir)/vpi_debug.vpi |
207 |
+ install: all installdirs \ |
208 |
+ $(vpidir)/system.vpi $(vpidir)/system.sft \ |
209 |
+ $(vpidir)/va_math.vpi $(vpidir)/va_math.sft \ |
210 |
+--- a/vvp/Makefile.in |
211 |
++++ b/vvp/Makefile.in |
212 |
+@@ -205,6 +205,7 @@ stamp-config-h: $(srcdir)/config.h.in ../config.status |
213 |
+ cd ..; ./config.status --header=vvp/config.h |
214 |
+ config.h: stamp-config-h |
215 |
+ |
216 |
++.PHONY: all installdirs $(bindir)/vvp$(suffix)@EXEEXT@ $(libdir)/libvpi$(suffix).a $(INSTALL_DOC) |
217 |
+ install: all installdirs $(bindir)/vvp$(suffix)@EXEEXT@ $(libdir)/libvpi$(suffix).a $(INSTALL_DOC) |
218 |
+ |
219 |
+ $(bindir)/vvp$(suffix)@EXEEXT@: ./vvp@EXEEXT@ |
220 |
|
221 |
diff --git a/sci-electronics/iverilog/iverilog-10.3.ebuild b/sci-electronics/iverilog/iverilog-10.3.ebuild |
222 |
index 183ed6f2023..ae61d822ad4 100644 |
223 |
--- a/sci-electronics/iverilog/iverilog-10.3.ebuild |
224 |
+++ b/sci-electronics/iverilog/iverilog-10.3.ebuild |
225 |
@@ -38,6 +38,10 @@ DEPEND=" |
226 |
${RDEPEND} |
227 |
" |
228 |
|
229 |
+PATCHES=( |
230 |
+ "${FILESDIR}"/${PN}-10.3-file-missing.patch #705412 |
231 |
+) |
232 |
+ |
233 |
src_prepare() { |
234 |
default |