|
|
Message-ID: <20120618180027.57746bf7@newbook>
Date: Mon, 18 Jun 2012 18:00:27 -0700
From: Isaac Dunham <idunham@...abit.com>
To: musl@...ts.openwall.com
Subject: Re: links to some info/sources (Heirloom, pcc, ncurses)?
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>
+
#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...
The --enable-wide is because for some reason, using wchar_t instead of
char breaks the ABI.
> > for heirloom i needed minor hacks like
> >
> > echo '#include <ncurses/curses.h>' >include/curses.h
> > echo '#include <ncurses/term.h>' >include/term.h
AKA:
CPPFLAGS += -I${sysincdir}/ncurses
CFLAGS += ${CPPFLAGS} # if the makefile ignores CPPFLAGS
> 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
FYI: pdcurses may also be an option.
Isaac Dunham
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.