Gentoo Archives: gentoo-osx

From: Grobian <grobian@g.o>
To: gentoo-osx@l.g.o
Subject: [gentoo-osx] Ebuilds with conditional patches
Date: Mon, 03 Oct 2005 20:17:26
Message-Id: 43417433.4020208@gentoo.org
1 Hi list,
2
3 In response to Flameeyes' desire to have no conditional patches in
4 ebuilds, I fired off a simple grep which unfortunately returned many
5 matches. Anyone who feels to have some spare minutes is invited to have
6 a look at these ebuilds to see if the patch can be made unconditional.
7
8 By the lack of any better idea (maybe I should make a bugzilla bug out
9 of it), if you 'fix' an ebuild please send a reply to this email which
10 points out which ebuild is fixed. If you have a good idea how to
11 administer this, please say so.
12
13 % find . -name "*.ebuild" | xargs grep -Hn "use ppc-macos && epatch"
14 ./app-doc/doxygen/doxygen-1.4.1.ebuild:30: use ppc-macos && epatch
15 ${FILESDIR}/bsd-configure.patch
16 ./app-editors/emacs-cvs/emacs-cvs-22.0.50.ebuild:57: use ppc-macos &&
17 epatch ${FILESDIR}/emacs-cvs-21.3.50-nofink.diff
18 ./app-editors/emacs-cvs/emacs-cvs-23.0.0.ebuild:57: use ppc-macos &&
19 epatch ${FILESDIR}/emacs-cvs-21.3.50-nofink.diff
20 ./app-text/ghostscript/ghostscript-7.07.1-r8.ebuild:78: use ppc-macos &&
21 epatch ${FILESDIR}/gs-osx-ijs.patch
22 ./app-text/ghostscript/ghostscript-7.07.1-r9.ebuild:85: use ppc-macos &&
23 epatch ${FILESDIR}/gs-osx-ijs.patch
24 ./app-text/ghostscript/ghostscript-7.07.1-r10.ebuild:88: use
25 ppc-macos && epatch ${FILESDIR}/gs-osx-ijs.patch
26 ./app-text/gv/gv-3.5.8-r4.ebuild:32: use ppc-macos && epatch
27 ${FILESDIR}/${P}-setenv.diff
28 ./dev-lang/lua/lua-5.0.2-r1.ebuild:23: use ppc-macos && epatch
29 ${FILESDIR}/lua-ppc-macos-Makefile.patch
30 ./dev-lang/lua/lua-5.0.2.ebuild:23: use ppc-macos && epatch
31 ${FILESDIR}/lua-ppc-macos-Makefile.patch
32 ./dev-libs/fribidi/fribidi-0.10.4.ebuild:20: use ppc-macos && epatch
33 ${FILESDIR}/${PN}-macos.patch
34 ./dev-libs/fribidi/fribidi-0.10.5.ebuild:20: use ppc-macos && epatch
35 ${FILESDIR}/${PN}-macos.patch
36 ./dev-libs/glib/glib-2.8.2.ebuild:28: use ppc-macos && epatch
37 ${FILESDIR}/${PN}-2-macos.patch
38 ./dev-libs/glib/glib-2.6.5.ebuild:27: use ppc-macos && epatch
39 ${FILESDIR}/${PN}-2-macos.patch
40 ./dev-libs/libpcre/libpcre-4.5.ebuild:25: use ppc-macos && epatch
41 ${FILESDIR}/pcre-4.2-macos.patch
42 ./media-libs/gstreamer/gstreamer-0.8.9-r3.ebuild:45: use ppc-macos &&
43 epatch ${FILESDIR}/${P}-fixpluginload.patch
44 ./media-libs/ladspa-sdk/ladspa-sdk-1.12-r2.ebuild:34: use ppc-macos &&
45 epatch ${FILESDIR}/${P}-ppc-macos.patch
46 ./media-libs/libao/libao-0.8.5.ebuild:25: use ppc-macos && epatch
47 ${FILESDIR}/${P}-ppc-macos.patch
48 ./media-libs/libdvdnav/libdvdnav-0.1.9.ebuild:20: use ppc-macos &&
49 epatch ${FILESDIR}/${P}-darwin.diff
50 ./media-sound/esound/esound-0.2.36-r1.ebuild:30: use ppc-macos &&
51 epatch ${FILESDIR}/${P}-ppc-macos.patch
52 ./sci-libs/fftw/fftw-3.0.1-r1.ebuild:21: use ppc-macos && epatch
53 ${FILESDIR}/${PN}-ppc-macos.patch
54 ./sci-libs/fftw/fftw-3.0.1-r1.ebuild:26: use ppc-macos && epatch
55 ${FILESDIR}/${PN}-ppc-macos.patch
56 ./sci-libs/fftw/fftw-3.0.1-r2.ebuild:23: use ppc-macos && epatch
57 ${FILESDIR}/${PN}-ppc-macos.patch
58 ./sys-libs/readline/readline-4.3-r6.ebuild:33: use ppc-macos && epatch
59 ${FILESDIR}/macos.patch
60 ./www-client/elinks/elinks-0.10.5.ebuild:42: use ppc-macos && epatch
61 ${FILESDIR}/${PN}-osx-configure.diff
62 ./www-client/elinks/elinks-0.10.5-r1.ebuild:47: use ppc-macos && epatch
63 ${FILESDIR}/${PN}-osx-configure.diff
64 ./x11-libs/openmotif/openmotif-2.1.30-r13.ebuild:66: use ppc-macos &&
65 epatch ${FILESDIR}/${PN}-2.1.30-darwin-netbsd.diff
66 ./x11-libs/openmotif/openmotif-2.1.30-r9.ebuild:67: use ppc-macos &&
67 epatch ${FILESDIR}/${P}-darwin-netbsd.diff
68 ./x11-libs/openmotif/openmotif-2.2.3-r3.ebuild:49: use ppc-macos &&
69 epatch ${FILESDIR}/${P}-automake.patch
70 ./x11-libs/openmotif/openmotif-2.2.3-r7.ebuild:50: use ppc-macos &&
71 epatch ${FILESDIR}/${P}-automake.patch
72
73
74 The other way around, we might have to file bugs, or fix them ourselves too:
75
76 % find . -name "*.ebuild" | xargs grep -Hn "use ppc-macos || epatch"
77 ./dev-libs/libpcre/libpcre-5.0.ebuild:24: use ppc-macos || epatch
78 "${FILESDIR}"/pcre-4.2-link.patch
79 ./dev-libs/libpcre/libpcre-6.1.ebuild:24: use ppc-macos || epatch
80 "${FILESDIR}"/pcre-6.1-link.patch
81 ./dev-libs/libpcre/libpcre-6.3.ebuild:24: use ppc-macos || epatch
82 "${FILESDIR}"/pcre-6.3-link.patch
83 ./sys-libs/slang/slang-1.4.9-r1.ebuild:26: use ppc-macos || epatch
84 ${FILESDIR}/${P}-fsuid.patch
85 ./sys-libs/slang/slang-1.4.9-r2.ebuild:26: use ppc-macos || epatch
86 ${FILESDIR}/${P}-fsuid.patch
87 ./x11-libs/pango/pango-1.4.1-r1.ebuild:32: use ppc-macos || epatch
88 ${FILESDIR}/${PN}-1.2.2-slighthint.patch
89
90
91 Last but not least the most CPU intensive category:
92
93 % find . -name "*.ebuild" | xargs -n1 awk 'BEGIN { msg = "" } /if use
94 ppc-macos/, /fi$/ { msg = msg $0 "\n" } END { if (msg != "") { if (msg ~
95 /epatch/) print FILENAME "\n" msg } }'
96 ./app-doc/doxygen/doxygen-1.4.4.ebuild
97 if use ppc-macos; then
98 epatch ${FILESDIR}/bsd-configure.patch
99 [[ "$MACOSX_DEPLOYMENT_TARGET" == "10.4" ]] && sed -i
100 -e 's:-D__FreeBSD__:-D__FreeBSD__=5:' \
101 tmake/lib/macosx-c++/tmake.conf
102 fi
103
104 ./app-editors/emacs/emacs-22.0.50_pre20050225.ebuild
105 if use ppc-macos ; then
106 use cjk && epatch ${WORKDIR}/${INLINE}/emacs-inline.patch
107 epatch ${FILESDIR}/emacs-nofink-gentoo.diff
108 fi
109
110 ./app-text/ghostscript/ghostscript-7.07.1-r8.ebuild
111 if use ppc-macos; then
112 epatch ${FILESDIR}/gs-osx-unix-dll.patch
113 cp src/unix-gcc.mak Makefile.in
114 sed -i -e "s:SHARE_JPEG=0:SHARE_JPEG=1:" Makefile.in || die
115 sed -i -e "s:SHARE_ZLIB=0:SHARE_ZLIB=1:" Makefile.in || die
116 sed -i -e "s:SHARE_LIBPNG=0:SHARE_LIBPNG=1:"
117 Makefile.in || die
118 sed -i -e "s:usr/local:usr:" Makefile.in || die
119 fi
120
121 ./app-text/ghostscript/ghostscript-7.07.1-r9.ebuild
122 if use ppc-macos; then
123 epatch ${FILESDIR}/gs-osx-unix-dll.patch
124 cp src/unix-gcc.mak Makefile.in
125 sed -i -e "s:SHARE_JPEG=0:SHARE_JPEG=1:" Makefile.in || die
126 sed -i -e "s:SHARE_ZLIB=0:SHARE_ZLIB=1:" Makefile.in || die
127 sed -i -e "s:SHARE_LIBPNG=0:SHARE_LIBPNG=1:"
128 Makefile.in || die
129 sed -i -e "s:usr/local:usr:" Makefile.in || die
130 fi
131
132 ./app-text/ghostscript/ghostscript-7.07.1-r10.ebuild
133 if use ppc-macos; then
134 epatch ${FILESDIR}/gs-osx-unix-dll.patch
135 cp src/unix-gcc.mak Makefile.in
136 sed -i -e "s:SHARE_JPEG=0:SHARE_JPEG=1:" Makefile.in || die
137 sed -i -e "s:SHARE_ZLIB=0:SHARE_ZLIB=1:" Makefile.in || die
138 sed -i -e "s:SHARE_LIBPNG=0:SHARE_LIBPNG=1:"
139 Makefile.in || die
140 sed -i -e "s:usr/local:usr:" Makefile.in || die
141 fi
142
143 ./app-text/recode/recode-3.6-r1.ebuild
144 if use ppc-macos; then
145 epatch ${FILESDIR}/${P}-ppc-macos.diff
146 cp ${S}/lib/error.c ${S}/lib/xstrdup.c ${S}/src/ || die
147 "file copy failed"
148 elibtoolize
149 LDFLAGS="${LDFLAGS} -lgettextlib"
150 fi
151
152 ./app-text/recode/recode-3.6-r2.ebuild
153 if use ppc-macos; then
154 epatch "${FILESDIR}"/${P}-ppc-macos.diff
155 cp lib/error.c lib/xstrdup.c src/ || die "file copy failed"
156 elibtoolize
157 append-ldflags -lgettextlib
158 fi
159
160 ./dev-libs/libsigsegv/libsigsegv-2.1.ebuild
161 if use ppc-macos ; then
162 epatch ${FILESDIR}/libsigsegv-2.1-darwin-7.x.patch || die
163 ./configure --enable-shared || die
164 else
165 econf --enable-shared || die
166 fi
167
168 ./dev-util/guile/guile-1.6.4-r1.ebuild
169 if use ppc-macos ; then
170 elibtoolize
171 epatch ${FILESDIR}/guile-macos-posix.patch
172 epatch ${FILESDIR}/guile-macos-relink.patch
173 append-flags -no-cpp-precomp -Dmacosx
174 fi
175
176 ./dev-util/guile/guile-1.6.6.ebuild
177 if use ppc-macos ; then
178 elibtoolize
179 epatch ${FILESDIR}/guile-macos-posix.patch
180 epatch ${FILESDIR}/guile-macos-relink.patch
181 append-flags -no-cpp-precomp -Dmacosx
182 fi
183
184 ./media-gfx/graphviz/graphviz-1.16.ebuild
185 if use ppc-macos; then
186 # fixes weird make issue
187 epatch ${WORKDIR}/${P}-panic.patch
188 epatch ${FILESDIR}/${P}-common_h.patch
189 fi
190
191 ./media-gfx/xv/xv-3.10a-r10.ebuild
192 if use ppc-macos; then
193 epatch ${FILESDIR}/${P}-xv-osx.patch
194 epatch ${FILESDIR}/${P}-vdcomp-osx.patch
195 epatch ${FILESDIR}/${P}-makefile-osx.patch
196 fi
197 if use ppc-macos; then
198 filter-flags -ffast-math
199 fi
200
201 ./media-gfx/xv/xv-3.10a-r11.ebuild
202 if use ppc-macos; then
203 epatch ${FILESDIR}/${PF}-xv-osx.patch
204 epatch ${FILESDIR}/${P}-vdcomp-osx.patch
205 fi
206 if use ppc-macos; then
207 append-flags -DUSE_GETCWD -DUSLEEP
208 else
209 append-flags -DUSE_GETCWD -DLINUX -DUSLEEP
210 fi
211
212 ./media-gfx/xv/xv-3.10a-r8.ebuild
213 if use ppc-macos; then
214 epatch ${FILESDIR}/${P}-xv-osx.patch
215 epatch ${FILESDIR}/${P}-vdcomp-osx.patch
216 epatch ${FILESDIR}/${P}-makefile-osx.patch
217 fi
218
219 ./media-gfx/xv/xv-3.10a-r9.ebuild
220 if use ppc-macos; then
221 epatch ${FILESDIR}/${P}-xv-osx.patch
222 epatch ${FILESDIR}/${P}-vdcomp-osx.patch
223 epatch ${FILESDIR}/${P}-makefile-osx.patch
224 fi
225
226 ./media-libs/aalib/aalib-1.4_rc5.ebuild
227 if use ppc-macos; then
228 cd src
229 epatch "${FILESDIR}"/${P}-osx.patch
230 fi
231 if use ppc-macos && use X; then
232 sed -i -e 's:aafire_LDFLAGS =:aafire_LDFLAGS =
233 -undefined define_a_way:' \
234 ${S}/src/Makefile || die "Failed to edit Makefile for X
235 compatibility"
236 fi
237
238 ./media-libs/aalib/aalib-1.4_rc4-r2.ebuild
239 if use ppc-macos; then
240 cd src
241 epatch "${FILESDIR}"/${PN}-osx.patch
242 fi
243 if use ppc-macos && use X; then
244 sed -i -e 's:aafire_LDFLAGS =:aafire_LDFLAGS =
245 -undefined define_a_way:' \
246 ${S}/src/Makefile || die "Failed to edit Makefile for X
247 compatibility"
248 fi
249
250 ./media-libs/libpng/libpng-1.2.8.ebuild
251 if use ppc-macos ; then
252 epatch "${FILESDIR}"/macos.patch # implements strnlen
253 makefilein="scripts/makefile.darwin"
254 fi
255
256 ./media-sound/mpg123/mpg123-0.59s-r9.ebuild
257 if use ppc-macos;
258 then
259 einfo "Patching for OSX build"
260 epatch ${FILESDIR}/${PN}-osx.diff
261 fi
262 if use ppc-macos; then
263 [ -z "${styles}" ] && styles="macos"
264 atype=""
265 else
266 use esd && styles="${styles} -ppc-esd"
267 use oss && styles="${styles} -ppc"
268
269 [ -z "${styles}" ] && styles="-ppc"
270 fi
271
272 ./media-sound/mpg123/mpg123-0.59s-r10.ebuild
273 if use ppc-macos;
274 then
275 einfo "Patching for OSX build"
276 epatch ${FILESDIR}/${PN}-osx.diff
277 fi
278 if use ppc-macos; then
279 [[ -z "${styles}" ]] && styles="macos"
280 atype=""
281 else
282 use esd && styles="${styles} -ppc-esd"
283 use oss && styles="${styles} -ppc"
284
285 [[ -z "${styles}" ]] && styles="-ppc"
286 fi
287
288 ./media-video/ffmpeg/ffmpeg-0.4.9_pre1-r1.ebuild
289 if use ppc-macos; then
290 sed -i s:SLIBSUF=".so":SLIBSUF=".dylib": configure
291 epatch ${FILESDIR}/${PN}-osx.patch
292 sed -i -e 's:\$<:\$< -L../libavcodec -lavcodec
293 -L../libavformat -lavformat:g' vhook/Makefile
294 use oggvorbis && sed -i -e 's:ifeq ($(CPU),Darwin):ifeq
295 ($(CPU),Darwin)\
296 LDFLAGS+=-logg:' libavformat/Makefile
297 fi
298
299
300 ./x11-libs/qt/qt-3.3.4-r2.ebuild
301 if use ppc-macos ; then
302 gzcat ${FILESDIR}/${P}-darwin-fink.patch.gz | sed -e
303 "s:@QTBASE@:${QTBASE}:g" > ${T}/${P}-darwin-fink.patch
304 epatch ${T}/${P}-darwin-fink.patch
305 fi
306
307 ./x11-libs/qt/qt-3.3.4-r6.ebuild
308 if use ppc-macos ; then
309 epatch ${FILESDIR}/${P}-macos.patch
310 fi
311
312 ./x11-libs/qt/qt-3.3.4-r3.ebuild
313 if use ppc-macos ; then
314 gzcat ${FILESDIR}/${P}-darwin-fink.patch.gz | sed -e
315 "s:@QTBASE@:${QTBASE}:g" > ${T}/${P}-darwin-fink.patch
316 epatch ${T}/${P}-darwin-fink.patch
317 fi
318
319 ./x11-libs/qt/qt-3.3.5.ebuild
320 if use ppc-macos ; then
321 epatch ${FILESDIR}/${P}-macos.patch
322 fi
323
324 ./x11-libs/qt/qt-3.3.4-r8.ebuild
325 if use ppc-macos ; then
326 epatch ${FILESDIR}/${P}-macos.patch
327 fi
328
329 ./x11-libs/qt/qt-3.3.4-r7.ebuild
330 if use ppc-macos ; then
331 epatch ${FILESDIR}/${P}-macos.patch
332 fi
333
334
335 --
336 Fabian Groffen
337 Gentoo for Mac OS X Project -- Interim Lead
338 --
339 gentoo-osx@g.o mailing list

Replies

Subject Author
Re: [gentoo-osx] Ebuilds with conditional patches Nick Dimiduk <ndimiduk@g.o>