Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Mon, 18 Jun 2012 21:08:37 -0400
From: Rich Felker <dalias@...ifal.cx>
To: musl@...ts.openwall.com
Subject: Re: links to some info/sources (Heirloom, pcc, ncurses)?

On Mon, Jun 18, 2012 at 06:00:27PM -0700, Isaac Dunham wrote:
> On Mon, 18 Jun 2012 12:41:36 -0400
> Rich Felker <dalias@...ifal.cx> wrote:
> 
> > On Mon, Jun 18, 2012 at 06:31:35PM +0200, Szabolcs Nagy wrote:
> > > > The second question was regarding ncurses. Some utilities in
> > > > Heirloom require curses but I fail to build it for musl - but it
> > > > seems to be in Sabotage. Are there any good patches/tricks around
> > > > to get it to build?
> I used this patch (not sure if still needed):
> ===
> diff -ur ncurses-5.9/ncurses/SigAction.h
> ncurses-5.9-d/ncurses/SigAction.h ---
> ncurses-5.9/ncurses/SigAction.h	2005-08-06 13:05:32.000000000
> -0700 +++ ncurses-5.9-d/ncurses/SigAction.h	2012-04-03
> 16:32:56.841630774 -0700 @@ -49,6 +49,8 @@ #define HAVE_SIGVEC 0
>  #endif
>  
> +#include <signal.h>
> +

I never had problems here..

>  #if HAVE_SIGACTION
>  
>  #if !HAVE_TYPE_SIGACTION
> ===
> and these configure options:
> CC=musl-gcc CFLAGS="-fno-stack-protector -Os -D_GNU_SOURCE" ./configure
> --prefix=${PREFIX} --without-cxx --with-fallbacks=xterm
> #forgot to add --enable-widec 
> (see github.com/idunham/src-musl if you'd like to see my full build
> scripts...really, it ended up looking a lot like a pkgbuild, but
> somewhat more awkward)
> > Indeed, it's worked for a long time, but you need to disable the C++
> > interfaces if you don't have a working C++ toolchain. I don't think
> > the configure script does this by default. Actually ncurses has A LOT
> > of broken options by default which you need to fix when running
> > configure; for instance, it does not support UTF-8 unless you use
> > --enable-wide or something like that.
> I've always used CXX=false for stuff like this...

Nice trick. Does it get ncurses to auto-disable the C++ stuff?

> The --enable-wide is because for some reason, using wchar_t instead of
> char breaks the ABI.  

Yes, but has anybody wanted a non-UTF-8 enabled ncurses in the past 10
years?? It seems like the default should be to build the one people
actually want. With the current default, there's a major risk of
accidentally building the wrong one and building your whole system on
it, then realizing your system is broken, has the wrong ABI, and needs
to be rebuilt from scratch...

> > This is another issue: the installation paths and filenames. I don't
> > know the right option to make ncurses install itself as the default
> > curses library...
> It doesn't seem to allow installing $sysincdir/curses.h

Bleh; what do mainstream distros do then?

> FYI: pdcurses may also be an option.

I suspect it does not support UTF-8...

Rich

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.