[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Glibc and NetBSD

Matthew Garrett wrote:
> I have a sufficiently working glibc that I can build binutils and gcc
> against it and then use them to rebuild a working glibc, but it'll
> need some work yet before it's even vaguely production ready. The
> general opinion at Debconf seemed to be that going with glibc was
> preferable to using BSD libc - does anyone have any comments?

I do. I'm probably somewhat ahead of you, as shown by the dpkg -l output at the below. Most Debian sources compile cleanly, some need a little bit of hacking, but it's mostly configure or libtool doing the wrong thing. Occasionally, there's a case like ncurses that does an #ifdef __FreeBSD__ that's bogus with glibc.

The problem I'm having is that I can't get freebsd sources to build on top of glibc. The library and utility sources that I need seem to be wanting a lot of stuff that simply isn't in the glibc headers. So I had the bright idea of compiling the freebsd-buildutils package (contains BSD make, install, find, and almost everything else the freebsd sources require) statically against libc. The problem I ran into next was that mtree and install try to look up usernames, and bound against libc instead of glibc, they were looking for a pwd.db that wasn't there.

So I'm faced with a dilemma. Do I:
1. hack FreeBSD sources to build with glibc
2. hack glibc to build FreeBSD sources
3. try to make both libc's coexist

Some combination of option 1 and 2 seems most likely to work. I think we're going to need to be able to use libraries like libkvm with glibc. I'd been thinking of writing a python wrapper for libcam, and at least cdrecord will want libcam also.

What concerns me most is that any changes I make to FreeBSD sources to get them working with glibc will probably not be acceptable upstream, which poses a large maintenance problem.


(glibc, gcc 3.0 and 3.1, and binutils aren't packaged in the glibc chroot yet.)

skaro:/build# dpkg -l
| Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name           Version        Description
ii  ash            0.3.8-38       NetBSD /bin/sh
ii  autoconf       2.53-4         automatic configure script builder
ii autoconf2.13 2.13-44 automatic configure script builder (obsolete
ii  base-files     3.0.3          Debian base system miscellaneous files
ii  base-passwd    3.4.1          Debian Base System Password/Group Files
ii  byacc          1.9-13.1       The Berkeley LALR parser generator
ii csh 20020413-1 Shell with C-like syntax, standard login she
ii  cvs            1.11.2-3       Concurrent Versions System
ii dbs 0.11 Files used for the development of DBS source
ii  debconf        1.1.17         Debian configuration management system
ii  debconf-utils  1.1.17         debconf utilities
iU  debhelper      4.0.2          helper programs for debian/rules
ii debianutils 1.16.3 Miscellaneous utilities specific to Debian.
ii  dpkg           1.10.2         Package maintenance system for Debian
ii  dselect        1.10.2         a user tool to manage Debian packages
ii  file           3.37-3.1       Determines file type using "magic" numbers
ii  fileutils      4.1.9-3        GNU file management utilities
ii  flex           2.5.4a-26      A fast lexical analyzer generator.
ii  freebsd-buildu 4.5-20020511.5 FreeBSD build utilities
ii  freebsd-make   4.6-020718.2   FreeBSD make for Debian
iF  groff          1.17.2-17      GNU troff text-formatting system
ii groff-base 1.17.2-17 GNU troff text-formatting system (base syste ii libnewt0 0.50.17-9.6 Not Erik's Windowing Toolkit - text mode win
ii  libperl5.6     5.6.1-7        Shared Perl library.
ii libpopt-dev 1.6.4-2 lib for parsing cmdline parameters - develop
ii  libpopt0       1.6.4-2        lib for parsing cmdline parameters
ii  m4             1.4-14         a macro processing language
ii passwd 20000902-12 Change and administer password and group dat ii perl 5.6.1-7 Larry Wall's Practical Extraction and Report ii perl-base 5.6.1-7 The Pathologically Eclectic Rubbish Lister.
ii  perl-modules   5.6.1-7        Core Perl modules.
ii python 2.1.3-3 An interactive object-oriented scripting lan ii python-dev 2.1.3-3 Header files and a static library for Python ii python2.1 2.1.3-3 An interactive object-oriented scripting lan ii python2.1-dev 2.1.3-3 Header files and a static library for Python
ii  sharutils      4.2.1-9        shar, unshar, uuencode, uudecode
ii slang1 1.4.4-7.2 The S-Lang programming library - runtime ver ii slang1-dev 1.4.4-7.2 The S-Lang programming library, development ii tcl8.0 8.0.5-6 The Tool Command Language (TCL) v8.0 - Run-T ii tcl8.0-dev 8.0.5-6 The Tool Command Language (TCL) v8.0 - Devel ii tcl8.3 8.3.3-7 The Tool Command Language (TCL) v8.3 - Run-T ii tcl8.3-dev 8.3.3-7 The Tool Command Language (TCL) v8.3 - Devel
ii  texi2html      1.64-cvs200104 Convert Texinfo files to HTML
ii whiptail 0.50.17-9.6 Displays user-friendly dialog boxes from she
ii  zlib-bin       1.1.4-1        compression library - sample programs
ii  zlib1g         1.1.4-1        compression library - runtime
ii  zlib1g-dev     1.1.4-1        compression library - development

To UNSUBSCRIBE, email to debian-bsd-request@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

Reply to: