From c3f7aa7252ad9adb51cef1e35f566883ef953aad Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Mon, 27 Jul 2015 20:31:20 +0200 Subject: added full Haiku OS support (non x86_gcc2) * Haiku can be handled like UNIX in most respects since it is POSIX compliant, has a UNIX-like terminal emulator and uses ncurses. * still the Glib platform macro is G_OS_HAIKU instead of G_OS_UNIX, so the preprocessor conditionals had to be adapted. * the only functional difference between a Haiku and UNIX build is the default SCITECOCONFIG path. We use the config path returned by Glib instead of $HOME, so .teco_ini will be in ~/config/settings on Haiku. Other UNIX ports appear to use the same conventions. * Some Haiku-specific restrictions still apply: * Haiku's terminal is xterm-compatible, but only supports 8 colors. Therefore only the terminal.tes color scheme can be used and the terminal must be set up to "Use bright instead of bold text". * The terminal has artifacts. This appears to be a Haiku bug and affects other curses applications as well. * GTK is yet unsupported on Haiku, so there may never be a GUI port (unless someone writes a QT GUI for SciTECO). * SciTECO cannot be built with the legacy gcc2 used for BeOS compatibility on Haiku. This would require too many changes for an obsolete platform. BeOS and the x86_gcc2 platform of Haiku will therefore never be supported. The PPC and ARM platforms of Haiku should work but are untested. * a HaikuPorts recipe will be provided for the next regular SciTECO release. This should hopefully allow installation via HaikuDepot. --- src/interface-curses.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/interface-curses.cpp') diff --git a/src/interface-curses.cpp b/src/interface-curses.cpp index b4d83ec..5180d48 100644 --- a/src/interface-curses.cpp +++ b/src/interface-curses.cpp @@ -80,9 +80,12 @@ #endif #ifdef NCURSES_VERSION -#ifdef G_OS_UNIX +#if defined(G_OS_UNIX) || defined(G_OS_HAIKU) /** - * Whether we're on ncurses/UNIX + * Whether we're on ncurses/UNIX. + * Haiku has a UNIX-like terminal and is largely + * POSIX compliant, so we can handle it like a + * UNIX ncurses. */ #define NCURSES_UNIX #elif defined(G_OS_WIN32) -- cgit v1.2.3