public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Sergei Trofimovich" <slyfox@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/crossdev:master commit in: /
Date: Sat,  7 Apr 2018 15:57:20 +0000 (UTC)	[thread overview]
Message-ID: <1523116609.3b51089b55836bb36e0e0123f68068642ee0437f.slyfox@gentoo> (raw)

commit:     3b51089b55836bb36e0e0123f68068642ee0437f
Author:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Apr  7 15:56:49 2018 +0000
Commit:     Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Apr  7 15:56:49 2018 +0000
URL:        https://gitweb.gentoo.org/proj/crossdev.git/commit/?id=3b51089b

README: wordsmithing, fixed a few typos

Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>

 README | 146 ++++++++++++++++++++++++++++++++++-------------------------------
 1 file changed, 76 insertions(+), 70 deletions(-)

diff --git a/README b/README
index 65703cb..99287a1 100644
--- a/README
+++ b/README
@@ -6,27 +6,31 @@ crossdev is a cross-compiler environment generator for Gentoo.
 It is useful for various purposes:
 
 - build cross-compiler toolchain for an operating system
-- build cross-compiler toolchain for embedded targets (bare metal)
+- build cross-compiler toolchain for embedded target (bare metal)
 - cross-compile whole Gentoo on a new (or existing) target
 - cross-compile your favourite tool for every target out there
   just to make sure it still compiles and works. Countless bugs
-  were found fixed like that :)
+  were found and fixed like that :)
 
 Crossdev nano HOWTO
 -------------------
 
-So you want to cross-compile a Gentoo package (say busybox):
+So you want to cross-compile a Gentoo package (say busybox to s390x):
 
-# crossdev -t s390x-unknown-linux-gnu
-# (optional) ARCH=s390 PORTAGE_CONFIGROOT=/usr/s390x-unknown-linux-gnu eselect profile set default/linux/s390/17.0/s390x
-# USE=static s390x-unknown-linux-gnu emerge -v1 busybox
-# file /usr/s390x-unknown-linux-gnu/bin/busybox
-/usr/s390x-unknown-linux-gnu/bin/busybox: ELF 64-bit MSB executable, IBM S/390, version 1 (GNU/Linux), statically linked, for GNU/Linux 3.2.0, stripped
+  # crossdev -t s390x-unknown-linux-gnu
+  # (optional) ARCH=s390 PORTAGE_CONFIGROOT=/usr/s390x-unknown-linux-gnu eselect profile set default/linux/s390/17.0/s390x
+  # USE=static s390x-unknown-linux-gnu-emerge -v1 busybox
+  # file /usr/s390x-unknown-linux-gnu/bin/busybox
+  /usr/s390x-unknown-linux-gnu/bin/busybox: ELF 64-bit MSB executable, IBM S/390, version 1 (GNU/Linux), statically linked, for GNU/Linux 3.2.0, stripped
 
 Done!
 
-You can even use qemu-user to run this binary (or even chroot
-to /usr/s390x-unknown-linux-gnu!
+You can use qemu-user to run this binary:
+
+  $ qemu-s390x -L /usr/s390x-unknown-linux-gnu/ /usr/s390x-unknown-linux-gnu/bin/busybox uname -m
+  s390x
+
+or even chroot to /usr/s390x-unknown-linux-gnu directory!
 
 https://wiki.gentoo.org/wiki/Crossdev_qemu-static-user-chroot
 
@@ -36,7 +40,7 @@ Supported platforms
 Cross-compilation is fairly well supported to linux targets.
 Windows is not too broken either.
 
-But prepare for rough corners. This doc will try to help you
+Be prepared for rough corners. This doc will try to help you
 understand what crossdev does and does not do.
 
 A few examples of targets that worked today (produce running
@@ -75,31 +79,31 @@ executables or kernels if applies):
  x86_64-pc-linux-gnu-7.3.0
  x86_64-w64-mingw32-7.3.0
 
-A few more things are likely to Just Work
-and many more can be made work with a litle touch.
+A few more targets are likely to Just Work.
+And many more can be made to work with a litle touch.
 
 How crossdev works (high-level overview)
 ----------------------------------------
 
-crossdev is a tiny shell wrapper around emerge. Wrapper overrides
-a few variabled to aim emerge to another target.
+crossdev is a tiny shell wrapper around emerge tool. The wrapper
+overrides a few variables to aim emerge at another target.
 
-Crossdev leverages following features of portage (and ::gentoo ebulds):
+Crossdev leverages the following features of portage (and ::gentoo
+ebulds):
 
 - ability to override ROOT=/usr/<target> to install cross-compiled
   packages into a new root on a filesystem to avoid cluttering host.
 
 - ability to override PORTAGE_CONFIGROOT=/usr/<target> to untangle
-  from host's portage configuration.
-
-  Namely crossdev populates /usr/<target>/etc/portage/ with defaults
-  suitable for cross-compiling (ARCH, KERNEL, ELIBC variables and so on).
-  You can change all of it.
+  from host's /etc/portage/ configuration. Namely crossdev populates
+      /usr/<target>/etc/portage/
+  with defaults suitable for cross-compiling (ARCH, KERNEL, ELIBC
+  variables and so on). You can change all of them.
 
 - set CBUILD/CHOST/CTARGET variables accordingly to force build
   system into cross-compiling mode. For autotools-based system
-  it means running the following configure script:
-    ./configure --build=${CBUILD} --host=${CHOST} --target=${CTARGET}
+  it means running ./configure script using following options:
+    ./configure --build=${CBUILD} --host=${CHOST} --target=${CTARGET} ...
 
 If toolchains were simple programs crossdev would be a one-liner script:
 
@@ -114,27 +118,29 @@ Unfortunately todays' toolchains have loops in their build-time dependencies:
 
 - cross-compiler itself normally needs a libc built for <target> because
   libc defines various aspects of userland ABI and features provided.
-- and libc for <target> needs a cross-comiler because it's written in C
+- and libc is written in C and thus needs a cross-compiler to be built for
+  <target>.
 
 That's where crossdev comes in useful. It unties this vicious compiler<->libc
-circle by carefully running the following emerge commands (assume s390x-linux
+circle by carefully running the following emerge commands (assume s390x
 example).
 
 Here is what crossdev actually does:
 
 1. create an overlay with new ebuilds (symlinks to existing ebuilds)
-2. build cross-binutils
-    $ emerge cross-s390x-unknown-linux-gnu/binutils
-3. Install minimal set of system headers (kernel and libc)
+2. build cross-binutils:
+   $ emerge cross-s390x-unknown-linux-gnu/binutils
+3. Install system headers (kernel headers and libc headers):
    $ USE="headers-only" emerge cross-s390x-unknown-linux-gnu/linux-headers
    $ USE="headers-only" emerge cross-s390x-unknown-linux-gnu/glibc
-4. Build minimal GCC without libc support (not able link final executables yet)
+4. Build minimal GCC without libc support (not able to link final
+   executables yet)
    $ USE="-*" emerge cross-s390x-unknown-linux-gnu/gcc
-5. Build complete libc
-   $ USE="-headers-only" emerge cross-s390x-unknown-linux-gnu/linux-headers
-   $ USE="-headers-only" emerge cross-s390x-unknown-linux-gnu/glibc
-6. Build full GCC (able to link final binaries and can do c++)
-   $ USE="" emerge cross-s390x-unknown-linux-gnu/gcc
+5. Build complete libc (gcc will need crt.o files)
+   $ emerge cross-s390x-unknown-linux-gnu/linux-headers
+   $ emerge cross-s390x-unknown-linux-gnu/glibc
+6. Build full GCC (able to link final binaries for C and C++)
+   $ emerge cross-s390x-unknown-linux-gnu/gcc
 
 Done!
 
@@ -142,12 +148,13 @@ How crossdev works (more details)
 ---------------------------------
 
 This section contains more details on what actually happens.
-Here we expand on each step briefly outlined in previous section:
+Here we elaborate on each step outlined in previous section:
 
 1. create an overlay with new ebuilds (symlinks to existing ebuilds)
-   <skipping actual commands>. After this step the outcomes are:
+   <skipping numeruos mkdir and ln commands>. After this step the
+   outcomes are:
 
-   - overlay layout is formed:
+   - overlay layout is formed in cross-overlay/:
 
      $ ls -l cross-overlay/cross-s390x-unknown-linux-gnu
      binutils -> /gentoo-ebuilds/gentoo/sys-devel/binutils
@@ -165,7 +172,6 @@ Here we expand on each step briefly outlined in previous section:
      Here we override ARCH, LIBC, KERNEL, CBUILD, CHOST, CTARGET and a
      few other variables.
 
-
    - a few convenience wrappers are created:
 
      /usr/bin/s390x-unknown-linux-gnu-emerge -> cross-emerge
@@ -173,13 +179,13 @@ Here we expand on each step briefly outlined in previous section:
      /usr/bin/s390x-unknown-linux-gnu-fix-root -> cross-fix-root
 
    This way we share ebuild code and still can install cross-compilers
-   independently. Each with it's owv version of libc.
+   independently. Each with it's own version of libc.
 
 2. build cross-binutils
-   $ emerge cross-s390x-unknown-linux-gnu/binutils
+   # emerge cross-s390x-unknown-linux-gnu/binutils
 
-   This way we can install the same version of binutils aiming different
-   targets. As a result we get tools like:
+   This way we can install the same version of binutils aiming at
+   a new target. As a result we get tools like:
    s390x-unknown-linux-gnu-ar (static library archiver)
    s390x-unknown-linux-gnu-as (assembler)
    s390x-unknown-linux-gnu-ld (linker)
@@ -191,56 +197,56 @@ Here we expand on each step briefly outlined in previous section:
    $ USE="headers-only" emerge cross-s390x-unknown-linux-gnu/linux-headers
    $ USE="headers-only" emerge cross-s390x-unknown-linux-gnu/glibc
 
-   As we don't have cross-compiler yet we just copy a bunch on
+   As we don't have cross-compiler yet ebuilds just copy a bunch of
    header files into
        /usr/s390x-unknown-linux-gnu/usr/include
    and setup symlinks like:
        /usr/s390x-unknown-linux-gnu/sys-include -> usr/include
    to make cross-gcc happy.
 
-   These symlinks are target-dependent. A few unusual examples:
+   These include symlinks are target-dependent. A few unusual examples:
 
    - windows (mingw): /usr/x86_64-w64-mingw32/mingw -> usr
    - hurd: /usr/i686-pc-gnu/include -> usr/include
-   - DOS (didn't try yet): /usr/i686-pc-gnu/dev/env/DJDIR/include -> ../../../usr/include
+   - DOS: /usr/i686-pc-gnu/dev/env/DJDIR/include -> ../../../usr/include
 
    Side note: we could have omited symlink creation completely
    and build gcc with parameter:
      --with-native-system-header-dir=${EPREFIX}/usr/include
-   That way ${SYSROOT} would be even more like normal root.
-   Worth a try this one line :)
+   That way ${SYSROOT} directory contents would be even more like normal
+   root. Worth a try! TODO: actually do it.
 
-4. Build minimal GCC without libc support (not able link final executables yet)
-   $ USE="-*" emerge cross-s390x-unknown-linux-gnu/gcc
+4. Build minimal GCC without libc support (not able to link final executables
+   yet)
+   # USE="-*" emerge cross-s390x-unknown-linux-gnu/gcc
 
-   Here gcc uses headers from step [3.] to find out what
-   target libc can do:
+   Here gcc uses headers from step [3.] to find out what target libc can do:
 
    - POSIX support
    - trigonometry functions
    - threading
    - vital constants
 
-   As a result we only get C code generator. No knowledge
-   of how to link executables or shared libraries as those
-   require bits of libc.
+   As a result we only get C code generator. No knowledge of how to link
+   executables or shared libraries as those require bits of libc.
 
-   For tiniest targets (bare-metal) this can be a final step to get basic toolchain.
+   For tiniest targets (bare-metal) this can be a final step to get basic
+   C toolchain.
 
 5. Build complete libc
-   $ USE="-headers-only" emerge cross-s390x-unknown-linux-gnu/linux-headers
-   $ USE="-headers-only" emerge cross-s390x-unknown-linux-gnu/glibc
+   # emerge cross-s390x-unknown-linux-gnu/linux-headers
+   # emerge cross-s390x-unknown-linux-gnu/glibc
 
-   Here we rebuild full libc against system headers. As a result we get C startup
-   files and can link full programs!
+   Here we build full libc against system headers. As a result we get C
+   startup files (crt.o) and can now link full C programs!
 
-6. Build full GCC (able to link final binaries and can do c++)
-   $ USE="" emerge cross-s390x-unknown-linux-gnu/gcc
+6. Build full GCC (able to link final binaries for C and C++)
+   # USE="" emerge cross-s390x-unknown-linux-gnu/gcc
 
-   Here we get full c++ support, various default flags enabled (pie, sanitizers,
-   stack protectors and many other things).
+   Here we get full C++ support, various default flags enabled (pie,
+   sanitizers, stack protectors and others).
 
-   This thing is ready for large-scale operations.
+   The final result is ready for large-scale operations.
 
 Various notes (AKA dirty little tricks)
 ---------------------------------------
@@ -252,22 +258,22 @@ Various notes (AKA dirty little tricks)
 
   crossdev installs /usr/share/config.site with a bunch of cache
   variables preset for targets. It might be a nice place to drop
-  more things into. Or a source of all your cross-compilation
-  problems :)
+  more things into. Or it could be a source of all your cross-compilation
+  problems if variables set incorrect values.
 
-- eclass inheritance
+- eclass importing
 
   To find out various things about target crossdev loads multilib.eclass
   and tries to find out default ABI supported by the target.
 
 - crossdev is just a tiny shell script around emerge :)
 
-  It's full source code of comparable to the size of this README.
+  It's full source code is comparable to the size of this README.
 
 - USE=headers-only
 
-  Many toolchain ebuilds (mostly libcs and kernel headers) are aware
-  of headers-only install specifically for crossdev and similar tools
+  Many toolchain ebuilds (libcs and kernel headers) are aware of
+  headers-only install specifically for crossdev and similar tools
   to be able to build cross-toolchains.
 
 - How to test crossdev layout generation:


             reply	other threads:[~2018-04-07 15:57 UTC|newest]

Thread overview: 240+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-07 15:57 Sergei Trofimovich [this message]
  -- strict thread matches above, loose matches on Subject: below --
2025-02-03 17:14 [gentoo-commits] proj/crossdev:master commit in: / Mike Gilbert
2025-01-12 18:39 Sam James
2025-01-04 15:20 Sam James
2025-01-02 23:26 Sam James
2025-01-02 23:24 Sam James
2025-01-02 23:24 Sam James
2025-01-02 23:24 Sam James
2024-12-25  0:45 Sam James
2024-12-25  0:43 Sam James
2024-12-25  0:42 Sam James
2024-12-25  0:42 Sam James
2024-12-25  0:42 Sam James
2024-12-15 18:29 Sam James
2024-12-14 18:14 Sam James
2024-12-02 21:40 Sam James
2024-12-02 15:27 Sam James
2024-12-02  9:42 Sam James
2024-12-01 23:05 Sam James
2024-11-30 10:18 Sam James
2024-11-30  5:12 Sam James
2024-11-30  2:55 Sam James
2024-11-30  2:08 Sam James
2024-11-30  2:08 Sam James
2024-10-15  7:13 Sam James
2024-10-15  7:13 Sam James
2024-07-02 21:01 James Le Cuirot
2024-06-16 13:47 Luca Barbato
2024-05-07 16:06 Sam James
2024-05-07 13:04 Sam James
2024-05-07 13:01 Sam James
2024-05-04 11:57 Sam James
2024-05-04 11:52 Sam James
2024-05-04 11:52 Sam James
2024-05-04 11:52 Sam James
2024-05-04 11:48 Sam James
2024-05-04 11:48 Sam James
2024-01-26  9:31 Sam James
2024-01-17  4:51 Sam James
2023-09-26 18:30 Sam James
2023-09-23 12:26 Sam James
2023-08-31  1:32 Sam James
2023-08-31  1:15 Sam James
2023-03-21 22:41 Sam James
2023-02-25  1:14 Sam James
2023-02-02 17:40 Sam James
2023-02-02 17:40 Sam James
2023-01-14 17:58 Sam James
2022-12-28 15:17 Sam James
2022-12-28 15:17 Sam James
2022-11-18 17:57 Mike Gilbert
2022-11-18 17:57 Mike Gilbert
2022-07-09  3:45 Sam James
2022-07-09  3:45 Sam James
2022-07-09  3:45 Sam James
2022-05-02 23:19 Sam James
2022-04-24 16:30 Sam James
2022-04-19 20:25 Sam James
2022-03-17 23:42 Sam James
2022-03-06  2:08 Sam James
2022-02-20  2:19 Sam James
2022-02-11 22:53 Andreas K. Hüttel
2022-01-31  2:06 Sam James
2022-01-28 12:30 Mike Frysinger
2021-11-21 13:08 Sam James
2021-10-27 17:20 Mike Frysinger
2021-10-27  9:19 Mike Frysinger
2021-10-27  8:56 Mike Frysinger
2021-10-27  8:55 Mike Frysinger
2021-07-17 23:38 Sergei Trofimovich
2021-06-21 21:23 Sergei Trofimovich
2021-06-21 21:23 Sergei Trofimovich
2021-06-21 21:23 Sergei Trofimovich
2021-06-21 21:23 Sergei Trofimovich
2021-06-08 22:44 Sergei Trofimovich
2021-06-07 20:44 Sergei Trofimovich
2021-01-05 23:25 Sergei Trofimovich
2021-01-05 23:25 Sergei Trofimovich
2021-01-05 23:25 Sergei Trofimovich
2020-12-31 12:23 Sergei Trofimovich
2020-11-29 22:30 Sergei Trofimovich
2020-11-22 20:41 Sergei Trofimovich
2020-11-08 13:26 Sergei Trofimovich
2020-11-08 13:26 Sergei Trofimovich
2020-08-01 19:50 Sergei Trofimovich
2020-03-26 23:52 Sergei Trofimovich
2020-01-31  7:36 Sergei Trofimovich
2020-01-31  7:36 Sergei Trofimovich
2020-01-31  7:36 Sergei Trofimovich
2020-01-30  8:36 Sergei Trofimovich
2020-01-29 23:20 Sergei Trofimovich
2020-01-25 21:17 Sergei Trofimovich
2020-01-25 12:05 Sergei Trofimovich
2020-01-25 12:05 Sergei Trofimovich
2019-12-22 22:32 Sergei Trofimovich
2019-12-22 22:04 Sergei Trofimovich
2019-12-22 22:01 Sergei Trofimovich
2019-10-21 22:54 Sergei Trofimovich
2019-10-21 22:50 Sergei Trofimovich
2019-10-14  7:35 Sergei Trofimovich
2019-09-08 11:16 Sergei Trofimovich
2019-09-01 19:02 Sergei Trofimovich
2019-09-01 16:14 Sergei Trofimovich
2019-08-25  9:38 Sergei Trofimovich
2019-06-08 18:20 Sergei Trofimovich
2019-03-18 22:54 Sergei Trofimovich
2018-10-18 22:26 Sergei Trofimovich
2018-10-17 21:45 Sergei Trofimovich
2018-09-27 23:44 Jason Donenfeld
2018-09-18 22:44 Sergei Trofimovich
2018-08-18 15:42 Sergei Trofimovich
2018-07-24 23:44 Sergei Trofimovich
2018-05-08 21:40 Sergei Trofimovich
2018-04-10  7:15 Sergei Trofimovich
2018-04-09 20:46 Sergei Trofimovich
2018-04-07 11:21 Sergei Trofimovich
2018-04-07 10:56 Sergei Trofimovich
2018-04-07  7:27 Sergei Trofimovich
2018-04-05 22:16 Sergei Trofimovich
2018-03-02 22:32 Sergei Trofimovich
2018-02-03  9:39 Sergei Trofimovich
2018-01-20 12:37 Sergei Trofimovich
2018-01-07 20:15 Sergei Trofimovich
2018-01-05 23:27 Sergei Trofimovich
2017-12-30 21:21 Sergei Trofimovich
2017-12-30 17:41 Sergei Trofimovich
2017-12-30 17:41 Sergei Trofimovich
2017-12-30 14:52 Sergei Trofimovich
2017-12-30 14:46 Sergei Trofimovich
2017-12-29 20:44 Sergei Trofimovich
2017-12-28 17:47 Sergei Trofimovich
2017-12-27 18:10 Sergei Trofimovich
2017-12-12 21:35 Steve Arnold
2017-11-23 18:18 Steve Arnold
2017-11-21 23:01 Sergei Trofimovich
2017-11-21 22:13 Sergei Trofimovich
2017-11-19 23:03 Sergei Trofimovich
2017-10-24 17:38 Steve Arnold
2017-10-14 23:46 Steve Arnold
2017-10-14 23:46 Steve Arnold
2017-10-14 23:46 Steve Arnold
2017-10-13 17:56 Steve Arnold
2017-10-13 16:31 Steve Arnold
2017-10-13 16:31 Steve Arnold
2017-10-13 16:31 Steve Arnold
2017-10-13 16:31 Steve Arnold
2016-06-02 15:56 Mike Frysinger
2016-06-02 15:56 Mike Frysinger
2016-06-02 15:56 Mike Frysinger
2016-06-02 15:56 Mike Frysinger
2016-01-16  6:38 Mike Frysinger
2015-10-16  3:19 Mike Frysinger
2015-08-13  2:45 Mike Frysinger
2015-06-02 17:01 Mike Frysinger
2015-05-30  4:46 Mike Frysinger
2015-05-23  5:35 Mike Frysinger
2015-04-18 22:58 Mike Frysinger
2014-10-31  1:56 Mike Frysinger
2014-10-31  1:56 Mike Frysinger
2014-10-31  0:52 Mike Frysinger
2014-09-17 21:41 Mike Frysinger
2014-01-18 18:42 Mike Frysinger
2013-11-07 20:32 Mike Frysinger
2013-11-07 20:28 Mike Frysinger
2013-10-12 20:15 Mike Frysinger
2013-10-11 19:05 Mike Frysinger
2013-10-11 18:48 Mike Frysinger
2013-09-30  0:21 Mike Frysinger
2013-06-28  5:42 Mike Frysinger
2013-06-28  5:14 Mike Frysinger
2013-04-20  2:50 Mike Frysinger
2013-03-28 16:20 Mike Frysinger
2013-03-28 16:20 Mike Frysinger
2013-02-18 20:11 Mike Frysinger
2012-12-25 21:44 Mike Frysinger
2012-11-18  7:56 Mike Frysinger
2012-11-11  9:10 Mike Frysinger
2012-11-05  8:37 Mike Frysinger
2012-10-02  3:23 Mike Frysinger
2012-09-13  5:13 Mike Frysinger
2012-09-13  5:05 Mike Frysinger
2012-08-30 18:16 Mike Frysinger
2012-08-20 21:36 Mike Frysinger
2012-08-17 21:20 Mike Frysinger
2012-07-31 16:19 Mike Frysinger
2012-07-30  3:01 Mike Frysinger
2012-06-09  5:23 Mike Frysinger
2012-06-09  5:23 Mike Frysinger
2012-06-03  9:03 Mike Frysinger
2012-06-03  9:03 Mike Frysinger
2012-06-03  9:03 Mike Frysinger
2012-06-03  9:03 Mike Frysinger
2012-05-30 15:28 Mike Frysinger
2012-05-30 15:28 Mike Frysinger
2012-05-30 15:28 Mike Frysinger
2012-05-30 15:28 Mike Frysinger
2012-03-07 18:31 Mike Frysinger
2012-03-05 23:15 Mike Frysinger
2012-03-05 23:15 Mike Frysinger
2012-03-05 23:15 Mike Frysinger
2012-03-01 18:43 Mike Frysinger
2012-03-01 18:43 Mike Frysinger
2012-03-01 18:43 Mike Frysinger
2012-03-01 18:43 Mike Frysinger
2012-02-29 17:18 Mike Frysinger
2012-02-29 16:22 Mike Frysinger
2012-02-29 16:22 Mike Frysinger
2012-02-29 16:22 Mike Frysinger
2012-02-27 22:50 Mike Frysinger
2012-02-27 22:47 Mike Frysinger
2012-02-24 22:23 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2012-02-14 20:24 Mike Frysinger
2011-12-21 21:06 Mike Frysinger
2011-12-21 21:06 Mike Frysinger
2011-12-13 19:06 Mike Frysinger
2011-12-06 21:50 Mike Frysinger
2011-11-18 20:44 Mike Frysinger
2011-10-31  3:30 Mike Frysinger
2011-10-18 17:36 Mike Frysinger
2011-10-11 22:22 Mike Frysinger
2011-08-25 15:50 Mike Frysinger
2011-08-19 18:05 Mike Frysinger
2011-08-19 18:05 Mike Frysinger
2011-08-18 20:06 Mike Frysinger
2011-08-18 20:06 Mike Frysinger
2011-08-18 20:06 Mike Frysinger
2011-08-15 22:25 Mike Frysinger
2011-08-12 18:59 Mike Frysinger
2011-07-05  6:44 Mike Frysinger
2011-03-27  6:07 Mike Frysinger
2011-03-11  4:22 Mike Frysinger
2011-03-11  4:22 Mike Frysinger
2011-03-11  4:22 Mike Frysinger
2011-02-14  3:08 Mike Frysinger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1523116609.3b51089b55836bb36e0e0123f68068642ee0437f.slyfox@gentoo \
    --to=slyfox@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox