Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build-28 #88

Merged
merged 32 commits into from
Dec 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -108,16 +108,19 @@ jobs:
if: startsWith(matrix.config.name, 'Ubuntu Latest')
shell: bash
run: |
sudo add-apt-repository universe
sudo apt-get install -y libncurses-dev
sudo apt-get install -y libncursesw5-dev
sudo apt-get install -y libenchant-2-dev
sudo apt-get install -y libaspell-dev
sudo apt-get install -y libhunspell-dev
sudo apt-get install -y libenca-dev
sudo apt-get install -y libguess-dev
sudo apt-get install -y libexplain-dev
sudo apt-get install -y libarchive-dev

## 24/10: removed
## legacy: sudo apt-get install -y libncursesw5-dev
## missing: sudo apt-get install -y libguess-dev

- name: MacOS, setup
if: startsWith(matrix.config.name, 'MacOS Latest')
shell: bash
Expand Down Expand Up @@ -158,7 +161,7 @@ jobs:
shell: bash
run: |
chmod +x configure
./support/config_withncurses
./support/config_withncursesw

- name: Ubuntu, compile
if: startsWith(matrix.config.name, 'Ubuntu Latest')
Expand Down
14 changes: 8 additions & 6 deletions .github/workflows/solaris.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Solaris 11.4
uses: vmactions/solaris-vm@v1.0.2
uses: vmactions/solaris-vm@v1.1.0
with:
usesh: true
mem: 6144
Expand All @@ -23,15 +23,15 @@ jobs:
beadm list
pkg info entire
pkg list -af entire
echo ===== Installed packages
echo ===== Installed packages
pkg list '*'
echo ===== Available developer/library packages
echo ===== Available developer/library packages
pkg list -a 'developer/*'
pkg list -a 'library/*'
echo ===== Packages requirements
pkg install -v system/locale system/header
pkg install -v --accept \
developer/gcc-7@7.3.0-11.4.0.0.1.14.0 \
developer/gcc-11 \
developer/build/gnu-make \
developer/build/make \
developer/build/autoconf \
Expand All @@ -42,18 +42,20 @@ jobs:
developer/parser/bison \
library/ncurses

## vm1.0.2: was: gcc-7@7.3.0-11.4.0.0.1.14

run: |
export LC_ALL=C
export LANG=C
uname -a
whoami
pwd
pwd
cat /etc/release
export PATH=/opt/csw/bin:$PATH:/usr/sfw/bin
export CFLAGS="-std=gnu11 -D_XOPEN_SOURCE=500 -D__EXTENSIONS__=1"
./configure --prefix=/usr
gmake release build

## References:
## https://github.com/oracle/solaris-userland/blob/master/make-rules/shared-macros.mk
## https://docs.oracle.com/cd/E86824_01/html/E54772/intro-3.html#REFMAN3Fintro-3
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ jobs:
git submodule update --init --recursive

- name: MSVC setup
uses: ilammy/msvc-dev-cmd@v1
uses: ilammy/msvc-dev-cmd@v1.13.0
if: startsWith(matrix.config.name, 'Windows Latest MSVC')
with:
arch: x86
Expand Down
2 changes: 1 addition & 1 deletion BUILDNUMBER.in
Original file line number Diff line number Diff line change
@@ -1 +1 @@
25
28
34 changes: 30 additions & 4 deletions Changes
Original file line number Diff line number Diff line change
@@ -1,10 +1,35 @@
-*- encoding: utf-8; -*-

Mon Sep 9 00:10:31 2024 adamy
Sat Dec 7 00:20:15 2024 adamy

* build-28

* Tickets

- grunch crash, on an invalid switch case; #83

- st-terminal; #94
- mok2, Alt-[ issues; #95
- kbprotocols integration
- libtrie
- grrc and dayone logic; #62, #96
- Meta/ESC processing, kbprotocols extensions; #95
- ncursesw6 configuration; #93
- colorscheme for truecolor; #91
- colorshemegui.
- save/restore colorscheme extended name.
- colorschemes, bones/base16.
- Putty profile; #87
- true-color/direct support; #81
- understyles and strikeout; #72

Thu Sep 26 21:27:49 2024 adamy

* build-27

* Tickets

- xterm-mok2 and kbprotocol options; #85
- mouse-sgr and mouse-mode; #84
- grunch crash, on an invalid switch case; #83
- portability improvements; non Linux/WIN32 builds; #78
- dark/light background detection; #76
- directory open; prompt file(s) to open; #73
Expand All @@ -15,6 +40,7 @@ Mon Sep 9 00:10:31 2024 adamy

* Keyboard/interface extensions

- keyboard, protocol options (none,auto,basic,mok2,cygwin).
- mouse
- command line option (xterm, xterm2 and sgr).
- <Button-xxx> key events cleanup.
Expand All @@ -28,7 +54,7 @@ Mon Sep 9 00:10:31 2024 adamy
* CI Pipelines

- Solaris
- FreeBSD/OpenBSD and NetBSD
- FreeBSD/OpenBSD and NetBSD.

Sun Jun 16 12:09:22 2024 adamy

Expand Down
2 changes: 1 addition & 1 deletion INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ On completion the resulting configuration shall be presented, including installa
Once reviewed execute the following:

$ make release


### Windows

Expand Down
4 changes: 3 additions & 1 deletion Makefile.in
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# -*- mode: mak; -*-
# $Id: Makefile.in,v 1.74 2024/06/14 16:40:51 cvsuser Exp $
# $Id: Makefile.in,v 1.75 2024/12/16 10:22:38 cvsuser Exp $
# GRIEF - top level makefile.
#
# Copyright (c) 1998 - 2024, Adam Young.
Expand Down Expand Up @@ -329,6 +329,8 @@ endif
GRUPDATER= no
ifeq (vs,$(findstring vs,"@TOOLCHAIN@"))
GRUPDATER= yes
else ifeq (mingw,$(findstring mingw,"@TOOLCHAIN@"))
GRUPDATER= yes
else ifeq ("@TOOLCHAIN@","owc20")
GRUPDATER= yes
else ifeq ("@TOOLCHAIN@","owc19")
Expand Down
162 changes: 153 additions & 9 deletions auto/configure
Original file line number Diff line number Diff line change
Expand Up @@ -24959,6 +24959,142 @@ fi

fi; fi; fi; fi; fi

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for curses extended api" >&5
printf %s "checking for curses extended api... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */

#define _XOPEN_SOURCE_EXTENDED 1
#if defined(HAVE_NCURSESW_CURSES_H)
# include <ncursesw/curses.h>
# include <ncursesw/termcap.h>
# include <ncursesw/term.h>
#elif defined(HAVE_NCURSES_CURSES_H)
# include <ncurses/curses.h>
# include <ncurses/termcap.h>
# include <ncurses/term.h>
#else
# if defined(HAVE_NCURSESW_H)
# include <ncursesw.h>
# elif defined(HAVE_NCURSES_H)
# include <ncurses.h>
# elif defined(HAVE_CURSES_H)
# include <curses.h>
# endif
# if defined(HAVE_TERMCAP_H)
# include <termcap.h>
# endif
# if defined(HAVE_TERM_H)
# include <term.h>
# endif
#endif

int
main (void)
{

{
int f, b;
init_extended_pair(1, 0xaabbcc, 0xccbbaa);
extended_pair_content(1, &f, &b);
}
{ int r, g, b;
init_extended_color(1, 0xff, 0xff, 0xff);
extended_color_content(1, &r, &g, &b);
}
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
cf_result=yes
else case e in #(
e) cf_result=no ;;
esac
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cf_result" >&5
printf "%s\n" "$cf_result" >&6; }
if test "$cf_result" = "yes"; then

printf "%s\n" "#define HAVE_CURSES_EXTENDED 1" >>confdefs.h

ac_fn_c_check_func "$LINENO" "reset_color_pairs" "ac_cv_func_reset_color_pairs"
if test "x$ac_cv_func_reset_color_pairs" = xyes
then :
printf "%s\n" "#define HAVE_RESET_COLOR_PAIRS 1" >>confdefs.h

fi

fi

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for curses wide-character api" >&5
printf %s "checking for curses wide-character api... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */

#define _XOPEN_SOURCE_EXTENDED 1
#if defined(HAVE_NCURSESW_CURSES_H)
# include <ncursesw/curses.h>
# include <ncursesw/termcap.h>
# include <ncursesw/term.h>
#elif defined(HAVE_NCURSES_CURSES_H)
# include <ncurses/curses.h>
# include <ncurses/termcap.h>
# include <ncurses/term.h>
#else
# if defined(HAVE_NCURSESW_H)
# include <ncursesw.h>
# elif defined(HAVE_NCURSES_H)
# include <ncurses.h>
# elif defined(HAVE_CURSES_H)
# include <curses.h>
# endif
# if defined(HAVE_TERMCAP_H)
# include <termcap.h>
# endif
# if defined(HAVE_TERM_H)
# include <term.h>
# endif
#endif

int
main (void)
{

cchar_t wch = {0};
wint_t f;

wch.chars[0] = 'a';
wadd_wch(stdscr, &wch);
mvwadd_wch(stdscr, 1, 2, &wch);
waddwstr(stdscr, L"12345");
mvwaddwstr(stdscr, 1, 2, L"12345");
wget_wch(stdscr, &f);

;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"
then :
cf_result=yes
else case e in #(
e) cf_result=no ;;
esac
fi
rm -f core conftest.err conftest.$ac_objext conftest.beam \
conftest$ac_exeext conftest.$ac_ext
{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cf_result" >&5
printf "%s\n" "$cf_result" >&6; }
if test "$cf_result" = "yes"; then

printf "%s\n" "#define HAVE_CURSES_WIDECHAR 1" >>confdefs.h

fi

{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for curses features" >&5
printf %s "checking for curses features... " >&6; }
if test "x$cf_libterm_cv_features" = "xno" ; then
Expand Down Expand Up @@ -24994,17 +25130,22 @@ main (void)
{

chtype a = A_BOLD;
int b = KEY_LEFT;
chtype c = COLOR_PAIR(1) & A_COLOR;
attr_t d = WA_NORMAL;
cchar_t e;
wint_t f;
int g = getattrs(stdscr);
int h = getcurx(stdscr) + getmaxx(stdscr);
int k = KEY_LEFT;
int g, h;
short f, b;

initscr();
start_color();
has_colors();
can_change_color();
g = getattrs(stdscr);
h = getcurx(stdscr) + getmaxx(stdscr);
init_pair(1, COLOR_WHITE, COLOR_RED);
pair_content(1, &f, &b);
wattr_set(stdscr, d, 0, NULL);
wget_wch(stdscr, &f);
wgetch(stdscr);
;
return 0;
}
Expand Down Expand Up @@ -25050,11 +25191,14 @@ main (void)
{

chtype a = A_BOLD;
int b = KEY_LEFT;
chtype c = COLOR_PAIR(1) & A_COLOR;
int g = getattrs(stdscr);
int h = getcurx(stdscr) + getmaxx(stdscr);
int g, h;

initscr();
start_color();
has_colors();
g = getattrs(stdscr);
h = getcurx(stdscr) + getmaxx(stdscr);
init_pair(1, COLOR_WHITE, COLOR_RED);
;
return 0;
Expand Down
Loading
Loading