diff options
Diffstat (limited to 'hurd')
-rw-r--r-- | hurd/porting/guidelines.mdwn | 36 | ||||
-rw-r--r-- | hurd/status.mdwn | 6 | ||||
-rw-r--r-- | hurd/translator/pfinet/ipv6.mdwn | 2 | ||||
-rw-r--r-- | hurd/translator/procfs/jkoenig/discussion.mdwn | 25 | ||||
-rw-r--r-- | hurd/translator/random.mdwn | 2 |
5 files changed, 37 insertions, 34 deletions
diff --git a/hurd/porting/guidelines.mdwn b/hurd/porting/guidelines.mdwn index aabf0345..d28a777e 100644 --- a/hurd/porting/guidelines.mdwn +++ b/hurd/porting/guidelines.mdwn @@ -189,21 +189,21 @@ To `config.h.in`, you need to add: Then something like: - #ifndef HAVE_STRERROR - static char * - private_strerror (errnum) - int errnum; - { - extern char *sys_errlist[]; - extern int sys_nerr; - - if (errnum > 0 && errnum <= sys_nerr) - return sys_errlist[errnum]; - - return "Unknown system error"; - } - #define strerror private_strerror - #endif /* HAVE_STRERROR */ + #ifndef HAVE_STRERROR + static char * + private_strerror (errnum) + int errnum; + { + extern char *sys_errlist[]; + extern int sys_nerr; + + if (errnum > 0 && errnum <= sys_nerr) + return sys_errlist[errnum]; + + return "Unknown system error"; + } + #define strerror private_strerror + #endif /* HAVE_STRERROR */ You can for example look in the latest coreutils (the above is a simplified version of what I found there.) Patches should of course be sent to upstream maintainers, this is very useful even for systems with a working `sys_errlist[]`. @@ -214,11 +214,11 @@ Of course, if you don't care about broken systems (like MS-DOG) not supporting ` On the Hurd, `error_t` is an enumeration of the `E*` constants. However, C++ does not like `E*` integer macros being directly assigned to that enumeration. In short, replace - error_t err = EINTR; + error_t err = EINTR; by - error_t err = error_t(EINTR); + error_t err = error_t(EINTR); ## <a name="Missing_termio_h_tt_"> Missing `termio.h` </a> @@ -356,7 +356,7 @@ With Python, you can use the [`errno` module](http://docs.python.org/library/err ## <a name="libdl"> undefined reference to `dlopen`, `dlsym`, `dlclose` </a> -Configure script often hardcode the library that contains dlopen & such (`-ldl'), and only for Linux. Simply add the other GNU OS cases: replace `linux*' with `linux*|gnu*|k*bsd*-gnu` +Configure script often hardcode the library that contains dlopen & such (`-ldl`), and only for Linux. Simply add the other GNU OS cases: replace `linux*` with `linux*|gnu*|k*bsd*-gnu*` ## <a name="linux_headers"> Missing `linux/types.h`, `asm/types.h`, `linux/limits.h`, `asm/byteorder.h`, `sys/endian.h`, `asm/ioctl.h`, `asm/ioctls.h`, `linux/soundcard.h` </a> diff --git a/hurd/status.mdwn b/hurd/status.mdwn index e6545b27..ce9e01dd 100644 --- a/hurd/status.mdwn +++ b/hurd/status.mdwn @@ -30,7 +30,7 @@ instance. You can run the X window system, applications that use it such as gnumeric, iceweasel, and advanced server applications like the Apache webserver. On the negative side, the support for character devices (like sound -cards) and other hardware is mostly missing. Although the [[POSIX +cards) and other hardware (USB, multicore) is mostly missing. Although the [[POSIX interface|faq/posix_compatibility]] is provided, some additional interfaces like POSIX shared memory or semaphores are still under development. @@ -51,9 +51,9 @@ align="right" ]] [[Debian GNU/Hurd|running/debian]] closely tracks the progress of the Hurd (and often includes new features). They offer *LiveCDs and QEMU images* to -test-drive the Hurd, and about 75% of the Debian software archive are +test-drive the Hurd, and about 78% of the Debian software archive are available. The most recent version of the Debian GNU/Hurd port at the time of -writing was published on 2012 February 21st. +writing was published on 2013 January 5th. Debian Wheezy will unfortunately not officially release officially the Hurd port, an unofficial release will however be available. [[hurd/running/Arch_Hurd]] offers *LiveCDs* for testing and installation. diff --git a/hurd/translator/pfinet/ipv6.mdwn b/hurd/translator/pfinet/ipv6.mdwn index 03a5670a..42ee3c55 100644 --- a/hurd/translator/pfinet/ipv6.mdwn +++ b/hurd/translator/pfinet/ipv6.mdwn @@ -10,7 +10,7 @@ is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]] [[Stefan_Siegl|stesie]] has added IPv6 support to the pfinet [[translator]]. -This was [Savannah task #5470](http://savannah.gnu.org/task/?5470). +This was [[!GNU_Savannah_task 5470]]. # Implementation diff --git a/hurd/translator/procfs/jkoenig/discussion.mdwn b/hurd/translator/procfs/jkoenig/discussion.mdwn index 4cd4e5ca..d26f05f9 100644 --- a/hurd/translator/procfs/jkoenig/discussion.mdwn +++ b/hurd/translator/procfs/jkoenig/discussion.mdwn @@ -218,6 +218,20 @@ Needed by glibc's `pldd` tool (commit [[!message-id "alpine.LFD.2.02.1110111111260.2016@akari"]]. Needed by glibc's `stdlib/tst-secure-getenv.c`. +Is it generally possible to use something like the following instead? +Disadvantage is that every program using this needs to be patched. + + #include <dlfcn.h> + [...] + Dl_info DLInfo; + int err = dladdr(&main, &DLInfo); + if (err == 0) + [...] + /* Pathname of shared object that contains address: DLInfo.dli_fname. */ + /* Filter it through realpath. */ + +This is used in `[LLVM]/lib/Support/Unix/Path.inc`. + # `/proc/[PID]/fd/` @@ -300,17 +314,6 @@ Needed by glibc's `pldd` tool (commit report why the test suite failed -# IRC, freenode, #hurd, 2011-06-19 - - <pinotree> jkoenig: procfs question: in process.c, process_lookup_pid, why - is the entries[2].hook line repeated twice? - <jkoenig> pinotree, let me check - <jkoenig> pinotree, it's probably just a mistake, there's no way the second - one has any effect - <pinotree> jkoenig: i see, it looked like you c&p'd that code accidentally - <jkoenig> pinotree, it's probably what happened, yes. - - # `/proc/[PID]/cwd` ## IRC, freenode, #hurd, 2012-06-30 diff --git a/hurd/translator/random.mdwn b/hurd/translator/random.mdwn index 9fc975f2..8304f600 100644 --- a/hurd/translator/random.mdwn +++ b/hurd/translator/random.mdwn @@ -1,4 +1,4 @@ -[Savannah task #5130: random translator](http://savannah.gnu.org/task/?5130) +[[!GNU_Savannah_task 5130]]: random translator. See the attached [[mbox.bz2]] containing all the emails concerning this topic which I was able to gather from public archives. (!) This is not up-to-date |