Age | Commit message (Collapse) | Author | Files | Lines |
|
GtkTsmTerminal is a Gtk+-3.0 widget using libtsm. It provides a generic
terminal-widget that can be easily used to create any kinds of
terminal-emulators.
The GtkTsm program is a small example that shows how to use GtkTsm.
Note that all this is optional and only meant as example. Maybe at some
point we will install GtkTsmTerminal as shared object. However, it will
never be mandatory!
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
Few more shl helpers that we later need for TSM examples. Note that
--gc-sections strips them from normal libtsm builds.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
Same move as with the other TSM files.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
Some simple code-moves:
shl => src/shared/
tsm => src/tsm/
..and also move the ./docs/ files into the source tree.
This will make the tree much easier to grasp once we add more tools like
gtktsm.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
Mac OS X now uses the llvm linker, so our --gc-sections logic is not
supported. Furthermore, linker-scripts aren't supported either. Add GNU-ld
and Darwin detection and drop any GNU-ld specific options if not
supported.
Dropping --gc-sections and its related options is fine. We will produce
bigger binaries, but that's just what you get if you don't support that.
On Darwin we try the -dead_stip options instead. They should work
sufficiently well.
Regarding version-scripts, we still set visibility=hidden by default and
require compilers to support __attribute__((__visibility__("public"))). So
symbols are correctly exported, but version-information will be lost.
Again, that's an issue of the target architecture and we don't care
whether they lack useful features.
(extended commit-msg and reorder am-conditionals)
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
Move the screen rendering helpers into a separate file. They keep getting
bigger and are totally separate from screen manipulation. Thus, keep it
separate so we can easily simplify it later.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
The screen-selection code is horrible and just hacked together. It works
and seems to have no bugs, but we definitely need to rework it. Lets move
it into a separate file to make it mostly independent of the core screen
code.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
Add some minor tests for symbol tables. Also build libtsm twice, once as
static library so we can access internal symbols from within the tests.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
We now use valgrind to perform automated mem-leak tests on selected
test-programs. We also add a separate test_valgrind program which is used
to verify that the memcheck actually works.
We don't run these tests as part of the normal test-suite, however, we
require them for distcheck. Thus, you can avoid using valgrind if you're
not about to do dist-releases. Every developer should have it installed,
anyway, so it's fine.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
We used to provide libtsm as part of kmscon. To avoid any compatibility
problems, increase the library version to 3 (same for symbol versions).
This way, old libtsm libraries will not be linked to by new programs.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
-fstack-protector should be set by the build-environment, not by each
project. It may fail in subtle ways if the toolchain doesn't support it.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
We need to ship the additional license file with tarballs.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
We don't need tsm_*.h as installed headers. Remove them.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
shl_hashtable is no longer used. Remove it and replace the tests with
shl_htable tests.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
Replace the old shl_hashtable with shl_htable, which avoids the additional
allocations and is considerably faster. The underlying hash-table is still
the same, but our boilerplate code is reduced heavily.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
Add a single internal header for all our shared but private code. Remove
now unused shl_misc.h.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
This helper is now unused, remove it.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
Add "make check" test suite and some initial hashtable dummy tests. More
comprehensive tests can be added later.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
We don't use the linked list helper, so remove this reference.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
We need to add this file to the list of source files. Otherwise, dists
might not include it.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
I want to get rid of the header mess and move everything public into a
proper single public header. There is no reason to keep everything
separate once we make libtsm a proper library.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|
|
This is a copy of libtsm from the kmscon repository. It has no external
dependencies except glibc. libxkbcommon should be provided during
compile-time. If not, a fallback header is used.
The library interface is not stable, yet! There is still a lot to do
before we release libtsm-1.
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
|