Date: Wed, 14 Sep 2016 18:06:45 -0400 From: "Karl Vogel" <vogelke@pobox.com> To: freebsd-questions@freebsd.org Subject: Re: Building X11 Message-ID: <20160914220645.GA22847@bsd118.wpafb.af.mil> In-Reply-To: <E1bk0t4-0005A4-Au@elasmtp-galgo.atl.sa.earthlink.net> References: <E1bk0t4-0005A4-Au@elasmtp-galgo.atl.sa.earthlink.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Sep 13, 2016 at 07:28:19PM -0800, CK wrote: CK> deciding to install X11 from scratch to avoid the massive CK> amounts of "junk" that is required to be downloaded and CK> installed with a "ports" installation [...] FWIW, I tried installing a new desktop many years ago, and got lots of nagging messages about certain X libraries being out of date. I updated a few of those at a time (massive mistake, I admit) and shortly wound up with a system that was unbootable. CK> is it impossible to perform the work of c_client.py using CK> standard Unix tools? It's certainly possible, but... CK> The core and extension protocol descriptions are in XML, with a CK> program written in Python creating the C bindings. (Previous CK> versions used m4). [from Wikipedia] ...I think XML is the big turd in the pipe here. If someone has an M4 program that can *correctly* parse and handle XML, I'm pretty sure I'd go blind and/or sterile trying to read it. For something as complex as C-bindings for a huge software base like X11, maybe you need a language like XML -- I'm not competent to say. If XML is the best way to handle this, you *DO* need a language with a decent XML library; Perl, Python, or Javascript are most common if you're talking about something you don't need to compile. Cool kids don't use Perl any more, and nobody with any sense would use JS as part of a Unix build process, so that narrows things down a bit. If the C-bindings don't change that often, and if they're OS-dependent, I wouldn't mind seeing a directory tree like under the Perl sources (cygwin, djgpp, bsd, solaris, win32, etc) with basic prebuilt C-binding files, along with a configure option that says "use this directory instead of running c_client.py". However, I don't even know if that's possible. CK> and the same kind of nonsense can be found in configure scripts CK> that detect Gawk or some other GNU program, and then refuse to CK> continue compilation without Glib, and then if you install that, CK> then they want Iconv, and then if you install that, ./configure CK> wants Libintl, and so on, like endless fucking GNU octopus CK> tentacles that try to take over a users entire system. I've run into that, and the easiest way to kill the octopus is to run "./configure --help" and use "--disable-nls", "--without-libintl", etc. to kill as much crap as I can and still get a working program. -- Karl Vogel I don't speak for the USAF or my company Woman gets revenge on babe-watching beau by glueing his eyes shut --"National Examiner" article, 15 Aug 2005
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160914220645.GA22847>