Gentoo Archives: gentoo-commits

From: "Ned Ludd (solar)" <solar@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in profiles/prefix/windows/interix: make.defaults package.mask package.use.force package.use.mask parent profile.bashrc use.force use.mask virtuals
Date: Sat, 06 Jun 2009 03:55:09
Message-Id: E1MCmzr-0005PY-9Q@stork.gentoo.org
1 solar 09/06/06 03:55:07
2
3 Added: make.defaults package.mask package.use.force
4 package.use.mask parent profile.bashrc use.force
5 use.mask virtuals
6 Log:
7 Initial commit of prefix profiles on behalf of the prefix community
8
9 Revision Changes Path
10 1.1 profiles/prefix/windows/interix/make.defaults
11
12 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/make.defaults?rev=1.1&view=markup
13 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/make.defaults?rev=1.1&content-type=text/plain
14
15 Index: make.defaults
16 ===================================================================
17 # Copyright 1999-2009 Gentoo Foundation
18 # Distributed under the terms of the GNU General Public License v2
19 # $Header: /var/cvsroot/gentoo-x86/profiles/prefix/windows/interix/make.defaults,v 1.1 2009/06/06 03:55:07 solar Exp $
20
21 # System-wide defaults for all Interix profiles
22 # This file should rarely need to be changed
23
24 # 'Sane' defaults
25 ELIBC="Interix"
26 KERNEL="Interix"
27
28 # Sandbox is not ported to Interix yet, no scanelf
29 FEATURES="-sandbox nostrip"
30
31
32
33 1.1 profiles/prefix/windows/interix/package.mask
34
35 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/package.mask?rev=1.1&view=markup
36 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/package.mask?rev=1.1&content-type=text/plain
37
38 Index: package.mask
39 ===================================================================
40 # Copyright 1999-2009 Gentoo Foundation
41 # Distributed under the terms of the GNU General Public License v2
42 # $Header: /var/cvsroot/gentoo-x86/profiles/prefix/windows/interix/package.mask,v 1.1 2009/06/06 03:55:07 solar Exp $
43
44 # $Id: package.mask,v 1.1 2009/06/06 03:55:07 solar Exp $
45
46 # Markus Duft <mduft@g.o> (27 May 2009)
47 # boost not yet updated for winnt and interix interconnect.
48 >=dev-util/boost-build-1.35.0-r2
49
50 # Markus Duft <mduft@g.o> (25 May 2009)
51 # sed seems to be broken, it always says:
52 # sed: couldn't flush stdin: Invalid seek on non-seekable object
53 =sys-apps/sed-4.2
54
55 # Markus Duft <mduft@g.o> (13 May 2009)
56 # this dooms many things (must be some environment during install),
57 # making installation fail.
58 =dev-util/subversion-1.6.2
59
60 # Markus Duft <mduft@g.o> (12 Mar 2009)
61 # this doesn't build at least on interix:
62 # libtool: link: cannot find the library `../../libltdl/libltdlc.la'
63 # or unhandled argument `../../libltdl/libltdlc.la'
64 =media-gfx/graphviz-2.22.0
65
66 # Markus Duft <mduft@g.o> (02 Feb 2009)
67 # this does not work correctly, since there seems to be some
68 # more non-trivial problems with dbus :*(
69 >=gnome-base/gconf-2.24.0
70
71 # Markus Duft <mduft@g.o> (29 Oct 2008)
72 # this version doesn't work on interix, since unconditional
73 # usage of "mbsinit" and "mbrtowc" which don't exist.
74 =sys-apps/texinfo-4.13
75
76 # Fabian Groffen <grobian@g.o> (21 Sep 2008)
77 # Fails to link with
78 # sshd.o(.text+0x203a):sshd.c: undefined reference to `_setgroups'
79 =net-misc/openssh-5*
80
81 # Markus Duft <mduft@g.o> (05 May 2008)
82 # Does not build with the slang interface, and
83 # somebody removed the use flag for ncurses (bug #220365)
84 >=app-misc/mc-4.6.2_pre1
85
86 # Markus Duft <mduft@g.o> (05 May 2008)
87 # Does not build on interix (lots of unresolved
88 # symbols which should be local...).
89 =app-antivirus/clamav-0.93*
90
91 # Michael Haubenwallner <haubi@g.o> (18 Mar 2008)
92 # Interix patches not working yet (mduft)
93 >=sys-devel/gcc-4.3.0
94
95
96
97 1.1 profiles/prefix/windows/interix/package.use.force
98
99 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/package.use.force?rev=1.1&view=markup
100 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/package.use.force?rev=1.1&content-type=text/plain
101
102 Index: package.use.force
103 ===================================================================
104 # Copyright 1999-2009 Gentoo Foundation
105 # Distributed under the terms of the GNU General Public License v2
106 # $Header: /var/cvsroot/gentoo-x86/profiles/prefix/windows/interix/package.use.force,v 1.1 2009/06/06 03:55:07 solar Exp $
107
108 sys-devel/binutils-config extwrapper
109
110
111
112 1.1 profiles/prefix/windows/interix/package.use.mask
113
114 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/package.use.mask?rev=1.1&view=markup
115 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/package.use.mask?rev=1.1&content-type=text/plain
116
117 Index: package.use.mask
118 ===================================================================
119 # Copyright 1999-2009 Gentoo Foundation
120 # Distributed under the terms of the GNU General Public License v2
121 # $Header: /var/cvsroot/gentoo-x86/profiles/prefix/windows/interix/package.use.mask,v 1.1 2009/06/06 03:55:07 solar Exp $
122
123 dev-scheme/guile threads
124 x11-wm/fluxbox nls
125 net-libs/libsoup ssl
126 app-arch/pdv X
127
128
129
130 1.1 profiles/prefix/windows/interix/parent
131
132 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/parent?rev=1.1&view=markup
133 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/parent?rev=1.1&content-type=text/plain
134
135 Index: parent
136 ===================================================================
137 ..
138
139
140
141 1.1 profiles/prefix/windows/interix/profile.bashrc
142
143 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/profile.bashrc?rev=1.1&view=markup
144 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/profile.bashrc?rev=1.1&content-type=text/plain
145
146 Index: profile.bashrc
147 ===================================================================
148 # Copyright 1999-2009 Gentoo Foundation
149 # Distributed under the terms of the GNU General Public License v2
150 # $Header: /var/cvsroot/gentoo-x86/profiles/prefix/windows/interix/profile.bashrc,v 1.1 2009/06/06 03:55:07 solar Exp $
151
152 # One basically always wants -D_ALL_SOURCE, it's some stupid restriction
153 # to hide useful stuff. newer GCCs have this define built-int, so no need
154 # for it anymore. if there are problems, uncomment this again!
155 #[[ ${CFLAGS} != *"-D_ALL_SOURCE"* ]] && CFLAGS="-D_ALL_SOURCE ${CFLAGS}"
156 #[[ ${CXXFLAGS} != *"-D_ALL_SOURCE"* ]] && CXXFLAGS="-D_ALL_SOURCE ${CXXFLAGS}"
157
158 # On interix, binary files (executables, shared libraries) in use
159 # cannot be replaced during merge.
160 # But it is possible to rename them and remove lateron when they are
161 # not used any more by any running program.
162 #
163 # This is a workaround for portage bug#199868,
164 # and should be dropped once portage does sth. like this itself.
165
166 interix_cleanup_removed_files() {
167 local removedlist=$1
168 rm -f "${removedlist}".new
169
170 if [[ -r ${removedlist} ]]; then
171 rm -f "${removedlist}".old
172 fi
173 # restore in case of system fault
174 if [[ -r ${removedlist}.old ]]; then
175 mv "${removedlist}"{.old,}
176 fi
177
178 touch "${removedlist}"{,.new} # ensure they exist
179
180 while read rmstem; do
181 # try to remove previously recorded files
182 for f in "${ROOT}${rmstem}"*; do
183 ebegin "trying to remove ${f}"
184 rm -f "${f}" > /dev/null 2>&1
185 eend $?
186 done
187 # but keep it in list if still exists
188 for f in "${ROOT}${rmstem}"*; do
189 [[ -f ${f} ]] && echo "${rmstem}" >> "${removedlist}".new
190 break
191 done
192 done < "${removedlist}"
193
194 # update the list
195 mv "${removedlist}"{,.old}
196 mv "${removedlist}"{.new,}
197 rm "${removedlist}".old
198 }
199
200 interix_find_removed_slot() {
201 local f=$1
202 local n=0
203 while [[ ${n} -lt 100 && -f "${f}${n}" ]]; do
204 n=$((n=n+1))
205 done
206
207 if [[ ${n} -ge 100 ]]; then
208 echo "too many (>=100) old text files busy of '${f}'" >&2
209 exit 1
210 fi
211
212 echo $n
213 }
214
215 interix_prepare_file() {
216 local failed=0
217 if [[ ${PN} == libiconv ]]; then
218 # when moving around libiconv, the prefix' coreutils will
219 # be damaged, so we really need to use the systems ones.
220 /bin/cp -p "${1}" "${1}.new" || failed=1
221 /bin/mv "${1}" "${2}" || failed=1
222 /bin/mv "${1}.new" "${1}" || failed=1
223 else
224 my_mv=mv
225
226 [[ "${1}" == */mv ]] && my_mv="${1}.new"
227 [[ -f "${1}.new" ]] && rm -f "${1}.new"
228
229 cp -p "${1}" "${1}.new" || failed=1
230 ${my_mv} "${1}" "${2}" || failed=1
231 ${my_mv} "${1}.new" "${1}" || failed=1
232 fi
233
234 echo $failed
235 }
236
237 post_pkg_preinst() {
238 local removedlist="${EROOT}var/lib/portage/files2bremoved"
239 interix_cleanup_removed_files $removedlist
240
241 # now go for current package
242 cd "${D}"
243 find ".${EROOT}" -type f | xargs -r /usr/bin/file | grep ' PE ' | while read f t
244 do
245 f=${f#./} # find prints: "./path/to/file"
246 f=${f%:} # file prints: "file-argument: type-of-file"
247 test -r "${ROOT}${f}" || continue
248 rmstem="${f}.removedbyportage"
249 # keep list of old busy text files unique
250 grep "^${rmstem}$" "${removedlist}" >/dev/null \
251 || echo "${rmstem}" >> "${removedlist}"
252
253 local n=$(interix_find_removed_slot ${ROOT}${rmstem})
254 ebegin "preparing ${ROOT}${f} for merge (${n})"
255 eend $(interix_prepare_file "${ROOT}${f}" "${ROOT}${rmstem}${n}")
256 done
257 }
258
259 post_pkg_prerm() {
260 local removedlist="${EROOT}var/lib/portage/files2bremoved"
261 save_IFS=$IFS
262 IFS='
263 ';
264 local MY_PR=${PR}
265 [[ ${MY_PR} == r0 ]] && MY_PR=
266 local -a contents=($(<"${EROOT}var/db/pkg/${CATEGORY}/${P}${MY_PR:+-}${MY_PR}/CONTENTS"));
267 IFS=$save_IFS
268 local -a cont
269 for content in "${contents[@]}"; do
270 cont=($content)
271 f=${cont[1]}
272 f=${f#/}
273
274 test -r "${ROOT}${f}" || continue
275
276 if /usr/bin/file "${ROOT}${f}" | grep ' PE ' > /dev/null; then
277 # $f should be an absolute path to the installed file
278 rmstem="${f}.removedbyportage"
279
280 grep "^${rmstem}$" "${removedlist}" > /dev/null \
281 || echo "${rmstem}" >> "${removedlist}"
282
283 local n=$(interix_find_removed_slot ${ROOT}${rmstem})
284 ebegin "preparing ${ROOT}${f} for unmerge ($n)"
285 eend $(interix_prepare_file "${ROOT}${f}" "${ROOT}${rmstem}${n}")
286 fi
287 done
288 }
289
290 pre_pkg_postrm() {
291 local removedlist="${EROOT}var/lib/portage/files2bremoved"
292 interix_cleanup_removed_files $removedlist
293 }
294
295
296
297 1.1 profiles/prefix/windows/interix/use.force
298
299 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/use.force?rev=1.1&view=markup
300 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/use.force?rev=1.1&content-type=text/plain
301
302 Index: use.force
303 ===================================================================
304 # Copyright 1999-2009 Gentoo Foundation
305 # Distributed under the terms of the GNU General Public License v2
306 # $Header: /var/cvsroot/gentoo-x86/profiles/prefix/windows/interix/use.force,v 1.1 2009/06/06 03:55:07 solar Exp $
307
308 # Re-add Interix on Windows OS
309 kernel_Interix
310 elibc_Interix
311
312
313
314 1.1 profiles/prefix/windows/interix/use.mask
315
316 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/use.mask?rev=1.1&view=markup
317 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/use.mask?rev=1.1&content-type=text/plain
318
319 Index: use.mask
320 ===================================================================
321 # Copyright 1999-2009 Gentoo Foundation
322 # Distributed under the terms of the GNU General Public License v2
323 # $Header: /var/cvsroot/gentoo-x86/profiles/prefix/windows/interix/use.mask,v 1.1 2009/06/06 03:55:07 solar Exp $
324
325 # Re-add Interix libc
326 -elibc_Interix
327 -kernel_Interix
328
329 # these will more than likely never work on Interix
330 3dfx
331 acpi
332 alsa
333 altivec
334 apm
335 arts
336 aqua
337 bluetooth
338 cap
339 caps
340 cdr
341 coreaudio
342 dga
343 directfb
344 divx4linux
345 djbfft
346 dri
347 dvdr
348 # missing implementation for unexec()
349 emacs
350 emul-linux-x86
351 fbcon
352 fdftk
353 fmod
354 ggi
355 glut
356 gpm
357 gps
358 hal
359 hardened
360 hddtemp
361 ibm
362 icc
363 icc-pgo
364 ieee1394
365 ifc
366 ipod
367 ipv6
368 lm_sensors
369 matrox
370 netboot
371 old-linux
372 # requires device-mapper
373 on-the-fly-crypt
374 opengl
375 oss
376 pcmcia
377 pda
378 rtc
379 selinux
380 scanner
381 smartcard
382 svga
383 uclibc
384 # totally b0rked on interix
385 unicode
386 usb
387 voodoo3
388 pvm
389 v4l
390 v4l2
391 wifi
392
393 # these are USE flags that don't _currently_ work, but may will in the future.
394 ffmpeg
395 fftw
396 flac
397 jack
398 joystick
399 ladspa
400 # not working yet on interix
401 openmp
402 portaudio
403 pulseaudio
404 qt3
405 qt4
406 # libtiff only static, so avoid this!
407 tiff
408 timidity
409
410
411
412 1.1 profiles/prefix/windows/interix/virtuals
413
414 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/virtuals?rev=1.1&view=markup
415 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/profiles/prefix/windows/interix/virtuals?rev=1.1&content-type=text/plain
416
417 Index: virtuals
418 ===================================================================
419 # Copyright 1999-2009 Gentoo Foundation
420 # Distributed under the terms of the GNU General Public License v2
421 # $Header: /var/cvsroot/gentoo-x86/profiles/prefix/windows/interix/virtuals,v 1.1 2009/06/06 03:55:07 solar Exp $
422
423 virtual/libc sys-interix/libc
424 virtual/os-headers sys-interix/libc