Merged from trunk -r15044:15048
authorFabian Groffen <grobian@gentoo.org>
Fri, 18 Dec 2009 08:24:01 +0000 (08:24 -0000)
committerFabian Groffen <grobian@gentoo.org>
Fri, 18 Dec 2009 08:24:01 +0000 (08:24 -0000)
   | 15045    | Fix typo.                                                   |
   | arfrever |                                                             |

   | 15046    | In movefile mtime rounding code, generate nanosecond        |
   | zmedico  | resolution (9 decimal places) in order to ensure that the   |
   |          | floating point representation is the highest value possible |
   |          | without rounding up.                                        |

   | 15047    | Fix typo.                                                   |
   | zmedico  |                                                             |

   | 15048    | * Fix type in econf --host argument. * Add missing econf    |
   | zmedico  | --build and --target arguments. * Use tabs instead of       |
   |          | spaces for indentation.                                     |

svn path=/main/branches/prefix/; revision=15114

doc/package/ebuild/eapi/3.docbook
man/ebuild.5
pym/portage/__init__.py

index 7bab213bb28fa55b4bac7f9fa4ac27c0b9d98763..4665b095590aabe75b22bc2384e0250dd05a1940 100644 (file)
@@ -24,15 +24,17 @@ when appropriate. For example, see econf and einstall below.
 <title>econf</title>
 <programlisting>
 ${ECONF_SOURCE:-.}/configure \
-        --prefix="${EPREFIX}"/usr \
-        --host="${EPREFIX}${CHOST} \
-        --mandir="${EPREFIX}"/usr/share/man \
-        --infodir="${EPREFIX}"/usr/share/info \
-        --datadir="${EPREFIX}"/usr/share \
-        --sysconfdir="${EPREFIX}"/etc \
-        --localstatedir="${EPREFIX}"/var/lib \
-        ${EXTRA_ECONF} \
-        configure options || die "econf failed"
+       ${CBUILD:+--build=${CBUILD}} \
+       --datadir="${EPREFIX}"/usr/share \
+       --host=${CHOST} \
+       --infodir="${EPREFIX}"/usr/share/info \
+       --localstatedir="${EPREFIX}"/var/lib \
+       --prefix="${EPREFIX}"/usr \
+       --mandir="${EPREFIX}"/usr/share/man \
+       --sysconfdir="${EPREFIX}"/etc \
+       ${CTARGET:+--target=${CTARGET}} \
+       ${EXTRA_ECONF} \
+       configure options || die "econf failed"
 </programlisting>
 </section>
 <section id='package-ebuild-eapi-3_pre2-prefix-helpers-einstall'>
@@ -43,15 +45,15 @@ DESTDIR=${D} rather than ${ED}) is still preferred over einstall.
 </para>
 <programlisting>
 make \
-        prefix=${ED}/usr \
-        datadir=${ED}/usr/share \
-        infodir=${ED}/usr/share/info \
-        localstatedir=${ED}/var/lib \
-        mandir=${ED}/usr/share/man \
-        sysconfdir=${ED}/etc \
-        ${EXTRA_EINSTALL} \
-        make options \
-        install
+       prefix=${ED}/usr \
+       datadir=${ED}/usr/share \
+       infodir=${ED}/usr/share/info \
+       localstatedir=${ED}/var/lib \
+       mandir=${ED}/usr/share/man \
+       sysconfdir=${ED}/etc \
+       ${EXTRA_EINSTALL} \
+       make options \
+       install
 </programlisting>
 </section>
 </section>
index 44279e3d4e7439aef24b45d355055d8cbff627b6..b3521e2224a5ed8836a85cd7b8faae53fff5ceb0 100644 (file)
@@ -783,13 +783,15 @@ directory. The function will append \fIsource\fR to the \fBDISTDIR\fR variable.
 This is used as a replacement for configure.  Performs:
 .nf
 ${\fIECONF_SOURCE\fR:-.}/configure \\
+       ${CBUILD:+\-\-build=${CBUILD}} \\
+       \-\-datadir="${EPREFIX}"/usr/share \\
+       \-\-host=${CHOST} \\
+       \-\-infodir="${EPREFIX}"/usr/share/info \\
+       \-\-localstatedir="${EPREFIX}"/var/lib \\
        \-\-prefix="${EPREFIX}"/usr \\
-       \-\-host="${EPREFIX}${CHOST} \\
        \-\-mandir="${EPREFIX}"/usr/share/man \\
-       \-\-infodir="${EPREFIX}"/usr/share/info \\
-       \-\-datadir="${EPREFIX}"/usr/share \\
        \-\-sysconfdir="${EPREFIX}"/etc \\
-       \-\-localstatedir="${EPREFIX}"/var/lib \\
+       ${CTARGET:+\-\-target=${CTARGET}} \\
        \fI${EXTRA_ECONF}\fR \\
        \fIconfigure options\fR || die "econf failed"
 .fi
@@ -798,7 +800,7 @@ writers.  If you wish to pass more options to configure, just pass the
 extra arguments to \fBeconf\fR. Also note that \fBeconf\fR automatically
 calls \fBdie\fR if the configure script fails.
 Beginning with \fBEAPI 3\fR, \fBeconf\fR uses the \fB${EPREFIX}\fR
-variable which is disregared for prior \fBEAPI\fR values.
+variable which is disregarded for prior \fBEAPI\fR values.
 .TP
 \fBemake\fR \fI[make options]\fR
 This is used as a replacement for make.  Performs 'make ${MAKEOPTS}
index 183ad17fe3e35eee6fa82b9154b550d5764331f5..925c7e203632ab77409a88466ae4acd16148325a 100644 (file)
@@ -7683,29 +7683,23 @@ def movefile(src, dest, newmtime=None, sstat=None, mysettings=None,
                                                newmtime = sstat.st_mtime
                                        else:
                                                # Prevent mtime from rounding up to the next second.
+                                               # Generate nanosecond resolution (9 decimal places) in
+                                               # order to ensure that the floating point representation
+                                               # is the highest value possible without rounding up.
                                                int_mtime = sstat[stat.ST_MTIME]
                                                mtime_str = "%i." % int_mtime
-                                               digits = 0
-                                               max_digits = 9
-                                               while digits < max_digits:
-                                                       if int_mtime == long(float(mtime_str + "9")):
-                                                               mtime_str += "9"
-                                                               digits += 1
-                                                       else:
-                                                               if digits < max_digits:
-                                                                       another_digit = None
-                                                                       for i in range(1, 9):
-                                                                               i_str = str(i)
-                                                                               if int_mtime != \
-                                                                                       long(float(mtime_str + i_str)):
-                                                                                       break
-                                                                               else:
-                                                                                       another_digit = i_str
-                                                                       if another_digit is not None:
-                                                                               mtime_str += another_digit
-                                                                               digits += 1
-                                                               break
-                                               if digits > 0:
+                                               nonzero_digits = 0
+                                               decimal_places = 9
+                                               for i in range(decimal_places):
+                                                       for digit in range(9, -1, -1):
+                                                               digit_str = str(digit)
+                                                               if int_mtime == long(float(mtime_str + digit_str)):
+                                                                       break
+                                                       if digit > 0:
+                                                               nonzero_digits += 1
+                                                       mtime_str += digit_str
+
+                                               if nonzero_digits > 0:
                                                        newmtime = float(mtime_str)
                                                else:
                                                        newmtime = int_mtime