summaryrefslogtreecommitdiff
path: root/hurd/debugging/glibc.mdwn
diff options
context:
space:
mode:
Diffstat (limited to 'hurd/debugging/glibc.mdwn')
-rw-r--r--hurd/debugging/glibc.mdwn91
1 files changed, 0 insertions, 91 deletions
diff --git a/hurd/debugging/glibc.mdwn b/hurd/debugging/glibc.mdwn
deleted file mode 100644
index 028d4fe4..00000000
--- a/hurd/debugging/glibc.mdwn
+++ /dev/null
@@ -1,91 +0,0 @@
-[[!meta copyright="Copyright © 2007, 2008, 2010, 2011 Free Software Foundation,
-Inc."]]
-
-[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
-id="license" text="Permission is granted to copy, distribute and/or modify this
-document under the terms of the GNU Free Documentation License, Version 1.2 or
-any later version published by the Free Software Foundation; with no Invariant
-Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
-is included in the section entitled [[GNU Free Documentation
-License|/fdl]]."]]"""]]
-
-Here are some hints about how to approach testing after nontrivial changes to
-glibc have been done.
-
----
-
-First step is having the build of glibc succeed. This is actually more
-difficult than one might expect as it involves (towards the end of the build
-process -- unless you are cross-compiling, of course -- that the
-newly created libraries and loader actually work: they'll be used to run the
-`rpcgen` program. If that step doesn't succeed, it'll look similar to this:
-
- [...]
- CPP='gcc -E -x c-header' [...]/build/elf/ld.so.1 --library-path [...] [...]/build/sunrpc/rpcgen [...]
- Segmentation fault
-
----
-
-Unless cross-compiling, the next thing you'll probably want to do
-is running the test suite, or parts of it.
-
-There is a list of [[known failures|open_issues/glibc]].
-
----
-
-If you've been doing simple changes to glibc functions that end up in
-`libc.so`, you may test them like this (like for a `strerror_l` implementation
-in this case):
-
- $ LD_PRELOAD=./libc.so ./ld.so ./a.out 10 1073741928 de_DE.utf8
- 1073741928 (0x40000068): Computer bought the farm
- 1073741928 (0x40000068): Der Computer hat den Bauernhof erworben
-
-You usually will only have luck using the new `libc.so` (from
-`[glibc-build]/libc.so`) in combination together with the new `ld.so` (from
-`[glibc-build]/elf/ld.so`):
-
- $ LD_PRELOAD=./libc.so ./a.out 10 1073741928 de_DE.utf8
- Killed
- $ LD_PRELOAD=./libc.so /lib/ld.so ./a.out 10 1073741928 de_DE.utf8
- Killed
-
-Make sure static linking is working OK at all. Running the
-`[glibc-build]/elf/sln` program (a stripped-down `ln` that is statically
-linked) ought to test that. Also, static linking under various conditions will
-already have been tested when running the test suite, especially in `elf/` and
-`dlfcn/`.
-
-Make sure static linking with cthreads is working. If you can get an
-`ext2fs.static` compiled and linked against the new glibc, that is good.
-
-[TODO].
-
-Then debug its startup as a normal program on your working hurd.
-
- $ [...]/ext2fs.static --help
- [...]
-
-Then try its full server startup.
-
- $ settrans -ca node [...]/ext2fs.static BACKING_STORE
- $ ls -l node/
- [...]
-
-Make sure dynamic linking for servers is working. If you haven't broken the
-ABI, you can just use an existing `/hurd/foobar` binary, started the way
-glibc's `testrun.sh` does it.
-
-[TODO]: Is this the correct way to do that?
-
- $ settrans -ca node [glibc]/build/testrun.sh /hurd/ext2fs BACKING_STORE
- $ cd node/
- [...]
-
----
-
-Test it in a [[subhurd]].
-
----
-
-Test it on a real system.