Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 368191 - dev-python/pyopenssl-0.12 USE=doc with parallel make - OSError: [Errno 2] No such file or directory: 'pyOpenSSL.how'
Summary: dev-python/pyopenssl-0.12 USE=doc with parallel make - OSError: [Errno 2] No ...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard: python-overlay
Keywords: InOverlay, InVCS
: 368509 (view as bug list)
Depends on:
Blocks:
 
Reported: 2011-05-20 17:03 UTC by Juergen Rose
Modified: 2011-12-22 20:27 UTC (History)
7 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
/var/tmp/portage/dev-python/pyopenssl-0.12/temp/build.log (build.log,17.92 KB, text/plain)
2011-05-20 18:56 UTC, Juergen Rose
Details
build.log (build.log,30.96 KB, text/x-log)
2011-06-01 11:18 UTC, Andrew Savchenko
Details
environment (environment,194.09 KB, application/octet-stream)
2011-06-01 11:27 UTC, Andrew Savchenko
Details
emerge --info (emerge.info,8.38 KB, application/octet-stream)
2011-06-01 11:53 UTC, Andrew Savchenko
Details
ebuild patch (pyopenssl-0.12.patch,871 bytes, patch)
2011-06-01 16:49 UTC, Alexander Miller
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Juergen Rose 2011-05-20 17:03:38 UTC
'emerge -v1 pyopenssl' fails with:
...
make -j9 html ps dvi 
python tools/mkhowto --a4 --html --iconserver . pyOpenSSL.tex
python tools/mkhowto --a4 --ps pyOpenSSL.tex
python tools/mkhowto --a4 --dvi pyOpenSSL.tex
+++ TEXINPUTS=.:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc/tools/paper-a4:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc/tools/texinputs:.:/root/Txt/tex2e/inputs//:
+++ TEXINPUTS=.:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc/tools/paper-a4:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc/tools/texinputs:.:/root/Txt/tex2e/inputs//:
+++ TEXINPUTS=.:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc/tools/paper-a4:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc/tools/texinputs:.:/root/Txt/tex2e/inputs//:
+++ latex pyOpenSSL
+++ latex pyOpenSSL
+++ latex pyOpenSSL
+++ latex pyOpenSSL
+++ latex2html -init_file pyOpenSSL.l2h -dir pyOpenSSL pyOpenSSL.tex
+++ latex pyOpenSSL
+++ latex pyOpenSSL
+++ latex pyOpenSSL
*** Session transcript and error messages are in pyOpenSSL.how.
The relevant lines from the transcript are:
------------------------------------------------------------------------
+++ latex pyOpenSSL
Note: Initialising with file: pyOpenSSL.l2h
Can't modify constant item in scalar assignment at pyOpenSSL.l2h line 607, near ""6";"
Compilation failed in require at /usr/lib64/latex2html/latex2html.pl line 396.
Compilation failed in require at /usr/bin/latex2html line 39.
*** Session transcript and error messages are in pyOpenSSL.how.
rm -rf html
mv pyOpenSSL html
+++ dvips -N0 -o pyOpenSSL.ps pyOpenSSL
Traceback (most recent call last):
  File "tools/mkhowto", line 597, in <module>
    main()
  File "tools/mkhowto", line 553, in main
    Job(options, path).build()
  File "tools/mkhowto", line 263, in build
    self.cleanup()
  File "tools/mkhowto", line 457, in cleanup
    os.unlink(self.l2h_aux_init_file)
OSError: [Errno 2] No such file or directory: 'pyOpenSSL.l2h'
make: *** [ps] Error 1
emake failed


Reproducible: Always




root@orca:/var/tmp/portage/dev-python/pyopenssl-0.12/work/pyOpenSSL-0.12/doc(55)# emerge --info =dev-python/pyopenssl-0.12
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
Portage 2.1.9.49 (default/linux/amd64/10.0/desktop, gcc-4.5.2, glibc-2.13-r2, 2.6.38-gentoo-r5 x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.38-gentoo-r5-x86_64-Intel-R-_Xeon-R-_CPU_W3520_@_2.67GHz-with-gentoo-2.0.2
Timestamp of tree: Thu, 19 May 2011 21:30:01 +0000
app-shells/bash:          4.2_p10
dev-java/java-config:     2.1.11-r3
dev-lang/python:          2.7.1-r1, 3.2
dev-util/cmake:           2.8.4-r1
sys-apps/baselayout:      2.0.2
sys-apps/openrc:          0.8.2-r1
sys-apps/sandbox:         2.5
sys-devel/autoconf:       2.13, 2.68
sys-devel/automake:       1.9.6-r3, 1.10.3, 1.11.1-r1
sys-devel/binutils:       2.21
sys-devel/gcc:            4.4.5, 4.5.2
sys-devel/gcc-config:     1.4.1-r1
sys-devel/libtool:        2.4-r1
sys-devel/make:           3.82
sys-kernel/linux-headers: 2.6.38 (virtual/os-headers)
sys-libs/glibc:           2.13-r2
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA PUEL dlj-1.1 skype-eula googleearth AdobeFlash-10.1 cadsoft"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -msse4 -mcx16 -msahf -O2 -pipe -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.0/conf /usr/share/openvpn/easy-rsa /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.2/ext-active/ /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.2/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.2/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=core2 -msse4 -mcx16 -msahf -O2 -pipe -ggdb"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news noclean parallel-fetch protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS=""
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de fr"
MAKEOPTS="-j9"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/x11 /var/lib/layman/java-overlay /var/lib/layman/sunrise /var/lib/layman/arcon /var/lib/layman/science /usr/local/portage /var/lib/cpan /var/lib/g-octave"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="64bit R X Xaw3d a52 aac abiword acl acpi admin afs alsa amd64 ao apache2 applet archive arpack asf aspell assistant audacious audiofile automap automount bash-completion berkdb blas blast bluetooth boo boost branding bzip2 cairo cdda cddb cdf cdio cdparanoia cdr cg cgi chm cli consolekit corba cracklib crypt css cuda cups curl cxx daap db dbase dbi dbm dbus declarative designer devhelp device-mapper dga dia djvu doc dri ds2490 ds9097 ds9097u dts dv dvb dvd dvdr dvi dynamicplugin eds elf emacs emboss emf encode epiphany evo examples exif expat extensions extra extras fam fame ffmpeg fftw firefox fits flac fltk fontconfig foomaticdb fortran fortran95 fpx fts3 fuse galago gcj gd gdal gdbm gdu gedit geoip geolocation geos gfortran gif gimp ginac git glade glib gml gmp gmtsuppl gnome gnome-keyring gnome-print gnuplot gnutls gphoto2 gpm grammar graphics graphtft graphviz grass gs gsl gsm gstreamer gtk guile harness hddtemp hdf hdf5 hdri http httpd hvm iconv icq icu id3 ide imagemagick imap innodb inotify ipod ipv6 ithreads jabber jadetex java java6 jbig john jpeg jpeg2k kdrive kerberos kpathsea kqemu kvm ladspa lame lapack latex latex3 lcms ldap lensfun libffi libgda libnotify libsamplerate lm_sensors lua lzo mad mail maildir mapnik math matroska mkl mmx mmxext mng modules mono moonlight motif mozilla mp3 mp4 mpeg mpi mpi-threads mplayer mtp mudflap multilib musicbrainz mysql mysqli nautilus ncurses neXt netcdf netpbm network networking networkmanager nfs nls nntp nptl nptlonly nsplugin ntfs ntp numpy nvidia obex objc ocaml octave odbc ogdi ogg ole openexr opengl openmp overview pae pam pango pcre pda pdf perl plotutils plugins png podcast policykit portaudio posix postgres postscript ppds pppd preview-latex proj projectx pstricks pulseaudio python python-bindings q16 q32 qemu qhull qt3support qt4 quicktime readline reiserfs reports rle romio rpc rrdcgi rrdtool samba sasl science sdk sdl secure-delete semantic-desktop server session sip slang slp smbclient smp sms sndfile snmp soup sox speex spell sql sqlite sse sse2 sse4 ssl startup-notification stlport subtitles subversion suexec svg svm swig sysfs szip t1lib tcl tcpd tex tex4ht texmacs tgif theora thinkpad threads thunderbird tidy tiff tk tntc tools truetype udev unicode usb userlocales utempter v4l2 virtualbox vorbis wav webdav webdav-serf webkit wmf wxwidgets x264 xattr xcb xemacs xext xine xml xmlreader xmlrpc xorg xpm xulrunner xv xvid xvmc yaml zlib zvbi" ALSA_CARDS="intel8x0" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="braindump flow karbon kexi kpresenter krita tables words" CAMERAS="canon" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de fr" NETBEANS_MODULES="apisupport cnd dlight enterprise ergonomics groovy gsf harness ide identity j2ee java mobility nb php profiler ruby websvccommon xml" PHP_TARGETS="php5-3" QEMU_SOFTMMU_TARGETS="i386 ppc ppc64 x86_64" QEMU_USER_TARGETS="arm i386 x86_64" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nv nouveau vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

dev-python/pyopenssl-0.12 was built with the following:
USE="doc (multilib)"
Comment 1 Juergen Rose 2011-05-20 17:04:48 UTC
'MAKEOPTS="-j1" emerge -v1 pyopenssl' works like a charm.
Comment 2 Dane Smith (RETIRED) gentoo-dev 2011-05-20 17:24:06 UTC
Can you please post the full build log (located at /var/tmp/portage/dev-python/puopenssl-0.12/temp/build.log) and your emerge info.

Thanks!
Comment 3 Juergen Rose 2011-05-20 18:56:48 UTC
Created attachment 274155 [details]
/var/tmp/portage/dev-python/pyopenssl-0.12/temp/build.log
Comment 4 Juergen Rose 2011-05-20 18:59:07 UTC
Hi Dane,
I just added the build.log file, the result of 'emerge --info' was already in my original posting. Do you want to have some additional information?

Regards Juergen
Comment 5 Jeroen Roovers (RETIRED) gentoo-dev 2011-05-24 13:28:10 UTC
*** Bug 368509 has been marked as a duplicate of this bug. ***
Comment 6 Andrew Savchenko gentoo-dev 2011-06-01 11:18:02 UTC
Created attachment 275467 [details]
build.log

Same problem here.
There is my info.
Comment 7 Andrew Savchenko gentoo-dev 2011-06-01 11:27:27 UTC
Created attachment 275471 [details]
environment
Comment 8 Andrew Savchenko gentoo-dev 2011-06-01 11:53:43 UTC
Created attachment 275485 [details]
emerge --info
Comment 9 Alexander Miller 2011-06-01 16:49:09 UTC
Created attachment 275523 [details, diff]
ebuild patch

Same problem here.

Running several instances of the doc/tools/mkhowto script in parallel is not possible because of conflicting usage of the logfile 'pyOpenSSL.how' and possibly other temporary files. Running two instances of latex for the same document in parallel seems like a stupid idea anyway. So parallel make doesn't work here.

Adding -j1 to the emake call would fix the problem, but it's still a bad idea since the Makefile is quite suboptimal. It does a lot of unnecessary duplicate work (e.g., 'make ps dvi' creates a dvi file, converts it to ps, deletes the dvi, and creates it again) and does unexpected things ('make dvi ps' would create the dvi file twice and delete it after converting it to ps).

The best thing to do is ditching the Makefile and creating all documentation with a single call to the mkhowto script (see attached patch).
Comment 10 Andrew Savchenko gentoo-dev 2011-06-02 19:04:45 UTC
(In reply to comment #9)
Patch works fine for me, thanks.
Comment 11 Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2011-06-29 20:48:04 UTC
Fixed in python overlay using -j1.
Comment 12 Ian Abbott 2011-09-08 20:06:27 UTC
I'm getting the exact same problem with dev-python/pyopenssl-0.13, although for some unknown reason I don't get the problem with pyopenssl-0.12 !
Comment 13 Juergen Rose 2011-09-09 07:24:08 UTC
I get almost the same error with pyopenssl-0.13:
...
+++ latex pyOpenSSL
*** Session transcript and error messages are in pyOpenSSL.how.
The relevant lines from the transcript are:
------------------------------------------------------------------------
+++ latex pyOpenSSL
 [7] [8] [9] [10] [11] [12]This is pdfTeX, Version 3.1415926-2.3-1.40.12 (TeX Live 2011)
 restricted \write18 enabled.
 [13]entering extended mode
(./pyOpenSSL.tex
LaTeX2e <2009/09/24>
Babel <v3.8l> and hyphenation patterns for english, dumylang, nohyphenation, ba
sque, french, german-x-2009-06-19, ngerman-x-2009-06-19, german, ngerman, swiss
german, loaded.

(/var/tmp/portage/dev-python/pyopenssl-0.13/work/pyOpenSSL-0.13/doc/tools/texin
puts/howto.cls
Document Class: howto 1998/02/25 Document class (Python HOWTO)

(/var/tmp/portage/dev-python/pyopenssl-0.13/work/pyOpenSSL-0.13/doc/tools/paper
-a4/pypaper.sty) (/usr/share/texmf-dist/tex/latex/base/article.cls
Document Class: article 2007/10/19 v1.4h Standard LaTeX document class
(/usr/share/texmf-dist/tex/latex/base/size10.clo) [14]Note: Initialising with file: pyOpenSSL.l2h
)
(/usr/share/texmf-dist/tex/latex/fancyhdr/fancyhdr.sty)
Using fancier footers than usual.

(/var/tmp/portage/dev-python/pyopenssl-0.13/work/pyOpenSSL-0.13/doc/tools/texin
puts/python.styCan't modify constant item in scalar assignment at pyOpenSSL.l2h line 607, near ""6";"
Compilation failed in require at /usr/lib64/latex2html/latex2html.pl line 396.
Compilation failed in require at /usr/bin/latex2html line 39.
 (/usr/share/texmf-dist/tex/latex/tools/longtable.sty [15)]*** Session transcript and error messages are in pyOpenSSL.how
...
(/var/tmp/portage/dev-python/pyopenssl-0.13/work/pyOpenSSL-0.13/doc/tools/texin
puts/python.styCan't modify constant item in scalar assignment at pyOpenSSL.l2h line 607, near ""6";"
Compilation failed in require at /usr/lib64/latex2html/latex2html.pl line 396.
Compilation failed in require at /usr/bin/latex2html line 39.
 (/usr/share/texmf-dist/tex/latex/tools/longtable.sty [15)]*** Session transcript and error messages are in pyOpenSSL.how
...
! Emergency stop.
...
Writing /var/tmp/portage/dev-python/pyopenssl-0.13/temp/images/3.2/usr/lib64/python3.2/site-packages/pyOpenSSL-0.13-py3.2.egg-info
!!! dohtml: doc/html/* does not exist
dohtml failed
 * ERROR: dev-python/pyopenssl-0.13 failed (install phase):
Comment 14 Juergen Rose 2011-09-09 11:46:24 UTC
And 

 MAKEOPTS="-j1" emerge -vuND pyopenssl

works also with dev-python/pyopenssl-0.13.
Comment 15 Ian Delaney (RETIRED) gentoo-dev 2011-12-22 09:52:00 UTC
need some more fresh confirmation;

gentoo64 pyopenssl # USE=doc ebuild pyopenssl-0.12.ebuild install
>>> Completed installing pyopenssl-0.12 into /mnt/gen2/tmpdir/portage/dev-python/pyopenssl-0.12/image/
gentoo64 pyopenssl # grep "\-j" /mnt/gen2/tmpdir/portage/dev-python/pyopenssl-0.12/temp/build.log 
make -j5 html ps dvi

also succeeded for pyopenssl-0.13
Comment 16 Ian Abbott 2011-12-22 12:47:39 UTC
I confirm I still get the problem with unpatched pyopenssl-0.13 ebuild. I could post the build.log, but it looks very much like the previous one posted by Andrew for 0.12 back in June! It fails with the same error in the same place.  My emerge was using MAKEOPTS="-j3".

I mentioned in comment 12 that I don't get the problem with 0.12 but that was wrong. The problem occurs randomly for both 0.12 and 0.13, so you may need to try it a few times for it to fail.
Comment 17 Mike Gilbert gentoo-dev 2011-12-22 20:27:00 UTC
I can't reproduce locally to test, so I'm going with the simple solution. Thanks everyone.

  22 Dec 2011; Mike Gilbert <floppym@gentoo.org> pyopenssl-0.12.ebuild,
  pyopenssl-0.13.ebuild:
  Build docs with -j1 to avoid mkhowto race. Bug 368191.