Commit Graph

438 Commits

Author SHA1 Message Date
nick black
931fa8eb13 get everything building on OSX #195 2021-07-12 21:27:02 -04:00
nick black
bc9a4344ae CMake: need terminfo include dirs for libnotcurse #195 2021-07-12 21:27:02 -04:00
nick black
1a4f567fe3 CMake: some reworking necessary for OS X #195 2021-07-12 21:27:02 -04:00
nick black
561f4eba8c
v2.3.9 2021-07-12 12:24:38 -04:00
nick black
bc4f2a3626
CHANNELS_RGB_ -> NCCHANNELS_ 2021-07-10 17:54:06 -04:00
nick black
39a69239a3
drop -Wno-nonnull-compare 2021-07-09 01:22:27 -04:00
nick black
3c2fe36fc9
[kitty] pass C=1 for move command 2021-07-06 15:55:48 -04:00
nick black
1189891167
v2.3.8 2021-07-04 01:14:12 -04:00
nick black
b4fb4ee20a
_FORTIFY_SOURCE, not FORTIFY_SOURCE, thanks Fedora! 2021-07-01 05:35:31 -04:00
nick black
8b6a30cba8
v2.3.7 2021-06-29 07:10:22 -04:00
nick black
5d92bcb69b find readline properly on freebsd 2021-06-26 22:20:16 -03:00
nick black
b425771bce
don't install notcurses-tester.1 if not installing notcurses-tester #1824 2021-06-25 14:40:22 -04:00
nick black
2f24e221f3
CMake: don't install ncls/ncplayer man pages if they're not built #1824 2021-06-25 14:27:09 -04:00
nick black
b1fd24a970 notcurses-info: use some coloring #1823 2021-06-25 00:21:08 -04:00
nick black
9ed9f6bfc0 add USE_READLINE cmake flag 2021-06-25 00:21:08 -04:00
nick black
481d539092
v2.3.6 2021-06-23 22:35:19 -04:00
nick black
2ed1ad466f
term_debug_caps: move big unicode block to notcurses-info #1793 2021-06-23 19:17:19 -04:00
nick black
42f9419006
debug_term: use unicode checks/xs when available 2021-06-23 18:53:09 -04:00
nick black
ac652ac7f3
use -Wformat-security 2021-06-23 18:31:19 -04:00
nick black
a14a5271ac
v2.3.5 2021-06-23 13:07:42 -04:00
nick black
4758946a49
run notcurses-info as part of ctest 2021-06-22 18:26:23 -04:00
nick black
160868d9e8
v2.3.4 2021-06-12 17:27:28 -04:00
nick black
4ca1036da9
v2.3.3 2021-06-12 16:54:36 -04:00
Michael Bradley, Jr
28b2555195 github actions workflow: macos, ubuntu, windows+msys2 2021-06-11 21:32:31 -04:00
nick black
c56dfc2607
install caps-rendered as notcurses-info #1745 2021-06-09 20:54:20 -04:00
nick black
507d2c8d8e
v2.3.2 2021-06-03 02:29:13 -04:00
nick black
9c370806c5
CMake: define CMAKE_BUILD_TYPE prior to use 2021-06-01 04:08:24 -04:00
Nick Black
cd2b5de5fa
Panblitter ncplane_as_rgba() (#1697)
ncplane_as_rgba: genericize across blitters

ncplane_as_rgba() previously was implemented explicitly
in terms of NCBLIT_2x1. it now uses the `egcs` field of the
`blitset`. this supports NCBLIT_2x2 and NCBLIT_3x2 in
ncplane_rgba(). Closes #1490.
2021-06-01 02:25:11 -04:00
nick black
1b4ffb9eab
CMake: restore INSTALL_DESTINATIONs with correct suffixes 2021-05-24 00:24:55 -04:00
nick black
5a3ff3f707
CMake: remove meaningless INSTALL_DESTINATIONs 2021-05-24 00:23:12 -04:00
nick black
739c96032d
v2.3.1 2021-05-18 04:03:27 -04:00
nick black
ea4c593455
v2.3.0 2021-05-09 18:54:22 -04:00
nick black
dc9db79100
v2.2.11 2021-05-08 18:25:13 -04:00
nick black
0d70d73100
Write Requires.private in pc files based off discovered TERMINFO_LIBRARIES #1635 2021-05-08 13:48:14 -04:00
nick black
2d6bdd3b5b
v2.2.10 2021-05-05 05:18:57 -04:00
nick black
923bc40516
v2.2.9 2021-05-03 02:51:04 -04:00
nick black
076792bdb8 CMake: properly link in libunistring, fixing notcurses-tester link on bsd #1617 2021-05-01 21:25:58 -03:00
nick black
1d99cc2628
CMake: verify presence of libunistring for linking 2021-05-01 19:51:20 -04:00
nick black
d5b58d9f58
v2.2.8 2021-04-18 13:24:24 -04:00
nick black
eefc4fb91f
v2.2.7 2021-04-18 12:34:41 -04:00
nick black
e017dcba89
v2.2.6 2021-04-12 05:01:58 -04:00
nick black
8c78b089e1
v2.2.5 2021-04-04 14:28:16 -04:00
nick black
acc5be058c [plots] move plot.cpp to C plot.c #1421 2021-03-29 02:43:54 -04:00
nick black
57114c8005
[bitmaps] remove redundant PixelWipeBlocks test 2021-03-28 16:59:02 -04:00
data-man
6d4635fc5b Change ON to OFF 2021-03-27 04:50:47 -04:00
data-man
58a4e86c97 Rename QR code support option 2021-03-27 04:50:47 -04:00
nick black
1f4ece224b
[cmake] add -Wno-nonnull-compare 2021-03-22 06:53:15 -04:00
nick black
af680839bd
[cmake] remove sgr-direct from test set #1344 2021-03-15 02:54:43 -04:00
nick black
c80736a887
cmake: drop -V for ctest 2021-03-11 23:51:54 -05:00
nick black
bc84987af5
v2.2.3 2021-03-08 07:10:50 -05:00
nick black
c882a44ac5 CMake: CMAKE_REQUIRED_INCLUDES everywhere #1387 2021-03-08 08:32:11 -03:00
nick black
cef5e45be6
drone: use new debian unstable 2021-02-24a 2021-02-24 01:56:56 -05:00
nick black
c10f5a40ce
v2.2.2 2021-02-18 07:07:26 -05:00
nick black
e89c2bc566 CMakeLists.txt: switch from O0 to Og 2021-02-15 13:23:41 -05:00
nick black
be4a9154a8
v2.2.1 2021-02-09 19:34:03 -05:00
nick black
3cdf7160de
v2.2.0 2021-02-08 09:35:34 -05:00
nick black
38e9051888
move tests to src/tests 2021-02-07 20:52:20 -05:00
nick black
54ca2249df
v2.1.8 2021-02-03 08:34:49 -05:00
nick black
b8596a1b43
don't install INSTALL.md 2021-01-21 19:15:09 -05:00
nick black
66968cddab
write out NotcursesCoreConfigVersion.cmake 2021-01-21 15:31:24 -05:00
nick black
e20fb4ac8f
install NotcursesCore cmake support files 2021-01-21 04:19:29 -05:00
nick black
7eafcfe598
rename notcurses-tetris -> nctetris 2021-01-21 03:51:12 -05:00
nick black
121f10a9c5
v2.1.7 2021-01-21 03:21:31 -05:00
nick black
b4709bbb4e
tag libnotcurses.so with soversion 2021-01-21 03:18:40 -05:00
nick black
57271d09ce
v2.1.6 2021-01-21 02:44:00 -05:00
nick black
07ec5206cb
install notcurses-core.pc pkg-config support 2021-01-21 01:36:02 -05:00
nick black
cde25b9431
ncneofetch: don't require multimedia 2021-01-20 23:33:10 -05:00
nick black
6bd288f056 Workable split of library
Rather than trying to force things in via library constructors
and weak symbols and --whole-archive and pkg-config tricks, just
add new functions ncdirect_core_init() and notcurses_core_init().
libnotcurses has ncdirect_init() and notcurses_init(), which pass
through to these. apps linking against notcurses-core ought use
the _core_ variants directly. This gets exactly the linkage we
want, everywhere. Convert many PoCs to _core_ variants. #1301

Signed-off-by: nick black <dankamongmen@gmail.com>
2021-01-19 23:09:22 -05:00
nick black
9cf2925f47
prepare NotcursesCoreConfig.cmake #1301 2021-01-19 08:37:21 -05:00
nick black
bb3f9c1836
move c++ POCs into src/pocpp 2021-01-18 18:40:55 -05:00
nick black
c1ea096d31
set CMAKE_LINK_WHAT_YOU_USE to ON #1300 2021-01-18 17:37:17 -05:00
nick black
05193af667
remove extraneous USE_MULTIMEDIA check #1300 2021-01-18 17:18:47 -05:00
nick black
1631818784
rename notcurses-view to ncplayer #1299 2021-01-18 14:22:54 -05:00
Nick Black
9112185657
Split up notcurses/notcurses-core (#1297)
Extract `libnotcurses-core` from `libnotcurses`. The former contains everything except multimedia code. The latter contains multimedia stuff (a wrapper around FFmpeg or OIIO). If built with `-DUSE_MULTIMEDIA=none`, there will not be any `libnotcurses.so` generated. `libnotcurses.so` uses library constructors/destructors to insert its implementation into the `ncvisual` stack at runtime. Users linking `-lnotcurses` will get the full implementation; users linking `-lnotcurses-core` only will get the stack less multimedia code.

The upshot of this is that someone can compile/install only `libnotcurses-core`, and a program linked against it will work just fine. This eliminates the need to install the full (large) dependency stack of the multimedia code unless necessary. This will hopefully be useful for e.g. installers etc. Closes #339.
2021-01-18 14:10:04 -05:00
nick black
3ecdde74d0
v2.1.5 2021-01-15 05:14:07 -05:00
nick black
09dcda0253
README: give DragonFly BSD some love #1121 2021-01-11 22:07:36 -05:00
nick black
d4aef247ea
Fixes for DragonFly BSD from Weitian LI #1121 2021-01-11 12:10:04 -05:00
nick black
8283adc28f
Introduce src/compat/ for all bins
I've created the new files src/compat/compat.{hc}. These
are available to all binaries by adding src to the include
directories, and src/compat/compat.c to the sources. Several
functions are implemented here which one or more target
operating systems are missing, right now all related to time.
This includes clock_nanosleep(), which is missing on OS X and
DragonFly BSD. Eliminate the other three definitions of
timespec_to_ns() and friends. Standardize on NANOSECS_IN_SEC
rather than the more opaque GIG. Progress on #1121.
2021-01-09 23:25:25 -05:00
nick black
68b340e3c8
ncdirect: prep readline for use #1120 2021-01-08 07:28:24 -05:00
nick black
e617acecc7
v2.1.4 2021-01-03 19:55:32 -05:00
nick black
70b74a749b
v2.1.3 2020-12-31 02:57:16 -05:00
nick black
55d563b646
v2.1.2 2020-12-26 02:53:40 -05:00
nick black
d6d5757b1d
v2.1.1 2020-12-16 17:42:06 -05:00
nick black
6edafd1f84
v2.1.0 2020-12-13 03:04:23 -05:00
nick black
8497ee1877
v2.0.12 2020-12-12 06:42:47 -05:00
nick black
eb485cda21
v2.0.11 2020-12-09 00:34:37 -05:00
nick black
361a253aea
v2.0.10 2020-12-06 13:22:26 -05:00
nick black
cc5f9f0cb7
cmake: run notcurses-tester first among tests 2020-12-06 12:36:31 -05:00
nick black
f3688f44fb
CMake: add demo target 2020-12-03 01:47:40 -05:00
nick black
8083b46e3b
v2.0.9 2020-12-01 04:37:37 -05:00
nick black
de3944b114 ncls getopt skeleton #693 2020-11-29 10:44:04 -05:00
nick black
c2671b6fef
data model: every plane gets an egcpool 2020-11-29 07:34:45 -05:00
nick black
3f9d87f5e6 include data model on web page 2020-11-28 20:45:16 -05:00
nick black
465a0ffbcb Improve handling of dot->graph documentation
Remove the pre-rendered model.png, a generated output. Add a
dot target to CMake, predicated on USE_DOXYGEN (since we have
REQUIRED dot in our Doxygen spec). Generate the png in the
output path. Rename stacks to piles in model.dot.
2020-11-28 20:45:16 -05:00
Marek Habersack
9135663529 [CMake] Restore old way of importing Notcurses into a cmake project
Partially reverts: c5c9432ac0
Context: https://github.com/dankamongmen/notcurses/pull/1146

The above commit implemented the much more convenient way of finding and
using a package from CMake, however it broke compatibility with the way
id had been before, which defined various `Notcurses_*` variables.

Revert the `Notcurses` component to the old way and add support for
`Notcurses++` in the same fashion.

Perhaps one day we should think of implementing `find_package` support
by way of a module, which should make it possible to have the cake and
eat the cake. One day.
2020-11-28 19:54:21 -05:00
Marek Habersack
c5c9432ac0 [Misc] A hodgepodge of tiny changes
CMake:
  Simplify cmake target+version config generation and make it actually
  work.  With the changes it is now possible to detect and use
  `Notcurses` in the following way:

     find_package(Notcurses REQUIRED)
     ...
     target_link_libraries(myapp PRIVATE notcurses::notcurses)

  Also, added the same CMake configuration for `Notcurses++`, to be used
  in the following way:

     find_package(Notcurses REQUIRED
     find_package(Notcurses++ REQUIRED)
     ...
     target_link_libraries(myapp PRIVATE notcurses++::notcurses++)

Docs:
  `notcurses_cell(3)`: `cell_styles_{on,off} -> cell_{on,off}_styles`
  and `cell_load_simple` -> `cell_load_char`

C++ API:
  * Plane: added constructors taking `ncplane_options const&` instead of
    the multitude of individual parameters
  * Plane: drop `struct` when `ncplane_options` is used.
  * Plane: added `strdup` (`cell_strdup`)
  * Plane: added `extract` (`cell_extract`)
2020-11-28 17:46:23 -05:00
nick black
2a45620cd6
v2.0.8 2020-11-27 16:49:56 -05:00
nick black
b7ea4e2359
run sgr-full and sgr-direct in test suite #1138 2020-11-27 15:38:36 -05:00
nick black
73b2f1bf19
v2.0.7 2020-11-22 00:22:11 -05:00
nick black
acdcf9e41f
v2.0.6 2020-11-21 23:35:24 -05:00