Commit 0e1f601
committed
Overhaul everything
- Add all C header files from ncurses 6.3.
- Re-translate from scratch those header files which have been
translated.
The combination of major ABI changes in ncurses 6, plus a history of
people finding bugs in the bindings indicating their inaccuracy,
makes for a good argument to take a scorched earth approach and
perform a fresh translation of the headers, automating it as much as
possible, and deviating from the C code as little as possible to aid
in future maintenance efforts.
- Restructure the package layout to be consistent with other Deimos
projects.
Note that, being an implementation of a POSIX standard, ncurses
places its header files (such as "form.h") directly under
/usr/include. Therefore, the corresponding D module is at
"deimos.form".
- Switch to ".di" files. Ensure no object code need to be generated.
This simplifies linking (e.g. building a program using ncurses
without dub / rdmd / dmd -i), and is closer in spirit to C header
files.
- Add "pragma(inline, true)" to functions implementing C macros, to
guarantee that compilers don't assume object code for them exists
somewhere.
- Convert all dub.json files to SDLang.
(SDLang is the winner format as it allows documenting decisions made
in writing the build description.)
- Use "path" directive in examples' dub.sdl files to make them use the
current checkout instead of what's committed on the master branch.
- Delete ISSUES as these are better tracked using an issue tracking
system (https://github.com/D-Programming-Deimos/ncurses/issues).
- Delete AUTHORS as this is better tracked by the Git history. dub.sdl
has a list as well.
- Delete the non-standard "nclear" alias. (Presumably disambiguator
for object.clear before that was removed.)1 parent 4151906 commit 0e1f601
File tree
88 files changed
+10948
-4181
lines changed- C
- examples
- acs_vars
- source
- form_attrib
- source
- hello_world
- hellounicode
- key_code
- other_border
- panel_simple
- source
- printbold
- printw_example
- source
- ptest
- source
- simple_color
- simple_key
- source
- simplespectrum
- source
- temp_leave
- win_border
- with_chgat
- source/deimos
- ncurses
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
88 files changed
+10948
-4181
lines changedThis file was deleted.
0 commit comments